Commit History

Author SHA1 Message Date
  pierre e4346b264f Add missing alignment in DynArrayIndex function 7 years ago
  svenbarth 8536abce8a * as the management operator feature is not platform specific using a specific define for it aside from a 7 years ago
  svenbarth 8606293028 * assume that dynamic arrays with a negative reference count are immutable (at least regarding their metadata) 7 years ago
  florian c230f81719 + support for <dyn. array>+<dyn. array>, resolves #30463 7 years ago
  svenbarth c87cee09fd * use the type information *parameter* not the unitialized parameter 7 years ago
  svenbarth 916ff0b92c + extend Concat() with support for dynamic arrays 7 years ago
  svenbarth c45f738081 * fix DynArrayIndex(): as the last typeinfo entry is no longer a dynamic array the elSize needs to be remembered 8 years ago
  svenbarth 8b5461367b * move TTypeKind from TypInfo unit to System unit as it's necessary for the future GetTypeKind() intrinsic 8 years ago
  svenbarth 72c595eefe + implement support for Insert() for dynamic arrays; the parameter that is inserted can be a dynamic or static array of the same type, an array constructor or a single element of the arrays type; all that is determined based on the second type 8 years ago
  maciej-izak 0cff9fe83c * Call management operator (Initialize) for records when SetLength for dynamic arrays is used. 8 years ago
  florian 0b82f71e8d * take care of the fact that there are 32 bit abis (e.g. ARMHF) which align qword on 8 byte boundaries, resolves issue #31132 8 years ago
  florian 3faff7946d * fix typo for endif VER3_0_0, patch by Maciej Izak 8 years ago
  svenbarth f889891466 * fix Delete() for dynamic arrays 9 years ago
  svenbarth 26a2ddd3d6 + extend Delete() intrinsics with Delphi compatible support for dynamic arrays. Also fixes Mantis #30306 9 years ago
  pierre 97c2067832 Fix compiler cycling starting from 3.0.0 powerpc64 release compiler 9 years ago
  svenbarth d9d2789375 * fix DynArrayDim() and DynArrayIndex() after the RTTI changes in r33944 9 years ago
  svenbarth 345d83c3e3 Merge RTTI changes from packages branch (including adjustments that were required due to changes in trunk since then). These changes favor source backwards compatibility in contrast to Delphi compatibility. Binary compatiblity is however drastically broken due to the indirect references that are platform independant! 9 years ago
  svenbarth e15816e35b Fix for Mantis #30110. Speed up finalization of array of primitive/simple records (aka records not containing managed types). 9 years ago
  florian a7f1ce2e98 * patch by Dmitry Boyarintsev: initialize dyn. arrays more cleverly in a setlength call with ref. count>1, resolves issue #29250 9 years ago
  marco 4733e50de5 * system unit additions from mantis #27206. Exports some dynarray related RTTI functions. 10 years ago
  nickysn a10c200090 * tdynarraytypedata.elSize changed from PtrUInt to SizeUInt; this fixes e.g. 11 years ago
  sergei f42c1b3720 * Return dynamic arrays in parameter, this was the only managed type still returned in register. Returning managed types in registers requires catching and re-raising exceptions at callee side in order to finalize result and avoid memory leaks. While such behavior makes little difference with generic setjmp-based exception handling, it becomes very inefficient as SEH-styled exception handling is being introduced. 11 years ago
  pierre a311c53167 Replace HandleErrorFrame calls by HandleErrorAddrFrameInd where possible in common code (to allow correct backtrace for mips cpu) 13 years ago
  sergei 92f927976e * Rewrote fpc_dynarray_copy to trim out-of-range arguments instead of raising range error. Makes behavior Delphi-compatible and resolves #21396. 13 years ago
  sergei f136e44b6b - RTL: cleaned up remaining 'decr_ref' routines (not removed completely due to bootstrapping needs, but aliased to 'finalize' ones). 13 years ago
  sergei 568ef396fb * Added fpc_dynarray_assign (a helper for dynamic array assignments), added local access to fpc_intf_assign, and switched fpc_copy to use assignment helpers instead of incr_ref/decr_ref combinations. 13 years ago
  sergei a8fe9601de * Get rid of using pdynarraytypeinfo, instead treat rtti as distinct 'header' and 'data' parts. In variants unit, use rtti declarations from typinfo directly. In system unit, declare private tdynarraytypedata record which (like typinfo.TTypeData) is not packed on alignment-sensitive targets. This simplifies code and removes scary pointer manipulations, should also yield better code on aligned targets. 13 years ago
  sergei 5658c30328 * Partially reverted r20041 to prevent IE200606085 on ARM platforms. 13 years ago
  sergei 40f29ffd7a * Generate direct order of indexes passed to fpc_dynarray_setlength at compile time, eliminates the need of reversing them at runtime (in DynArraySetLength). 13 years ago
  sergei 1fcd40ee64 Continue fixing open array handling: 14 years ago