Commit Graph

5617 Commits

Author SHA1 Message Date
florian
0493cd3d2e * more x86-64 fixes 2003-09-25 13:13:32 +00:00
florian
f6e456268f * fixed make cycle 2003-09-24 21:15:49 +00:00
florian
cedff1a593 + processor type intialization for x86-64 added 2003-09-24 17:13:22 +00:00
florian
0b48a6a3ec * x86-64 adaptions 2003-09-24 17:12:36 +00:00
florian
8edd479391 * several fixes for new reg allocator 2003-09-24 17:12:02 +00:00
florian
88a3541c80 * x86_64 support; turn on by passing x86_64 2003-09-24 17:11:33 +00:00
marco
88e866dcb7 * (Peter) patch to fix snapshot 2003-09-24 13:02:10 +00:00
peter
420c1cdfe1 * don't call firstpass in resulttypepass 2003-09-23 21:10:11 +00:00
peter
72b8932713 * check for refs>0 in init/final local data 2003-09-23 21:03:59 +00:00
peter
d3063f722c * connect parasym to paraitem 2003-09-23 21:03:35 +00:00
peter
72761249f1 * fix global var+offset 2003-09-23 20:37:53 +00:00
peter
56ece89fe5 * fpc_check_object(_ext) has saveregisters and doesn't need
saving of registers
2003-09-23 20:37:16 +00:00
peter
06071e3d31 * remove obsolete code 2003-09-23 20:36:47 +00:00
peter
ddc50a91ca * add missing release of main_proc 2003-09-23 18:03:08 +00:00
peter
9ef935b8a7 * recordminalign for sparc 0 2003-09-23 17:58:38 +00:00
peter
8af51ea6d3 * locals and paras are allocated in the code generation
* tvarsym.localloc contains the location of para/local when
    generating code for the current procedure
2003-09-23 17:56:05 +00:00
marco
a2f5d5f579 * adapted to unixutil 2003-09-18 15:48:22 +00:00
marco
86cdc8f4d1 * BSD 1.0.x still uses st_ prefixes. 2003-09-18 15:38:17 +00:00
marco
4b6df870be * fix for snapshot building. 2003-09-18 08:50:48 +00:00
olle
6f78eac09f + support for a different set of compiler directives under $MODE MAC
+ added mac directives $SETC $IFC $ELSEC $ENDC
2003-09-17 22:30:19 +00:00
olle
f891435ca0 + added command line option for language mode -M<x>
+ helpinfo powerpc targets
2003-09-17 21:38:54 +00:00
olle
41fda4ee40 + added command line option for language mode -M<x> 2003-09-17 21:37:07 +00:00
peter
76a53a375d * varspez in calls to push_addr_param 2003-09-16 16:17:01 +00:00
peter
369fe529be * obsolete 2003-09-16 15:14:49 +00:00
marco
cc3c6c7f4a * Had a useless dependancy on unit unix in 1_1 mode 2003-09-16 13:42:39 +00:00
marco
fd800a1de8 * now for all platforms 2003-09-16 07:07:29 +00:00
marco
cf0c2af370 * fixed 2003-09-15 20:11:06 +00:00
daniel
505f97b75a * Removed m68k from fullcycle 2003-09-15 16:30:41 +00:00
Jonas Maebe
5677b3c274 * fixed release_reg_left_right for fpu registers 2003-09-14 21:57:08 +00:00
Jonas Maebe
0bc32cbcd1 + implemented volatile register queries 2003-09-14 21:56:41 +00:00
peter
94b2de254f * remove ppc code 2003-09-14 21:36:01 +00:00
peter
dfd282aac6 * flags2reg fixed
* fixed 64bit not
2003-09-14 21:35:52 +00:00
peter
46e1925e11 * new volatile registers proc 2003-09-14 21:35:15 +00:00
peter
3ccd30efde * fix setelementn support
* fix loading of flags
2003-09-14 21:34:16 +00:00
peter
c8bc89720c * location_force_reg gives IE when size=OS_NO 2003-09-14 21:33:37 +00:00
peter
1fcc82e61a * don't check exepath when linking on target 2003-09-14 21:33:11 +00:00
marco
4144f93ce5 * Unix reform 2003-09-14 20:26:18 +00:00
daniel
62e1074d1f * Fixed endian problem in Tregisterrec record 2003-09-14 19:30:58 +00:00
peter
d76dc1047e * updates for new ra 2003-09-14 19:19:04 +00:00
peter
f8bb9785e0 * remove obsolete code already in comments 2003-09-14 19:18:10 +00:00
peter
bf0d3c730f * don't use a_call_ref because it can use a parameter register
as temp
2003-09-14 19:17:39 +00:00
Jonas Maebe
5a5b42e927 - removed initialization code 2003-09-14 17:27:56 +00:00
Jonas Maebe
c8863b920b * fixed some ppc problems 2003-09-14 16:37:20 +00:00
daniel
1e02028986 * Fixed incorrect movzx spilling 2003-09-14 14:22:51 +00:00
peter
90f37cbcda * obsolete 2003-09-14 13:20:24 +00:00
peter
aca99d30e8 * fix previous commit, also include objectsymtable 2003-09-14 13:20:12 +00:00
peter
836dc5f062 * give IE when st is not assigned in deref 2003-09-14 12:58:29 +00:00
peter
8dd0a4027a * support mulitple overloads in implementation, this is delphi
compatible
  * procsym only stores the overloads available in the interface
