Skip to content

Commit 9eaadcd

Browse files
gbaraldiJeffBezanson
authored andcommitted
Don't delete inferred code from external interpreters (#57224)
We were deleting code from external abstract interpreters since bdf8219. Fixes JuliaGPU/CUDA.jl#2637. Not sure how to write tests for this :( --------- Co-authored-by: Jeff Bezanson <[email protected]> (cherry picked from commit 832f084)
1 parent ccb74dd commit 9eaadcd

File tree

1 file changed

+1
-0
lines changed

1 file changed

+1
-0
lines changed

src/staticdata.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -859,6 +859,7 @@ static void jl_insert_into_serialization_queue(jl_serializer_state *s, jl_value_
859859
record_field_change((jl_value_t**)&ci->inferred, jl_nothing);
860860
}
861861
else if (native_functions && // don't delete any code if making a ji file
862+
(ci->owner == jl_nothing) && // don't delete code for external interpreters
862863
!effects_foldable(ci->ipo_purity_bits) && // don't delete code we may want for irinterp
863864
jl_ir_inlining_cost(inferred) == UINT16_MAX) { // don't delete inlineable code
864865
// delete the code now: if we thought it was worth keeping, it would have been converted to object code

0 commit comments

Comments
 (0)