florian
6d53d3b4cd
* fixed assembling of comisd with rex, there are probably more similiar fixes necessary, must be checked first
...
git-svn-id: trunk@8785 -
2007-10-14 09:04:45 +00:00
florian
f66916fc95
* fixed calculation of fpu resources
...
git-svn-id: trunk@8779 -
2007-10-13 19:39:25 +00:00
florian
342ba323cf
* fixed assembling of cvtsi2ss with rex
...
git-svn-id: trunk@8777 -
2007-10-13 14:53:27 +00:00
florian
0907f3c73b
* regenerated
...
git-svn-id: trunk@8774 -
2007-10-12 16:30:51 +00:00
florian
29084acefd
* moved pre-configured tools to unused shift key combinations
...
git-svn-id: trunk@8773 -
2007-10-12 16:30:36 +00:00
florian
fa0507ec2c
* fixed compilation on arm in extdebug mode
...
git-svn-id: trunk@8771 -
2007-10-12 16:14:49 +00:00
Jonas Maebe
c89ea4412f
* disallow using inline nodes with a non-void resultdef as statements
...
(e.g. length, lo/hi, ord, etc). Not the same as mantis #9918 , but
somewhat related
git-svn-id: trunk@8770 -
2007-10-12 11:54:37 +00:00
Jonas Maebe
0ebc1e920a
* allow modifying lvalues obtained by dereferencing read-only properties,
...
both via regular pointers and via classes (mantis 9498)
git-svn-id: trunk@8755 -
2007-10-09 13:08:36 +00:00
Jonas Maebe
83d162f5fd
* regenerated for darwin/ppc64
...
git-svn-id: trunk@8744 -
2007-10-08 08:33:03 +00:00
florian
36f7d56e91
+ fpcfg.inc target
...
git-svn-id: trunk@8741 -
2007-10-07 17:57:48 +00:00
florian
6b8e54cff9
* fixed compilation
...
git-svn-id: trunk@8740 -
2007-10-07 17:52:14 +00:00
florian
a5429afeb0
* fixed optimizer options for ide configuration creation
...
git-svn-id: trunk@8739 -
2007-10-07 17:31:29 +00:00
florian
6e5ff9b825
* hack around the -intconst hack in pexpr when recording tokens, resolves #9471
...
git-svn-id: trunk@8734 -
2007-10-06 14:33:57 +00:00
peter
c767df348f
* idata must be aligned on 4 bytes to prevent a corrupt
...
idata2 section where the entries are always 20 bytes
git-svn-id: trunk@8725 -
2007-10-02 18:41:47 +00:00
peter
488c06d275
* don't reuse emptyint
...
git-svn-id: trunk@8724 -
2007-10-02 18:41:07 +00:00
Jonas Maebe
e0a45eaf28
* r8717 for ppc64 (fixed compilation after r8715)
...
git-svn-id: trunk@8720 -
2007-10-02 08:31:04 +00:00
micha
89b5825029
* only use ld -T in case of cross-link (-XR), because not all platforms have complete link script yet
...
git-svn-id: trunk@8718 -
2007-10-01 21:10:51 +00:00
Jonas Maebe
d766707278
* fixed compilation after r8715 (+ aasmbase to uses clause)
...
git-svn-id: trunk@8717 -
2007-10-01 20:01:41 +00:00
peter
1e28adac60
* there can be a tai_stab between lock/rep and the next opcode
...
git-svn-id: trunk@8716 -
2007-10-01 19:23:49 +00:00
peter
9f0ca44c94
* new tf_smartlink_library flag
...
* use create_smartlink[_sections|_library] to check what to
do for smartlinking
git-svn-id: trunk@8715 -
2007-10-01 16:55:08 +00:00
micha
c3e587355d
* fix default dynamic linker location for 64 bit targets in linux
...
git-svn-id: trunk@8707 -
2007-09-30 21:20:04 +00:00
Tomas Hajny
cd82fd376f
* workaround for yet another #%$#@#^ EMX LD.EXE bug (link.res path must not be quoted)
...
git-svn-id: trunk@8706 -
2007-09-30 21:11:10 +00:00
peter
9715eceee7
* fixed expectloc setting for x86_64
...
git-svn-id: trunk@8704 -
2007-09-30 21:02:33 +00:00
peter
76b23821e1
* missing recalculation of relative constant
...
* if aligntype=1 then no alignment fillsize guessing is required
git-svn-id: trunk@8701 -
2007-09-30 20:28:41 +00:00
florian
655ac519d4
* fixed compilation for x86-64
...
git-svn-id: trunk@8698 -
2007-09-30 15:30:00 +00:00
micha
0625040eba
+ add -XR switch for target root file system with libs (also used for C lib type detection)
...
git-svn-id: trunk@8695 -
2007-09-30 15:00:54 +00:00
florian
f290d5195d
* line ending properties set
...
git-svn-id: trunk@8685 -
2007-09-29 22:28:27 +00:00
florian
0ebbbd5380
* spelling mistakes fixed
...
git-svn-id: trunk@8684 -
2007-09-29 22:26:33 +00:00
Jonas Maebe
3a60a28283
* don't try to add current_procinfo.got to used_in_proc if it's a
...
virtual register
* always add EBX to used_in_proc in case pi_needs_got, because it's
currently always used due to the geteipasebx call
* don't explicitly free the PIC register in the exitcode because
then the assembler optimizer assumes the load restoring it (ebx)
can be safely removed
git-svn-id: trunk@8683 -
2007-09-29 20:24:51 +00:00
Jonas Maebe
0a606b308d
- removed unused nested do_generate_code procedure from read_proc
...
git-svn-id: trunk@8678 -
2007-09-29 10:28:40 +00:00
Jonas Maebe
b9752680a5
* fixed crashes when combining -Cg with -g or -pg due to a missing
...
restore of lr in leaf procedures in that case (Darwin-only)
git-svn-id: trunk@8675 -
2007-09-28 23:27:16 +00:00
Jonas Maebe
993ec01a76
* use the gcc jumptable scheme for all ppc targets instead of only for
...
darwin
git-svn-id: trunk@8674 -
2007-09-28 23:00:58 +00:00
Jonas Maebe
5a0a6d0d9e
* fixed and enabled smartlinking on Darwin by adding more .reference
...
statements (some to work around linker bugs, most because they were
really missing)
git-svn-id: trunk@8673 -
2007-09-28 22:48:41 +00:00
Vincent Snijders
bc7e54c3f0
* search preprocessor binary and add it as command line parameter for windres, so that the cpp doesn't need to be on the path
...
git-svn-id: trunk@8670 -
2007-09-28 19:53:19 +00:00
Jonas Maebe
c84744b27f
* fixed a_jmp_name() for darwin/i386 (go via a stub)
...
* fixed g_external_wrapper for darwin/i386 (both with and without pic,
by using a_jmp_name(), because the darwin jump stubs can always
be called directly)
git-svn-id: trunk@8669 -
2007-09-28 14:12:46 +00:00
Jonas Maebe
559bb6226e
* don't try to translate the got register if it's NR_NO (fixes
...
regression of webtbs/tw3402 on linux/ppc64 after r8651)
git-svn-id: trunk@8668 -
2007-09-28 11:15:16 +00:00
peter
b5fb7120b8
* fixed length calculation of leb128 constants
...
git-svn-id: trunk@8666 -
2007-09-27 22:40:38 +00:00
peter
c19217f846
* only for jump instructions we need to look at the relative
...
offset of an symbol
git-svn-id: trunk@8664 -
2007-09-27 20:10:30 +00:00
Jonas Maebe
e81d4b737f
* give a build-time error when trying to cross-compile the compiler from
...
non-i386 to i386 because that will result in internalerrors later anyway
git-svn-id: trunk@8662 -
2007-09-27 13:22:51 +00:00
Jonas Maebe
d7c4fdbed5
* added maxfpuregs constant to fix compilation after r8655
...
git-svn-id: trunk@8658 -
2007-09-26 22:00:29 +00:00
Jonas Maebe
3266f4e483
+ Compiler support for pic on darwin/i386. The i386 rtl still needs
...
to be made pic-safe (mainly accesses to the global default8087cw)
* At the same time also made the non-pic code abi-compliant (access
external data via indirect symbol pointers etc)
Darwin/i386 also puts the got into a virtual register (like
Darwin/ppc), a.o. because the register allocator fails to colour
a routine in aasmcpu.pas if we take away ebx from it.
git-svn-id: trunk@8657 -
2007-09-26 21:42:27 +00:00
peter
4492ee39c5
* remove firstpasscount
...
git-svn-id: trunk@8656 -
2007-09-26 21:13:32 +00:00
peter
6b8aed593f
* remove registers{int/mmx/fpu} from firstpass
...
* small cleanups of unused variables in firstpass
* node_resources_fpu() created to get an approximation of the
required fpu registers
* for the moment use node_complexity in the CG until the
node_resource_int() is created
git-svn-id: trunk@8655 -
2007-09-26 21:12:01 +00:00
Jonas Maebe
7e5e13223e
* also count references to relsymbols
...
git-svn-id: trunk@8654 -
2007-09-26 20:31:41 +00:00
Jonas Maebe
b103605bc3
* added comment clarifying why g_indirect_sym_load doesn't have to
...
care about PIC
git-svn-id: trunk@8653 -
2007-09-26 18:39:14 +00:00
Jonas Maebe
9750e49d5a
* fixed x86 compilation after r8651
...
git-svn-id: trunk@8652 -
2007-09-26 17:25:38 +00:00
Jonas Maebe
335bc9fd46
+ PIC support for darwin/ppc32 (-Cg works now, no regressions in test
...
suite compiled with -Cg compared to without -Cg)
+ support for using a virtual register as PIC/got base register
* moved got loading code from ncgutil to cgobj/cgcpu (can't test whether
it didn't break anything under linux/i386, because "make cycle OPT=-Cg"
was already broken due to the *prt*.as -> si_*.pp changes)
git-svn-id: trunk@8651 -
2007-09-26 16:41:32 +00:00
Jonas Maebe
70c2414daa
* split off sec_rodata_norel from sec_rodata, and only put constant data
...
without relocations in sec_rodata_norel. It should be possible to make
this new section read-only on all platforms, although currently it
is only done for darwin, and for non-pic code written using the
-Aas assembler writer.
Most platforms also have a special section for "constant but with
relocations" data, but such a section is currently only used for
Darwin (others still use plain .data sections for that, like they
did before)
git-svn-id: trunk@8650 -
2007-09-26 15:49:01 +00:00
Jonas Maebe
2de2b6e17f
* changed darwin/ppc32 jumptable code to be the same as the darwin/ppc64
...
code, because that's also what gcc does in all cases and it's pic-safe
git-svn-id: trunk@8643 -
2007-09-25 17:56:23 +00:00
Tomas Hajny
e4fe4e740c
* usedircache reenabled
...
git-svn-id: trunk@8629 -
2007-09-24 05:58:10 +00:00