2003-09-14 12:58:00 +00:00
peter
9311d0803d * save destroyed registers when calling threadvar helper 2003-09-14 12:57:10 +00:00
Jonas Maebe
d6fead1277 * fixed compilation for non-x86 2003-09-14 12:55:06 +00:00
daniel
c82243df4d * Add BTR to destination memory location check in spilling 2003-09-12 20:25:17 +00:00
daniel
90e1ca64f3 * Fixed fast spilling functionality by re-adding the code that initializes
precoloured nodes to degree 255. I would like to play hangman on the one
    who removed that code.
2003-09-12 19:07:42 +00:00
olle
e313062d0b * max lenght of symbols increased to 255
* emitted strings can now contain backslashes
2003-09-12 12:30:27 +00:00
florian
8f66389b46 * improved arm code generation
* move some protected and private field around
  * the temp. register for register parameters/arguments are now released
    before the move to the parameter register is done. This improves
    the code in a lot of cases.
2003-09-11 11:54:59 +00:00
daniel
079751b894 * Failed attempt to restore broken fastspill functionality 2003-09-10 19:14:31 +00:00
marco
305226dd23 * fix from peter for bts reg32,mem32 problem 2003-09-10 11:23:09 +00:00
marco
cd5ae5fcc3 * Patch from Peter for paraloc 2003-09-10 08:31:47 +00:00
peter
3a3d710c47 * basics for x86 register calling 2003-09-09 21:03:17 +00:00
daniel
49e539ac8d * Adding register allocation order 2003-09-09 20:59:27 +00:00
peter
05a15df3c2 * use register with least interferences in spillregister 2003-09-09 15:55:44 +00:00
peter
6b06f9e985 * winapi doesn't like pushing 8 byte record 2003-09-09 15:55:05 +00:00
peter
0a8bddc756 * calling convention fix 2003-09-09 15:54:10 +00:00
florian
f495796796 * x86 instruction table updated to nasm 0.98.37:
- sse3 aka prescott support
      - small fixes
