> On Sep 11, 2017, at 4:20 PM, Sven Barth via fpc-pascal > <fpc-pascal@lists.freepascal.org> wrote: > > They're used for the reference counter of the array (or string or interface). > The reference counter changes each time you assign an array or pass it to a > by-value parameter or if you change a value (cause the compiler/RTL needs to > make sure that the reference to the array is unique then). > >
Maybe this is relevant to my poor performance then but perhaps it’s just the way the time profiler works? It’s telling me the program is spending 16% in system_delocked which seems extreme. See if I have a dynamic array and call arr[0] := xxx then those functions will be called (or FPC_DYNARRAY_ASSIGN)? I also have a dynamic array in an object which is passed a function parameter, but not by value so that doesn’t fit your description. Regards, Ryan Joseph _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal