Skip to content

Commit

Permalink
perf(es/helpers): Improve fast-path for helper detection (#6502)
Browse files Browse the repository at this point in the history
  • Loading branch information
hyf0 committed Nov 24, 2022
1 parent 75c4d22 commit b3b5526
Showing 1 changed file with 3 additions and 6 deletions.
9 changes: 3 additions & 6 deletions crates/swc_ecma_transforms_base/src/helpers/mod.rs
Expand Up @@ -170,15 +170,12 @@ macro_rules! define_helpers {

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

HELPERS.with(|helpers|{
$(
value |= helpers.inner.$name.load(Ordering::Relaxed);
false $(
|| helpers.inner.$name.load(Ordering::Relaxed)
)*
});

value
})
}

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

1 comment on commit b3b5526

@github-actions
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.