Commit History

Autor SHA1 Mensaxe Data
  Jonas Maebe c6ba0bb6fb + support for targets that require by-reference value parameters to be %!s(int64=10) %!d(string=hai) anos
  Jonas Maebe aae879d28a * also set aktcallnode during tcallnode.pass_1, so that the callparanode %!s(int64=10) %!d(string=hai) anos
  Jonas Maebe 863e81315e * changed goto usage in tcallnode.pass_typecheck into try/finally (and at %!s(int64=10) %!d(string=hai) anos
  florian d6bfb29313 * clean usercode_entry flag from outer block when copying a subroutine node tree for inlining, enables sometimes better inlining %!s(int64=10) %!d(string=hai) anos
  florian 42020c8bb8 * when passing a parameter by var/out, its address leaves the current scope so the compiler has to take care of this %!s(int64=10) %!d(string=hai) anos
  Jonas Maebe eb419b58c5 - disable inlining of routines that contain a call to a C-style varargs %!s(int64=10) %!d(string=hai) anos
  Jonas Maebe 146e3bcb9e * synchronised with trunk till r29513 %!s(int64=10) %!d(string=hai) anos
  Jonas Maebe e97f31541e - reverted partial commit of merge %!s(int64=10) %!d(string=hai) anos
  Jonas Maebe a76bbf363d * synchronised with trunk r29513 %!s(int64=10) %!d(string=hai) anos
  florian 681c1afe6c * limit inlined expansion and exponential code grow, resolves #23862 %!s(int64=10) %!d(string=hai) anos
  florian ccb01d6196 * allow subtraction/addition of internally generated nodes, resolves #27256 %!s(int64=10) %!d(string=hai) anos
  florian d540d56908 * unified internal errors %!s(int64=10) %!d(string=hai) anos
  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. %!s(int64=10) %!d(string=hai) anos
  Jonas Maebe b0639405ac * compare the actual target nodes when checking whether the result of an %!s(int64=11) %!d(string=hai) anos
  Jonas Maebe bd09b88a5b + support for http://en.wikipedia.org/wiki/Blocks_(C_language_extension) %!s(int64=11) %!d(string=hai) anos
  nickysn 24fcac9f87 + added support for nested procvars in the i8086 far data memory models %!s(int64=11) %!d(string=hai) anos
  Jonas Maebe 5fa09fa2f4 * changed tcallnode.fforcedprocname from shortstring into tsymstr, %!s(int64=11) %!d(string=hai) anos
  Jonas Maebe 9f6d6f4aa8 * copy tcallnode.fforcedprocname field %!s(int64=11) %!d(string=hai) anos
  florian d88d644925 + support for FMA intrinsic: if there is no hardware support, the compiler throws an error. %!s(int64=11) %!d(string=hai) anos
  Jonas Maebe 9c7c64a3af * moved amiga/morphos-specific libsym-related field from tprocdef to %!s(int64=11) %!d(string=hai) anos
  Jonas Maebe b57c95043f + support overriding tdef/tsym methods with target-specific functionality: %!s(int64=11) %!d(string=hai) anos
  Jonas Maebe 1ac4021178 * moved po_has_inlininginfo from procoptions to procimploptions so that %!s(int64=11) %!d(string=hai) anos
  Jonas Maebe 84442d05f9 * renamed fobjcforcedprocname to fforcedprocname and also use it for the %!s(int64=11) %!d(string=hai) anos
  sergei df6837fa12 * Fixed cloning of varargs parameters in tcallnode.dogetcopy, resolves #23981. %!s(int64=11) %!d(string=hai) anos
  florian 1366498255 + nf_addr_taken: it marks nodes which address is taken %!s(int64=11) %!d(string=hai) anos
  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. %!s(int64=11) %!d(string=hai) anos
  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). %!s(int64=11) %!d(string=hai) anos
  sergei a5d5ce8eb2 * TP-style object destructors do not need actual VMT in hidden parameter, a constant flag indicating need to free memory is sufficient. %!s(int64=11) %!d(string=hai) anos
  florian e6b68d19c8 * reordered decision how arguments for inlining are handled %!s(int64=11) %!d(string=hai) anos
  florian 2a7dcf6c7b * formatting %!s(int64=11) %!d(string=hai) anos