Skip to content

Commit b3b5526

Browse files
authoredNov 24, 2022
perf(es/helpers): Improve fast-path for helper detection (#6502)
1 parent 75c4d22 commit b3b5526

File tree

1 file changed

+3
-6
lines changed
  • crates/swc_ecma_transforms_base/src/helpers

1 file changed

+3
-6
lines changed
 

‎crates/swc_ecma_transforms_base/src/helpers/mod.rs

+3-6
Original file line numberDiff line numberDiff line change
@@ -170,15 +170,12 @@ macro_rules! define_helpers {
170170

171171
impl InjectHelpers {
172172
fn is_helper_used(&self) -> bool{
173-
let mut value = false;
174173

175174
HELPERS.with(|helpers|{
176-
$(
177-
value |= helpers.inner.$name.load(Ordering::Relaxed);
175+
false $(
176+
|| helpers.inner.$name.load(Ordering::Relaxed)
178177
)*
179-
});
180-
181-
value
178+
})
182179
}
183180

184181
fn build_helpers(&self) -> Vec<Stmt> {

1 commit comments

Comments
 (1)

github-actions[bot] commented on Nov 24, 2022

@github-actions[bot]

Benchmark

Benchmark suite Current: b3b5526 Previous: 4f8af16 Ratio
es/full/bugs-1 348064 ns/iter (± 21090) 376871 ns/iter (± 32545) 0.92
es/full/minify/libraries/antd 1861224113 ns/iter (± 18958664) 1955673073 ns/iter (± 46973651) 0.95
es/full/minify/libraries/d3 389988874 ns/iter (± 6870003) 437373150 ns/iter (± 14489251) 0.89
es/full/minify/libraries/echarts 1577763775 ns/iter (± 16905140) 1665121574 ns/iter (± 67070355) 0.95
es/full/minify/libraries/jquery 98646680 ns/iter (± 2204385) 111614624 ns/iter (± 4695481) 0.88
es/full/minify/libraries/lodash 116542380 ns/iter (± 1726326) 134743156 ns/iter (± 13417748) 0.86
es/full/minify/libraries/moment 59429737 ns/iter (± 2548244) 60845801 ns/iter (± 1640752) 0.98
es/full/minify/libraries/react 19875033 ns/iter (± 430279) 21881509 ns/iter (± 1090159) 0.91
es/full/minify/libraries/terser 295769946 ns/iter (± 4592453) 328032542 ns/iter (± 14018048) 0.90
es/full/minify/libraries/three 556747640 ns/iter (± 9272686) 685241434 ns/iter (± 217615703) 0.81
es/full/minify/libraries/typescript 3380624220 ns/iter (± 30967521) 3436993433 ns/iter (± 60693139) 0.98
es/full/minify/libraries/victory 823330763 ns/iter (± 8991560) 826645271 ns/iter (± 25363315) 1.00
es/full/minify/libraries/vue 149893326 ns/iter (± 3945108) 176779521 ns/iter (± 11283593) 0.85
es/full/codegen/es3 32325 ns/iter (± 575) 33783 ns/iter (± 2401) 0.96
es/full/codegen/es5 32309 ns/iter (± 874) 33934 ns/iter (± 2647) 0.95
es/full/codegen/es2015 32335 ns/iter (± 1130) 33730 ns/iter (± 731) 0.96
es/full/codegen/es2016 32269 ns/iter (± 916) 33681 ns/iter (± 510) 0.96
es/full/codegen/es2017 32664 ns/iter (± 1410) 33911 ns/iter (± 1354) 0.96
es/full/codegen/es2018 32273 ns/iter (± 669) 34609 ns/iter (± 2341) 0.93
es/full/codegen/es2019 32184 ns/iter (± 737) 34420 ns/iter (± 1726) 0.94
es/full/codegen/es2020 32149 ns/iter (± 495) 34225 ns/iter (± 864) 0.94
es/full/all/es3 185618286 ns/iter (± 5086021) 232532832 ns/iter (± 22843206) 0.80
es/full/all/es5 187186209 ns/iter (± 20265378) 208060131 ns/iter (± 50754255) 0.90
es/full/all/es2015 147104205 ns/iter (± 5903807) 163276411 ns/iter (± 15313618) 0.90
es/full/all/es2016 161329879 ns/iter (± 15039864) 158893585 ns/iter (± 13576441) 1.02
es/full/all/es2017 144670050 ns/iter (± 9934192) 156972101 ns/iter (± 11463414) 0.92
es/full/all/es2018 142704662 ns/iter (± 4543639) 159573536 ns/iter (± 11350325) 0.89
es/full/all/es2019 140021092 ns/iter (± 5206629) 141824174 ns/iter (± 10830638) 0.99
es/full/all/es2020 133891968 ns/iter (± 4505645) 135704977 ns/iter (± 9834570) 0.99
es/full/parser 713844 ns/iter (± 21609) 716316 ns/iter (± 16822) 1.00
es/full/base/fixer 26263 ns/iter (± 433) 26759 ns/iter (± 925) 0.98
es/full/base/resolver_and_hygiene 92195 ns/iter (± 3278) 93248 ns/iter (± 3521) 0.99
serialization of ast node 205 ns/iter (± 4) 205 ns/iter (± 5) 1
serialization of serde 213 ns/iter (± 7) 213 ns/iter (± 4) 1

This comment was automatically generated by workflow using github-action-benchmark.

Please sign in to comment.