Commit Graph

50 Commits

Author SHA1 Message Date
florian
2258e941af + inlined procedures inherit procinfo flags 2003-12-16 21:29:24 +00:00
peter
1d11c6d651 * line break in uses unit 2003-12-08 21:04:08 +00:00
peter
f663d2488f * cross unit inlining fixed 2003-11-10 22:02:52 +00:00
peter
6878c55c80 * write derefdata in a separate ppu entry 2003-10-22 20:39:59 +00:00
peter
b7d99ec934 * paraloc splitted in callerparaloc,calleeparaloc
* sparc calling convention updates
2003-07-02 22:18:04 +00:00
peter
bfb8ae2151 * sym,def resolving partly rewritten to support also parent objects
not directly available through the uses clause
2003-06-25 18:31:23 +00:00
peter
ff431f21ae * updated for new deref info 2003-06-09 12:59:00 +00:00
peter
457b3919bd * new procoptions 2003-06-05 20:06:11 +00:00
peter
1a2eedd767 * self moved to hidden parameter
* removed hdisposen,hnewn,selfn
2003-05-09 17:47:02 +00:00
peter
7f14891d66 * aktprocdef cleanup, aktprocdef is now always nil when parsing
a new procdef declaration
  * aktprocsym removed
  * lexlevel removed, use symtable.symtablelevel instead
  * implicit init/final code uses the normal genentry/genexit
  * funcret state checking updated for new funcret handling
2003-04-27 07:29:50 +00:00
peter
063979bcae * length of tparalocation is now stored in ppu 2003-04-26 09:56:24 +00:00
peter
f4b818fc1d * removed funcretn,funcretsym, function result is now in varsym
and aliases for result and function name are added using absolutesym
  * vs_hidden parameter for funcret passed in parameter
  * vs_hidden fixes
  * writenode changed to printnode and released from extdebug
  * -vp option added to generate a tree.log with the nodetree
  * nicer printnode for statements, callnode
2003-04-25 20:59:33 +00:00
peter
8da3f59d32 * vs_hidden released 2003-04-10 17:57:52 +00:00
Tomas Hajny
2f75669bbd + emx target added 2003-03-24 19:57:54 +00:00
peter
ec66760702 * store symoptions also for procdef
* check symoptions (private,public) when calculating possible
    overload candidates
2003-03-17 15:54:22 +00:00
peter
ce5fa9843f * updated for absolutesym and varsym 2003-01-03 22:16:29 +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
peter
21933875b5 * store original source time in ppu so it can be compared instead of
comparing with the ppu time
2002-10-20 14:49:31 +00:00
florian
4337ecfd55 + dump of tdefoptions.df_unique 2002-10-06 12:25:53 +00:00
carl
2c60fab4a4 * update system information 2002-09-27 21:22:04 +00:00
florian
344d688209 + support of constguid and constwchar const symbols added 2002-09-26 12:03:54 +00:00
peter
70028e433d * write address of varsym always 2002-08-20 16:54:40 +00:00
peter
91b49914f6 * More fixes for cross unit inlining, all tnodes are now implemented
* Moved pocall_internconst to po_internconst because it is not a
    calling type at all and it conflicted when inlining of these small
    functions was requested
2002-08-19 19:36:42 +00:00
carl
588abc6631 * jmpbuf size allocation for exceptions is now cpu specific (as it should)
* more generic nodes for maths
  * several fixes for better m68k support
2002-08-15 15:15:55 +00:00
peter
ac71268ce6 * saving of asmsymbols in ppu supported
* asmsymbollist global is removed and moved into a new class
    tasmlibrarydata that will hold the info of a .a file which
    corresponds with a single module. Added librarydata to tmodule
    to keep the library info stored for the module. In the future the
    objectfiles will also be stored to the tasmlibrarydata class
  * all getlabel/newasmsymbol and friends are moved to the new class
2002-08-11 13:24:10 +00:00
peter
06ebac4e27 * readded missing revisions 2002-05-18 13:34:04 +00:00
carl
21b3a10f02 + defines.inc -> fpcdefs.inc to avoid conflicts if compiling by hand
+ try to fix temp allocation (still in ifdef)
+ generic constructor calls
+ start of tassembler / tmodulebase class cleanup
2002-05-16 19:46:34 +00:00
peter
2992e1819c * removed old logs and updated copyright year 2002-05-14 19:34:38 +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
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
d05ba2dfce + write std_reg2str instead of gas registers 2002-04-15 19:15:09 +00:00
carl
39c86c857d + att_reg2str -> gas_reg2str 2002-04-14 16:58:41 +00:00
carl
f504aab788 + added vm / sparc targets 2002-04-07 10:23:36 +00:00
peter
5e7a1e3729 * removed unused units
* use tlocation.size in cg.a_*loc*() routines
2002-04-04 19:05:54 +00:00
carl
284386907c + added wdosx support (patch from Pavel) 2002-04-04 18:50:27 +00:00
Jonas Maebe
7fb55bf4e4 + a_loadfpu_* and a_loadmm_* methods in tcg
* register allocation is now handled by a class and is mostly processor
    independent (+rgobj.pas and i386/rgcpu.pas)
  * temp allocation is now handled by a class (+tgobj.pas, -i386\tgcpu.pas)
  * some small improvements and fixes to the optimizer
  * some register allocation fixes
  * some fpuvaroffset fixes in the unary minus node
  * push/popusedregisters is now called rg.save/restoreusedregisters and
    (for i386) uses temps instead of push/pop's when using -Op3 (that code is
    also better optimizable)
  * fixed and optimized register saving/restoring for new/dispose nodes
  * LOC_FPU locations now also require their "register" field to be set to
    R_ST, not R_ST0 (the latter is used for LOC_CFPUREGISTER locations only)
  - list field removed of the tnode class because it's not used currently
    and can cause hard-to-find bugs
2002-03-31 20:26:33 +00:00
carl
eb09d6061c - remove go32v1 support 2002-03-28 20:46:44 +00:00
armin
8eaa0d86d5 + new flag if unit has local threadvars 2002-03-28 16:44:59 +00:00
peter
708f10ddf1 * parasym added 2002-03-01 14:08:47 +00:00
peter
d24762aeba * removed uauto from orddef, use new range_to_basetype generating
the correct ordinal type for a range
2002-01-06 12:08:15 +00:00
carl
109f48894d + Added QNX target 2001-12-15 05:28:01 +00:00
peter
d2e1952377 * procsym definition rewrite 2001-11-02 22:58:00 +00:00
carl
32b77e2f83 * updated targets 2001-09-22 04:52:27 +00:00
peter
4e4c76d366 * rttisym support 2001-08-30 20:55:02 +00:00
peter
7b45b6a4a9 * local browser support fixed 2001-08-19 09:39:27 +00:00
peter
07922b1a70 * new flags added 2001-06-29 19:42:18 +00:00
peter
e652444594 + varargs directive 2001-06-04 11:53:12 +00:00
Jonas Maebe
d5526ff45c * range check error fixes from Peter 2001-05-09 14:11:10 +00:00
peter
6c7708c1e0 * ppu object to class rewrite
* move ppu read and write stuff to fppu
2001-05-06 14:49:16 +00:00
peter
76e6770898 * compiler dependent utils in utils/ subdir 2001-04-25 22:40:07 +00:00