Commit Graph

3906 Commits

Author SHA1 Message Date
peter
f6b3e2e37f * synchronized cpubase between powerpc and i386
* moved more tables from cpubase to cpuasm
  * tai_align_abstract moved to tainst, cpuasm must define
    the tai_align class now, which may be empty
2002-05-14 17:28:08 +00:00
peter
4a176c81bc * removed n386ld and n386util units
* maybe_save/maybe_restore added instead of the old maybe_push
2002-05-13 19:54:36 +00:00
peter
51688dade3 * a ppcppc can be build again 2002-05-13 19:52:46 +00:00
carl
11a60a8a1e * some small portability fixes 2002-05-12 19:58:36 +00:00
carl
a5c4e33b65 * maybe_loadself portable 2002-05-12 19:57:16 +00:00
peter
4dcd96747e * moved entry and exitcode to ncgutil and cgobj
* foreach gets extra argument for passing local data to the
    iterator function
  * -CR checks also class typecasts at runtime by changing them
    into as
  * fixed compiler to cycle with the -CR option
  * fixed stabs with elf writer, finally the global variables can
    be watched
  * removed a lot of routines from cga unit and replaced them by
    calls to cgobj
  * u32bit-s32bit updates for and,or,xor nodes. When one element is
    u32bit then the other is typecasted also to u32bit without giving
    a rangecheck warning/error.
  * fixed pascal calling method with reversing also the high tree in
    the parast, detected by tcalcst3 test
2002-05-12 16:53:04 +00:00
carl
682c2289fa + added more patches from Mazen for SPARC port 2002-05-06 19:54:50 +00:00
carl
f3e1648aa9 + added more patches from Mazen for SPARC port 2002-05-06 19:46:36 +00:00
peter
268e4bb7e7 * use saveregisters for incr routines, saves also problems with
the optimizer
2002-04-26 15:19:04 +00:00
peter
cc8c4d7093 * moved more routines from cga/n386util 2002-04-25 20:16:38 +00:00
florian
6bbaa14daf * block nodes within expressions shouldn't release the used registers,
fixed using a flag till the new rg is ready
2002-04-25 20:15:39 +00:00
florian
37194d2f61 * fixed more problems with cpubase and x86-64 2002-04-25 16:12:09 +00:00
carl
ddc17340fc * fix compilation problem 2002-04-24 16:08:30 +00:00
peter
67ede1276b * add pinline unit that inserts compiler supported functions using
one or more statements
  * moved finalize and setlength from ninl to pinline
2002-04-23 19:16:34 +00:00
peter
51c5fb965e * updated for posinfo change
* updated for mangledname change
  * include i386 registers, removed reference to cpubase unit that would
    make ppudump dependent on the source processor
2002-04-23 13:12:58 +00:00
carl
03d841893e - remove use_bound_instruction field 2002-04-22 18:19:22 +00:00
peter
624e5bd699 * fixed @methodpointer 2002-04-22 16:30:05 +00:00
carl
458a7f58dc + added patch for SPARC from Mazen (to move to cpuinfo) 2002-04-21 19:46:52 +00:00
peter
6320530bdd * removed newn and disposen nodes, the code is now directly
inlined from pexpr
  * -an option that will write the secondpass nodes to the .s file, this
    requires EXTDEBUG define to actually write the info
  * fixed various internal errors and crashes due recent code changes
