Skip to content

Commit b78ec96

Browse files
authored
Fix optimization of action methods for coreclr (#1935)
1 parent fa59841 commit b78ec96

File tree

1 file changed

+62
-2
lines changed

1 file changed

+62
-2
lines changed

src/BenchmarkDotNet/Templates/BenchmarkType.txt

+62-2
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,9 @@
113113

114114
private BenchmarkDotNet.Engines.Consumer consumer = new BenchmarkDotNet.Engines.Consumer();
115115

116+
#if NETCOREAPP3_0_OR_GREATER
117+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
118+
#endif
116119
private void OverheadActionUnroll(System.Int64 invokeCount)
117120
{
118121
$LoadArguments$
@@ -122,6 +125,9 @@
122125
}
123126
}
124127

128+
#if NETCOREAPP3_0_OR_GREATER
129+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
130+
#endif
125131
private void OverheadActionNoUnroll(System.Int64 invokeCount)
126132
{
127133
$LoadArguments$
@@ -131,6 +137,9 @@
131137
}
132138
}
133139

140+
#if NETCOREAPP3_0_OR_GREATER
141+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
142+
#endif
134143
private void WorkloadActionUnroll(System.Int64 invokeCount)
135144
{
136145
$LoadArguments$
@@ -140,6 +149,9 @@
140149
}
141150
}
142151

152+
#if NETCOREAPP3_0_OR_GREATER
153+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
154+
#endif
143155
private void WorkloadActionNoUnroll(System.Int64 invokeCount)
144156
{
145157
$LoadArguments$
@@ -163,6 +175,9 @@
163175

164176
#elif RETURNS_NON_CONSUMABLE_STRUCT_$ID$
165177

178+
#if NETCOREAPP3_0_OR_GREATER
179+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
180+
#endif
166181
private void OverheadActionUnroll(System.Int64 invokeCount)
167182
{
168183
$LoadArguments$
@@ -174,6 +189,9 @@
174189
BenchmarkDotNet.Engines.DeadCodeEliminationHelper.KeepAliveWithoutBoxing(result);
175190
}
176191

192+
#if NETCOREAPP3_0_OR_GREATER
193+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
194+
#endif
177195
private void OverheadActionNoUnroll(System.Int64 invokeCount)
178196
{
179197
$LoadArguments$
@@ -185,6 +203,9 @@
185203
BenchmarkDotNet.Engines.DeadCodeEliminationHelper.KeepAliveWithoutBoxing(result);
186204
}
187205

206+
#if NETCOREAPP3_0_OR_GREATER
207+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
208+
#endif
188209
private void WorkloadActionUnroll(System.Int64 invokeCount)
189210
{
190211
$LoadArguments$
@@ -196,6 +217,9 @@
196217
NonGenericKeepAliveWithoutBoxing(result);
197218
}
198219

220+
#if NETCOREAPP3_0_OR_GREATER
221+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
222+
#endif
199223
private void WorkloadActionNoUnroll(System.Int64 invokeCount)
200224
{
201225
$LoadArguments$
@@ -226,6 +250,9 @@
226250

227251
#elif RETURNS_BYREF_$ID$
228252

253+
#if NETCOREAPP3_0_OR_GREATER
254+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
255+
#endif
229256
private void OverheadActionUnroll(System.Int64 invokeCount)
230257
{
231258
$LoadArguments$
@@ -237,6 +264,9 @@
237264
BenchmarkDotNet.Engines.DeadCodeEliminationHelper.KeepAliveWithoutBoxing(value);
238265
}
239266

267+
#if NETCOREAPP3_0_OR_GREATER
268+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
269+
#endif
240270
private void OverheadActionNoUnroll(System.Int64 invokeCount)
241271
{
242272
$LoadArguments$
@@ -250,6 +280,9 @@
250280

251281
private $WorkloadMethodReturnType$ workloadDefaultValueHolder = default($WorkloadMethodReturnType$);
252282

283+
#if NETCOREAPP3_0_OR_GREATER
284+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
285+
#endif
253286
private void WorkloadActionUnroll(System.Int64 invokeCount)
254287
{
255288
$LoadArguments$
@@ -260,7 +293,10 @@
260293
}
261294
BenchmarkDotNet.Engines.DeadCodeEliminationHelper.KeepAliveWithoutBoxing(ref alias);
262295
}
263-
296+
297+
#if NETCOREAPP3_0_OR_GREATER
298+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
299+
#endif
264300
private void WorkloadActionNoUnroll(System.Int64 invokeCount)
265301
{
266302
$LoadArguments$
@@ -285,6 +321,9 @@
285321
}
286322
#elif RETURNS_BYREF_READONLY_$ID$
287323

324+
#if NETCOREAPP3_0_OR_GREATER
325+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
326+
#endif
288327
private void OverheadActionUnroll(System.Int64 invokeCount)
289328
{
290329
$LoadArguments$
@@ -296,6 +335,9 @@
296335
BenchmarkDotNet.Engines.DeadCodeEliminationHelper.KeepAliveWithoutBoxing(value);
297336
}
298337

338+
#if NETCOREAPP3_0_OR_GREATER
339+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
340+
#endif
299341
private void OverheadActionNoUnroll(System.Int64 invokeCount)
300342
{
301343
$LoadArguments$
@@ -309,6 +351,9 @@
309351

310352
private $WorkloadMethodReturnType$ workloadDefaultValueHolder = default($WorkloadMethodReturnType$);
311353

354+
#if NETCOREAPP3_0_OR_GREATER
355+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
356+
#endif
312357
private void WorkloadActionUnroll(System.Int64 invokeCount)
313358
{
314359
$LoadArguments$
@@ -319,7 +364,10 @@
319364
}
320365
BenchmarkDotNet.Engines.DeadCodeEliminationHelper.KeepAliveWithoutBoxingReadonly(alias);
321366
}
322-
367+
368+
#if NETCOREAPP3_0_OR_GREATER
369+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
370+
#endif
323371
private void WorkloadActionNoUnroll(System.Int64 invokeCount)
324372
{
325373
$LoadArguments$
@@ -344,6 +392,9 @@
344392
}
345393
#elif RETURNS_VOID_$ID$
346394

395+
#if NETCOREAPP3_0_OR_GREATER
396+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
397+
#endif
347398
private void OverheadActionUnroll(System.Int64 invokeCount)
348399
{
349400
$LoadArguments$
@@ -353,6 +404,9 @@
353404
}
354405
}
355406

407+
#if NETCOREAPP3_0_OR_GREATER
408+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
409+
#endif
356410
private void OverheadActionNoUnroll(System.Int64 invokeCount)
357411
{
358412
$LoadArguments$
@@ -362,6 +416,9 @@
362416
}
363417
}
364418

419+
#if NETCOREAPP3_0_OR_GREATER
420+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
421+
#endif
365422
private void WorkloadActionUnroll(System.Int64 invokeCount)
366423
{
367424
$LoadArguments$
@@ -371,6 +428,9 @@
371428
}
372429
}
373430

431+
#if NETCOREAPP3_0_OR_GREATER
432+
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveOptimization)]
433+
#endif
374434
private void WorkloadActionNoUnroll(System.Int64 invokeCount)
375435
{
376436
$LoadArguments$

0 commit comments

Comments
 (0)