Commit Graph

493 Commits

Author SHA1 Message Date
peter
35e466d971 * remove copy_value_on_stack and a_param_copy_ref 2005-01-20 17:47:01 +00:00
peter
04c97cc129 * load jmp_buf_size from system unit 2005-01-20 16:38:45 +00:00
peter
8d251e8506 * unit mapping rewrite
* new derefmap added
2005-01-19 22:19:41 +00:00
Jonas Maebe
52212c3fb6 * fixed overallocation of stack space for parameters under SYSV
(introduced in one of my previous commits)
  * unified code of get_volatile_registers_fpu for SYSV and AIX
2005-01-14 20:59:17 +00:00
Jonas Maebe
74cc20070d * r2 can be used by the register allocator under Darwin
* merged the initialisations of the fpu register allocator for AIX and
    SYSV
2005-01-13 22:02:40 +00:00
Jonas Maebe
8654fac06c * fixed copy_value_on_stack() for AIX abi
+ added support for passing empty record parameters
2005-01-13 19:32:08 +00:00
Jonas Maebe
9c22d594b0 + support for passing records in registers under darwin
* tcgpara now also has an intsize field, which contains the size in
    bytes of the whole parameter
2005-01-10 21:50:05 +00:00
Jonas Maebe
e0eb172f4b - removed deprecated constants 2005-01-10 21:48:45 +00:00
Jonas Maebe
7fc8f866c6 * fixed stupid tregister/tsuperregister bug (type checking circumvented
using explicit typecase), caused bug3523
2005-01-07 10:58:03 +00:00
Károly Balogh
5908985365 * more SysV call support stuff for MorphOS 2005-01-06 02:13:03 +00:00
Károly Balogh
18be2ff0fd * sysv abi also uses F0-F13 as volatile registers 2005-01-05 19:01:53 +00:00
Károly Balogh
86c111a794 * fixed SysV syscall support (MorphOS) 2005-01-05 02:31:06 +00:00
Károly Balogh
088575dc32 + sysv style syscalls added for MorphOS 2005-01-04 17:40:33 +00:00
olle
3f7fdcb45e * fixed compilation for PowerPC 2004-12-28 02:25:43 +00:00
Jonas Maebe
d377cacc61 * fixed call-by-value passing of records with size 1, 2 or 4 for AIX abi
(using a hack, normally all records should by passed by value under the
     aix abi, but that's currently impossible)
2004-12-24 15:00:11 +00:00
Jonas Maebe
067c588089 - removed unused variables 2004-12-24 11:58:33 +00:00
Jonas Maebe
4c3b9ce6c3 * fixed a_jmp_name() for darwin 2004-12-24 11:51:55 +00:00
peter
fad0e529a4 * syscall with sysv abi for morphos 2004-12-15 19:30:32 +00:00
Jonas Maebe
fcf16c4983 * fixed synchronising 64bit regvars on 32bit systems at the start and
end of procedures
  * hack for ppc for loading of paras from their callee location to local
    temps
2004-12-11 12:42:28 +00:00
Jonas Maebe
5b7ffabd0c * only set/clear bit 6 of cr in case of varargs for the sysv abi 2004-12-06 18:06:37 +00:00
Jonas Maebe
4f53d8367d * introduced bug (x shl 65 = x shl 1 when shifting with a constant, but
still 0 otherwise) to pass tshlshr
2004-12-06 17:53:43 +00:00
Jonas Maebe
49a8939b22 * modifications to work with the generic code to copy LOC_REFERENCE
parameters to local temps (fixes tests/test/cg/tmanypara)
2004-12-04 21:47:46 +00:00
Jonas Maebe
bd04491f50 * patch from Peter to fix inlining of case statements 2004-11-30 18:13:39 +00:00
Jonas Maebe
26ab4ead33 * fixed intermittent bug in overflow checking of subtractions 2004-11-26 12:30:47 +00:00
Jonas Maebe
fff0683902 * fixed overflow checking of unsigned multiplications 2004-11-26 12:17:04 +00:00
peter
8cf8c54609 * fixed varargs
* replaced dynarray with tlist
2004-11-22 22:01:19 +00:00
peter
89b1b583c9 * ttempcreatenode.create_reg merged into .create with parameter
whether a register is allowed
  * funcret_paraloc renamed to funcretloc
2004-11-21 17:54:59 +00:00
florian
18f7aa97dd * changed funcret location back to tlocation 2004-11-21 17:17:03 +00:00
peter
4d8460ec2f * float routines all use internproc and compilerproc helpers 2004-11-21 15:35:23 +00:00
peter
e740a66636 * tparaitem removed, use tparavarsym instead
* parameter order is now calculated from paranr value in tparavarsym
2004-11-15 23:35:30 +00:00
florian
60e0494a74 * fixed morphos syscall 2004-11-14 16:26:29 +00:00
peter
0c7e53bb81 * fixed compile of powerpc,sparc,arm 2004-11-11 19:31:33 +00:00
peter
c95a859f0a * generic tlocation
* move tlocation to cgutils
2004-10-31 21:45:02 +00:00
olle
8763a9166a + Change of the way global variables, with multiple entrypoints,
are referenced, fixes a lot of failed tests
2004-10-31 15:32:13 +00:00
Jonas Maebe
e737e39888 * fixed bugs due to change of the value field of tlocation from aword to
aint
2004-10-26 18:22:31 +00:00
Jonas Maebe
0a32b9a526 * fixed tlocation record again for big endian
* fixed (currently unused) saved_standard_registers array
2004-10-26 18:22:04 +00:00
Jonas Maebe
c0b4a9026c + empty g_save_standard_registers/g_restore_standard_registers overrides
(their work was/is done by g_proc_entry/g_proc_exit, and the generic
     version saves the registers in the wrong place)
2004-10-26 18:21:29 +00:00
peter
d19663f3a8 * save standard registers moved to tcgobj 2004-10-25 15:36:47 +00:00
peter
705868e816 * remove saveregister calling convention 2004-10-24 20:01:08 +00:00
peter
2ee2004032 * fixed compilation with removed loadref 2004-10-24 11:53:45 +00:00
Jonas Maebe
513b687ce7 + support for nostackframe directive 2004-10-20 07:32:42 +00:00
mazen
3b092352e1 - remove $IFDEF DELPHI and related code
- remove $IFDEF FPCPROCVAR and related code
2004-10-15 09:30:13 +00:00
Jonas Maebe
99c6740d7d * include pi_do_call if we generate a call instead of internalerroring
(workaround)
2004-10-11 07:13:14 +00:00
olle
8461184f4b * minor fix 2004-10-09 10:48:34 +00:00
florian
36112785f8 * indention fixed 2004-09-25 20:28:20 +00:00
peter
65c3ba277c * ungetregister is now only used for cpuregisters, renamed to
ungetcpuregister
  * renamed (get|unget)explicitregister(s) to ..cpuregister
  * removed location-release/reference_release
2004-09-25 14:23:54 +00:00
peter
33a834821f * paraloc branch merged 2004-09-21 17:25:12 +00:00
olle
6daacd9e0e * floating point constants is now written as byte pattern, to have exact control of each bit. 2004-09-10 11:23:52 +00:00
Jonas Maebe
c2210f01b9 * only specially handle 64bit operations on ordinals 2004-08-30 09:28:40 +00:00
olle
07e8c04224 * made target macos really work again after the dwarf merge 2004-07-26 22:26:39 +00:00