2003-09-09 12:54:45 +00:00
florian
df906eda61 * some assembling problems fixed
* improved loadaddr_ref_reg
2003-09-09 12:53:39 +00:00
peter
64bc322e0e * fix compilerproc for default=oldfpccall 2003-09-08 18:28:51 +00:00
peter
b9d09a4e5c * preparations for different default calling conventions
* various RA fixes
2003-09-07 22:09:34 +00:00
florian
61c2b19b5c * proper error recovering from invalid published fields 2003-09-07 14:14:51 +00:00
olle
dea663850a * reverted last change, linux on powerpc still uses aix abi 2003-09-07 09:08:26 +00:00
florian
f3e9e7a24f * fixed web bug #2669
* cosmetic fix in printnode
  * tobjectdef.gettypename implemented
2003-09-06 22:27:08 +00:00
florian
eb9a587759 + support of NaN and Inf in the compiler as values of real constants 2003-09-06 16:47:24 +00:00
florian
e78dd95d0b * fixed exit code (no preindexed addressing mode in LDM) 2003-09-06 16:45:51 +00:00
florian
bd6bf8ac94 * fixed stm and ldm to be usable with preindex operand 2003-09-06 11:21:49 +00:00
olle
ce46a4fe31 * linux on powerpc now uses sysv abi 2003-09-06 10:46:56 +00:00
olle
82e40f6506 + compiler now define abi macros for powerpc FPC_ABI_AIX or FPC_ABI_SYSV 2003-09-06 10:41:54 +00:00
florian
a13ce1dfb4 + added *_watcom units 2003-09-06 10:01:11 +00:00
florian
1a95384ec1 * arm is working again as before the new register naming scheme was implemented 2003-09-05 23:57:01 +00:00
florian
22f1ff8da4 * merged Wiktor's Watcom patches in 1.1 2003-09-05 17:41:12 +00:00
marco
f34e9e5adf * applied Peter's patch. Now cycles. 2003-09-05 11:21:39 +00:00
olle
4471dd1d26 + bugfix, put token UNIMPLEMENTED in right order 2003-09-04 21:58:16 +00:00
olle
30938b72a7 + added new lagnuage mode: MAC 2003-09-04 21:37:29 +00:00
florian
024d08e05a * ARM compiler compiles again 2003-09-04 21:07:03 +00:00
peter
dfd60cb507 * released useparatemp 2003-09-04 15:39:58 +00:00
peter
059908d399 * abort with IE when spilling requires > 20 loops 2003-09-04 14:46:12 +00:00
peter
01a1f7d063 * return 0 instead of $ff when no reg is found 2003-09-04 14:42:44 +00:00
florian
0d3832776f * first bunch of adaptions of arm compiler for new register type 2003-09-04 00:15:28 +00:00
peter
610cbec252 * fixes for FPU register allocation 2003-09-03 21:06:45 +00:00
peter
adeae3a00b * write INVALID as register name instead of IE 2003-09-03 21:06:19 +00:00
peter
b4d54b1889 * powerpc needs software int64 to double 2003-09-03 21:06:05 +00:00
peter
98d153815c * some fixes for ppc 2003-09-03 21:04:14 +00:00
peter
ded08a12a9 * regenerated 2003-09-03 20:35:57 +00:00
peter
36bb27dab3 * fixed number sorting 2003-09-03 20:35:06 +00:00
peter
386027ffb5 * fixed sorting of register number 2003-09-03 20:33:28 +00:00
peter
c05cf49b35 * removed empty cga unit 2003-09-03 19:39:16 +00:00
peter
ef23ab2c78 * powerpc reg update 2003-09-03 19:37:07 +00:00
peter
601160a0e3 * powerpc compiles again 2003-09-03 19:35:24 +00:00
florian
91533b5d5a * initial revision of new register naming 2003-09-03 19:10:30 +00:00
florian
100cec5cee * inital revision derived from sparc 2003-09-03 19:09:35 +00:00
peter
3a3bdd95a7 * superregisters also from .dat file 2003-09-03 16:29:37 +00:00
peter
b66e477dd8 * also generate superregisters 2003-09-03 16:28:16 +00:00
peter
6a8d5eb25d * NEWRA branch merged 2003-09-03 15:55:00 +00:00