@@ -501,9 +501,8 @@ struct LineInfoNode # legacy support for aiding Serializer.deserialize of old IR
501501 LineInfoNode (mod:: Module , @nospecialize (method), file:: Symbol , line:: Int32 , inlined_at:: Int32 ) = new (mod, method, file, line, inlined_at)
502502end
503503
504-
505504function CodeInstance (
506- mi:: MethodInstance , @nospecialize (rettype), @nospecialize (exctype), @nospecialize (inferred_const),
505+ mi:: MethodSpecialization , @nospecialize (rettype), @nospecialize (exctype), @nospecialize (inferred_const),
507506 @nospecialize (inferred), const_flags:: Int32 , min_world:: UInt , max_world:: UInt ,
508507 ipo_effects:: UInt32 , effects:: UInt32 , @nospecialize (analysis_results),
509508 relocatability:: UInt8 , edges:: DebugInfo )
@@ -649,12 +648,12 @@ Symbol(s::Symbol) = s
649648# module providing the IR object model
650649module IR
651650
652- export CodeInfo, MethodInstance, CodeInstance, GotoNode, GotoIfNot, ReturnNode,
651+ export CodeInfo, MethodSpecialization, MethodInstance, CodeInstance, GotoNode, GotoIfNot, ReturnNode,
653652 NewvarNode, SSAValue, SlotNumber, Argument,
654653 PiNode, PhiNode, PhiCNode, UpsilonNode, DebugInfo,
655654 Const, PartialStruct, InterConditional, EnterNode
656655
657- using Core: CodeInfo, MethodInstance, CodeInstance, GotoNode, GotoIfNot, ReturnNode,
656+ using Core: CodeInfo, MethodSpecialization, MethodInstance, CodeInstance, GotoNode, GotoIfNot, ReturnNode,
658657 NewvarNode, SSAValue, SlotNumber, Argument,
659658 PiNode, PhiNode, PhiCNode, UpsilonNode, DebugInfo,
660659 Const, PartialStruct, InterConditional, EnterNode
@@ -1006,6 +1005,9 @@ const check_top_bit = check_sign_bit
10061005EnterNode (old:: EnterNode , new_dest:: Int ) = isdefined (old, :scope ) ?
10071006 EnterNode (new_dest, old. scope) : EnterNode (new_dest)
10081007
1008+ eval (Core, :((MS:: Type{<:MethodSpecialization} )(def:: Union{Method, Module, MethodSpecialization} , abi:: Type{<:Tuple} ) =
1009+ $ (Expr (:new , :MS , :def , :abi ))))
1010+
10091011include (Core, " optimized_generics.jl" )
10101012
10111013ccall (:jl_set_istopmod , Cvoid, (Any, Bool), Core, true )
0 commit comments