peter
d3063f722c
* connect parasym to paraitem
2003-09-23 21:03:35 +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
peter
b9d09a4e5c
* preparations for different default calling conventions
...
* various RA fixes
2003-09-07 22:09:34 +00:00
florian
f3e9e7a24f
* fixed web bug #2669
...
* cosmetic fix in printnode
* tobjectdef.gettypename implemented
2003-09-06 22:27:08 +00:00
peter
6a8d5eb25d
* NEWRA branch merged
2003-09-03 15:55:00 +00:00
florian
220e05dd5e
* fixed arm concatcopy
...
+ arm support in the common compiler sources added
* moved some generic cg code around
+ tfputype added
* ...
2003-09-03 11:18:36 +00:00
peter
52c73e80d1
* start of sparc support for newra
2003-08-11 21:18:20 +00:00
peter
09ed47cba6
* don't allow add/assignments for formaldef
...
* formaldef size changed to 0
2003-07-08 15:20:56 +00:00
Jonas Maebe
f909d6a620
* fixed ppc compilation problems and changed VOLATILE_REGISTERS for x86
...
so that it doesn't include ebp and esp anymore
2003-07-06 21:50:33 +00:00
daniel
268bfcf784
* Fixed register allocator. *Lots* of fixes.
2003-07-06 15:31:20 +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
Jonas Maebe
404d344d92
* lots of newra fixes (need getfuncretparaloc implementation for i386)!
...
* renamed all_intregisters to volatile_intregisters and made it
processor dependent
2003-06-17 16:34:44 +00:00
peter
d6f431a5a9
* set parast.next to the owner of the procdef
2003-06-08 11:41:21 +00:00
peter
e7975c7592
* re-resolving added instead of reloading from ppu
...
* tderef object added to store deref info for resolving
2003-06-07 20:26:32 +00:00
peter
28ebc69c8f
* removed changesettype because that will change the definition
...
of the setdef forever and can result in a different between
original interface and current implementation definition
2003-06-05 20:05:55 +00:00
daniel
41e0bc4cec
* Register allocator finished
2003-06-03 13:01:59 +00:00
florian
89cc00f6e4
* classes and interfaces can be stored in integer registers
2003-06-02 22:55:28 +00:00
peter
047a066711
* procinlinenode removed
...
* aktexit2label removed, fast exit removed
+ tcallnode.inlined_pass_2 added
2003-05-26 21:17:17 +00:00
peter
072a55b73e
* methodpointer self pushing fixed
2003-05-25 11:34:17 +00:00
peter
92ee1804b6
* removed selfpointer_offset, vmtpointer_offset
...
* tvarsym.adjusted_address
* address in localsymtable is now in the real direction
* removed some obsolete globals
2003-05-15 18:58:53 +00:00
Jonas Maebe
0836ed1713
* patch from Peter for rtti symbols
2003-05-13 08:13:16 +00:00
peter
26d78ff5c9
* moved implicit exception frame from ncgutil to psub
...
* constructor/destructor helpers moved from cobj/ncgutil to psub
2003-05-11 21:37:03 +00:00
peter
1a2eedd767
* self moved to hidden parameter
...
* removed hdisposen,hnewn,selfn
2003-05-09 17:47:02 +00:00
peter
e2cbae0ff1
* vs_hidden replaced by is_hidden boolean
2003-05-05 14:53:16 +00:00
florian
9612e57805
* introduced defaultordconsttype to decribe the default size of ordinal constants
...
on 64 bit CPUs it's equal to cs64bitdef while on 32 bit CPUs it's equal to s32bitdef
+ added defines CPU32 and CPU64 for 32 bit and 64 bit CPUs
* int64s/qwords are allowed as for loop counter on 64 bit CPUs
2003-05-01 07:59:42 +00:00
peter
60978ba89c
* aktprocdef renamed to current_procdef
...
* procinfo renamed to current_procinfo
* procinfo will now be stored in current_module so it can be
cleaned up properly
* gen_main_procsym changed to create_main_proc and release_main_proc
to also generate a tprocinfo structure
* fixed unit implicit initfinal
2003-04-27 11:21:32 +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
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
c21ca3dfa0
+ added currency support based on int64
...
+ is_64bit for use in cg units instead of is_64bitint
* removed cgmessage from n386add, replace with internalerrors
2003-04-23 20:16:03 +00:00
florian
0284016ee9
* fixed several issues with powerpc
...
+ applied a patch from Jonas for nested function calls (PowerPC only)
* ...
2003-04-23 12:35:34 +00:00
peter
8da3f59d32
* vs_hidden released
2003-04-10 17:57:52 +00:00
peter
c5efd5c7d5
* no itnernalerror for errordef.concatstabto()
2003-03-18 16:25:50 +00:00
peter
830ea4e876
* support DefaultHandler and anonymous inheritance fixed
...
for message methods
2003-03-17 16:54:41 +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
daniel
86bcea6ef5
* Code generator converted to new register notation
...
- Horribily outdated todo.txt removed
2003-02-19 22:00:14 +00:00
carl
59d3edeec7
* Several bugfixes for m68k target (register alloc., opcode emission)
...
+ VIS target
+ Generic add more complete (still not verified)
2003-02-02 19:25:54 +00:00
pierre
2a17241d66
* set sizes needs to be passes in bits not bytes to stabs info
2003-01-21 14:36:44 +00:00
peter
da14652287
* fixed tprocdef.is_addressonly
2003-01-16 22:11:33 +00:00
peter
00e2ee165b
* merged methodpointer fixes from 1.0.x
2003-01-15 01:44:32 +00:00
peter
2721d341f0
* merged some verbosity options.
...
* V_LineInfo is a verbosity flag to include line info
2003-01-09 21:52:37 +00:00
peter
80b463da2e
* po_addressonly added to retrieve the address of a methodpointer
...
only, this is used for @tclass.method which has no self pointer
2003-01-06 21:16:52 +00:00
florian
07110d20f9
+ added proper support of type = type <type>; for simple types
2003-01-05 15:54:15 +00:00
florian
b59b436130
* x86-64 compiles
...
+ very basic support for float128 type (x86-64 only)
2003-01-05 13:36:53 +00:00
peter
cf5d395f0a
* update self parameter only for methodpointer and methods
2003-01-02 19:49:00 +00:00
peter
59b98f4047
* tprocdef.gettypename implemented
2002-12-29 18:25:59 +00:00
peter
791300bac9
* write class methods in fullname
2002-12-27 15:23:09 +00:00
florian
3f5541e996
+ some front end stuff for vs_hidden added
2002-12-15 19:34:31 +00:00
peter
a2a1a36e83
* ignore vs_hidden parameters when choosing overloaded proc
2002-12-15 11:26:02 +00:00
carl
081a4aab35
* 3% memory optimization
...
* changed some types
+ added type checking with different size for call node and for
parameters
2002-12-07 14:27:07 +00:00