@@ -1150,6 +1150,7 @@ Function Specializations
11501150 specialization ::= type '_' type* 'Ts' SPEC-INFO // Generic re-abstracted prespecialization
11511151 specialization ::= type '_' type* 'TG' SPEC-INFO // Generic not re-abstracted specialization
11521152 specialization ::= type '_' type* 'Ti' SPEC-INFO // Inlined function with generic substitutions.
1153+ specialization ::= type '_' type* 'Ta' SPEC-INFO // Non-async specialization
11531154
11541155The types are the replacement types of the substitution list.
11551156
@@ -1172,19 +1173,23 @@ Some kinds need arguments, which precede ``Tf``.
11721173 spec-arg ::= identifier
11731174 spec-arg ::= type
11741175
1175- SPEC-INFO ::= MT-REMOVED? FRAGILE? PASSID
1176+ SPEC-INFO ::= MT-REMOVED? FRAGILE? ASYNC-REMOVED? PASSID
11761177
11771178 PASSID ::= '0' // AllocBoxToStack,
11781179 PASSID ::= '1' // ClosureSpecializer,
11791180 PASSID ::= '2' // CapturePromotion,
11801181 PASSID ::= '3' // CapturePropagation,
11811182 PASSID ::= '4' // FunctionSignatureOpts,
11821183 PASSID ::= '5' // GenericSpecializer,
1184+ PASSID ::= '6' // MoveDiagnosticInOutToOut,
1185+ PASSID ::= '7' // AsyncDemotion,
11831186
11841187 MT-REMOVED ::= 'm' // non-generic metatype arguments are removed in the specialized function
11851188
11861189 FRAGILE ::= 'q'
11871190
1191+ ASYNC-REMOVED ::= 'a' // async effect removed
1192+
11881193 ARG-SPEC-KIND ::= 'n' // Unmodified argument
11891194 ARG-SPEC-KIND ::= 'c' // Consumes n 'type' arguments which are closed over types in argument order
11901195 // and one 'identifier' argument which is the closure symbol name
0 commit comments