@@ -19,7 +19,7 @@ internal class TaskConsumeEmitter : ConsumeEmitter
1919
2020 private LocalBuilder disassemblyDiagnoserLocal ;
2121 /*
22- private readonly BenchmarkDotNet.Helpers.ManualResetValueTaskSource <Perfolizer.Horology.ClockSpan> valueTaskSource = new BenchmarkDotNet.Helpers.ManualResetValueTaskSource <Perfolizer.Horology.ClockSpan>();
22+ private readonly BenchmarkDotNet.Helpers.AutoResetValueTaskSource <Perfolizer.Horology.ClockSpan> valueTaskSource = new BenchmarkDotNet.Helpers.AutoResetValueTaskSource <Perfolizer.Horology.ClockSpan>();
2323 private System.Int64 repeatsRemaining;
2424 private readonly System.Action continuation;
2525 private Perfolizer.Horology.StartedClock startedClock;
@@ -48,7 +48,7 @@ protected override void OnDefineFieldsOverride(TypeBuilder runnableBuilder)
4848 && ! m . GetParameterTypes ( ) . First ( ) . IsByRef )
4949 . MakeGenericMethod ( ConsumableInfo . OverheadMethodReturnType ) ;
5050
51- valueTaskSourceField = runnableBuilder . DefineField ( ValueTaskSourceFieldName , typeof ( Helpers . ManualResetValueTaskSource < ClockSpan > ) , FieldAttributes . Private | FieldAttributes . InitOnly ) ;
51+ valueTaskSourceField = runnableBuilder . DefineField ( ValueTaskSourceFieldName , typeof ( Helpers . AutoResetValueTaskSource < ClockSpan > ) , FieldAttributes . Private | FieldAttributes . InitOnly ) ;
5252 repeatsRemainingField = runnableBuilder . DefineField ( RepeatsRemainingFieldName , typeof ( long ) , FieldAttributes . Private ) ;
5353 continuationField = runnableBuilder . DefineField ( ContinuationFieldName , typeof ( Action ) , FieldAttributes . Private | FieldAttributes . InitOnly ) ;
5454 startedClockField = runnableBuilder . DefineField ( StartedClockFieldName , typeof ( StartedClock ) , FieldAttributes . Private ) ;
@@ -72,15 +72,15 @@ protected override void EmitDisassemblyDiagnoserReturnDefaultOverride(ILGenerato
7272
7373 protected override void OnEmitCtorBodyOverride ( ConstructorBuilder constructorBuilder , ILGenerator ilBuilder )
7474 {
75- var ctor = typeof ( Helpers . ManualResetValueTaskSource < ClockSpan > ) . GetConstructor ( Array . Empty < Type > ( ) ) ;
75+ var ctor = typeof ( Helpers . AutoResetValueTaskSource < ClockSpan > ) . GetConstructor ( Array . Empty < Type > ( ) ) ;
7676 if ( ctor == null )
77- throw new InvalidOperationException ( $ "Cannot get default .ctor for { typeof ( Helpers . ManualResetValueTaskSource < ClockSpan > ) } ") ;
77+ throw new InvalidOperationException ( $ "Cannot get default .ctor for { typeof ( Helpers . AutoResetValueTaskSource < ClockSpan > ) } ") ;
7878
7979 /*
80- // valueTaskSourceField = new BenchmarkDotNet.Helpers.ManualResetValueTaskSource <Perfolizer.Horology.ClockSpan>();
80+ // valueTaskSourceField = new BenchmarkDotNet.Helpers.AutoResetValueTaskSource <Perfolizer.Horology.ClockSpan>();
8181 IL_0000: ldarg.0
82- IL_0001: newobj instance void class BenchmarkDotNet.Helpers.ManualResetValueTaskSource `1<valuetype Perfolizer.Horology.ClockSpan>::.ctor()
83- IL_0006: stfld class BenchmarkDotNet.Helpers.ManualResetValueTaskSource `1<valuetype Perfolizer.Horology.ClockSpan> BenchmarkRunner_0::valueTaskSource
82+ IL_0001: newobj instance void class BenchmarkDotNet.Helpers.AutoResetValueTaskSource `1<valuetype Perfolizer.Horology.ClockSpan>::.ctor()
83+ IL_0006: stfld class BenchmarkDotNet.Helpers.AutoResetValueTaskSource `1<valuetype Perfolizer.Horology.ClockSpan> BenchmarkRunner_0::valueTaskSource
8484 */
8585 ilBuilder . Emit ( OpCodes . Ldarg_0 ) ;
8686 ilBuilder . Emit ( OpCodes . Newobj , ctor ) ;
@@ -293,16 +293,6 @@ class Perfolizer.Horology.IClock clock
293293 ilBuilder . Emit ( OpCodes . Ldarg_0 ) ;
294294 ilBuilder . EmitLdarg ( toArg ) ;
295295 ilBuilder . Emit ( OpCodes . Stfld , repeatsRemainingField ) ;
296- /*
297- // valueTaskSource.Reset();
298- IL_0007: ldarg.0
299- IL_0008: ldfld class BenchmarkDotNet.Helpers.ManualResetValueTaskSource`1<valuetype Perfolizer.Horology.ClockSpan> BenchmarkRunner_0::valueTaskSource
300- IL_000d: callvirt instance void class BenchmarkDotNet.Helpers.ManualResetValueTaskSource`1<valuetype Perfolizer.Horology.ClockSpan>::Reset()
301- */
302- ilBuilder . Emit ( OpCodes . Ldarg_0 ) ;
303- ilBuilder . Emit ( OpCodes . Ldfld , valueTaskSourceField ) ;
304- var resetMethod = valueTaskSourceField . FieldType . GetMethod ( nameof ( Helpers . ManualResetValueTaskSource < ClockSpan > . Reset ) , BindingFlagsPublicInstance ) ;
305- ilBuilder . Emit ( OpCodes . Callvirt , resetMethod ) ;
306296 /*
307297 // startedClock = Perfolizer.Horology.ClockExtensions.Start(clock);
308298 IL_0012: ldarg.0
@@ -324,18 +314,18 @@ class Perfolizer.Horology.IClock clock
324314 /*
325315 // return new System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan>(valueTaskSource, valueTaskSource.Version);
326316 IL_0024: ldarg.0
327- IL_0025: ldfld class BenchmarkDotNet.Helpers.ManualResetValueTaskSource `1<valuetype Perfolizer.Horology.ClockSpan> BenchmarkRunner_0::valueTaskSource
317+ IL_0025: ldfld class BenchmarkDotNet.Helpers.AutoResetValueTaskSource `1<valuetype Perfolizer.Horology.ClockSpan> BenchmarkRunner_0::valueTaskSource
328318 IL_002a: ldarg.0
329- IL_002b: ldfld class BenchmarkDotNet.Helpers.ManualResetValueTaskSource `1<valuetype Perfolizer.Horology.ClockSpan> BenchmarkRunner_0::valueTaskSource
330- IL_0030: callvirt instance int16 class BenchmarkDotNet.Helpers.ManualResetValueTaskSource `1<valuetype Perfolizer.Horology.ClockSpan>::get_Version()
319+ IL_002b: ldfld class BenchmarkDotNet.Helpers.AutoResetValueTaskSource `1<valuetype Perfolizer.Horology.ClockSpan> BenchmarkRunner_0::valueTaskSource
320+ IL_0030: callvirt instance int16 class BenchmarkDotNet.Helpers.AutoResetValueTaskSource `1<valuetype Perfolizer.Horology.ClockSpan>::get_Version()
331321 IL_0035: newobj instance void valuetype [System.Private.CoreLib]System.Threading.Tasks.ValueTask`1<valuetype Perfolizer.Horology.ClockSpan>::.ctor(class [System.Private.CoreLib]System.Threading.Tasks.Sources.IValueTaskSource`1<!0>, int16)
332322 IL_003a: ret
333323 */
334324 ilBuilder . Emit ( OpCodes . Ldarg_0 ) ;
335325 ilBuilder . Emit ( OpCodes . Ldfld , valueTaskSourceField ) ;
336326 ilBuilder . Emit ( OpCodes . Ldarg_0 ) ;
337327 ilBuilder . Emit ( OpCodes . Ldfld , valueTaskSourceField ) ;
338- var getVersionMethod = valueTaskSourceField . FieldType . GetProperty ( nameof ( Helpers . ManualResetValueTaskSource < ClockSpan > . Version ) , BindingFlagsPublicInstance ) . GetGetMethod ( true ) ;
328+ var getVersionMethod = valueTaskSourceField . FieldType . GetProperty ( nameof ( Helpers . AutoResetValueTaskSource < ClockSpan > . Version ) , BindingFlagsPublicInstance ) . GetGetMethod ( true ) ;
339329 ilBuilder . Emit ( OpCodes . Callvirt , getVersionMethod ) ;
340330 var ctor = actionMethodBuilder . ReturnType . GetConstructor ( new [ ] { valueTaskSourceField . FieldType , getVersionMethod . ReturnType } ) ;
341331 ilBuilder . Emit ( OpCodes . Newobj , ctor ) ;
@@ -504,14 +494,14 @@ instance void __RunTask () cil managed
504494 /*
505495 // valueTaskSource.SetResult(clockspan);
506496 IL_008d: ldarg.0
507- IL_008e: ldfld class BenchmarkDotNet.Helpers.ManualResetValueTaskSource `1<valuetype Perfolizer.Horology.ClockSpan> BenchmarkRunner_0::valueTaskSource
497+ IL_008e: ldfld class BenchmarkDotNet.Helpers.AutoResetValueTaskSource `1<valuetype Perfolizer.Horology.ClockSpan> BenchmarkRunner_0::valueTaskSource
508498 IL_0093: ldloc.0
509- IL_0094: callvirt instance void class BenchmarkDotNet.Helpers.ManualResetValueTaskSource `1<valuetype Perfolizer.Horology.ClockSpan>::SetResult(!0)
499+ IL_0094: callvirt instance void class BenchmarkDotNet.Helpers.AutoResetValueTaskSource `1<valuetype Perfolizer.Horology.ClockSpan>::SetResult(!0)
510500 */
511501 ilBuilder . Emit ( OpCodes . Ldarg_0 ) ;
512502 ilBuilder . Emit ( OpCodes . Ldfld , valueTaskSourceField ) ;
513503 ilBuilder . EmitLdloc ( clockspanLocal ) ;
514- ilBuilder . Emit ( OpCodes . Callvirt , valueTaskSourceField . FieldType . GetMethod ( nameof ( Helpers . ManualResetValueTaskSource < ClockSpan > . SetResult ) , BindingFlagsPublicInstance ) ) ;
504+ ilBuilder . Emit ( OpCodes . Callvirt , valueTaskSourceField . FieldType . GetMethod ( nameof ( Helpers . AutoResetValueTaskSource < ClockSpan > . SetResult ) , BindingFlagsPublicInstance ) ) ;
515505
516506 ilBuilder . MarkLabel ( returnLabel ) ;
517507 ilBuilder . Emit ( OpCodes . Ret ) ;
@@ -627,15 +617,15 @@ class [System.Private.CoreLib]System.Exception e
627617 /*
628618 // valueTaskSource.SetException(e);
629619 IL_0018: ldarg.0
630- IL_0019: ldfld class BenchmarkDotNet.Helpers.ManualResetValueTaskSource `1<valuetype Perfolizer.Horology.ClockSpan> BenchmarkRunner_0::valueTaskSource
620+ IL_0019: ldfld class BenchmarkDotNet.Helpers.AutoResetValueTaskSource `1<valuetype Perfolizer.Horology.ClockSpan> BenchmarkRunner_0::valueTaskSource
631621 IL_001e: ldarg.1
632- IL_001f: callvirt instance void class BenchmarkDotNet.Helpers.ManualResetValueTaskSource `1<valuetype Perfolizer.Horology.ClockSpan>::SetException(class [System.Private.CoreLib]System.Exception)
622+ IL_001f: callvirt instance void class BenchmarkDotNet.Helpers.AutoResetValueTaskSource `1<valuetype Perfolizer.Horology.ClockSpan>::SetException(class [System.Private.CoreLib]System.Exception)
633623 IL_0024: ret
634624 */
635625 ilBuilder . Emit ( OpCodes . Ldarg_0 ) ;
636626 ilBuilder . Emit ( OpCodes . Ldfld , valueTaskSourceField ) ;
637627 ilBuilder . EmitLdarg ( exceptionArg ) ;
638- var setExceptionMethod = valueTaskSourceField . FieldType . GetMethod ( nameof ( Helpers . ManualResetValueTaskSource < ClockSpan > . SetException ) , BindingFlagsPublicInstance ) ;
628+ var setExceptionMethod = valueTaskSourceField . FieldType . GetMethod ( nameof ( Helpers . AutoResetValueTaskSource < ClockSpan > . SetException ) , BindingFlagsPublicInstance ) ;
639629 ilBuilder . Emit ( OpCodes . Callvirt , setExceptionMethod ) ;
640630 ilBuilder . Emit ( OpCodes . Ret ) ;
641631
0 commit comments