nickysn
|
24fcac9f87
+ added support for nested procvars in the i8086 far data memory models
|
11 роки тому |
Jonas Maebe
|
5fa09fa2f4
* changed tcallnode.fforcedprocname from shortstring into tsymstr,
|
11 роки тому |
Jonas Maebe
|
9f6d6f4aa8
* copy tcallnode.fforcedprocname field
|
11 роки тому |
florian
|
d88d644925
+ support for FMA intrinsic: if there is no hardware support, the compiler throws an error.
|
11 роки тому |
Jonas Maebe
|
9c7c64a3af
* moved amiga/morphos-specific libsym-related field from tprocdef to
|
11 роки тому |
Jonas Maebe
|
b57c95043f
+ support overriding tdef/tsym methods with target-specific functionality:
|
11 роки тому |
Jonas Maebe
|
1ac4021178
* moved po_has_inlininginfo from procoptions to procimploptions so that
|
11 роки тому |
Jonas Maebe
|
84442d05f9
* renamed fobjcforcedprocname to fforcedprocname and also use it for the
|
11 роки тому |
sergei
|
df6837fa12
* Fixed cloning of varargs parameters in tcallnode.dogetcopy, resolves #23981.
|
11 роки тому |
florian
|
1366498255
+ nf_addr_taken: it marks nodes which address is taken
|
11 роки тому |
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 роки тому |
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 роки тому |
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 роки тому |
florian
|
e6b68d19c8
* reordered decision how arguments for inlining are handled
|
11 роки тому |
florian
|
2a7dcf6c7b
* formatting
|
11 роки тому |
florian
|
d71bfe4c6f
* var parameters can be put in registers if the callee is inlined
|
11 роки тому |
Jonas Maebe
|
c05da62b0e
* detect static data use by record methods and methods of nested classes/
|
11 роки тому |
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 роки тому |
florian
|
4d5119bf1c
* fixes several issues which cause warnings by the dfa code when using it to detect uninitialized variables
|
12 роки тому |
florian
|
1d4a4d0684
+ noreturn directive
|
12 роки тому |
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 роки тому |
florian
|
f95b225157
* fix wrong constant temp handling, introduced in r24953, resolves #24915
|
12 роки тому |
florian
|
be2ab84474
* make actualtargetnode a normal procedure using pointers to node so it can be used also when replacing nodes
|
12 роки тому |
florian
|
541d67771b
* keep managed types in registers if possible. Under certain circumstances (if they don't require init/final code,
|
12 роки тому |
nickysn
|
5dfdb616be
* fixed a regression, introduced in r24571
|
12 роки тому |
nickysn
|
d300116419
* fixed a bug, which caused ptr(nonconst, const) to be incorrectly inlined as a const
|
12 роки тому |
florian
|
0e41df598e
* merge i8086 branch by Nikolay Nikolov
|
12 роки тому |
florian
|
709ba5e053
+ introduce cnf_call_never_returns to signal the dfa if a call node never returns
|
12 роки тому |
florian
|
877c6e9ce9
* formatting
|
12 роки тому |
Jonas Maebe
|
9973a5737f
* don't give an error when calling a class method on an object typecasted
|
12 роки тому |