Jonas Maebe
|
5fa09fa2f4
* changed tcallnode.fforcedprocname from shortstring into tsymstr,
|
11 lat temu |
Jonas Maebe
|
73a3f5ced4
* moved ncgutil.maybechangeloadnodereg() to hlcg.maybe_change_load_node_reg()
|
11 lat temu |
Jonas Maebe
|
84442d05f9
* renamed fobjcforcedprocname to fforcedprocname and also use it for the
|
11 lat temu |
sergei
|
9c1f917e3a
* a_call_ref functionality cannot be implemented efficiently at code generator level, because references need specific preparations at earlier points. Moved this support to tcgcallnode and its x86 descendants, and got rid of all ifdef's around.
|
11 lat temu |
sergei
|
7104157a57
* Changed tabstractprocdef.address_size to return the def, which can be used to get other properties like size and alignment. Removes one of i8086 ifdef's.
|
11 lat temu |
sergei
|
e0082262cc
* Don't generate VMT checking code twice (gen_load_vmt_register generates it already).
|
11 lat temu |
sergei
|
ff3fe06af9
* Changed condition around declaration of 'cgpara' to be the same as around its usage.
|
11 lat temu |
svenbarth
|
235c06ab34
Implement volatile address registers. Fixes quite some tests, but also breaks others... (overall more are fixed than are broken :) )
|
12 lat temu |
nickysn
|
1029636dfe
* far proc fixes in tcgcallnode.pass_generate_code
|
12 lat temu |
nickysn
|
ed92dee3fb
* fixed the calling of virtual methods on i8086
|
12 lat temu |
Jonas Maebe
|
8b8a786823
* moved ARM/x86 ifdef'ed code from ncgcal to virtual methods
|
12 lat temu |
Jonas Maebe
|
4daa40f480
* reorder register parameters to minimise the number of register conflicts,
|
12 lat temu |
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 lat temu |
svenbarth
|
7bad1763b8
Decrease amount of code duplication regarding handling of safecall and record constructors.
|
12 lat temu |
Jonas Maebe
|
10e3cab1b1
* fixed formatting
|
12 lat temu |
paul
|
5d74e0578a
compiler: remove unused variables and unneeded assignments
|
12 lat temu |
paul
|
b2a613c17f
compiler: implement record constructors + tests
|
12 lat temu |
paul
|
51825b6f2e
compiler: change ret_in_param to accept tabstractprocdef instead of tproccalloption to allow check more options (required for record constructor implementation)
|
12 lat temu |
Jonas Maebe
|
69c29a415f
* pass the procdef to getintparaloc instead of only the proccalloption, so
|
12 lat temu |
pierre
|
7ea11f0171
Use SUPPORT_SAFECALL conditional
|
13 lat temu |
florian
|
67744ef46e
* fix methodpointers in registers on big endian targets
|
13 lat temu |
florian
|
4514a55ec6
* call method pointers located in registers correctly
|
13 lat temu |
Jonas Maebe
|
0a1157da38
* fixed memory leaks in the compiler introduced in r21862 by marking and
|
13 lat temu |
Jonas Maebe
|
1955255dda
* let thlcg.a_call_name() return the tcgpara representing the function
|
13 lat temu |
Jonas Maebe
|
276a0918f5
* fixed (harmless) class cast error
|
13 lat temu |
pierre
|
3f6c3cbb87
* Call hlcg.a_call_ref and a_call_reg instead of cg methods (needed for MIPS cpu)
|
13 lat temu |
florian
|
7df1403849
* fix releasing of shortstring temps. in arrayconstructor nodes
|
13 lat temu |
Jonas Maebe
|
571b3feab1
* fixed internalerror on win64 after r21696 (source register size depends on
|
13 lat temu |
Jonas Maebe
|
7c21cba1e2
* migrated g_copyshortstring, g_incrrefcount and g_array_rtti_helper to thlcg
|
13 lat temu |
Jonas Maebe
|
7a0ae38700
+ also specify the parameter def when allocating a parameter via
|
13 lat temu |