@@ -259,7 +259,7 @@ JL_DLLEXPORT jl_code_instance_t* jl_new_codeinst(
259259 jl_value_t * inferred_const , jl_value_t * inferred ,
260260 int32_t const_flags , size_t min_world , size_t max_world ,
261261 uint32_t ipo_effects , uint32_t effects , jl_value_t * argescapes ,
262- uint8_t relocatability );
262+ uint8_t relocatability , uint8_t precompile );
263263
264264jl_datatype_t * jl_mk_builtin_func (jl_datatype_t * dt , const char * name , jl_fptr_args_t fptr ) JL_GC_DISABLED
265265{
@@ -294,7 +294,7 @@ jl_datatype_t *jl_mk_builtin_func(jl_datatype_t *dt, const char *name, jl_fptr_a
294294
295295 jl_code_instance_t * codeinst = jl_new_codeinst (mi ,
296296 (jl_value_t * )jl_any_type , jl_nothing , jl_nothing ,
297- 0 , 1 , ~(size_t )0 , 0 , 0 , jl_nothing , 0 );
297+ 0 , 1 , ~(size_t )0 , 0 , 0 , jl_nothing , 0 , 0 );
298298 jl_mi_cache_insert (mi , codeinst );
299299 jl_atomic_store_relaxed (& codeinst -> specptr .fptr1 , fptr );
300300 jl_atomic_store_relaxed (& codeinst -> invoke , jl_fptr_args );
@@ -434,7 +434,7 @@ JL_DLLEXPORT jl_code_instance_t *jl_get_method_inferred(
434434 }
435435 codeinst = jl_new_codeinst (
436436 mi , rettype , NULL , NULL ,
437- 0 , min_world , max_world , 0 , 0 , jl_nothing , 0 );
437+ 0 , min_world , max_world , 0 , 0 , jl_nothing , 0 , 0 );
438438 jl_mi_cache_insert (mi , codeinst );
439439 return codeinst ;
440440}
@@ -444,7 +444,7 @@ JL_DLLEXPORT jl_code_instance_t *jl_new_codeinst(
444444 jl_value_t * inferred_const , jl_value_t * inferred ,
445445 int32_t const_flags , size_t min_world , size_t max_world ,
446446 uint32_t ipo_effects , uint32_t effects , jl_value_t * argescapes ,
447- uint8_t relocatability
447+ uint8_t relocatability , uint8_t precompile
448448 /*, jl_array_t *edges, int absolute_max*/ )
449449{
450450 jl_task_t * ct = jl_current_task ;
@@ -467,7 +467,7 @@ JL_DLLEXPORT jl_code_instance_t *jl_new_codeinst(
467467 jl_atomic_store_relaxed (& codeinst -> invoke , jl_fptr_const_return );
468468 }
469469 jl_atomic_store_relaxed (& codeinst -> specsigflags , 0 );
470- jl_atomic_store_relaxed (& codeinst -> precompile , 0 );
470+ jl_atomic_store_relaxed (& codeinst -> precompile , precompile ? 1 : 0 );
471471 jl_atomic_store_relaxed (& codeinst -> next , NULL );
472472 codeinst -> ipo_purity_bits = ipo_effects ;
473473 jl_atomic_store_relaxed (& codeinst -> purity_bits , effects );
@@ -2372,7 +2372,7 @@ jl_code_instance_t *jl_compile_method_internal(jl_method_instance_t *mi, size_t
23722372 if (unspec && (unspec_invoke = jl_atomic_load_acquire (& unspec -> invoke ))) {
23732373 jl_code_instance_t * codeinst = jl_new_codeinst (mi ,
23742374 (jl_value_t * )jl_any_type , NULL , NULL ,
2375- 0 , 1 , ~(size_t )0 , 0 , 0 , jl_nothing , 0 );
2375+ 0 , 1 , ~(size_t )0 , 0 , 0 , jl_nothing , 0 , 0 );
23762376 void * unspec_fptr = jl_atomic_load_relaxed (& unspec -> specptr .fptr );
23772377 if (unspec_fptr ) {
23782378 // wait until invoke and specsigflags are properly set
@@ -2399,7 +2399,7 @@ jl_code_instance_t *jl_compile_method_internal(jl_method_instance_t *mi, size_t
23992399 if (!jl_code_requires_compiler (src , 0 )) {
24002400 jl_code_instance_t * codeinst = jl_new_codeinst (mi ,
24012401 (jl_value_t * )jl_any_type , NULL , NULL ,
2402- 0 , 1 , ~(size_t )0 , 0 , 0 , jl_nothing , 0 );
2402+ 0 , 1 , ~(size_t )0 , 0 , 0 , jl_nothing , 0 , 0 );
24032403 jl_atomic_store_release (& codeinst -> invoke , jl_fptr_interpret_call );
24042404 jl_mi_cache_insert (mi , codeinst );
24052405 record_precompile_statement (mi );
@@ -2436,7 +2436,7 @@ jl_code_instance_t *jl_compile_method_internal(jl_method_instance_t *mi, size_t
24362436 return ucache ;
24372437 }
24382438 codeinst = jl_new_codeinst (mi , (jl_value_t * )jl_any_type , NULL , NULL ,
2439- 0 , 1 , ~(size_t )0 , 0 , 0 , jl_nothing , 0 );
2439+ 0 , 1 , ~(size_t )0 , 0 , 0 , jl_nothing , 0 , 0 );
24402440 void * unspec_fptr = jl_atomic_load_relaxed (& ucache -> specptr .fptr );
24412441 if (unspec_fptr ) {
24422442 // wait until invoke and specsigflags are properly set
0 commit comments