Commit History

Author SHA1 Message Date
  sergei 06192a8137 Values of managed variables are never ever used after decrementing reference on the variable, so there is no point of having a 'decrement reference' as a separate operation. We can always do 'finalize', i.e. clear the contents after decref. 13 years ago
  sergei b1cbf30a94 * Managed types passed to out formal parameters must be completely cleaned (decrementing refcount is not enough) at caller side, because callee side doesn't know their actual type and cannot initialize them. Resolves #20962. 13 years ago
  sergei 3a579ced7b * Fixed IE201103063 when <dynamic array of unmanaged type> is being passed to <out open array> parameter. 13 years ago
  pierre b6de7f0d6b * Suppress Comaprison might be always false if first_mm_imreg is zero 13 years ago
  svenbarth d0705a1779 Rebase to revision 17236 14 years ago
  svenbarth 96116a6c3a Several adjustments because virtual methods in helpers are just normal methods and a VMT isn't generated for them either. 14 years ago
  sergei 48d93dc40e * Fixed handling of "open array of managed type" out-parameters at caller side. Reference count should be decremented only for those array elements which are actually passed to the called procedure; it may be a part of original array if range or slice is used. Concludes work on #18859. 14 years ago
  svenbarth 963a4d7b23 Commit of a completely restructured helper implementation. Instead of changing objectdefs with odt_classhelper to odt_class, they'll have the odt_helper type assigned to and this will be kept. This also implies that the parent of a helper is its true parent while the extended type is set to a field in tobjectdef (extendeddef). 14 years ago
  svenbarth d12b198c7f Rebase to revision 16888 14 years ago
  Jonas Maebe be2bb0b2e1 * free function return location if the callnode immediately copies it to a 14 years ago
  paul 56bf42de57 compiler: implement record methods and class methods: 14 years ago
  Jonas Maebe e6c09430cb * fixed inverted condition in r16052 that could cause superfluous parameter 15 years ago
  Jonas Maebe 6094cb79dc * fixed internalerrors on non-use_fixed_stack platforms after r16050: 15 years ago
  Jonas Maebe f13f6627c4 * moved use_fixed_stack from cgutils to a method in paramgr so it can 15 years ago
  joost b938ea0f2a * For cdecl functions the funcret is not popped by the caller when it is passed 15 years ago
  joost 65ab1e820b * Safecall on linux/i386 now behaves like cdecl plus hidden exception support. 15 years ago
  Jonas Maebe 57bd6d2685 + merged nestedprocvars branch 15 years ago
  Jonas Maebe a7eb6bf64b * fixed checking validity of temporary parameter location that triggered 15 years ago
  Jonas Maebe 283018a3bf * changed tprocdef.funcretloc[] from a tlocation into a tcgpara so it can 15 years ago
  Jonas Maebe 46ff0c4fc4 * extracted gen_load_cgpara_loc() 15 years ago
  Jonas Maebe f5c52b25cd * removed "and not is_class()" condition from is_managed_type(), because 15 years ago
  Jonas Maebe e9b62c1294 * refactored general loc->cgpara loading code in ncgcal into helpers in 15 years ago
  Jonas Maebe ef824c53f8 * more cpu-specific ifdef'd fpu/intregister code removed 15 years ago
  Jonas Maebe ceb063c7fe * moved support for passing floating point values in integer registers from 15 years ago
  Jonas Maebe 9bc15a5f61 * renamed a_param_* to a_load_*_cgpara 15 years ago
  florian c1f3d8dcaa * unified names of system_*/systems_* sets 15 years ago
  Jonas Maebe d1538ab023 o added ARM VPFv2/VFPv3 support: 15 years ago
  Jonas Maebe 3660bf7f98 * integrated the transformation of an Objective-C method call into a call 16 years ago
  Jonas Maebe cc5aeb09de * fixed handling the result value of functions where the result type is 16 years ago
  florian c0d4efed2e * forbid passing derived classes to call by reference parent classes (for objects, this is still allowed), resolves #13135 16 years ago