svenbarth
|
0b3418e978
* use the size of the generated anonymous record instead of the manual tracked size so that any padding is picked up as well
|
6 ani în urmă |
svenbarth
|
4c338b1f70
* generate correctly aligned string RTTI, fixes trtti7 on ARM
|
6 ani în urmă |
Jonas Maebe
|
18dfdb423e
* don't apply user-specified constant alignments to RTTI data
|
6 ani în urmă |
Jonas Maebe
|
83611b83cc
* reverted r42463, the internalerrors were caused by a bug in the LLVM typed
|
6 ani în urmă |
florian
|
217ae6e4bb
* more fixes to rtti after attribute branch merging
|
6 ani în urmă |
Jonas Maebe
|
12e63d8a2c
* don't reuse defs for attribute lists or individual attributes with parameters, as
|
6 ani în urmă |
florian
|
f04afdd5ea
* compilation fixed
|
6 ani în urmă |
florian
|
3206ac3508
* properly align rtti for orddefs
|
6 ani în urmă |
Jonas Maebe
|
d8903ce6b3
- removed maxcrecordalign parameter/field from recordsymtables, as this value
|
6 ani în urmă |
florian
|
c932dfaf70
* first bunch of fixes for rtti for arm after attribute commits, fixes mostly alignment issues
|
6 ani în urmă |
svenbarth
|
ced3885dbb
* generate construction function for the attributes used in a unit using a more straight forward approach
|
6 ani în urmă |
svenbarth
|
71fa4d1fe2
* the RTTI of an attribute not only consists of the creation function, but also of the attribute's type, a pointer to the constructor and a data blob containing the constant parameters
|
6 ani în urmă |
svenbarth
|
3ad24c9db8
* as attributes can be part of any type they are best suited in a common part of TTypeData
|
6 ani în urmă |
svenbarth
|
e296b26e9e
- remove unit info and related code again as that will be handled similar, but differently with dynamic packages
|
6 ani în urmă |
svenbarth
|
ee940c8270
* always write a class' reference to the attribute table, even if the unit does not have attributes
|
6 ani în urmă |
svenbarth
|
d137e06ade
* instead of embedding the attributes inside the class' and property's type data only store a reference to a table of attributes
|
6 ani în urmă |
svenbarth
|
39bab2dbcc
* rename trtti_attributesdef to trtti_attributes_list
|
6 ani în urmă |
svenbarth
|
b2932393df
Reintegration of Custom Attributes branch by Joost van der Sluis with patches reworked by Svetozar Belic [patch 1/3]
|
6 ani în urmă |
Jonas Maebe
|
281b3ad276
* fix case completeness and unreachable code warnings in compiler that would
|
6 ani în urmă |
svenbarth
|
f7817d25ff
* parameter type needs to be Nil for formal parameters (Delphi compatible)
|
6 ani în urmă |
yury
|
e5c2d13671
* Do not set pi_needs_got in current_procinfo.flags at the node level, since the GOT usage can only be estimated there. Instead set the pi_needs_got flag at places where the GOT register is accessed during the code generation. This eliminates generation of the unneeded initialization of the GOT register and fixes linker errors when the _GLOBAL_OFFSET_TABLE_ symbol is referenced but no actual GOT references are present.
|
6 ani în urmă |
Jonas Maebe
|
50ab607676
+ customint torddef type to create arbitraty bit-width integers
|
6 ani în urmă |
yury
|
0a3c94bc72
* Moved inline methods to the beginning in order to allow them to be actually inlined in this unit.
|
6 ani în urmă |
yury
|
4357caaad8
* Removed unused local vars.
|
6 ani în urmă |
yury
|
c306f57ecb
* Reverted r39947. According to Sven, the $self parameters is not required to be first parameter in RTTI. Appropriate tests will be fixed.
|
6 ani în urmă |
Jonas Maebe
|
0b246f3dbd
* converted Boolean8 to an internal type, and mapped Boolean to the
|
6 ani în urmă |
yury
|
84b5129f1d
* Fixed writing of method's RTTI for aarch64 by explicitly writing the $self parameter first.
|
6 ani în urmă |
svenbarth
|
b9ec7e1e06
* generate RTTI for *all* parameters of a method or procedure variable
|
6 ani în urmă |
svenbarth
|
a076677336
* instead of a flags field generate a table with all Initialize operators of all fields (nested or not, parent class or not) for class types; objects and records don't use this (yet)
|
7 ani în urmă |
svenbarth
|
2e1327b6b2
* use pooled constant references for the parameter locations as more often than not they're equal between multiple methdos (e.g. the Self argument is always the same)
|
7 ani în urmă |