Jonas Maebe
|
5bb89cc2f0
* keep track of the reason why a loadparentfpnode has been created: to
|
10 gadi atpakaļ |
Jonas Maebe
|
f69d2fe61d
* AArch64 doesn't use *stret routines for Objective-C dispatching, because it
|
10 gadi atpakaļ |
Jonas Maebe
|
edb3124ae8
* copy arrays passed by value to cdecl routines on the callee side even on
|
10 gadi atpakaļ |
Jonas Maebe
|
6e12ad817f
* don't make copies of arrays passed as value parameters to cdecl routines
|
10 gadi atpakaļ |
Jonas Maebe
|
c6ba0bb6fb
+ support for targets that require by-reference value parameters to be
|
10 gadi atpakaļ |
Jonas Maebe
|
aae879d28a
* also set aktcallnode during tcallnode.pass_1, so that the callparanode
|
10 gadi atpakaļ |
Jonas Maebe
|
863e81315e
* changed goto usage in tcallnode.pass_typecheck into try/finally (and at
|
10 gadi atpakaļ |
florian
|
d6bfb29313
* clean usercode_entry flag from outer block when copying a subroutine node tree for inlining, enables sometimes better inlining
|
10 gadi atpakaļ |
florian
|
42020c8bb8
* when passing a parameter by var/out, its address leaves the current scope so the compiler has to take care of this
|
10 gadi atpakaļ |
Jonas Maebe
|
eb419b58c5
- disable inlining of routines that contain a call to a C-style varargs
|
10 gadi atpakaļ |
Jonas Maebe
|
146e3bcb9e
* synchronised with trunk till r29513
|
10 gadi atpakaļ |
Jonas Maebe
|
e97f31541e
- reverted partial commit of merge
|
10 gadi atpakaļ |
Jonas Maebe
|
a76bbf363d
* synchronised with trunk r29513
|
10 gadi atpakaļ |
florian
|
681c1afe6c
* limit inlined expansion and exponential code grow, resolves #23862
|
10 gadi atpakaļ |
florian
|
ccb01d6196
* allow subtraction/addition of internally generated nodes, resolves #27256
|
10 gadi atpakaļ |
florian
|
d540d56908
* unified internal errors
|
10 gadi atpakaļ |
sergei
|
64af966eaa
* Mantis #27044: copy Variant to temp if it cannot be passed by reference to fpc_dispinvoke_variant helper. This provides behavior consistent to implicit 'self' parameter of objects/records.
|
10 gadi atpakaļ |
Jonas Maebe
|
b0639405ac
* compare the actual target nodes when checking whether the result of an
|
10 gadi atpakaļ |
Jonas Maebe
|
bd09b88a5b
+ support for http://en.wikipedia.org/wiki/Blocks_(C_language_extension)
|
11 gadi atpakaļ |
nickysn
|
24fcac9f87
+ added support for nested procvars in the i8086 far data memory models
|
11 gadi atpakaļ |
Jonas Maebe
|
5fa09fa2f4
* changed tcallnode.fforcedprocname from shortstring into tsymstr,
|
11 gadi atpakaļ |
Jonas Maebe
|
9f6d6f4aa8
* copy tcallnode.fforcedprocname field
|
11 gadi atpakaļ |
florian
|
d88d644925
+ support for FMA intrinsic: if there is no hardware support, the compiler throws an error.
|
11 gadi atpakaļ |
Jonas Maebe
|
9c7c64a3af
* moved amiga/morphos-specific libsym-related field from tprocdef to
|
11 gadi atpakaļ |
Jonas Maebe
|
b57c95043f
+ support overriding tdef/tsym methods with target-specific functionality:
|
11 gadi atpakaļ |
Jonas Maebe
|
1ac4021178
* moved po_has_inlininginfo from procoptions to procimploptions so that
|
11 gadi atpakaļ |
Jonas Maebe
|
84442d05f9
* renamed fobjcforcedprocname to fforcedprocname and also use it for the
|
11 gadi atpakaļ |
sergei
|
df6837fa12
* Fixed cloning of varargs parameters in tcallnode.dogetcopy, resolves #23981.
|
11 gadi atpakaļ |
florian
|
1366498255
+ nf_addr_taken: it marks nodes which address is taken
|
11 gadi atpakaļ |
sergei
|
52af9a2c89
* Changed passing of hidden parameters to constructors of class-style objects: VMT is always passed in the first ('self') parameter, and the second one ('vmt', although this name is now misleading) contains flag specifying the constructor behavior and meaning of 'self'. Together with r26656 this removes methodpointer sharing between two parameter node trees, it becomes possible not to put methodpointer into temp, but use node tree below 'self' parameter to do virtual calls. This also matches behavior of Delphi.
|
11 gadi atpakaļ |