Skip to content

Commit bdedcf9

Browse files
committed
Fixed compile error after rebase.
1 parent af29195 commit bdedcf9

File tree

4 files changed

+95
-10
lines changed

4 files changed

+95
-10
lines changed

src/BenchmarkDotNet/Code/DeclarationsProvider.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ internal class TaskDeclarationsProvider : DeclarationsProvider
150150
{
151151
public TaskDeclarationsProvider(Descriptor descriptor) : base(descriptor) { }
152152

153-
public override string ExtraDefines => "#define RETURNS_AWAITABLE";
153+
public override string ReturnsDefinition => "RETURNS_AWAITABLE";
154154

155155
public override string AwaiterTypeName => WorkloadMethodReturnType.GetMethod(nameof(Task.GetAwaiter), BindingFlags.Public | BindingFlags.Instance).ReturnType.GetCorrectCSharpTypeName();
156156

src/BenchmarkDotNet/Engines/IEngine.cs

+1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
using BenchmarkDotNet.Reports;
77
using JetBrains.Annotations;
88
using Perfolizer.Horology;
9+
using NotNullAttribute = JetBrains.Annotations.NotNullAttribute;
910

1011
namespace BenchmarkDotNet.Engines
1112
{

src/BenchmarkDotNet/Templates/BenchmarkType.txt

+90-6
Original file line numberDiff line numberDiff line change
@@ -90,19 +90,19 @@
9090
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
9191
private void Dummy1()
9292
{
93-
dummyVar++;@DummyUnroll@
93+
@DummyUnroll@
9494
}
9595

9696
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
9797
private void Dummy2()
9898
{
99-
dummyVar++;@DummyUnroll@
99+
@DummyUnroll@
100100
}
101101

102102
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
103103
private void Dummy3()
104104
{
105-
dummyVar++;@DummyUnroll@
105+
@DummyUnroll@
106106
}
107107

108108
private $OverheadMethodReturnTypeName$ __Overhead($ArgumentsDefinition$) // __ is to avoid possible name conflict
@@ -122,17 +122,26 @@
122122

123123
partial void __SetContinuation() => continuation = __Continuation;
124124

125+
#if NETCOREAPP3_0_OR_GREATER
126+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
127+
#endif
125128
// Awaits are not unrolled.
126129
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> OverheadActionUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
127130
{
128131
return OverheadActionImpl(invokeCount, clock);
129132
}
130133

134+
#if NETCOREAPP3_0_OR_GREATER
135+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
136+
#endif
131137
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> OverheadActionNoUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
132138
{
133139
return OverheadActionImpl(invokeCount, clock);
134140
}
135141

142+
#if NETCOREAPP3_0_OR_GREATER
143+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
144+
#endif
136145
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> OverheadActionImpl(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
137146
{
138147
repeatsRemaining = invokeCount;
@@ -154,16 +163,25 @@
154163
return new System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan>(startedClock.GetElapsed());
155164
}
156165

166+
#if NETCOREAPP3_0_OR_GREATER
167+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
168+
#endif
157169
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> WorkloadActionUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
158170
{
159171
return WorkloadActionImpl(invokeCount, clock);
160172
}
161173

174+
#if NETCOREAPP3_0_OR_GREATER
175+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
176+
#endif
162177
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> WorkloadActionNoUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
163178
{
164179
return WorkloadActionImpl(invokeCount, clock);
165180
}
166181

182+
#if NETCOREAPP3_0_OR_GREATER
183+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
184+
#endif
167185
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> WorkloadActionImpl(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
168186
{
169187
repeatsRemaining = invokeCount;
@@ -172,6 +190,9 @@
172190
return new System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan>(valueTaskSource, valueTaskSource.Version);
173191
}
174192

193+
#if NETCOREAPP3_0_OR_GREATER
194+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
195+
#endif
175196
private void __RunTask()
176197
{
177198
try
@@ -199,6 +220,9 @@
199220
valueTaskSource.SetResult(clockspan);
200221
}
201222

223+
#if NETCOREAPP3_0_OR_GREATER
224+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
225+
#endif
202226
private void __Continuation()
203227
{
204228
try
@@ -236,6 +260,9 @@
236260

237261
private BenchmarkDotNet.Engines.Consumer consumer = new BenchmarkDotNet.Engines.Consumer();
238262

263+
#if NETCOREAPP3_0_OR_GREATER
264+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
265+
#endif
239266
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> OverheadActionUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
240267
{
241268
$LoadArguments$
@@ -247,6 +274,9 @@
247274
return new System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan>(startedClock.GetElapsed());
248275
}
249276

277+
#if NETCOREAPP3_0_OR_GREATER
278+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
279+
#endif
250280
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> OverheadActionNoUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
251281
{
252282
$LoadArguments$
@@ -258,6 +288,9 @@
258288
return new System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan>(startedClock.GetElapsed());
259289
}
260290

291+
#if NETCOREAPP3_0_OR_GREATER
292+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
293+
#endif
261294
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> WorkloadActionUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
262295
{
263296
$LoadArguments$
@@ -269,6 +302,9 @@
269302
return new System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan>(startedClock.GetElapsed());
270303
}
271304

305+
#if NETCOREAPP3_0_OR_GREATER
306+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
307+
#endif
272308
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> WorkloadActionNoUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
273309
{
274310
$LoadArguments$
@@ -294,6 +330,9 @@
294330

295331
#elif RETURNS_NON_CONSUMABLE_STRUCT_$ID$
296332

333+
#if NETCOREAPP3_0_OR_GREATER
334+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
335+
#endif
297336
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> OverheadActionUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
298337
{
299338
$LoadArguments$
@@ -307,6 +346,9 @@
307346
return new System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan>(startedClock.GetElapsed());
308347
}
309348

349+
#if NETCOREAPP3_0_OR_GREATER
350+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
351+
#endif
310352
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> OverheadActionNoUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
311353
{
312354
$LoadArguments$
@@ -320,6 +362,9 @@
320362
return new System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan>(startedClock.GetElapsed());
321363
}
322364

365+
#if NETCOREAPP3_0_OR_GREATER
366+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
367+
#endif
323368
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> WorkloadActionUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
324369
{
325370
$LoadArguments$
@@ -333,6 +378,9 @@
333378
return new System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan>(startedClock.GetElapsed());
334379
}
335380

381+
#if NETCOREAPP3_0_OR_GREATER
382+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
383+
#endif
336384
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> WorkloadActionNoUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
337385
{
338386
$LoadArguments$
@@ -365,6 +413,9 @@
365413

366414
#elif RETURNS_BYREF_$ID$
367415

416+
#if NETCOREAPP3_0_OR_GREATER
417+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
418+
#endif
368419
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> OverheadActionUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
369420
{
370421
$LoadArguments$
@@ -378,6 +429,9 @@
378429
return new System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan>(startedClock.GetElapsed());
379430
}
380431

432+
#if NETCOREAPP3_0_OR_GREATER
433+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
434+
#endif
381435
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> OverheadActionNoUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
382436
{
383437
$LoadArguments$
@@ -393,6 +447,9 @@
393447

394448
private $WorkloadMethodReturnType$ workloadDefaultValueHolder = default($WorkloadMethodReturnType$);
395449

450+
#if NETCOREAPP3_0_OR_GREATER
451+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
452+
#endif
396453
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> WorkloadActionUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
397454
{
398455
$LoadArguments$
@@ -405,7 +462,10 @@
405462
BenchmarkDotNet.Engines.DeadCodeEliminationHelper.KeepAliveWithoutBoxing(ref alias);
406463
return new System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan>(startedClock.GetElapsed());
407464
}
408-
465+
466+
#if NETCOREAPP3_0_OR_GREATER
467+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
468+
#endif
409469
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> WorkloadActionNoUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
410470
{
411471
$LoadArguments$
@@ -432,6 +492,9 @@
432492
}
433493
#elif RETURNS_BYREF_READONLY_$ID$
434494

495+
#if NETCOREAPP3_0_OR_GREATER
496+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
497+
#endif
435498
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> OverheadActionUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
436499
{
437500
$LoadArguments$
@@ -445,6 +508,9 @@
445508
return new System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan>(startedClock.GetElapsed());
446509
}
447510

511+
#if NETCOREAPP3_0_OR_GREATER
512+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
513+
#endif
448514
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> OverheadActionNoUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
449515
{
450516
$LoadArguments$
@@ -460,6 +526,9 @@
460526

461527
private $WorkloadMethodReturnType$ workloadDefaultValueHolder = default($WorkloadMethodReturnType$);
462528

529+
#if NETCOREAPP3_0_OR_GREATER
530+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
531+
#endif
463532
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> WorkloadActionUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
464533
{
465534
$LoadArguments$
@@ -472,7 +541,10 @@
472541
BenchmarkDotNet.Engines.DeadCodeEliminationHelper.KeepAliveWithoutBoxingReadonly(alias);
473542
return new System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan>(startedClock.GetElapsed());
474543
}
475-
544+
545+
#if NETCOREAPP3_0_OR_GREATER
546+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
547+
#endif
476548
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> WorkloadActionNoUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
477549
{
478550
$LoadArguments$
@@ -499,6 +571,9 @@
499571
}
500572
#elif RETURNS_VOID_$ID$
501573

574+
#if NETCOREAPP3_0_OR_GREATER
575+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
576+
#endif
502577
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> OverheadActionUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
503578
{
504579
$LoadArguments$
@@ -510,6 +585,9 @@
510585
return new System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan>(startedClock.GetElapsed());
511586
}
512587

588+
#if NETCOREAPP3_0_OR_GREATER
589+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
590+
#endif
513591
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> OverheadActionNoUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
514592
{
515593
$LoadArguments$
@@ -521,6 +599,9 @@
521599
return new System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan>(startedClock.GetElapsed());
522600
}
523601

602+
#if NETCOREAPP3_0_OR_GREATER
603+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
604+
#endif
524605
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> WorkloadActionUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
525606
{
526607
$LoadArguments$
@@ -532,6 +613,9 @@
532613
return new System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan>(startedClock.GetElapsed());
533614
}
534615

616+
#if NETCOREAPP3_0_OR_GREATER
617+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
618+
#endif
535619
private System.Threading.Tasks.ValueTask<Perfolizer.Horology.ClockSpan> WorkloadActionNoUnroll(System.Int64 invokeCount, Perfolizer.Horology.IClock clock)
536620
{
537621
$LoadArguments$
@@ -552,5 +636,5 @@
552636
$WorkloadMethodCall$;
553637
}
554638
}
555-
#endif
639+
#endif // RETURNS
556640
}

src/BenchmarkDotNet/Toolchains/InProcess.Emit.Implementation/Emitters/TaskConsumeEmitter.cs

+3-3
Original file line numberDiff line numberDiff line change
@@ -91,9 +91,9 @@ protected override void OnEmitCtorBodyOverride(ConstructorBuilder constructorBui
9191
IL_0006: ldarg.0
9292
IL_0007: call instance void BenchmarkDotNet.Autogenerated.Runnable_0::__SetContinuation()
9393
*/
94-
continuationMethod = EmitSetContinuationImpl(runnableEmitter);
94+
setContinuationMethod = EmitSetContinuationImpl(runnableEmitter);
9595
ilBuilder.Emit(OpCodes.Ldarg_0);
96-
ilBuilder.Emit(OpCodes.Call, continuationMethod);
96+
ilBuilder.Emit(OpCodes.Call, setContinuationMethod);
9797
}
9898

9999
public override MethodBuilder EmitActionImpl(RunnableEmitter runnableEmitter, string methodName, RunnableActionKind actionKind, int unrollFactor)
@@ -344,7 +344,7 @@ class Perfolizer.Horology.IClock clock
344344
private MethodBuilder EmitSetContinuationImpl(RunnableEmitter runnableEmitter)
345345
{
346346
/*
347-
.method private hidebysig
347+
.method private hidebysig
348348
instance void __SetContinuation () cil managed
349349
*/
350350
var actionMethodBuilder = runnableEmitter.runnableBuilder.DefinePrivateVoidInstanceMethod(SetContinuationMethodName);

0 commit comments

Comments
 (0)