peter
05a628447f
* put typedconsts in own asmlist to prevent mixing
...
array and string data
* added al_rodata
* renamed tasmlist enum names to include al_ prefix
git-svn-id: trunk@899 -
2005-08-17 08:42:52 +00:00
daniel
d05f58b604
* Group asmlists into array to be able to add
...
some of them more comfortably.
* x86_64 compilation was broken, fixed.
* Sparc compilation was broken, fixed.
git-svn-id: trunk@731 -
2005-07-23 13:44:32 +00:00
Jonas Maebe
8bc4e0a32f
* inline and compilerproc are now procoptions instead of proccall types
...
(so both can be combined with each other, as well as with other calling
conventions)
* defined COMPPROCINLINEFIXED so SYSTEMINLINE is again activated
git-svn-id: trunk@658 -
2005-07-18 15:27:14 +00:00
peter
24f6bb1594
* overload chaining checks if the procdef is in the same symtable, this
...
prevents keeping references to staticsymtable only procdefs that are
not accessible through the globalsymtable. And can cause crashes when
the staticsymtable is already released.
git-svn-id: trunk@644 -
2005-07-18 09:50:39 +00:00
florian
f0efddff9b
* fixed compilation on x86_64
...
git-svn-id: trunk@643 -
2005-07-18 09:28:58 +00:00
florian
fddf556098
+ writing of vartype for dyn. array rtti
...
git-svn-id: trunk@629 -
2005-07-15 21:04:50 +00:00
peter
627a3b53e8
* fix loading of enum subranges from ppu
...
git-svn-id: trunk@535 -
2005-06-30 07:13:42 +00:00
florian
b9b9ce059d
* compilation errors fixed
...
git-svn-id: trunk@531 -
2005-06-29 19:35:05 +00:00
florian
abbc85bb78
+ strict protected and strict private support
...
git-svn-id: trunk@512 -
2005-06-28 19:23:39 +00:00
florian
be9bd97532
* fixed interface rtti, fixes bug #4089
...
git-svn-id: trunk@423 -
2005-06-15 21:28:15 +00:00
florian
21ae782854
* fixed more xmm stuff
...
+ some win64 stuff added
git-svn-id: trunk@330 -
2005-06-09 20:50:17 +00:00
florian
ebcb69478f
* fixed a lot of stuff for fpu/mm register variables
...
git-svn-id: trunk@199 -
2005-06-04 21:23:15 +00:00
fpc
790a4fe2d3
* log and id tags removed
...
git-svn-id: trunk@42 -
2005-05-21 09:42:41 +00:00
florian
c044221818
* fixed alignment of objects and arrays in arrays, fixes bug #3971
...
git-svn-id: trunk@39 -
2005-05-21 07:39:44 +00:00
fpc
50778076c3
initial import
...
git-svn-id: trunk@1 -
2005-05-16 18:37:41 +00:00
florian
09b0fe36fb
+ made variant publishable
2005-05-07 16:43:02 +00:00
peter
3c6d74c4d9
* extended stabs use size of 10
2005-04-25 13:15:18 +00:00
florian
c5c6df8237
* class ref. properties can be published now
2005-04-03 15:20:42 +00:00
peter
3446cb0f2f
fix loading of inline info
2005-03-28 15:04:13 +00:00
Jonas Maebe
a5c94ddccd
* removed some unused variables
2005-03-25 21:55:43 +00:00
florian
7b56e65a4b
* fixed FieldAddress for 64 bit and CPUs requiring proper alignment
2005-03-13 08:34:58 +00:00
peter
100a47e6af
* fix protected checking
2005-03-07 17:58:27 +00:00
florian
534b11cfb1
* userdata in file/textrecs now 32 bytes
2005-02-26 15:42:45 +00:00
peter
e417e34496
* truncate log
2005-02-14 17:13:06 +00:00
florian
22d9294ab3
+ overflow checking for the arm
2005-02-13 18:55:19 +00:00
peter
eae47d058b
* implprocs requires no duplicate entries of the same procdef
2005-02-10 22:08:37 +00:00
florian
71679e0662
* type = type <procvar>; ignored
2005-02-02 19:02:47 +00:00
michael
ac1642de89
* Patch from peter: fix macpas anonymous function procvar
2005-02-01 08:46:13 +00:00
peter
4631658576
* add info that a procedure is local in error messages
2005-01-30 11:26:40 +00:00
peter
e820bc93f2
* interface wrapper generation moved to cgobj
...
* generate interface wrappers after the module is parsed
2005-01-24 22:08:32 +00:00
peter
8d251e8506
* unit mapping rewrite
...
* new derefmap added
2005-01-19 22:19:41 +00:00
florian
f20af0b344
* typeinfo in typedata is now aligned
2005-01-16 14:47:26 +00:00
peter
bb32ee0457
* fix interface vtbl optimization
...
* replace ugly pointer construct of ioffset()
2005-01-09 15:05:29 +00:00
florian
80af47489d
+ first batch of patches to support tdef.getcopy fully
2005-01-03 17:55:57 +00:00
florian
485b770322
* alignment fixes for sparc
2004-12-30 14:36:29 +00:00
florian
5fb0678de2
* fixed class field info alignment
2004-12-27 15:54:54 +00:00
peter
a266052fd9
* modified algorithm for shortening manglednames to fix compilation
...
of procedures with a lot of longtypenames that are equal, see
tw343
2004-12-07 15:41:11 +00:00
michael
44bf61f445
* Convert array of widechar to pwidechar instead of pchar
2004-12-07 13:52:54 +00:00
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