Jonas Maebe
|
1a560e9875
* when concatenating ansistrings, do not map CP_NONE (rawbytestring) to
|
12 anni fa |
Jonas Maebe
|
7659bfc01b
- removed internal error if savesize of tfiledef is 0 when writing the def
|
12 anni fa |
Jonas Maebe
|
5a72bc3656
* export filerec/textrec from the system unit and use them in the compiler
|
12 anni fa |
nickysn
|
2809ed6fb9
* updated tfiledef.setsize to support the size of textrec in the medium memory model
|
12 anni fa |
nickysn
|
b5c032874f
* set the po_far flag by default in far code memory models
|
12 anni fa |
nickysn
|
b6c979e55f
+ added tabstractprocdef.address_size which returns the actual address size of the proc, taking into account far procs
|
12 anni fa |
nickysn
|
c1984bdf56
* take into account far code and far data in tprocvardef.size
|
12 anni fa |
nickysn
|
5966cc088d
* got rid of tpointerdef.update_savesize, overrode size instead
|
12 anni fa |
nickysn
|
5b503f42c7
+ implemented Mem/MemW/MemL[] for i8086
|
12 anni fa |
svenbarth
|
956b26bc97
Completely reworked implementation of generic constraints, by moving the generic constraint data from the symbols to the definitions (I originally thought that this would simplyfy things, but the more correct approach is to add it to the defs).
|
12 anni fa |
svenbarth
|
cc5a108cca
Allocate the list for generic parameters in tstoreddef only on demand as most defs won't contain generic parameters anyway (avoids a little bit of runtime and memory overhead per def).
|
12 anni fa |
nickysn
|
e810cabf50
* set tpointerdef.savesize correctly for far and huge pointers
|
12 anni fa |
nickysn
|
f571aebdd0
* tx86pointertyp moved from unit symdef to symconst, so it can be used by ppudump
|
12 anni fa |
nickysn
|
d95c995894
- rm the commented out code of tpointerdef.createfar
|
12 anni fa |
nickysn
|
ae74cd17d2
* tarraydef.ppuload/ppuwrite: use ppufile.getasizeint/putasizeint for reading/writing lowrange and highrange as they're asizeint type, not aint
|
12 anni fa |
nickysn
|
b0f7786782
+ added support for special versions of near data pointers associated with a x86 segment register. They are supported on all x86 platforms: i8086, i386 and x86_64
|
12 anni fa |
florian
|
0e41df598e
* merge i8086 branch by Nikolay Nikolov
|
12 anni fa |
nickysn
|
5caadbbc40
+ added method tabstractprocdef.is_pushleftright that exists on all platforms and returns whether parameters must be loaded left to right
|
12 anni fa |
florian
|
e1233e0111
* asizeint => longint, it is unlikely that an variant record well ever have more than 2^31 branches
|
12 anni fa |
florian
|
2fdd3e2d0a
+ introduce tvariantrecbranch to be able to store
|
12 anni fa |
florian
|
7ba197a221
* fix stack parameter handling for arm thumb
|
12 anni fa |
nickysn
|
b178a038f5
* set the FileRec size for i8086
|
12 anni fa |
nickysn
|
a0e683bed6
* set the proper TextRec size for i8086
|
12 anni fa |
nickysn
|
30d661734c
+ enable tprocdef.fpu_used for i8086 also
|
12 anni fa |
nickysn
|
a9809323dc
some more generic i8086 defines added
|
12 anni fa |
svenbarth
|
344571cb4e
Added support for type helpers. In non Delphi modes they use "type helper" and in mode Delphi they use "record helper". They can also be used on constants.
|
12 anni fa |
svenbarth
|
6fb958a491
symdef.pas, tstoreddef:
|
12 anni fa |
florian
|
889b7285b1
* disable record register variables with a size of 2*sizeof(asizeint) on big endian architectures
|
12 anni fa |
florian
|
4f30ac0247
* put records with 16 bytes size into two register on 64 bit targets if possible
|
12 anni fa |
florian
|
c781f21a46
* records with two times the size of a register can be kept in registers
|
12 anni fa |