Jonas Maebe
|
3be51e1455
* fixed endless recursion in tabstractrecorddef.contains_float_field() in
|
10 anni fa |
nickysn
|
9c52c98b77
* use default_settings.packrecords, instead of 0 (since that's different for
|
10 anni fa |
Jonas Maebe
|
69e7b06cef
* converted rest of VMT generation to high level typed const builder
|
10 anni fa |
Jonas Maebe
|
25e6eaf07f
* store the to be used recordalignmin and maxcrecordalign settings inside
|
10 anni fa |
Jonas Maebe
|
687bb15299
* renamed getdatalabel() to getglobaldatalabel
|
10 anni fa |
Jonas Maebe
|
5e1bb8e408
+ tcalo_make_dead_strippable to indicate that a typed constant data block
|
10 anni fa |
Jonas Maebe
|
e924dbed90
* moved the specification of the options for a ttai_typedconstbuilder from
|
10 anni fa |
Jonas Maebe
|
427b05e97c
* converted TVMTWriter.intf_write_table() to the high level typed constant
|
11 anni fa |
Jonas Maebe
|
8af5ef911b
* converted TVMTWriter.writeinterfaceids() to the typed constant builder
|
11 anni fa |
Jonas Maebe
|
8fa4c69f1f
* converted generation of class and fields table to the typed constant builder
|
11 anni fa |
Jonas Maebe
|
984491e435
* factored out emitting a shortstring constant via the typed constant builder
|
11 anni fa |
Jonas Maebe
|
f8cda69446
* converted generting published method tables to the typed constant builder
|
11 anni fa |
Jonas Maebe
|
5ecb2faf93
* converted generting method message integer dispatch tables to the typed
|
11 anni fa |
Jonas Maebe
|
67647d4ee0
* converted emitting method message string tables to the typed constant
|
11 anni fa |
Jonas Maebe
|
f8d4d20f5a
* converted emitting the class name to the typed constant builder class
|
11 anni fa |
Jonas Maebe
|
b745dcc64c
* moved g_external_wrapper() to the hlcg, and also g_intf_wrapper() because
|
11 anni fa |
Jonas Maebe
|
5fa09fa2f4
* changed tcallnode.fforcedprocname from shortstring into tsymstr,
|
11 anni fa |
Jonas Maebe
|
8d4c372d50
* removed ifdef jvm from ncgvmt
|
11 anni fa |
sergei
|
8f6d8b849e
* Generate interface wrappers together with data structures of class they belong to, and place everything into single assembler slice (since all wrappers are always referenced by VPTR, attempting to smartlink them is useless). This removes separate iteration pass over symtables and reduces amount of smartlink files.
|
11 anni fa |
florian
|
4d5119bf1c
* fixes several issues which cause warnings by the dfa code when using it to detect uninitialized variables
|
12 anni fa |
nickysn
|
088c06d308
* fixed class VMT generation for the i8086 medium memory model (near code, far data) by setting correctly the Tasmsymtype to each symbol according to whether it points to code or data
|
12 anni fa |
Jonas Maebe
|
d8c84706dd
* use Tai_symbol.Create_global() when emitting a global symbol for an
|
12 anni fa |
sergei
|
92811d09c1
* Generate stub bodies for abstract methods, so corresponding symbols can be referenced from code. Resolves #24536.
|
12 anni fa |
sergei
|
3a12e94d21
* TVMTWriter.writeinterfaceids: pass target asmlist as parameter.
|
12 anni fa |
nickysn
|
d0fa5fff8c
* use Tai_const.Create_nil_dataptr in TVMTWriter.intf_gen_intf_ref for writing the nil value for the GUID ptr of Corba interfaces
|
12 anni fa |
nickysn
|
a000d65447
* use Taiconst.Create_nil_codeptr when writing nil values for abstract methods in TVMTWriter.do_gen_published_methods
|
12 anni fa |
nickysn
|
b85f87620c
* use Tai_const.Create_nil_dataptr for creating the nil pointers located before the method table in the class vmt
|
12 anni fa |
nickysn
|
0bdd9db7a2
* terminate the list of virtual method pointers in the vmt with Tai_const.Create_nil_codeptr
|
12 anni fa |
nickysn
|
9b364f4989
* use Tai_const.Create_nil_dataptr instead of Tai_const.Create_sym(nil) when writing nil for the parent vmt pointer
|
12 anni fa |
sergei
|
d54d38b4ab
* Moved all code responsible for writing VMTs and interface wrappers (nobj.TVMTWriter, ncgutil.gen_intf_wrappers, ptype.write_persistent_type_info) into a new unit ncgvmt.pas.
|
12 anni fa |