florian
9ad60a821f
* fixed building on non unix targets
...
* increased copyright
* changed version to 2.0.2
git-svn-id: trunk@2264 -
2006-01-12 08:18:22 +00:00
peter
a5f659b982
* support FPCDATE include
...
git-svn-id: trunk@2263 -
2006-01-12 06:59:43 +00:00
florian
30fc11e7ca
* makefiles regenerated
...
git-svn-id: trunk@2260 -
2006-01-11 21:46:28 +00:00
florian
270c8def11
* prefix and extension handling fixed
...
git-svn-id: trunk@2258 -
2006-01-11 21:43:12 +00:00
florian
210f9c07d6
+ makefiles adapted for shared library support
...
git-svn-id: trunk@2257 -
2006-01-11 21:42:30 +00:00
Jonas Maebe
ef4ece3674
* fixed allocregbetween in case the first removed tai_regalloc is an
...
allocation
git-svn-id: trunk@2241 -
2006-01-09 10:07:14 +00:00
Károly Balogh
b718d9ff37
+ added framework code for AmigaOS/PPC syscall support
...
git-svn-id: trunk@2239 -
2006-01-09 08:58:30 +00:00
Tomas Hajny
6aced9e534
* fix for web bug #4182
...
git-svn-id: trunk@2238 -
2006-01-09 02:52:55 +00:00
Jonas Maebe
9f8753c6c0
* fixed web bug #4669 (usage of location.loc instead of expectloc)
...
git-svn-id: trunk@2236 -
2006-01-08 21:11:04 +00:00
Jonas Maebe
1273e0d7ed
* generate signed comparisons for immediate equality comparisons if
...
possible, because those can be optimized better by the peephole
optimizer
git-svn-id: trunk@2235 -
2006-01-08 19:54:58 +00:00
tom_at_work
9ee594aedd
* changes which were forgotten to commit in r2222 for ppc32 cg
...
git-svn-id: trunk@2234 -
2006-01-08 18:08:26 +00:00
tom_at_work
6e290373c8
* div by const now enabled with -O2 (not -O3)
...
* large integer constants (>2 instructions to load) are put into the TOC as well
git-svn-id: trunk@2233 -
2006-01-08 18:04:44 +00:00
tom_at_work
60345fa78a
* removed hexstr(), already in RTL (and even supports 64 bit integers)
...
git-svn-id: trunk@2232 -
2006-01-08 18:01:34 +00:00
florian
f5e89801da
+ added option -i<path> for input path
...
git-svn-id: trunk@2226 -
2006-01-08 15:52:30 +00:00
Jonas Maebe
db580afbff
* fixed refs bookkeeping of jump labels (fix from Florian in popt386)
...
git-svn-id: trunk@2225 -
2006-01-08 15:50:14 +00:00
tom_at_work
4e35206d33
* basic ppc64 PIC code support
...
git-svn-id: trunk@2223 -
2006-01-08 13:28:46 +00:00
tom_at_work
c887507adf
* generic compiler patches for ppc64/linux PIC code
...
git-svn-id: trunk@2222 -
2006-01-08 13:27:31 +00:00
Jonas Maebe
e4451558c4
* optimized register allocation for tempnodes
...
git-svn-id: trunk@2221 -
2006-01-08 12:53:43 +00:00
florian
844e78b401
* error corrections for message files from Karl-Michael Schindler
...
git-svn-id: trunk@2217 -
2006-01-08 09:18:08 +00:00
tom_at_work
8c8e25353b
* reverted changes from 2214, needs to be split into several commits
...
git-svn-id: trunk@2215 -
2006-01-08 01:03:15 +00:00
tom_at_work
6313a9be7b
* basic code generation for dynamic linking code for ppc64
...
git-svn-id: trunk@2214 -
2006-01-07 22:16:33 +00:00
Jonas Maebe
5e9db609e3
* fixed bug fixref whereby a register of a reference was overwritten
...
git-svn-id: trunk@2212 -
2006-01-07 21:52:17 +00:00
florian
e43a1223ff
* fixed refs book keeping
...
git-svn-id: trunk@2211 -
2006-01-07 21:10:39 +00:00
Jonas Maebe
a8ea851999
* changed min and max so more efficient code is generated for them
...
git-svn-id: trunk@2209 -
2006-01-07 16:36:04 +00:00
Jonas Maebe
c54826b403
* removed extra deallocation and allocation of function result
...
registers, allows for most optimal code possible to be generated
for trivial functions (but in some cases worsens generated code
because the register allocator is not 100% optimal)
git-svn-id: trunk@2208 -
2006-01-07 16:19:19 +00:00
Jonas Maebe
1521a33979
* fixed allocregdebug code
...
git-svn-id: trunk@2204 -
2006-01-07 15:01:46 +00:00
florian
a3e3e7e8c5
* avoid esp to be freed
...
git-svn-id: trunk@2203 -
2006-01-07 14:32:09 +00:00
Károly Balogh
cd38c236a0
+ made the compiler to know about PowerPC AmigaOS
...
git-svn-id: trunk@2201 -
2006-01-07 04:46:27 +00:00
Károly Balogh
fd54c6b468
+ ppc-amigaos stack cookie support
...
git-svn-id: trunk@2199 -
2006-01-07 02:41:15 +00:00
Jonas Maebe
5692b93a52
* fixed bug in regalloc info in case a sequence is swapped with
...
a storeback at the end (i.e., "mov x,y" ... "mov y,x")
git-svn-id: trunk@2197 -
2006-01-06 15:29:25 +00:00
Jonas Maebe
a885e9da0e
* fixed replaceregdebug code
...
git-svn-id: trunk@2196 -
2006-01-06 14:55:42 +00:00
Jonas Maebe
0da53e4ff0
* don't give an IE with extdebug on darwin if a symbol is "re-allocated"
...
with a wrong type, because we can't know the type of a symbol in the
CG
git-svn-id: trunk@2194 -
2006-01-06 12:08:43 +00:00
Jonas Maebe
fc1b5c9fe2
* fixed backwards extension of regalloc information
...
git-svn-id: trunk@2193 -
2006-01-06 11:17:29 +00:00
Jonas Maebe
ac24965242
* procedures which use goto/label revert to the older and less
...
efficient regvar allocation scheme
* also allocate regvars before the loops, not just afterwards
git-svn-id: trunk@2192 -
2006-01-05 23:45:00 +00:00
Jonas Maebe
ea89d8a881
* don't move addresses in a LOC_CREGISTER to another register for
...
derefnodes
git-svn-id: trunk@2190 -
2006-01-05 20:46:20 +00:00
florian
9670e0eb78
* leave stackframe on x86-64 as well away if possible
...
git-svn-id: trunk@2187 -
2006-01-05 18:08:33 +00:00
Jonas Maebe
61ef30381c
* Only synchronise regvars after a loop (and only those regvars
...
which are used in the loop). The compiler makes now much
more efficient use of registers for register variables (and
different regvars can now also share the same register if
their live range does not overlap)
git-svn-id: trunk@2186 -
2006-01-05 17:48:11 +00:00
Jonas Maebe
b769a968e3
* make sure live_start and live_end are correctly updated while
...
generating the initialisation and entry code
git-svn-id: trunk@2185 -
2006-01-05 17:46:16 +00:00
Jonas Maebe
24c3ec1095
* also process methodpointerinit and methodpointerdone fields
...
of calln in foreachnode*()
git-svn-id: trunk@2183 -
2006-01-05 16:49:31 +00:00
Jonas Maebe
fe71df8928
* also synchronise FPU and MM CREGISTERS at the end of procedures
...
git-svn-id: trunk@2178 -
2006-01-05 10:24:14 +00:00
florian
1024b80867
+ sub routines with children with asm blocks need a real stack frame, fixes new failure of tw0848
...
git-svn-id: trunk@2177 -
2006-01-05 10:10:58 +00:00
Jonas Maebe
7aa315c71a
* made some Tcpuregisterset parameters const to avoid useless copying
...
git-svn-id: trunk@2176 -
2006-01-05 10:10:25 +00:00
florian
abc1bcca24
* fixed previous commit ...
...
git-svn-id: trunk@2175 -
2006-01-05 09:40:04 +00:00
florian
c9870d4aa3
* new line inserted :)
...
git-svn-id: trunk@2174 -
2006-01-05 09:36:48 +00:00
florian
1851481694
* fixed typo
...
git-svn-id: trunk@2173 -
2006-01-05 09:35:59 +00:00
tom_at_work
3462426b1d
* stack frame optimizations
...
git-svn-id: trunk@2172 -
2006-01-04 23:27:40 +00:00
Jonas Maebe
cbaa100654
* "fixed" web bugs 3183 and 4403 by breaking the parser in
...
Delphi mode so that you can change the return type of
overriding interface methods into anything you want.
You will get a nasty warning though.
git-svn-id: trunk@2168 -
2006-01-04 22:21:05 +00:00
Jonas Maebe
9c2ee3a722
* fixed web bug #4086 : do not create a refcounted temp for
...
interface temps created for complex callnodes
git-svn-id: trunk@2165 -
2006-01-04 21:07:10 +00:00
florian
a71d2b432c
* synchronize reg. variables before loading the function result
...
git-svn-id: trunk@2163 -
2006-01-04 20:30:41 +00:00
florian
f7d2c47f73
+ no stackframe is generated for i386 if possible
...
git-svn-id: trunk@2162 -
2006-01-04 19:19:06 +00:00