Closed magic-akari closed 1 week ago
Latest commit: 586b38b7ea441d661d547487dc787a500c1eb558
The changes in this PR will be included in the next version bump.
Not sure what this means? Click here to learn what changesets are.
Click here if you're a maintainer who wants to add another changeset to this PR
Comparing magic-akari:refactor/static-blocks
(586b38b) with main
(aa0f784)
❌ 2
regressions
✅ 192
untouched benchmarks
:warning: Please fix the performance issues or acknowledge them on CodSpeed.
Benchmark | main |
magic-akari:refactor/static-blocks |
Change | |
---|---|---|---|---|
❌ | es/full/base/fixer |
116.8 µs | 127.4 µs | -8.27% |
❌ | es/visitor/base-perf/boxing_unboxed_clone |
2.6 µs | 2.6 µs | -3.32% |
Unfortunately, we have already used a similar trick here
Or here
Hmm. Makes sense. I'll review this PR later today.
Or should we add another special span?
By the way: We added PURE_SP last time, but we didn't add the documentation properly.
I personally prefer to use dummy span directly.
I didn't think deeply enough while writing the DUMMY_SP
hack because there was no Wasm plugin API, and I introduced static_block_mark
because there's a custom plugin API at the moment of writing.
We may introduce another special flag in bytepos like SYNTHESIZED
, one more for the Span
type and use it, like you suggested.
Also, can you add a bit of documentation?
Description:
Let's make an assumption in the code: the use of dummy span as a private class field name is generated by us, it is there simply because it is necessary to maintain the order of side effect execution, its name is not referenced elsewhere, so we can safely remove its name.
This is a breaking change for Rust users.
BREAKING CHANGE:
Related issue (if exists):