Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

perf(transformer): logical assignment operator transform use SparseStack #5960

Conversation

overlookmotel
Copy link
Contributor

@overlookmotel overlookmotel commented Sep 21, 2024

Use SparseStack (introduced in #5940) to store the stack of blocks which may need a var _temp; statement added to them. This reduces the memory required for the stack, on assumption that most blocks won't need a var statement.

Copy link

graphite-app bot commented Sep 21, 2024

Your org has enabled the Graphite merge queue for merging into main

Add the label “0-merge” to the PR and Graphite will automatically add it to the merge queue when it’s ready to merge. Or use the label “hotfix” to add to the merge queue as a hot fix.

You must have a Graphite account and log in to Graphite in order to use the merge queue. Sign up using this link.

Copy link

codspeed-hq bot commented Sep 21, 2024

CodSpeed Performance Report

Merging #5960 will not alter performance

Comparing 09-22-perf_transformer_logical_assignment_operator_transform_use_sparsestack_ (28fe80a) with main (97a2c41)

Summary

✅ 29 untouched benchmarks

@Dunqing Dunqing added the 0-merge Merge with Graphite Merge Queue label Sep 23, 2024 — with Graphite App
Copy link

graphite-app bot commented Sep 23, 2024

Merge activity

…tack` (#5960)

Use `SparseStack` (introduced in #5940) to store the stack of blocks which may need a `var _temp;` statement added to them. This reduces the memory required for the stack, on assumption that most blocks won't need a `var` statement.
@Dunqing Dunqing force-pushed the 09-21-perf_transformer_exponentiation_operator_transform_use_sparsestack_ branch from 0584cce to 9f7d4b7 Compare September 23, 2024 07:54
@Dunqing Dunqing force-pushed the 09-22-perf_transformer_logical_assignment_operator_transform_use_sparsestack_ branch from b5ab0b0 to 28fe80a Compare September 23, 2024 07:54
Base automatically changed from 09-21-perf_transformer_exponentiation_operator_transform_use_sparsestack_ to main September 23, 2024 08:00
@graphite-app graphite-app bot merged commit 28fe80a into main Sep 23, 2024
27 checks passed
@graphite-app graphite-app bot deleted the 09-22-perf_transformer_logical_assignment_operator_transform_use_sparsestack_ branch September 23, 2024 08:03
Boshen added a commit that referenced this pull request Sep 24, 2024
## [0.30.1] - 2024-09-24

### Features

- 5c323a2 minifier: Loop compressor passes (#6013) (Boshen)

### Bug Fixes

- 9ca202a codegen: Preserve newlines between comments (#6014) (Boshen)
- 4a99372 codegen: Print jsdoc comments for `TSEnumMember`s (#6007)
(camc314)
- 97a2c41 isolated-declarations: False positive for class private getter
with non-inferrable return type (#5987) (michaelm)

### Performance

- 2b17003 linter, prettier, diagnostics: Use `FxHashMap` instead of
`std::collections::HashMap` (#5993) (camchenry)
- 7b90d79 transformer: `SparseStack` always keep minimum 1 entry (#5962)
(overlookmotel)
- 28fe80a transformer: Logical assignment operator transform use
`SparseStack` (#5960) (overlookmotel)
- 9f7d4b7 transformer: Exponentiation operator transform use
`SparseStack` (#5959) (overlookmotel)
- 5dc0154 transformer: Nullish coalescing operator transform use
`SparseStack` (#5942) (overlookmotel)
- 618e89e transformer: Arrow function transform: reduce stack memory
usage (#5940) (overlookmotel)

### Documentation

- 5a0d17c ast: Document more AST nodes (#6000) (DonIsaac)
- 18371dd oxc: Include feature-guarded modules in docs.rs (#6012)
(DonIsaac)
- 1abfe8f semantic: Document `SymbolTable` (#5998) (DonIsaac)
- f5eee72 semantic: Correct docs for `Reference` (#5992) (overlookmotel)
- 860f108 transformer: Add to arrow functions transform docs (#5989)
(overlookmotel)

### Refactor

- 0a2f687 minifier: Move dce conditional expression to `RemoveDeadCode`
(#5971) (Boshen)
- f02bf51 transformer: Arrow function transform: remove unnecessary
assertion (#6002) (overlookmotel)

---------

Co-authored-by: Boshen <[email protected]>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0-merge Merge with Graphite Merge Queue A-transformer Area - Transformer / Transpiler
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants