daniel
d47da881ed
* Better fix for case sensitive macro handling
2004-02-11 14:46:59 +00:00
daniel
ed76d1e17d
* Compiler was partially case sensitive in macro expansion
...
* Multiple and/or preprocessor statements caused problems
2004-02-11 14:13:10 +00:00
florian
abc41f1c3c
* several fixes to parameter handling on arm
2004-02-09 22:48:45 +00:00
florian
302d2d1442
* compilation fixed
2004-02-09 22:45:49 +00:00
peter
e6929a1a32
* more x86_64 parameter fixes
...
* tparalocation.lochigh is now used to indicate if registerhigh
is used and what the type is
2004-02-09 22:14:17 +00:00
olle
d173a77b9f
* macos: a_load_store fixed to only allocat temp reg if needed, side effect is compiler work for macos again.
2004-02-09 20:44:40 +00:00
peter
e741991cfc
* support X86_64 and NOX86_64 flags
2004-02-09 20:30:48 +00:00
olle
193e41b455
+ check that register allocation is not made at the wrong moment
2004-02-09 20:12:23 +00:00
peter
302040cc98
* reg_2_opsize replaced with reg_cgsize
2004-02-09 19:23:48 +00:00
florian
b4bbc5c383
* web bug #2942 fixed: reintroduce isn't necessary in methods of child classes of course
2004-02-08 23:30:43 +00:00
Jonas Maebe
71202a141d
* taicpu.is_same_reg_move() now gets a regtype parameter so it only
...
removes moves of that particular register type. This is necessary so
we don't remove the live_start instruction of a register before it
has been processed
2004-02-08 23:10:21 +00:00
florian
1e9e0b0e35
* fixed compilation problem
2004-02-08 23:06:59 +00:00
Jonas Maebe
9495f77117
- removed taicpu.is_reg_move because it's not used anymore
...
+ support tracking fpu register moves by rgobj for the ppc
2004-02-08 20:15:42 +00:00
Jonas Maebe
f121f1f7ec
* corrected first_param_offset for darwin
2004-02-08 20:03:05 +00:00
Jonas Maebe
3056a64bf0
* fixed regvars support. Needs -doldregvars to activate. Only tested with
...
ppc, other processors should however only require maxregvars and
maxfpuregvars constants in cpubase.pas. Remember to take scratch-
registers into account when defining that value.
2004-02-08 18:08:59 +00:00
Jonas Maebe
a8450c695d
* fixed regvars
2004-02-08 17:45:53 +00:00
florian
4f90e4afdc
+ PtrInt declared if VER1_0
2004-02-08 16:38:51 +00:00
Jonas Maebe
9843118433
* fixed for regvars + simplification
2004-02-08 14:51:04 +00:00
Jonas Maebe
a23c7932cf
* fixed previous commit
2004-02-08 14:50:13 +00:00
daniel
9868155d53
* Register allocator speed boost
2004-02-08 14:26:28 +00:00
daniel
46d241a666
* Take advantage of our new with statement optimization
2004-02-07 23:28:34 +00:00
Jonas Maebe
169c8f5a3b
* changed an explicit mr to a_load_reg_reg so it's registered with the
...
register allocator as move
2004-02-07 15:01:05 +00:00
florian
6a2a7d4ce6
+ arm support in Makefiles improved
2004-02-07 00:20:16 +00:00
daniel
42f9b1b0e2
* Removed not very usefull nextglobal & previousglobal fields from
...
Tstoreddef, saving 78 kb of memory
2004-02-06 22:37:00 +00:00
Jonas Maebe
5290787578
* don't put types that need init/fini in register temps
2004-02-06 20:22:58 +00:00
florian
b780c7852c
+ improved floating point compares for x86-64 and Pentium2 and above
2004-02-06 16:44:42 +00:00
florian
3cb562e41f
* movz*q fixed
2004-02-06 14:37:48 +00:00
daniel
be3eabc26f
* Some changes to better accomodate very large movelists
...
* movelist resizing now exponential (avoids heap fragmentation, saves
300 kb memory in make cycle)
* Trgobj.combine hand-optimized (still too slow)
2004-02-06 13:34:46 +00:00
florian
55557eea92
* more x86-64 fixes
2004-02-05 19:35:27 +00:00
peter
221090453c
* x86_64 fixes for opsize
2004-02-05 18:28:37 +00:00
florian
571d853415
* fixed (hopefully) the ansistring length bug
2004-02-05 16:58:43 +00:00
daniel
20469d47a0
* Tvarsym.highvarsym removed
2004-02-05 14:13:53 +00:00
florian
465aa5851b
* several fixes to compile x86-64 system
2004-02-05 01:24:08 +00:00
daniel
5db278a977
* Empty destructor Tlabelsym.destroy removed
2004-02-04 23:01:36 +00:00
daniel
63f2dfc2dd
* Tvarsym.highvarsym commented out (unused by compiler, purpose unknown)
2004-02-04 22:54:57 +00:00
daniel
d735071838
* Rtti generation moved to ncgutil
...
* Assmtai usage of symsym removed
* operator overloading cleanup up
2004-02-04 22:15:15 +00:00
peter
8c5b0f7d82
* first try to get cpupara working for x86_64
2004-02-04 22:01:13 +00:00
peter
8012731ede
*** empty log message ***
2004-02-04 19:22:27 +00:00
Jonas Maebe
0b1069b6ab
+ some more usage of register temps
2004-02-04 18:45:29 +00:00
olle
035c98cad2
* made more in phase with agppcgas.pas
2004-02-04 15:28:24 +00:00
olle
7e373764ba
* uodated header comment
2004-02-04 15:23:28 +00:00
peter
ecfbbeffc3
* renamed xNNbittype to xNNinttype
...
* renamed registers32 to registersint
* replace some s32bit,u32bit with torddef([su]inttype).def.typ
2004-02-03 22:32:53 +00:00
peter
663fa583d9
* real fix for the short jmp out of range problem. Only forward jumps
...
needs an offset correction. For backward jumps both the address of
the symbol and the instruction are already updated so no correction
is required.
2004-02-03 21:21:23 +00:00
peter
8a86aad56d
* remove previous commit
2004-02-03 21:19:40 +00:00
Jonas Maebe
5a98f00e7f
- removed mov "reg, reg" optimizations, as they are removed by the
...
register allocator and may be necessary to indicate a register may not
be reused before some point
2004-02-03 19:49:24 +00:00
Jonas Maebe
0d004c1e35
* fixed and re-enabled temps in registers
2004-02-03 19:48:06 +00:00
Jonas Maebe
43306edc96
* don't put the temp of a withnode in a register if debugging info is on,
...
because then our stabs generation internalerror's
2004-02-03 19:47:45 +00:00
Jonas Maebe
4ba9c9ec67
- removed "mov reg,reg" optimization (those instructions are removed by
...
the register allocator, and may be necessary to indicate a register
may not be released before some point)
2004-02-03 19:46:48 +00:00
Jonas Maebe
edb91b0d18
* disabled temps in registers for now, because the register allocator
...
can't handle it yet in some cases
2004-02-03 17:56:14 +00:00
Jonas Maebe
6eec8798cd
* cleanup
2004-02-03 17:55:50 +00:00