peter
2b6456fe16
* procvar handling for tp procvar mode fixed
...
* proc to procvar moved from addrnode to typeconvnode
* inlininginfo is now allocated only for inline routines that
can be inlined, introduced a new flag po_has_inlining_info
2004-12-05 12:28:10 +00:00
peter
c2263a36ac
* int64 can also be put in a register
2004-12-03 15:57:39 +00:00
Jonas Maebe
bd04491f50
* patch from Peter to fix inlining of case statements
2004-11-30 18:13:39 +00:00
peter
8cf8c54609
* fixed varargs
...
* replaced dynarray with tlist
2004-11-22 22:01:19 +00:00
peter
2985766e9d
* manglednames for nested procedures include full parameters from
...
the parents to prevent double manglednames
2004-11-21 21:51:31 +00:00
peter
89b1b583c9
* ttempcreatenode.create_reg merged into .create with parameter
...
whether a register is allowed
* funcret_paraloc renamed to funcretloc
2004-11-21 17:54:59 +00:00
florian
18f7aa97dd
* changed funcret location back to tlocation
2004-11-21 17:17:03 +00:00
peter
29d3a94892
* fixed message methods
...
* fixed typo with win32 dll import from implementation
* released external check
2004-11-21 16:33:19 +00:00
peter
1687306d22
* make some checks EXTDEBUG only for now so linux cycles again
2004-11-17 22:41:41 +00:00
peter
14d25d278b
mangledname setting moved to place after the complete proc declaration is read
...
import generation moved to place where body is also parsed (still gives problems with win32)
2004-11-17 22:21:35 +00:00
peter
c4502aebe7
* _mangledname for symbols moved only to symbols that really need it
...
* overload number removed, add function result type to the mangledname fo
procdefs
2004-11-16 22:09:57 +00:00
peter
e740a66636
* tparaitem removed, use tparavarsym instead
...
* parameter order is now calculated from paranr value in tparavarsym
2004-11-15 23:35:30 +00:00
peter
0c7e53bb81
* fixed compile of powerpc,sparc,arm
2004-11-11 19:31:33 +00:00
peter
6458bd0ce1
* tvarsym splitted
2004-11-08 22:09:58 +00:00
florian
42e14b6825
+ additional extdebug check for wrong add_reg_instructions added
...
* too long manglednames are cut off at 200 chars using a crc
2004-11-06 17:44:47 +00:00
florian
7f89448cec
* vmt offset of objects is no properly aligned when necessary
2004-11-05 21:07:13 +00:00
peter
37139422aa
elecount also on 32bit needs the qword part to prevent overflow
2004-11-04 17:58:48 +00:00
peter
f4a7c3d444
fixed debuginfo for variables in staticsymtable
2004-11-04 17:09:54 +00:00
florian
926da4b9c9
* fixed writing of para locations for procedures with explicit locations for parameters
2004-11-03 09:46:34 +00:00
peter
9b00c7832e
* support > 32bit accesses for x86_64
...
* rewrote array size checking to support 64bit
2004-11-01 23:30:11 +00:00
florian
f0e07003be
* fixed type information for dyn. arrays on 64 bit systems
2004-11-01 15:33:12 +00:00
peter
c95a859f0a
* generic tlocation
...
* move tlocation to cgutils
2004-10-31 21:45:02 +00:00
peter
2e91bcf821
* align arraydef rtti
2004-10-26 15:02:33 +00:00
mazen
581b52422c
- remove $IFDEF DELPHI and related code
...
- remove $IFDEF FPCPROCVAR and related code
2004-10-15 09:14:16 +00:00
peter
4f7667488b
* parameter regvar fixes
2004-10-10 21:08:55 +00:00
florian
b39c0af01b
* rtti alignment fixed
2004-10-04 21:23:15 +00:00
Tomas Hajny
85320d6787
* SetTextLineEnding implemented, FileRec.Name position alignment for CPU64
2004-09-21 23:36:51 +00:00
peter
33a834821f
* paraloc branch merged
2004-09-21 17:25:12 +00:00
peter
7e90a8a8ab
* restart sorting of enums when deref is called, this is needed when
...
a unit is reloaded
2004-09-14 16:33:17 +00:00
peter
d763f9e142
browser disabled
...
uf_local_symtable ppu flag when a localsymtable is stored
2004-08-27 21:59:26 +00:00
Jonas Maebe
c7544e69de
+ padalgingment field for recordsymtables (saved by recorddefs)
...
+ support for Macintosh PowerPC alignment (if the first field of a record
or union has an alignment > 4, then the record or union size must be
padded to a multiple of this size)
2004-08-17 16:29:21 +00:00
peter
8184ad2048
* fixed padding of records to alignment
2004-08-15 15:05:16 +00:00
florian
6368652be2
* fixed several sparc alignment issues
...
+ Jonas' inline node patch; non functional yet
2004-08-14 14:50:42 +00:00
florian
6ab93f5ec1
* fixed web bug #3226 : type p = type pointer;
2004-08-07 14:52:45 +00:00
florian
aba734edc9
* fixed funcret_paraloc writing in units
2004-07-19 19:15:50 +00:00
olle
4ad33f01b6
- removed unused types
2004-07-14 21:37:41 +00:00
Jonas Maebe
1563d986c5
* inline procedures at the node tree level, but only under some very
...
limited circumstances for now (only procedures, and only if they have
no or only vs_out/vs_var parameters).
* fixed ppudump for inline procedures
* fixed ppudump for ppc
2004-07-12 09:14:04 +00:00
peter
a939095dbe
* revert has_localst patch
...
* replace aktstaticsymtable/aktglobalsymtable with current_module
2004-07-09 22:17:31 +00:00
peter
60b53cb1c1
* fix storing of localst in ppu
2004-07-06 19:52:04 +00:00
florian
8a9758c5e2
* logs truncated
2004-06-20 08:55:28 +00:00
peter
0ac4983a9b
* remove obsolete cardinal() typecasts
2004-06-18 15:16:46 +00:00
florian
588e2c38bf
* dwarf branch merged
2004-06-16 20:07:06 +00:00
peter
5abb93e77d
* range check error
2004-05-25 18:51:14 +00:00
peter
74e8ba82da
* removed unused voidprocdef
2004-05-23 20:57:10 +00:00
peter
c96ba04d84
* fixed qword(longint) that removed sign from the number
...
* removed code in the compiler that relied on wrong qword(longint)
code generation
2004-05-23 15:23:30 +00:00
peter
fac96dd2ed
fix range check error when array size > maxlongint
2004-05-22 23:33:18 +00:00
florian
e8098f6b71
+ added lib support for Amiga/MorphOS syscalls
2004-05-01 22:05:01 +00:00
daniel
b721e5872c
* Prepare compiler infrastructure for multiple ansistring types
2004-04-29 19:56:36 +00:00
florian
a7478ee97f
+ location support for arguments, currently PowerPC/MorphOS only
2004-04-18 15:22:24 +00:00
peter
e46cdcea48
* constants ordinals now always have a type assigned
...
* integer constants have the smallest type, unsigned prefered over
signed
2004-03-23 22:34:49 +00:00
olle
a7f25327f6
* change AT_FUNCTION to AT_DATA where appropriate
2004-03-18 11:43:57 +00:00
peter
297578a599
* valgrind doesn't like nested procedure info in stabs
2004-03-14 22:51:46 +00:00
peter
df18c0aa82
* don't write line numbers in stabs for defs
2004-03-14 20:06:40 +00:00
peter
37f3f95b59
* more stabs fixes
...
* special mode -gv for valgrind compatible stabs
2004-03-10 22:52:57 +00:00
peter
f8e067cadb
* first write parent classes
2004-03-09 22:18:22 +00:00
peter
d8c68fdfe0
* more stabs updates
2004-03-09 20:45:04 +00:00
peter
abbd54f334
* stabs updates to write stabs for def for all implictly used
...
units
2004-03-08 22:07:46 +00:00
peter
29c2944706
* fix hidden pointer for stabs
2004-03-03 22:01:44 +00:00
olle
4fecc1a56f
* big transformation of Tai_[const_]Symbol.Create[data]name*
2004-03-02 00:36:32 +00:00
peter
356b3378e8
* tai_const.create_ptr added
2004-02-26 16:16:38 +00:00
daniel
0750bd97e5
* Revert my latest change
2004-02-22 19:55:25 +00:00
daniel
efc644e349
* Fixed minor bug in Tenumdef.stabstring
2004-02-22 18:49:03 +00:00
florian
06a33abebd
* fixed arg. area calculation
2004-02-19 17:07:42 +00:00
peter
1e3875ad36
- fix rtti generation for properties containing sl_vec
...
- fix crash when overloaded operator is not available
- fix record alignment for C style variant records
2004-02-17 15:57:49 +00:00
peter
ee569d7817
* make extcycle is working again
2004-02-12 15:54:03 +00:00
Jonas Maebe
3056a64bf0
* fixed regvars support. Needs -doldregvars to activate. Only tested with
...
ppc, other processors should however only require maxregvars and
maxfpuregvars constants in cpubase.pas. Remember to take scratch-
registers into account when defining that value.
2004-02-08 18:08:59 +00:00
daniel
42f9b1b0e2
* Removed not very usefull nextglobal & previousglobal fields from
...
Tstoreddef, saving 78 kb of memory
2004-02-06 22:37:00 +00:00
florian
465aa5851b
* several fixes to compile x86-64 system
2004-02-05 01:24:08 +00:00
peter
ecfbbeffc3
* renamed xNNbittype to xNNinttype
...
* renamed registers32 to registersint
* replace some s32bit,u32bit with torddef([su]inttype).def.typ
2004-02-03 22:32:53 +00:00
peter
8caaa7740d
* more record alignment fixes
2004-01-28 22:16:31 +00:00
florian
4ccec73aa5
* fixed alignment of classes
2004-01-28 21:05:56 +00:00
peter
2d8d788211
* record alignment splitted in fieldalignment and recordalignment,
...
the latter is used when this record is inserted in another record.
2004-01-28 20:30:18 +00:00
daniel
3a3f65a364
* Fix string type stab generation. String constant still unsupported.
2004-01-27 10:29:32 +00:00
daniel
8bea12a84d
* Typo
2004-01-26 19:54:42 +00:00
daniel
5de754a2a1
* Try to recude stack usage of Tpointerdef.concatstabsto
2004-01-26 19:43:49 +00:00
daniel
97e87aaebc
* reginfo now also only allocated during register allocation
...
* third round of gdb cleanups: kick out most of concatstabto
2004-01-26 16:12:27 +00:00
daniel
60876a7c1a
* More gdb cleanup: make record & object stab generation linear instead
...
of quadratic.
2004-01-25 20:23:28 +00:00
daniel
2db2f4ac1b
* Made varags parameter constant
2004-01-25 13:18:59 +00:00
daniel
45ebe9b10b
* Last commit broke debug info for records. Fixed.
2004-01-25 12:37:15 +00:00
daniel
7a417defc8
* 2nd round of gdb cleanup
2004-01-25 11:33:48 +00:00
peter
861b7cd72e
* procvardef rtti fixed
2004-01-22 21:33:54 +00:00
peter
8f70c34b33
* enum value rtti is now in orginal case
2004-01-22 16:33:22 +00:00
florian
c37035a450
* common addnode code for x86-64 and i386
2004-01-20 12:59:36 +00:00
daniel
7a6b6f4bd4
* Some minor stuff
...
* Managed to eliminate speed effects of string compression
2004-01-15 15:16:17 +00:00
daniel
4a4b8f2a72
* Experiment: Compress strings to save memory
...
Did not save a single byte of mem; clearly the core size is boosted by
temporary memory usage...
2004-01-11 23:56:19 +00:00
Jonas Maebe
3413faf00d
* Darwin's assembler assumes that all labels starting with 'L' are local
...
-> rename symbols starting with 'L'
2004-01-04 21:10:04 +00:00
peter
6b3c925f64
* don't lowercase enumnames
2003-12-24 20:51:11 +00:00
florian
6d3d97e845
* first fixes to compile the x86-64 system unit
2003-12-24 01:47:22 +00:00
florian
b52cee6639
* fixed ppc inlining stuff
...
* fixed wrong unit writing
+ added some sse stuff
2003-12-21 19:42:42 +00:00
florian
2258e941af
+ inlined procedures inherit procinfo flags
2003-12-16 21:29:24 +00:00
marco
9b3b94883b
* always generate RTTI patch from peter
2003-12-12 12:09:40 +00:00
peter
84b1451a34
* tai_const.create_32bit changed to cardinal
2003-12-08 22:34:24 +00:00
peter
f663d2488f
* cross unit inlining fixed
2003-11-10 22:02:52 +00:00
florian
82b7c0c9cc
* tstoreddef.getcopy returns now an errordef instead of nil; this
...
allows easier error recovery
2003-11-08 23:31:27 +00:00
marco
094ab8b446
* fix from Peter arraysize warning (nav Newsgroup msg)
2003-11-05 14:18:03 +00:00
peter
aadc6dbf2b
* fix check for valid procdef in property rtti
2003-11-01 15:50:03 +00:00
peter
75e5a6e867
* procsym.deref derefs only own procdefs
...
* reset paracount in procdef.deref so a second deref doesn't increase
the paracounts to invalid values
2003-10-29 21:56:28 +00:00
peter
cac39ccfd4
* renamed mangeldname_prefix to make_mangledname and made it more
...
generic
* make_mangledname is now also used for internal threadvar/resstring
lists
* Add P$ in front of program modulename to prevent duplicated symbols
at assembler level, because the main program can have the same name
as a unit, see webtbs/tw1251b
2003-10-29 19:48:50 +00:00
peter
4a1ecb07d1
* splitted buildderef and buildderefimpl to fix interface crc
...
calculation
2003-10-23 14:44:07 +00:00
peter
6878c55c80
* write derefdata in a separate ppu entry
2003-10-22 20:39:59 +00:00