@@ -54,7 +54,6 @@ jl_genericmemory_t *_new_genericmemory_(jl_value_t *mtype, size_t nel, int8_t is
54
54
tot = sizeof (jl_genericmemory_t ) + sizeof (void * );
55
55
}
56
56
m = (jl_genericmemory_t * )jl_gc_alloc (ct -> ptls , tot , mtype );
57
- PTR_PIN (m );
58
57
59
58
if (pooled ) {
60
59
data = (char * )m + JL_SMALL_BYTE_ALIGNMENT ;
@@ -108,7 +107,6 @@ JL_DLLEXPORT jl_genericmemory_t *jl_string_to_genericmemory(jl_value_t *str)
108
107
jl_task_t * ct = jl_current_task ;
109
108
int tsz = sizeof (jl_genericmemory_t ) + sizeof (void * );
110
109
jl_genericmemory_t * m = (jl_genericmemory_t * )jl_gc_alloc (ct -> ptls , tsz , jl_memory_uint8_type );
111
- PTR_PIN (m );
112
110
m -> length = jl_string_len (str );
113
111
m -> ptr = jl_string_data (str );
114
112
jl_genericmemory_data_owner_field (m ) = str ;
@@ -163,11 +161,11 @@ JL_DLLEXPORT jl_genericmemory_t *jl_ptr_to_genericmemory(jl_value_t *mtype, void
163
161
jl_exceptionf (jl_argumenterror_type , "invalid GenericMemory size: too large for system address width" );
164
162
int tsz = sizeof (jl_genericmemory_t ) + sizeof (void * );
165
163
m = (jl_genericmemory_t * )jl_gc_alloc (ct -> ptls , tsz , mtype );
166
- PTR_PIN (m );
167
164
m -> ptr = data ;
168
165
m -> length = nel ;
169
166
jl_genericmemory_data_owner_field (m ) = own_buffer ? (jl_value_t * )m : NULL ;
170
167
if (own_buffer ) {
168
+ PTR_PIN (m );
171
169
int isaligned = 0 ; // TODO: allow passing memalign'd buffers
172
170
jl_gc_track_malloced_genericmemory (ct -> ptls , m , isaligned );
173
171
jl_gc_count_allocd (nel * elsz );
0 commit comments