nickysn
|
ed92dee3fb
* fixed the calling of virtual methods on i8086
|
12 gadi atpakaļ |
Jonas Maebe
|
8b8a786823
* moved ARM/x86 ifdef'ed code from ncgcal to virtual methods
|
12 gadi atpakaļ |
Jonas Maebe
|
4daa40f480
* reorder register parameters to minimise the number of register conflicts,
|
12 gadi atpakaļ |
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 gadi atpakaļ |
svenbarth
|
7bad1763b8
Decrease amount of code duplication regarding handling of safecall and record constructors.
|
12 gadi atpakaļ |
Jonas Maebe
|
10e3cab1b1
* fixed formatting
|
12 gadi atpakaļ |
paul
|
5d74e0578a
compiler: remove unused variables and unneeded assignments
|
12 gadi atpakaļ |
paul
|
b2a613c17f
compiler: implement record constructors + tests
|
12 gadi atpakaļ |
paul
|
51825b6f2e
compiler: change ret_in_param to accept tabstractprocdef instead of tproccalloption to allow check more options (required for record constructor implementation)
|
12 gadi atpakaļ |
Jonas Maebe
|
69c29a415f
* pass the procdef to getintparaloc instead of only the proccalloption, so
|
12 gadi atpakaļ |
pierre
|
7ea11f0171
Use SUPPORT_SAFECALL conditional
|
13 gadi atpakaļ |
florian
|
67744ef46e
* fix methodpointers in registers on big endian targets
|
13 gadi atpakaļ |
florian
|
4514a55ec6
* call method pointers located in registers correctly
|
13 gadi atpakaļ |
Jonas Maebe
|
0a1157da38
* fixed memory leaks in the compiler introduced in r21862 by marking and
|
13 gadi atpakaļ |
Jonas Maebe
|
1955255dda
* let thlcg.a_call_name() return the tcgpara representing the function
|
13 gadi atpakaļ |
Jonas Maebe
|
276a0918f5
* fixed (harmless) class cast error
|
13 gadi atpakaļ |
pierre
|
3f6c3cbb87
* Call hlcg.a_call_ref and a_call_reg instead of cg methods (needed for MIPS cpu)
|
13 gadi atpakaļ |
florian
|
7df1403849
* fix releasing of shortstring temps. in arrayconstructor nodes
|
13 gadi atpakaļ |
Jonas Maebe
|
571b3feab1
* fixed internalerror on win64 after r21696 (source register size depends on
|
13 gadi atpakaļ |
Jonas Maebe
|
7c21cba1e2
* migrated g_copyshortstring, g_incrrefcount and g_array_rtti_helper to thlcg
|
13 gadi atpakaļ |
Jonas Maebe
|
7a0ae38700
+ also specify the parameter def when allocating a parameter via
|
13 gadi atpakaļ |
Jonas Maebe
|
325c60866f
* use tcgpara.def instead of extra size parameters
|
13 gadi atpakaļ |
Jonas Maebe
|
9bfb8b5d48
* fixed (currently harmless) error in r21287 that specified that the full
|
13 gadi atpakaļ |
Jonas Maebe
|
edd42aa42a
* moved subsetref/reg and bit_set/test support from cgobj to hlcgobj for
|
13 gadi atpakaļ |
Jonas Maebe
|
834026bfb5
* synchronised with trunk up to r21067
|
13 gadi atpakaļ |
sergei
|
13e513fdf7
* Pass NR_FUNCTION_RESULT_REG to FPC_SAFECALLCHECK in target-independent way.
|
13 gadi atpakaļ |
Jonas Maebe
|
aee5380ae0
* merged trunk up to r20882
|
13 gadi atpakaļ |
sergei
|
06192a8137
Values of managed variables are never ever used after decrementing reference on the variable, so there is no point of having a 'decrement reference' as a separate operation. We can always do 'finalize', i.e. clear the contents after decref.
|
13 gadi atpakaļ |
sergei
|
b1cbf30a94
* Managed types passed to out formal parameters must be completely cleaned (decrementing refcount is not enough) at caller side, because callee side doesn't know their actual type and cannot initialize them. Resolves #20962.
|
13 gadi atpakaļ |
sergei
|
3a579ced7b
* Fixed IE201103063 when <dynamic array of unmanaged type> is being passed to <out open array> parameter.
|
14 gadi atpakaļ |