2002-04-21 19:02:03 +00:00
peter
5ea6f2b824 * fixed memleaks when file can't be opened 2002-04-21 18:57:23 +00:00
carl
5cdad9e30f * some small updates according to i386 version 2002-04-21 15:48:39 +00:00
carl
d8f8e2615c * change stack size to 256K 2002-04-21 15:43:58 +00:00
carl
1da6f9535c * changeregsize -> rg.makeregsize
* changeregsize moved from cpubase to here
2002-04-21 15:43:32 +00:00
carl
21593abffb - removed some other stuff to their units 2002-04-21 15:31:40 +00:00
carl
654e5540ee * changeregsize -> rg.makeregsize
+ a_jmp_always added
2002-04-21 15:31:05 +00:00
carl
fb605f11b0 * changeregsize -> rg.makeregsize 2002-04-21 15:29:53 +00:00
carl
af40eb97ca * a_jmp_cond -> a_jmp_always 2002-04-21 15:28:51 +00:00
carl
75c39ebf55 - remove duplicate constants
- move some constants to cginfo
2002-04-21 15:28:06 +00:00
carl
aab3219beb * move stuff to cpuinfo and cpubase
+ documented
2002-04-21 15:26:15 +00:00
carl
59f8a16c39 + a_jmp_cond -> a_jmp_always (a_jmp_cond is NOT portable)
+ changeregsize -> rg.makeregsize
2002-04-21 15:24:38 +00:00
carl
f3c2dfa604 + changeregsize -> makeregsize 2002-04-21 15:23:34 +00:00
carl
c3dfda6e7c + makeregsize
+ changeregsize is now a local routine
2002-04-21 15:23:03 +00:00
carl
572b87cade * first check .inc file extension 2002-04-21 15:22:26 +00:00
carl
1f52a0cbe7 - remove my fixes until Peter agrees on the fix (sorry Peter) 2002-04-21 07:24:09 +00:00
carl
83ee224b80 + optimization cpu specific information base file 2002-04-20 21:50:14 +00:00
carl
e24605c17e * fix stack size for some targets
+ add offset to parameters from frame pointer info.
- remove some unused stuff
2002-04-20 21:43:18 +00:00
carl
9b12acc70a * renamed some constants 2002-04-20 21:38:45 +00:00
carl
b4f0af389d + generic FPC_CHECKPOINTER
+ first parameter offset in stack now portable
* rename some constants
+ move some cpu stuff to other units
- remove unused constents
* fix stacksize for some targets
* fix generic size problems which depend now on EXTEND_SIZE constant
* removing frame pointer in routines is only available for : i386,m68k and vis targets
2002-04-20 21:37:07 +00:00
carl
87aa88e9b7 + generic FPC_CHECKPOINTER
+ first parameter offset in stack now portable
* rename some constants
+ move some cpu stuff to other units
- remove unused constents
* fix stacksize for some targets
* fix generic size problems which depend now on EXTEND_SIZE constant
2002-04-20 21:32:23 +00:00
carl
1825ca25de - remove ifdef i386 define 2002-04-20 15:27:05 +00:00
peter
70ff711f73 * mangledname rewrite, tprocdef.mangledname is now created dynamicly
in most cases and not written to the ppu
  * add mangeledname_prefix() routine to generate the prefix of
    manglednames depending on the current procedure, object and module
  * removed static procprefix since the mangledname is now build only
    on demand from tprocdef.mangledname
2002-04-19 15:46:01 +00:00
peter
17cd547898 * default extension checking for include files 2002-04-19 15:42:11 +00:00
peter
a3e5fcecde * better replacements that also allow $1 in the replacements without
replacing that instance also
2002-04-19 15:41:39 +00:00
peter
b599237202 * optimize tfileposinfo writing, this reduces the ppu size with 20% 2002-04-19 15:40:40 +00:00
peter
8d0751ff97 * removed some more routines from cga
* moved location_force_reg/mem to ncgutil
  * moved arrayconstructnode secondpass to ncgld
2002-04-19 15:39:34 +00:00
peter
2dcf2ee940 * give error when using enums with jumps as array index
* allow char as enum value
2002-04-16 16:12:47 +00:00
peter
8af460ac31 * using inherited; without a parent having the same function
will do nothing like delphi
2002-04-16 16:11:17 +00:00
peter
c7428a9e4a * allow passing the address of a procedure to a formal parameter
in delphi mode
2002-04-16 16:09:08 +00:00
peter
6d3ac41ce6 * fixed conflicts between the last 2 commits 2002-04-15 19:53:54 +00:00
peter
3bcfe33002 * fixed stackcheck that would be called recursively when a stack
error was found
  * generic changeregsize(reg,size) for i386 register resizing
  * removed some more routines from cga unit
  * fixed returnvalue handling
  * fixed default stacksize of linux and go32v2, 8kb was a bit small :-)
2002-04-15 19:44:18 +00:00