Commit Graph

27 Commits

Author SHA1 Message Date
강동윤 (Donny)
4b7616f8a9 chore: Publish crates 2024-07-21 21:22:19 +09:00
Donny/강동윤
76fe139334
perf(es/minifier): Pre-allocate collections (#9289)
Some checks are pending
CI / Cargo fmt (push) Waiting to run
CI / Cargo clippy (push) Waiting to run
CI / Check license of dependencies (push) Waiting to run
CI / Check (macos-latest) (push) Waiting to run
CI / Check (ubuntu-latest) (push) Waiting to run
CI / Check (windows-latest) (push) Waiting to run
CI / Test wasm (binding_core_wasm) (push) Waiting to run
CI / Test wasm (binding_minifier_wasm) (push) Waiting to run
CI / Test wasm (binding_typescript_wasm) (push) Waiting to run
CI / List crates (push) Waiting to run
CI / Test - ${{ matrix.settings.crate }} - ${{ matrix.settings.os }} (push) Blocked by required conditions
CI / Test node bindings - ${{ matrix.os }} (macos-latest) (push) Waiting to run
CI / Test node bindings - ${{ matrix.os }} (windows-latest) (push) Waiting to run
CI / Test with @swc/cli (push) Waiting to run
CI / Miri (better_scoped_tls) (push) Waiting to run
CI / Miri (string_enum) (push) Waiting to run
CI / Miri (swc) (push) Waiting to run
CI / Miri (swc_bundler) (push) Waiting to run
CI / Miri (swc_ecma_codegen) (push) Waiting to run
CI / Miri (swc_ecma_minifier) (push) Waiting to run
CI / Done (push) Blocked by required conditions
Benchmark / Bench everything (push) Waiting to run
**Related issue:**

 - Inspiration: https://github.com/oxc-project/oxc/pull/4328
2024-07-20 10:26:10 +09:00
Donny/강동윤
07376c6fbb
perf(es/codegen): Optimize using swc_allocator (#9294)
Some checks are pending
CI / Cargo fmt (push) Waiting to run
CI / Cargo clippy (push) Waiting to run
CI / Check license of dependencies (push) Waiting to run
CI / Check (macos-latest) (push) Waiting to run
CI / Check (ubuntu-latest) (push) Waiting to run
CI / Check (windows-latest) (push) Waiting to run
CI / Test wasm (binding_core_wasm) (push) Waiting to run
CI / Test wasm (binding_minifier_wasm) (push) Waiting to run
CI / Test wasm (binding_typescript_wasm) (push) Waiting to run
CI / List crates (push) Waiting to run
CI / Test - ${{ matrix.settings.crate }} - ${{ matrix.settings.os }} (push) Blocked by required conditions
CI / Test node bindings - ${{ matrix.os }} (macos-latest) (push) Waiting to run
CI / Test node bindings - ${{ matrix.os }} (windows-latest) (push) Waiting to run
CI / Test with @swc/cli (push) Waiting to run
CI / Miri (better_scoped_tls) (push) Waiting to run
CI / Miri (string_enum) (push) Waiting to run
CI / Miri (swc) (push) Waiting to run
CI / Miri (swc_bundler) (push) Waiting to run
CI / Miri (swc_ecma_codegen) (push) Waiting to run
CI / Miri (swc_ecma_minifier) (push) Waiting to run
CI / Done (push) Blocked by required conditions
Benchmark / Bench everything (push) Waiting to run
2024-07-20 03:05:08 +09:00
Donny/강동윤
88723dbf19
perf(allocator): Use std instead of allocator-api2 (#9281)
**Description:**

`std` is faster.
2024-07-19 15:16:48 +09:00
Donny/강동윤
a417ff4d86
feat(allocator): Add maybe types (#9278) 2024-07-19 13:22:34 +09:00
SWC Bot
201f58dc7b chore: Bump crates
Some checks failed
CI / Cargo fmt (push) Waiting to run
CI / Cargo clippy (push) Waiting to run
CI / Check license of dependencies (push) Waiting to run
CI / Check (macos-latest) (push) Waiting to run
CI / Check (ubuntu-latest) (push) Waiting to run
CI / Check (windows-latest) (push) Waiting to run
CI / Test wasm (binding_core_wasm) (push) Waiting to run
CI / Test wasm (binding_minifier_wasm) (push) Waiting to run
CI / Test wasm (binding_typescript_wasm) (push) Waiting to run
CI / List crates (push) Waiting to run
CI / Test - ${{ matrix.settings.crate }} - ${{ matrix.settings.os }} (push) Blocked by required conditions
CI / Test node bindings - ${{ matrix.os }} (macos-latest) (push) Waiting to run
CI / Test node bindings - ${{ matrix.os }} (windows-latest) (push) Waiting to run
CI / Test with @swc/cli (push) Waiting to run
CI / Miri (better_scoped_tls) (push) Waiting to run
CI / Miri (string_enum) (push) Waiting to run
CI / Miri (swc) (push) Waiting to run
CI / Miri (swc_bundler) (push) Waiting to run
CI / Miri (swc_ecma_codegen) (push) Waiting to run
CI / Miri (swc_ecma_minifier) (push) Waiting to run
CI / Done (push) Blocked by required conditions
Benchmark / Bench everything (push) Waiting to run
Bot / Start (push) Has been cancelled
2024-07-18 14:05:38 +00:00
Donny/강동윤
a31fb58399
feat(allocator): Feature gate nightly via macros (#9274)
**Description:**

We can make swc faster without dropping support for stable rustc.
2024-07-18 14:03:58 +00:00
Donny/강동윤
efc396377f
test(allocator): Merge test (#9267) 2024-07-17 10:29:39 +00:00
Donny/강동윤
6e098aeeb5
refactor(allocator): Use RAII guard instead of scope (#9254)
**Related issue:**

- https://github.com/swc-project/swc/issues/9253
2024-07-15 19:02:52 +00:00
Donny/강동윤
d8e8b04cd8
fix(allocator): Remove wrong assertions and add tests (#9252) 2024-07-15 15:25:00 +00:00
SWC Bot
cfea948f29 chore: Bump crates 2024-07-15 12:53:31 +00:00
Donny/강동윤
e7ce94b5ee
test: Enable scoped API by default (#9247)
**Description:**

This PR is to profile real performance using codspeed
2024-07-15 12:51:42 +00:00
Donny/강동윤
e086f38b0f
chore: Apply cargo-autoinherit (#9244) 2024-07-15 10:54:00 +00:00
Donny/강동윤
0e79a5b428
fix(es/typescript): Fix transform mode (#9243) 2024-07-15 19:07:55 +09:00
SWC Bot
b2a22ed771 chore: Bump crates 2024-07-15 09:54:45 +00:00
Donny/강동윤
b6333dbcfc
feat(allocator): Implement default mode (#9242)
**Description:**

In the default mode, `Box<T>` and `Vec<T>` should work just like them from std.

**Related issue:**

 - This PR is part of https://github.com/swc-project/swc/pull/9230
2024-07-15 18:53:09 +09:00
SWC Bot
8c420313bc chore: Bump crates 2024-07-15 06:24:11 +00:00
Donny/강동윤
398dc21e07
feat(allocator): Add a cargo feature (#9239)
**Description:**

This PR is a part of https://github.com/swc-project/swc/pull/9230
2024-07-15 15:22:26 +09:00
SWC Bot
52f28bcfa6 chore: Bump crates 2024-07-15 05:27:36 +00:00
Donny/강동윤
4ce2514d1b
perf(allocator): Drop scoped_tls (#9240)
**Description:**

The performance is much better without it.
2024-07-15 14:25:58 +09:00
Donny/강동윤
8d5670e72b
refactor(allocator): Use & instead of a thread-local (#9235)
**Description:**

This is a part of https://github.com/swc-project/swc/pull/9230. I
profiled the performance, and `thread_local` took too long to get the
address of the thread-local variable. So, I inlined the reference into
the allocator.

# Benchmark result

```

Gnuplot not found, using plotters backend
common/allocator/alloc/std/1000000
                        time:   [4.9478 ms 4.9653 ms 4.9922 ms]
Found 17 outliers among 100 measurements (17.00%)
  4 (4.00%) high mild
  13 (13.00%) high severe

common/allocator/alloc/no-scope/1000000
                        time:   [5.4821 ms 5.4938 ms 5.5068 ms]
Found 17 outliers among 100 measurements (17.00%)
  2 (2.00%) high mild
  15 (15.00%) high severe

common/allocator/alloc/scoped/1000000
                        time:   [3.1401 ms 3.1456 ms 3.1518 ms]
Found 12 outliers among 100 measurements (12.00%)
  3 (3.00%) high mild
  9 (9.00%) high severe

common/allocator/alloc/cached-no-scope/1000000
                        time:   [5.0992 ms 5.1090 ms 5.1198 ms]
Found 11 outliers among 100 measurements (11.00%)
  2 (2.00%) high mild
  9 (9.00%) high severe

common/allocator/alloc/cached-scoped/1000000
                        time:   [3.0191 ms 3.0230 ms 3.0273 ms]
Found 11 outliers among 100 measurements (11.00%)
  2 (2.00%) low mild
  1 (1.00%) high mild
  8 (8.00%) high severe
```
2024-07-15 00:37:38 +09:00
Donny/강동윤
037dad52f4
fix(allocator): Fix allocator & add benchmark (#9234)
**Related issue:**

 - This PR is a part of https://github.com/swc-project/swc/pull/9230.
2024-07-14 16:20:42 +09:00
SWC Bot
26c5519b66 chore: Bump crates 2024-07-14 04:29:20 +00:00
Donny/강동윤
e343eb6de2
feat(allocator): Implement SwcAlloc (#9232)
**Related issue:**

 - This is a part of https://github.com/swc-project/swc/pull/9230
2024-07-14 13:27:41 +09:00
강동윤 (Donny)
be99ce0a57 doc(allocator): Mention oxc_allocator 2024-07-10 20:27:34 +09:00
SWC Bot
6b8ee2b51d chore: Bump crates
Some checks are pending
CI / Test - ${{ matrix.settings.crate }} - ${{ matrix.settings.os }} (map[crate:swc_plugin_runner os:windows-latest runner:windows-latest]) (push) Waiting to run
CI / Test - ${{ matrix.settings.crate }} - ${{ matrix.settings.os }} (map[crate:swc_plugin_testing os:ubuntu-latest runner:ubuntu-latest]) (push) Waiting to run
CI / Test - ${{ matrix.settings.crate }} - ${{ matrix.settings.os }} (map[crate:swc_plugin_testing os:windows-latest runner:windows-latest]) (push) Waiting to run
CI / Test - ${{ matrix.settings.crate }} - ${{ matrix.settings.os }} (map[crate:swc_timer os:ubuntu-latest runner:ubuntu-latest]) (push) Waiting to run
CI / Test - ${{ matrix.settings.crate }} - ${{ matrix.settings.os }} (map[crate:swc_trace_macro os:ubuntu-latest runner:ubuntu-latest]) (push) Waiting to run
CI / Test - ${{ matrix.settings.crate }} - ${{ matrix.settings.os }} (map[crate:swc_transform_common os:ubuntu-latest runner:ubuntu-latest]) (push) Waiting to run
CI / Test - ${{ matrix.settings.crate }} - ${{ matrix.settings.os }} (map[crate:swc_typescript os:ubuntu-latest runner:ubuntu-latest]) (push) Waiting to run
CI / Test - ${{ matrix.settings.crate }} - ${{ matrix.settings.os }} (map[crate:swc_visit os:ubuntu-latest runner:ubuntu-latest]) (push) Waiting to run
CI / Test - ${{ matrix.settings.crate }} - ${{ matrix.settings.os }} (map[crate:swc_visit_macros os:ubuntu-latest runner:ubuntu-latest]) (push) Waiting to run
CI / Test - ${{ matrix.settings.crate }} - ${{ matrix.settings.os }} (map[crate:swc_x_optimizer os:ubuntu-latest runner:ubuntu-latest]) (push) Waiting to run
CI / Test - ${{ matrix.settings.crate }} - ${{ matrix.settings.os }} (map[crate:swc_xml os:ubuntu-latest runner:ubuntu-latest]) (push) Waiting to run
CI / Test - ${{ matrix.settings.crate }} - ${{ matrix.settings.os }} (map[crate:swc_xml_ast os:ubuntu-latest runner:ubuntu-latest]) (push) Waiting to run
CI / Test - ${{ matrix.settings.crate }} - ${{ matrix.settings.os }} (map[crate:swc_xml_codegen os:ubuntu-latest runner:ubuntu-latest]) (push) Waiting to run
CI / Test - ${{ matrix.settings.crate }} - ${{ matrix.settings.os }} (map[crate:swc_xml_codegen_macros os:ubuntu-latest runner:ubuntu-latest]) (push) Waiting to run
CI / Test - ${{ matrix.settings.crate }} - ${{ matrix.settings.os }} (map[crate:swc_xml_parser os:ubuntu-latest runner:ubuntu-latest]) (push) Waiting to run
CI / Test - ${{ matrix.settings.crate }} - ${{ matrix.settings.os }} (map[crate:swc_xml_visit os:ubuntu-latest runner:ubuntu-latest]) (push) Waiting to run
CI / Test - ${{ matrix.settings.crate }} - ${{ matrix.settings.os }} (map[crate:testing os:ubuntu-latest runner:ubuntu-latest]) (push) Waiting to run
CI / Test - ${{ matrix.settings.crate }} - ${{ matrix.settings.os }} (map[crate:testing_macros os:ubuntu-latest runner:ubuntu-latest]) (push) Waiting to run
CI / Test node bindings - ${{ matrix.os }} (macos-latest) (push) Waiting to run
CI / Test node bindings - ${{ matrix.os }} (windows-latest) (push) Waiting to run
CI / Test with @swc/cli (push) Waiting to run
CI / Miri (better_scoped_tls) (push) Waiting to run
CI / Miri (string_enum) (push) Waiting to run
CI / Miri (swc) (push) Waiting to run
CI / Miri (swc_bundler) (push) Waiting to run
CI / Miri (swc_ecma_codegen) (push) Waiting to run
CI / Miri (swc_ecma_minifier) (push) Waiting to run
CI / Done (push) Blocked by required conditions
Benchmark / Bench everything (push) Waiting to run
Bot / Start (push) Waiting to run
2024-07-10 09:48:54 +00:00
Donny/강동윤
f3681cb340
feat(allocator): Initialize package (#9195) 2024-07-10 18:47:14 +09:00