pierre
|
e4346b264f
Add missing alignment in DynArrayIndex function
|
7 năm trước cách đây |
svenbarth
|
8536abce8a
* as the management operator feature is not platform specific using a specific define for it aside from a
|
7 năm trước cách đây |
svenbarth
|
8606293028
* assume that dynamic arrays with a negative reference count are immutable (at least regarding their metadata)
|
7 năm trước cách đây |
florian
|
c230f81719
+ support for <dyn. array>+<dyn. array>, resolves #30463
|
7 năm trước cách đây |
svenbarth
|
c87cee09fd
* use the type information *parameter* not the unitialized parameter
|
7 năm trước cách đây |
svenbarth
|
916ff0b92c
+ extend Concat() with support for dynamic arrays
|
7 năm trước cách đây |
svenbarth
|
c45f738081
* fix DynArrayIndex(): as the last typeinfo entry is no longer a dynamic array the elSize needs to be remembered
|
8 năm trước cách đây |
svenbarth
|
8b5461367b
* move TTypeKind from TypInfo unit to System unit as it's necessary for the future GetTypeKind() intrinsic
|
8 năm trước cách đây |
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 năm trước cách đây |
maciej-izak
|
0cff9fe83c
* Call management operator (Initialize) for records when SetLength for dynamic arrays is used.
|
8 năm trước cách đây |
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 năm trước cách đây |
florian
|
3faff7946d
* fix typo for endif VER3_0_0, patch by Maciej Izak
|
8 năm trước cách đây |
svenbarth
|
f889891466
* fix Delete() for dynamic arrays
|
9 năm trước cách đây |
svenbarth
|
26a2ddd3d6
+ extend Delete() intrinsics with Delphi compatible support for dynamic arrays. Also fixes Mantis #30306
|
9 năm trước cách đây |
pierre
|
97c2067832
Fix compiler cycling starting from 3.0.0 powerpc64 release compiler
|
9 năm trước cách đây |
svenbarth
|
d9d2789375
* fix DynArrayDim() and DynArrayIndex() after the RTTI changes in r33944
|
9 năm trước cách đây |
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 năm trước cách đây |
svenbarth
|
e15816e35b
Fix for Mantis #30110. Speed up finalization of array of primitive/simple records (aka records not containing managed types).
|
9 năm trước cách đây |
florian
|
a7f1ce2e98
* patch by Dmitry Boyarintsev: initialize dyn. arrays more cleverly in a setlength call with ref. count>1, resolves issue #29250
|
9 năm trước cách đây |
marco
|
4733e50de5
* system unit additions from mantis #27206. Exports some dynarray related RTTI functions.
|
10 năm trước cách đây |
nickysn
|
a10c200090
* tdynarraytypedata.elSize changed from PtrUInt to SizeUInt; this fixes e.g.
|
11 năm trước cách đây |
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 năm trước cách đây |
pierre
|
a311c53167
Replace HandleErrorFrame calls by HandleErrorAddrFrameInd where possible in common code (to allow correct backtrace for mips cpu)
|
13 năm trước cách đây |
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 năm trước cách đây |
sergei
|
f136e44b6b
- RTL: cleaned up remaining 'decr_ref' routines (not removed completely due to bootstrapping needs, but aliased to 'finalize' ones).
|
13 năm trước cách đây |
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 năm trước cách đây |
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 năm trước cách đây |
sergei
|
5658c30328
* Partially reverted r20041 to prevent IE200606085 on ARM platforms.
|
13 năm trước cách đây |
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 năm trước cách đây |
sergei
|
1fcd40ee64
Continue fixing open array handling:
|
14 năm trước cách đây |