Commit History

Author SHA1 Message Date
  Jonas Maebe b57c95043f + support overriding tdef/tsym methods with target-specific functionality: 11 years ago
  florian 686a2d2f3f + Support omitting the frame pointer on arm even in procedures with incoming parameters 11 years ago
  florian 04464b8622 * do not create an fpc_zeromem node if size=0 11 years ago
  Jonas Maebe f936a48afa * don't change the forward/interface definition of regular forward/interface 11 years ago
  Jonas Maebe 1ac4021178 * moved po_has_inlininginfo from procoptions to procimploptions so that 11 years ago
  Jonas Maebe e9268a0a14 * synchronised with trunk up till r26975 11 years ago
  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 years ago
  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 years ago
  florian b1f54b2853 * indentation fixed 11 years ago
  florian fc7dc9e54c * do cse after the init/final code has been inserted, this might enable new cse opportunities 11 years ago
  florian 6e63272ab7 * added missing parenthesis 11 years ago
  nickysn 338d72f564 * extracted the code from psub.translate_registers for generating the name of 11 years ago
  sergei 6ea9ce1077 * Force managed types to be always returned in parameters, independent of target (primitive types were already handled that way; the patch affects small records with fields of managed types). 11 years ago
  florian 99eadb91b3 * run CheckAndWarn to get proper locations for warnings about uninitialized variables 11 years ago
  Jonas Maebe 044e133067 * override hlcgcpu.create_codegen with hlcgllvm.create_codegen when building 11 years ago
  florian 8be7cfa05f * check the scope of a variable when checking dfa based uninitialized variables, 11 years ago
  florian 57586b69c7 * implicit try...finally frames are added after dfa so we don't have to take care if the subroutine needs/uses those or not 11 years ago
  florian 3cb747f4a7 * mark the node which is the entry of the user code with a flag 11 years ago
  florian cca520abd9 + warn for uninitialized out parameters when dfa is enabled 11 years ago
  florian 1a4584f4c6 + dead store elimination, based on a patch by Jeppe Johansen 11 years ago
  florian e8787c4b48 + constant propagation, based on a patch by Jeppe Johansen 11 years ago
  svenbarth 68a3827539 Fix for Mantis #21051. Correctly handle specializations that occur during the specialization of methods. 12 years ago
  sergei 7fbcf64608 * Disabled r25488 for ARM targets since it causes crashes there, Mantis #25050. 12 years ago
  sergei 1bd43f0ea1 * Outgoing parameters on stack do not need to inhibit stack frame optimization on targets with fixed stack, because there they do not modify stack pointer in the middle of routine. 12 years ago
  florian d4968e054b + arm: tsettings.instructionset 12 years ago
  sergei ac2006898f * Mark procedures with shortstring value parameters as non-leaf, because such parameters generate a call (to fpc_shortstr_assign). 12 years ago
  svenbarth fc79d47b09 Fix for Mantis #24651. Allow pointer comparison for internal expressions (in this case check for valid VMT). 12 years ago
  sergei 1419a12865 - Removed MIPS-specific code which has been copied to TMIPSProcinfo.set_first_temp_offset in r23885. 12 years ago
  sergei 4e873d0561 + Determine early (before pass 2) whether managed parameters/locals/temps will cause the procedure to reference RTTI labels and, therefore, need GOT. 12 years ago
  Jonas Maebe a1bc04bbb3 * don't omit stack frame generation when generating gprof information, as 12 years ago