Jonas Maebe
|
146e3bcb9e
* synchronised with trunk till r29513
|
10 lat temu |
Jonas Maebe
|
e97f31541e
- reverted partial commit of merge
|
10 lat temu |
Jonas Maebe
|
a76bbf363d
* synchronised with trunk r29513
|
10 lat temu |
florian
|
681c1afe6c
* limit inlined expansion and exponential code grow, resolves #23862
|
10 lat temu |
florian
|
ccb01d6196
* allow subtraction/addition of internally generated nodes, resolves #27256
|
10 lat temu |
florian
|
d540d56908
* unified internal errors
|
10 lat temu |
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.
|
11 lat temu |
Jonas Maebe
|
b0639405ac
* compare the actual target nodes when checking whether the result of an
|
11 lat temu |
Jonas Maebe
|
bd09b88a5b
+ support for http://en.wikipedia.org/wiki/Blocks_(C_language_extension)
|
11 lat temu |
nickysn
|
24fcac9f87
+ added support for nested procvars in the i8086 far data memory models
|
11 lat temu |
Jonas Maebe
|
5fa09fa2f4
* changed tcallnode.fforcedprocname from shortstring into tsymstr,
|
11 lat temu |
Jonas Maebe
|
9f6d6f4aa8
* copy tcallnode.fforcedprocname field
|
11 lat temu |
florian
|
d88d644925
+ support for FMA intrinsic: if there is no hardware support, the compiler throws an error.
|
11 lat temu |
Jonas Maebe
|
9c7c64a3af
* moved amiga/morphos-specific libsym-related field from tprocdef to
|
11 lat temu |
Jonas Maebe
|
b57c95043f
+ support overriding tdef/tsym methods with target-specific functionality:
|
11 lat temu |
Jonas Maebe
|
1ac4021178
* moved po_has_inlininginfo from procoptions to procimploptions so that
|
11 lat temu |
Jonas Maebe
|
84442d05f9
* renamed fobjcforcedprocname to fforcedprocname and also use it for the
|
11 lat temu |
sergei
|
df6837fa12
* Fixed cloning of varargs parameters in tcallnode.dogetcopy, resolves #23981.
|
11 lat temu |
florian
|
1366498255
+ nf_addr_taken: it marks nodes which address is taken
|
11 lat temu |
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 lat temu |
sergei
|
a1dfaa54dd
* Fixed exception handling in constructors of TP-style objects to correctly handle cases of statically allocated objects (must call destructor but do not free memory) and objects without destructor (must free memory if it was allocated dynamically).
|
11 lat temu |
sergei
|
a5d5ce8eb2
* TP-style object destructors do not need actual VMT in hidden parameter, a constant flag indicating need to free memory is sufficient.
|
11 lat temu |
florian
|
e6b68d19c8
* reordered decision how arguments for inlining are handled
|
11 lat temu |
florian
|
2a7dcf6c7b
* formatting
|
11 lat temu |
florian
|
d71bfe4c6f
* var parameters can be put in registers if the callee is inlined
|
11 lat temu |
Jonas Maebe
|
c05da62b0e
* detect static data use by record methods and methods of nested classes/
|
11 lat temu |
sergei
|
1a3b46967e
+ Two more checks for access to global data and setting the pi_needs_got flag, intended for targets that require decision about PIC code generation strictly before pass 2.
|
11 lat temu |
florian
|
4d5119bf1c
* fixes several issues which cause warnings by the dfa code when using it to detect uninitialized variables
|
12 lat temu |
florian
|
1d4a4d0684
+ noreturn directive
|
12 lat temu |
svenbarth
|
798bb91e90
Extract tdef.is_related plus its overrides in tobjectdef, trecorddef and tstringdef into a new function def_is_related in unit defcmp.
|
12 lat temu |