Commit Graph

13637 Commits

Author SHA1 Message Date
peter
93f683c63c * allow pointer(int64) in all modes 2003-06-03 21:02:08 +00:00
daniel
5c6da84d2c * Restored original methodpointer code for non newra case 2003-06-03 20:27:02 +00:00
mazen
af653c3dd7 - removed unneeded ifdefs
- removed unneeded cases for sparc and x86_64
2003-06-03 20:21:45 +00:00
Jonas Maebe
cbe4a3abd1 * fixed ref/loc problems 2003-06-03 15:49:49 +00:00
daniel
fc90d8ab4b * fixed conflict marks 2003-06-03 15:06:37 +00:00
marco
bb651017e8 * Moved prototypes outside of baseunix. And shared with linux for now 2003-06-03 14:23:45 +00:00
daniel
41e0bc4cec * Register allocator finished 2003-06-03 13:01:59 +00:00
michael
7f072488e3 + Patch from Peter for millisecond timing 2003-06-03 07:54:27 +00:00
florian
b84cead281 * absolutesyms aren't fpuregable either 2003-06-02 22:59:17 +00:00
florian
89cc00f6e4 * classes and interfaces can be stored in integer registers 2003-06-02 22:55:28 +00:00
florian
bfd89a3fd3 * better handling of CREGISTER in subscript nodes 2003-06-02 22:35:45 +00:00
mazen
ae80816ac2 + adding assmbling of prt0.as to the script 2003-06-02 22:05:56 +00:00
mazen
a7f7e0dab5 * fixing naming conflict in public clause of
FPC_SYSCALL? definition
2003-06-02 22:05:03 +00:00
mazen
13d509cde4 *making init and fini symbols compatible FPC code by
changing  _init ==> fpc_initialize
 and _fini ==> fpc_finalize
2003-06-02 22:03:37 +00:00
Jonas Maebe
6f3e16298a * function results can now also be regvars
- removed tprocinfo.return_offset, never use it again since it's invalid
    if the result is a regvar
2003-06-02 21:42:05 +00:00
peter
230a14ff68 * getregisterfpu size parameter added
* op_const_reg size parameter added
  * sparc updates
2003-06-01 21:38:06 +00:00
marco
6c4e662ab1 * Several small fixes to harmonize the *BSD rtls and Linux. 2003-06-01 16:35:27 +00:00
marco
cc84ef0e7c * small rearrangements 2003-06-01 16:28:56 +00:00
marco
0525a73548 * Enhancements to make the compiler baseunix using. 2003-06-01 16:28:41 +00:00
marco
ca54415fb0 * now generic 2003-06-01 15:25:14 +00:00
marco
13b0db9269 * Shared for now 2003-06-01 15:23:46 +00:00
Jonas Maebe
f0227e6a17 * fpc_shortstr_append_shortstr has to use high(s1) instead of 255 as
maxlen
  + ppc version of fpc_shortstr_append_shortstr
2003-06-01 14:50:17 +00:00
marco
a101c4f2ec * Fix to get it to build "name" was considered dup ident. Changed to
envname and added logs
2003-06-01 14:40:05 +00:00
Jonas Maebe
abc1c5bf2f * fix for bug in fixref that Peter found during the Sparc conversion 2003-06-01 13:42:18 +00:00
peter
7b3095fe27 * reference fixes 2003-06-01 01:04:35 +00:00
peter
e03a8f8f69 * FMOVs fixed 2003-06-01 01:03:53 +00:00
peter
0106a4a537 * remove unsupported combinations
* reg_ref_reg only allowed for refs_lo,refs_hi
2003-06-01 01:03:41 +00:00
peter
948ef20ecc * generic a_call_ref 2003-06-01 01:02:39 +00:00
Jonas Maebe
4d70aebb1b * constant evaluation of trunc() and round() now also gives 64 bit
results
2003-05-31 21:29:04 +00:00
Jonas Maebe
a6d430204c * temp fix/hack for nested procedures (disable regvars in all procedures
that have nested procedures)
  * leave register parameters in their own register (instead of storing
    them to memory or assigning them to another register) if the current
    procedure doesn't call any other procedures
2003-05-31 20:33:57 +00:00
Jonas Maebe
f67e370ce1 * set inital costs of assigning a variable to a register to 120 for
non-i386, because the used register must be store to memory at the
    start and loaded again at the end
2003-05-31 20:31:11 +00:00
Jonas Maebe
dbf22a6cc9 * changed copyvalueparas so it also supports register parameters
(except for copy_value_openarray, but that one is seriously broken
     anyway, since it expects that the high parameter will always be in
     memory right after the pointer to the array, while it could just as
     will be in a register)
2003-05-31 20:28:17 +00:00
Jonas Maebe
5a4c00bedd * added pi_do_call if a procedure has a value shortstring parameter
(it's copied to the local stackframe with a helper)
2003-05-31 20:23:39 +00:00
Jonas Maebe
18f6811154 * fixed 64 bit results of trunc and round 2003-05-31 20:22:06 +00:00
Jonas Maebe
8b60e1e414 * add default system for ppc 2003-05-31 18:14:06 +00:00
peter
c3b2b3b34b * regenerated 2003-05-31 18:07:50 +00:00
marco
ce67daed63 * Fix to not print empty -Fl when gcclib not found 2003-05-31 17:15:40 +00:00
marco
93299ef090 * works via system unit call now, because of powerpc 2003-05-31 16:57:22 +00:00
marco
65edaa4990 * First working version. CVS: ---------------------------------------------------------------------- 2003-05-31 16:50:16 +00:00
peter
9cafe9c315 * fixed opsize and operand size setting for 64bit values 2003-05-31 16:22:28 +00:00
marco
d2d02b6cc6 * cpuppc -> cpupowerpc. Target compiler was always linux for ppc 2003-05-31 16:17:27 +00:00
peter
1e7ecac976 * FUNCTION_RESULT64_LOW/HIGH_REG added for int64 results 2003-05-31 15:05:28 +00:00
peter
0e11419a26 * load_loc_reg update 2003-05-31 15:04:31 +00:00
peter
790e125329 * register fixes 2003-05-31 01:00:51 +00:00
peter
92430d4881 * typo in FUNCTION_RESULT_REG 2003-05-31 00:59:44 +00:00
Jonas Maebe
2961250600 * fixed my previous commit 2003-05-31 00:48:15 +00:00
peter
414bd5fa22 * more sparc cleanup
* accumulator removed, splitted in function_return_reg (called) and
    function_result_reg (caller)
2003-05-30 23:57:08 +00:00
florian
d992e13e08 * fixed parameter passing for int64 2003-05-30 23:56:41 +00:00
Jonas Maebe
31db518df3 * forgot to commit, a_load_loc_reg change 2003-05-30 23:54:08 +00:00
Jonas Maebe
e7e2cfe9a4 * a_load_loc_reg now has an extra size parameter for the destination
register (properly fixes what I worked around in revision 1.106 of
    ncgutil.pas)
2003-05-30 23:49:18 +00:00