Commit Graph

173 Commits

Author SHA1 Message Date
olle
a02a1adee1 * changed global var access, TOC now contain pointers to globals
* fixed handling of function pointers
2003-01-13 17:17:50 +00:00
florian
2102ce7031 * fixed some PowerPC issues 2003-01-09 22:00:53 +00:00
florian
34a91d9171 * fixed broken PowerPC compiler 2003-01-09 20:41:10 +00:00
daniel
6e507ba483 * Added register conversion 2003-01-09 15:49:56 +00:00
olle
09f06d0cf3 * made powerpc compiler compile after Daniels Tregister modification 2003-01-09 11:22:14 +00:00
daniel
55a161bbbf * Tregister changed into a record 2003-01-08 18:43:56 +00:00
florian
938f46f246 * fixed some crashes and a rte 201 2002-12-15 19:22:01 +00:00
carl
3214bab118 * maxoperands -> max_operands (for portability in rautils.pas)
* fix some range-check errors with loadconst
  + add ncgadd unit to m68k
  * some bugfix of a_param_reg with LOC_CREFERENCE
2002-12-14 15:02:03 +00:00
florian
121ca40b39 * some variant <-> dyn. array stuff 2002-12-05 14:27:25 +00:00
olle
b924813d4a * changed proc ref from .xxx[PR] (refering to its section)
to .xxx (refering to its label) to allow for multiple ref to a proc.
2002-11-28 10:56:07 +00:00
olle
5e90be8184 * macos: changing code gen for references to globals 2002-11-28 10:55:16 +00:00
peter
f3fc72095f * splitted defbase in defutil,symutil,defcmp
* merged isconvertable and is_equal into compare_defs(_ext)
  * made operator search faster by walking the list only once
2002-11-25 17:43:16 +00:00
Jonas Maebe
85c3f6195a + some comments describing the fields of treference 2002-11-24 14:28:56 +00:00
peter
a496dbe1ff * pass proccalloption to ret_in_xxx and push_xxx functions 2002-11-18 17:31:54 +00:00
mazen
a835405a27 * fixed a compilation bug accmulator-->accumulator, in definition of return_result_reg 2002-11-17 18:26:15 +00:00
mazen
41153e2b1a + return_result_reg and function_result_reg are now used, in all plateforms, to pass functions result between called function and its caller. See the explanation of each one 2002-11-17 17:49:08 +00:00
carl
64655be168 * memory optimization (3-4%) : cleanup of tai fields,
cleanup of tdef and tsym fields.
  * make it work for m68k
2002-11-17 16:31:55 +00:00
Jonas Maebe
fb5b623e30 * fixed bctr(l) problems 2002-11-07 15:50:23 +00:00
olle
c5ac9e90af * globals are located in TOC and relative r2, instead of absolute
* symbols which only differs in case are treated as a single symbol
  + tai_const_symbol supported
  * only refs_full accepted
2002-11-04 18:24:53 +00:00
olle
9284b36d3b * macos: globals are located in TOC and relative r2, instead of absolute 2002-11-04 18:24:19 +00:00
olle
b71c1492a9 * macos entry/exit: only used registers are saved
- macos entry/exit: stackptr not saved in r31 anymore
  * macos entry/exit: misc fixes
2002-10-28 22:24:28 +00:00
olle
e2f2f22f91 * branch b does not jump to dotted symbol now 2002-10-23 15:31:01 +00:00
Jonas Maebe
f18626a534 * some range errors fixed 2002-10-21 18:08:05 +00:00
olle
650843907e * import directive changed 2002-10-19 23:52:40 +00:00
olle
4d3ed1a22c * macos stack frame size computing updated
+ macos epilogue: control register now restored
  * macos prologue and epilogue: fp reg now saved and restored
2002-10-19 23:51:48 +00:00
olle
7fde7960b5 * reorganized prologue and epilogue routines 2002-10-19 12:50:36 +00:00
Jonas Maebe
3be297f39c + added entry for pwchar_to_string conversion addition 2002-10-18 16:38:42 +00:00
florian
8ad5fe9533 * changes from Olle to get simple programs compiled and assembled 2002-10-10 19:39:37 +00:00
florian
d3bdd3550f * more mpw fixes 2002-10-07 21:19:53 +00:00
florian
14fe70d27d * fixed function exporting 2002-10-06 22:46:20 +00:00
florian
4cb3d9b498 * improve function imports 2002-10-02 22:14:15 +00:00
florian
fa4a4de18c * all A_BL instructions replaced by calls to a_call_name 2002-10-02 21:49:51 +00:00
Jonas Maebe
4510d75277 + set, variant support in getfuncretparaloc 2002-10-02 13:33:36 +00:00
Jonas Maebe
a738c4ddcf * changed a_call_* so that no superfluous code is generated anymore 2002-10-02 13:24:58 +00:00
olle
fa695eefea * made a_load_store more robust and to accept large offsets and cleaned up code 2002-10-01 05:24:28 +00:00
olle
2b122e04b2 * minor fix 2002-10-01 05:17:27 +00:00
Jonas Maebe
a9144c22c3 * is_nop() now identifies "mr rA,rA" instructions for removal 2002-09-30 23:16:49 +00:00
florian
71f7afa9a6 + getparaloc supports now sets and variants 2002-09-28 21:27:16 +00:00
florian
6b580dea5b + readed because previous version was broken 2002-09-27 21:09:49 +00:00
florian
f7b727850a no message 2002-09-27 20:51:37 +00:00
florian
3781508f8b * fixed last commit 2002-09-27 20:50:13 +00:00
florian
9c8c82432b * initial working implementation by Olle Raab 2002-09-27 20:47:14 +00:00
Jonas Maebe
456436c05c * fixed LOC_REFERENCE/LOC_CREFERENCE problems 2002-09-18 09:19:37 +00:00
Jonas Maebe
a15d8cfe39 * a_load_reg_reg() now has two size parameters: source and dest. This
allows some optimizations on architectures that don't encode the
    register size in the register name.
2002-09-17 18:54:01 +00:00
Jonas Maebe
2e41fdf381 - removed taicpu.destroy, its job is already handled by
taicpu_abstract.destroy() and this caused heap corruption
2002-09-17 18:26:02 +00:00
Jonas Maebe
17a0e516b5 * int64 paras are now handled correctly (until the registers are used up
anyway :)
  * the return location is now initialized correctly
  * fixed bug where ret_in_reg() was called for the procdefinition instead
    of for the result of the procedure
2002-09-10 21:28:05 +00:00
Jonas Maebe
02e9260997 + added some internal errors
* fixed bug in sysv exit code
2002-09-10 21:22:25 +00:00
Jonas Maebe
b72f53ab92 * fixed unary minus of 64bit values 2002-09-10 21:21:29 +00:00
florian
07eeafd07a * fixed offset calculation for symtables etc. 2002-09-10 20:30:42 +00:00
Jonas Maebe
775b065d70 * small optimization to case genlist() case statements 2002-09-09 13:57:45 +00:00