@@ -34,167 +34,275 @@ public let StringComparison = [
34
34
BenchmarkInfo (
35
35
name: " StringComparison_ascii " ,
36
36
runFunction: run_StringComparison_ascii,
37
- tags: [ . validation, . api, . String] ) ,
37
+ tags: [ . validation, . api, . String] ,
38
+ setUpFunction: setup_StringComparison_ascii) ,
38
39
BenchmarkInfo (
39
40
name: " StringComparison_latin1 " ,
40
41
runFunction: run_StringComparison_latin1,
41
- tags: [ . validation, . api, . String] ) ,
42
+ tags: [ . validation, . api, . String] ,
43
+ setUpFunction: setup_StringComparison_latin1) ,
42
44
BenchmarkInfo (
43
45
name: " StringComparison_fastPrenormal " ,
44
46
runFunction: run_StringComparison_fastPrenormal,
45
- tags: [ . validation, . api, . String] ) ,
47
+ tags: [ . validation, . api, . String] ,
48
+ setUpFunction: setup_StringComparison_fastPrenormal) ,
46
49
BenchmarkInfo (
47
50
name: " StringComparison_slowerPrenormal " ,
48
51
runFunction: run_StringComparison_slowerPrenormal,
49
- tags: [ . validation, . api, . String] ) ,
52
+ tags: [ . validation, . api, . String] ,
53
+ setUpFunction: setup_StringComparison_slowerPrenormal) ,
50
54
BenchmarkInfo (
51
55
name: " StringComparison_nonBMPSlowestPrenormal " ,
52
56
runFunction: run_StringComparison_nonBMPSlowestPrenormal,
53
- tags: [ . validation, . api, . String] ) ,
57
+ tags: [ . validation, . api, . String] ,
58
+ setUpFunction: setup_StringComparison_nonBMPSlowestPrenormal) ,
54
59
BenchmarkInfo (
55
60
name: " StringComparison_emoji " ,
56
61
runFunction: run_StringComparison_emoji,
57
- tags: [ . validation, . api, . String] ) ,
62
+ tags: [ . validation, . api, . String] ,
63
+ setUpFunction: setup_StringComparison_emoji) ,
58
64
BenchmarkInfo (
59
65
name: " StringComparison_abnormal " ,
60
66
runFunction: run_StringComparison_abnormal,
61
- tags: [ . validation, . api, . String] ) ,
67
+ tags: [ . validation, . api, . String] ,
68
+ setUpFunction: setup_StringComparison_abnormal) ,
62
69
BenchmarkInfo (
63
70
name: " StringComparison_zalgo " ,
64
71
runFunction: run_StringComparison_zalgo,
65
- tags: [ . validation, . api, . String] ) ,
72
+ tags: [ . validation, . api, . String] ,
73
+ setUpFunction: setup_StringComparison_zalgo) ,
66
74
BenchmarkInfo (
67
75
name: " StringComparison_longSharedPrefix " ,
68
76
runFunction: run_StringComparison_longSharedPrefix,
69
- tags: [ . validation, . api, . String] ) ,
77
+ tags: [ . validation, . api, . String] ,
78
+ setUpFunction: setup_StringComparison_longSharedPrefix) ,
70
79
]
71
-
72
- @inline ( never)
73
- public func run_StringComparison_ascii( _ N: Int ) {
74
- let workload = Workload . ascii
75
- let tripCount = workload. tripCount
76
- let payload = workload. payload
77
- for _ in 1 ... tripCount*N {
78
- for s1 in payload {
79
- for s2 in payload {
80
- blackHole ( s1 < s2)
81
- }
80
+
81
+
82
+ var Workload_ascii : Workload ? = nil
83
+
84
+ @inline ( never)
85
+ public func setup_StringComparison_ascii( ) {
86
+ if Workload_ascii != nil {
87
+ return
88
+ }
89
+ Workload_ascii = Workload . ascii
90
+ }
91
+
92
+ @inline ( never)
93
+ public func run_StringComparison_ascii( _ N: Int ) {
94
+ let workload = Workload_ascii . _unsafelyUnwrappedUnchecked
95
+ let tripCount = workload. tripCount
96
+ let payload = workload. payload
97
+ for _ in 1 ... tripCount*N {
98
+ for s1 in payload {
99
+ for s2 in payload {
100
+ blackHole ( s1 < s2)
82
101
}
83
102
}
84
103
}
85
-
86
- @inline ( never)
87
- public func run_StringComparison_latin1( _ N: Int ) {
88
- let workload = Workload . latin1
89
- let tripCount = workload. tripCount
90
- let payload = workload. payload
91
- for _ in 1 ... tripCount*N {
92
- for s1 in payload {
93
- for s2 in payload {
94
- blackHole ( s1 < s2)
95
- }
104
+ }
105
+
106
+
107
+ var Workload_latin1 : Workload ? = nil
108
+
109
+ @inline ( never)
110
+ public func setup_StringComparison_latin1( ) {
111
+ if Workload_latin1 != nil {
112
+ return
113
+ }
114
+ Workload_latin1 = Workload . latin1
115
+ }
116
+
117
+ @inline ( never)
118
+ public func run_StringComparison_latin1( _ N: Int ) {
119
+ let workload = Workload_latin1 . _unsafelyUnwrappedUnchecked
120
+ let tripCount = workload. tripCount
121
+ let payload = workload. payload
122
+ for _ in 1 ... tripCount*N {
123
+ for s1 in payload {
124
+ for s2 in payload {
125
+ blackHole ( s1 < s2)
96
126
}
97
127
}
98
128
}
99
-
100
- @inline ( never)
101
- public func run_StringComparison_fastPrenormal( _ N: Int ) {
102
- let workload = Workload . fastPrenormal
103
- let tripCount = workload. tripCount
104
- let payload = workload. payload
105
- for _ in 1 ... tripCount*N {
106
- for s1 in payload {
107
- for s2 in payload {
108
- blackHole ( s1 < s2)
109
- }
129
+ }
130
+
131
+
132
+ var Workload_fastPrenormal : Workload ? = nil
133
+
134
+ @inline ( never)
135
+ public func setup_StringComparison_fastPrenormal( ) {
136
+ if Workload_fastPrenormal != nil {
137
+ return
138
+ }
139
+ Workload_fastPrenormal = Workload . fastPrenormal
140
+ }
141
+
142
+ @inline ( never)
143
+ public func run_StringComparison_fastPrenormal( _ N: Int ) {
144
+ let workload = Workload_fastPrenormal . _unsafelyUnwrappedUnchecked
145
+ let tripCount = workload. tripCount
146
+ let payload = workload. payload
147
+ for _ in 1 ... tripCount*N {
148
+ for s1 in payload {
149
+ for s2 in payload {
150
+ blackHole ( s1 < s2)
110
151
}
111
152
}
112
153
}
113
-
114
- @inline ( never)
115
- public func run_StringComparison_slowerPrenormal( _ N: Int ) {
116
- let workload = Workload . slowerPrenormal
117
- let tripCount = workload. tripCount
118
- let payload = workload. payload
119
- for _ in 1 ... tripCount*N {
120
- for s1 in payload {
121
- for s2 in payload {
122
- blackHole ( s1 < s2)
123
- }
154
+ }
155
+
156
+
157
+ var Workload_slowerPrenormal : Workload ? = nil
158
+
159
+ @inline ( never)
160
+ public func setup_StringComparison_slowerPrenormal( ) {
161
+ if Workload_slowerPrenormal != nil {
162
+ return
163
+ }
164
+ Workload_slowerPrenormal = Workload . slowerPrenormal
165
+ }
166
+
167
+ @inline ( never)
168
+ public func run_StringComparison_slowerPrenormal( _ N: Int ) {
169
+ let workload = Workload_slowerPrenormal . _unsafelyUnwrappedUnchecked
170
+ let tripCount = workload. tripCount
171
+ let payload = workload. payload
172
+ for _ in 1 ... tripCount*N {
173
+ for s1 in payload {
174
+ for s2 in payload {
175
+ blackHole ( s1 < s2)
124
176
}
125
177
}
126
178
}
127
-
128
- @inline ( never)
129
- public func run_StringComparison_nonBMPSlowestPrenormal( _ N: Int ) {
130
- let workload = Workload . nonBMPSlowestPrenormal
131
- let tripCount = workload. tripCount
132
- let payload = workload. payload
133
- for _ in 1 ... tripCount*N {
134
- for s1 in payload {
135
- for s2 in payload {
136
- blackHole ( s1 < s2)
137
- }
179
+ }
180
+
181
+
182
+ var Workload_nonBMPSlowestPrenormal : Workload ? = nil
183
+
184
+ @inline ( never)
185
+ public func setup_StringComparison_nonBMPSlowestPrenormal( ) {
186
+ if Workload_nonBMPSlowestPrenormal != nil {
187
+ return
188
+ }
189
+ Workload_nonBMPSlowestPrenormal = Workload . nonBMPSlowestPrenormal
190
+ }
191
+
192
+ @inline ( never)
193
+ public func run_StringComparison_nonBMPSlowestPrenormal( _ N: Int ) {
194
+ let workload = Workload_nonBMPSlowestPrenormal . _unsafelyUnwrappedUnchecked
195
+ let tripCount = workload. tripCount
196
+ let payload = workload. payload
197
+ for _ in 1 ... tripCount*N {
198
+ for s1 in payload {
199
+ for s2 in payload {
200
+ blackHole ( s1 < s2)
138
201
}
139
202
}
140
203
}
141
-
142
- @inline ( never)
143
- public func run_StringComparison_emoji( _ N: Int ) {
144
- let workload = Workload . emoji
145
- let tripCount = workload. tripCount
146
- let payload = workload. payload
147
- for _ in 1 ... tripCount*N {
148
- for s1 in payload {
149
- for s2 in payload {
150
- blackHole ( s1 < s2)
151
- }
204
+ }
205
+
206
+
207
+ var Workload_emoji : Workload ? = nil
208
+
209
+ @inline ( never)
210
+ public func setup_StringComparison_emoji( ) {
211
+ if Workload_emoji != nil {
212
+ return
213
+ }
214
+ Workload_emoji = Workload . emoji
215
+ }
216
+
217
+ @inline ( never)
218
+ public func run_StringComparison_emoji( _ N: Int ) {
219
+ let workload = Workload_emoji . _unsafelyUnwrappedUnchecked
220
+ let tripCount = workload. tripCount
221
+ let payload = workload. payload
222
+ for _ in 1 ... tripCount*N {
223
+ for s1 in payload {
224
+ for s2 in payload {
225
+ blackHole ( s1 < s2)
152
226
}
153
227
}
154
228
}
155
-
156
- @inline ( never)
157
- public func run_StringComparison_abnormal( _ N: Int ) {
158
- let workload = Workload . abnormal
159
- let tripCount = workload. tripCount
160
- let payload = workload. payload
161
- for _ in 1 ... tripCount*N {
162
- for s1 in payload {
163
- for s2 in payload {
164
- blackHole ( s1 < s2)
165
- }
229
+ }
230
+
231
+
232
+ var Workload_abnormal : Workload ? = nil
233
+
234
+ @inline ( never)
235
+ public func setup_StringComparison_abnormal( ) {
236
+ if Workload_abnormal != nil {
237
+ return
238
+ }
239
+ Workload_abnormal = Workload . abnormal
240
+ }
241
+
242
+ @inline ( never)
243
+ public func run_StringComparison_abnormal( _ N: Int ) {
244
+ let workload = Workload_abnormal . _unsafelyUnwrappedUnchecked
245
+ let tripCount = workload. tripCount
246
+ let payload = workload. payload
247
+ for _ in 1 ... tripCount*N {
248
+ for s1 in payload {
249
+ for s2 in payload {
250
+ blackHole ( s1 < s2)
166
251
}
167
252
}
168
253
}
169
-
170
- @inline ( never)
171
- public func run_StringComparison_zalgo( _ N: Int ) {
172
- let workload = Workload . zalgo
173
- let tripCount = workload. tripCount
174
- let payload = workload. payload
175
- for _ in 1 ... tripCount*N {
176
- for s1 in payload {
177
- for s2 in payload {
178
- blackHole ( s1 < s2)
179
- }
254
+ }
255
+
256
+
257
+ var Workload_zalgo : Workload ? = nil
258
+
259
+ @inline ( never)
260
+ public func setup_StringComparison_zalgo( ) {
261
+ if Workload_zalgo != nil {
262
+ return
263
+ }
264
+ Workload_zalgo = Workload . zalgo
265
+ }
266
+
267
+ @inline ( never)
268
+ public func run_StringComparison_zalgo( _ N: Int ) {
269
+ let workload = Workload_zalgo . _unsafelyUnwrappedUnchecked
270
+ let tripCount = workload. tripCount
271
+ let payload = workload. payload
272
+ for _ in 1 ... tripCount*N {
273
+ for s1 in payload {
274
+ for s2 in payload {
275
+ blackHole ( s1 < s2)
180
276
}
181
277
}
182
278
}
183
-
184
- @inline ( never)
185
- public func run_StringComparison_longSharedPrefix( _ N: Int ) {
186
- let workload = Workload . longSharedPrefix
187
- let tripCount = workload. tripCount
188
- let payload = workload. payload
189
- for _ in 1 ... tripCount*N {
190
- for s1 in payload {
191
- for s2 in payload {
192
- blackHole ( s1 < s2)
193
- }
279
+ }
280
+
281
+
282
+ var Workload_longSharedPrefix : Workload ? = nil
283
+
284
+ @inline ( never)
285
+ public func setup_StringComparison_longSharedPrefix( ) {
286
+ if Workload_longSharedPrefix != nil {
287
+ return
288
+ }
289
+ Workload_longSharedPrefix = Workload . longSharedPrefix
290
+ }
291
+
292
+ @inline ( never)
293
+ public func run_StringComparison_longSharedPrefix( _ N: Int ) {
294
+ let workload = Workload_longSharedPrefix . _unsafelyUnwrappedUnchecked
295
+ let tripCount = workload. tripCount
296
+ let payload = workload. payload
297
+ for _ in 1 ... tripCount*N {
298
+ for s1 in payload {
299
+ for s2 in payload {
300
+ blackHole ( s1 < s2)
194
301
}
195
302
}
196
303
}
197
-
304
+ }
305
+
198
306
199
307
struct Workload {
200
308
static let N = 100
@@ -406,4 +514,4 @@ struct Workload {
406
514
""" . lines ( )
407
515
)
408
516
409
- }
517
+ }
0 commit comments