Commit History

Autor SHA1 Mensaxe Data
  nickysn ac186eb85d * use sizeuinttype instead of ptruinttype for the array range type in the %!s(int64=9) %!d(string=hai) anos
  nickysn 7d15b688e8 * TInterfaceEntry changed to a variant record, that overlays a CodePointer on %!s(int64=9) %!d(string=hai) anos
  nickysn 7fceb8aa1f * use .Create_sizeuint and sizeuinttype when writing tinterfacetable.EntryCount %!s(int64=9) %!d(string=hai) anos
  Jonas Maebe 4c9903455e - don't apply const_align() to alignments passed to high level typed %!s(int64=9) %!d(string=hai) anos
  nickysn 5e7ba4a893 * the type of FieldOffset in the TFieldInfo rtti structure changed to SizeUInt, %!s(int64=9) %!d(string=hai) anos
  nickysn f62be8f6e6 * use sizesinttype instead of ptrsinttype to refer to vInstanceSize and %!s(int64=9) %!d(string=hai) anos
  yury e3d9dbbeef * Removed unused vars. %!s(int64=9) %!d(string=hai) anos
  svenbarth 37c32f4b61 * generate indirect symbols for interface IID and IIDSTR (fixes cycling; I wonder why that worked on Windows without problems :/ ) %!s(int64=9) %!d(string=hai) anos
  svenbarth fb6546972b * IID and IIDStr references of the VMT's interface table need to be indirect %!s(int64=9) %!d(string=hai) anos
  svenbarth 77de5dd968 * reference assembler symbol of FPC_EMPTYMETHOD using AB_EXTERNAL and not AB_GLOBAL %!s(int64=9) %!d(string=hai) anos
  svenbarth 2841cd9a9e * export IID and IIDSTR symbols of interfaces %!s(int64=9) %!d(string=hai) anos
  svenbarth 971d05c898 * also import procdefs that are called through the VMT %!s(int64=9) %!d(string=hai) anos
  svenbarth f69b365b77 * declare various symbols as external assembler symbols: RTTI references, parent VMT, FPC_EMPTYMETHOD (all three only if it's used from a different unit), threadvar lists and symbols declared as "external" %!s(int64=9) %!d(string=hai) anos
  svenbarth bb72c1c4df * declare various assembler symbols (VMT, RTTI, threadvars) as public assembler symbols %!s(int64=9) %!d(string=hai) anos
  svenbarth 685f820622 * switch class'/object's parent reference in the VMT to an indirect reference %!s(int64=9) %!d(string=hai) anos
  svenbarth dc21bc842a * also generate an indirect symbol for the VMT %!s(int64=9) %!d(string=hai) anos
  Jonas Maebe a0efde8167 * automatically generate necessary indirect symbols when a new assembler %!s(int64=9) %!d(string=hai) anos
  Jonas Maebe 1cb8c0d00c * specify the def of assembler level symbols defined via %!s(int64=9) %!d(string=hai) anos
  Jonas Maebe c0ff55e95a * changed the abstract method wrapper generation from thlcgobj to synthetic %!s(int64=9) %!d(string=hai) anos
  svenbarth 7a5bac9cd3 Rework the interface table of VMTs to get rid of FPC_EMPTYINTF. %!s(int64=9) %!d(string=hai) anos
  svenbarth 345d83c3e3 Merge RTTI changes from packages branch (including adjustments that were required due to changes in trunk since then). These changes favor source backwards compatibility in contrast to Delphi compatibility. Binary compatiblity is however drastically broken due to the indirect references that are platform independant! %!s(int64=9) %!d(string=hai) anos
  svenbarth 9857a27ad8 Generate and use an indirect symbol for VMTs. %!s(int64=9) %!d(string=hai) anos
  svenbarth 557f74cdbd (Note to self: always include the root of the working copy in the commit when dealing with merges -.-) %!s(int64=9) %!d(string=hai) anos
  Jonas Maebe 7b89072d88 * fixed external wrapper generation on llvm %!s(int64=9) %!d(string=hai) anos
  yury b26fa07f1a * Fixed notes "var is assigned but not used". %!s(int64=10) %!d(string=hai) anos
  Jonas Maebe 919bce9819 * also construct the high level code generator for high level targets; they %!s(int64=10) %!d(string=hai) anos
  Jonas Maebe c7a418829b * support for implementing interface method wrappers at the node tree %!s(int64=10) %!d(string=hai) anos
  Jonas Maebe be2ec5be59 * write full/init rtti and VMTs separately instead of at the same time %!s(int64=10) %!d(string=hai) anos
  Jonas Maebe b4e61b2469 * enable the llvm code generator for VMT generation %!s(int64=10) %!d(string=hai) anos
  Jonas Maebe 2cfc3ca4d1 * end the vmtdef aggregate so appropriate padding is inserted (if necessary) %!s(int64=10) %!d(string=hai) anos