Skip to content

Expand wasm32 testing on CI #360

New issue

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

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

Already on GitHub? # to your account

Merged
merged 2 commits into from
May 29, 2020
Merged

Conversation

alexcrichton
Copy link
Member

Run the full run.sh test script to get full assertions, including that
nothing in the wasm compiler-builtins is panicking. Unfortunately it's
currently panicking, so this is good to weed out!

Run the full `run.sh` test script to get full assertions, including that
nothing in the wasm compiler-builtins is panicking. Unfortunately it's
currently panicking, so this is good to weed out!
alexcrichton added a commit to alexcrichton/libm that referenced this pull request May 29, 2020
This commit moves over more array accesses to the `i!` macro to avoid
bounds checks when debug assertions are disabled. This is surfaced from
rust-lang/compiler-builtins#360 where recent changes in codegen units
has caused some bounds checks to not get elided in release mode. This
also adds a `div!` macro to work around rust-lang/rust#72751.
alexcrichton added a commit to alexcrichton/libm that referenced this pull request May 29, 2020
This commit moves over more array accesses to the `i!` macro to avoid
bounds checks when debug assertions are disabled. This is surfaced from
rust-lang/compiler-builtins#360 where recent changes in codegen units
has caused some bounds checks to not get elided in release mode. This
also adds a `div!` macro to work around rust-lang/rust#72751.
@alexcrichton
Copy link
Member Author

Ok I think rust-lang/libm#244 will fix CI here, so after that's merged I'll land this here.

alexcrichton added a commit to alexcrichton/libm that referenced this pull request May 29, 2020
This commit moves over more array accesses to the `i!` macro to avoid
bounds checks when debug assertions are disabled. This is surfaced from
rust-lang/compiler-builtins#360 where recent changes in codegen units
has caused some bounds checks to not get elided in release mode. This
also adds a `div!` macro to work around rust-lang/rust#72751.
alexcrichton added a commit to rust-lang/libm that referenced this pull request May 29, 2020
* Use macros for more division/array checks

This commit moves over more array accesses to the `i!` macro to avoid
bounds checks when debug assertions are disabled. This is surfaced from
rust-lang/compiler-builtins#360 where recent changes in codegen units
has caused some bounds checks to not get elided in release mode. This
also adds a `div!` macro to work around rust-lang/rust#72751.

* Don't test/bench our shim crate

It's not intended to run all our tests
@alexcrichton alexcrichton merged commit 4bf8cad into rust-lang:master May 29, 2020
@alexcrichton alexcrichton deleted the wasm-testing branch May 29, 2020 19:38
tgross35 added a commit to tgross35/compiler-builtins that referenced this pull request Mar 19, 2025
`builtins-test-intrinsics` has long included a call to an unmangled
`rust_begin_unwind` (the name `rustc` gives the `#[panic_handler]`),
since [1], which I believe was intended to ensure panic machinery links
correctly. However, since [2], `rust_begin_unwind` is mangled and
unavailable for calling directly, which explains the recent CI failures.

Instead of calling the function directly, we can just panic; do so here.
Additionally, put this call behind `black_box(false)` rather than
unconditional, which means we can run the binary and ensure there are no
runtime issues.

[1]: rust-lang#360
[2]: rust-lang/rust#127173
tgross35 added a commit to tgross35/compiler-builtins that referenced this pull request Mar 19, 2025
`builtins-test-intrinsics` has long included a call to an unmangled
`rust_begin_unwind` (the name `rustc` gives the `#[panic_handler]`),
since [1], which I believe was intended to ensure panic machinery links
correctly. However, since [2], `rust_begin_unwind` is mangled and
unavailable for calling directly, which explains the recent CI failures.

Instead of calling the function directly, we can just panic; do so here.
Additionally, put this call behind `black_box(false)` rather than
unconditional, which means we can run the binary and ensure there are no
runtime issues.

[1]: rust-lang#360
[2]: rust-lang/rust#127173
tgross35 added a commit to tgross35/compiler-builtins that referenced this pull request Mar 19, 2025
`builtins-test-intrinsics` has long included a call to an unmangled
`rust_begin_unwind` (the name `rustc` gives the `#[panic_handler]`),
since [1], which I believe was intended to ensure panic machinery links
correctly. However, since [2], `rust_begin_unwind` is mangled and
unavailable for calling directly, which explains the recent CI failures.

Instead of calling the function directly, we can just panic; do so here.
Additionally, put this call behind `black_box(false)` rather than
unconditional, which means we can run the binary and ensure there are no
runtime issues.

[1]: rust-lang#360
[2]: rust-lang/rust#127173
tgross35 added a commit to tgross35/compiler-builtins that referenced this pull request Mar 19, 2025
`builtins-test-intrinsics` has long included a call to an unmangled
`rust_begin_unwind` (the name `rustc` gives the `#[panic_handler]`),
since [1], which I believe was intended to ensure panic machinery links
correctly. However, since [2], `rust_begin_unwind` is mangled and
unavailable for calling directly, which explains the recent CI failures.

Instead of calling the function directly, we can just panic; do so here.
Additionally, put this call behind `black_box(false)` rather than
unconditional, which means we can run the binary and ensure there are no
runtime issues.

[1]: rust-lang#360
[2]: rust-lang/rust#127173
tgross35 added a commit to tgross35/compiler-builtins that referenced this pull request Mar 19, 2025
`builtins-test-intrinsics` has long included a call to an unmangled
`rust_begin_unwind` (the name `rustc` gives the `#[panic_handler]`),
since [1], which I believe was intended to ensure panic machinery links
correctly. However, since [2], `rust_begin_unwind` is mangled and
unavailable for calling directly, which explains the recent CI failures.

Instead of calling the function directly, we can just panic; do so here.
Additionally, put this call behind `black_box(false)` rather than
unconditional, which means we can run the binary and ensure there are no
runtime issues.

[1]: rust-lang#360
[2]: rust-lang/rust#127173
tgross35 added a commit to tgross35/compiler-builtins that referenced this pull request Mar 19, 2025
`builtins-test-intrinsics` has long included a call to an unmangled
`rust_begin_unwind` (the name `rustc` gives the `#[panic_handler]`),
since [1], which I believe was intended to ensure panic machinery links
correctly. However, since [2], `rust_begin_unwind` is mangled and
unavailable for calling directly, which explains the recent CI failures.

Instead of calling the function directly, we can just panic; do so here.
Additionally, put this call behind `black_box(false)` rather than
unconditional, which means we can run the binary and ensure there are no
runtime issues.

[1]: rust-lang#360
[2]: rust-lang/rust#127173
tgross35 added a commit to tgross35/compiler-builtins that referenced this pull request Mar 19, 2025
`builtins-test-intrinsics` has long included a call to an unmangled
`rust_begin_unwind` (the name `rustc` gives the `#[panic_handler]`),
since [1], which I believe was intended to ensure panic machinery links
correctly. However, since [2], `rust_begin_unwind` is mangled and
unavailable for calling directly, which explains the recent CI failures.

Instead of calling the function directly, we can just panic; do so here.
Additionally, put this call behind `black_box(false)` rather than
unconditional, which means we can run the binary and ensure there are no
runtime issues.

[1]: rust-lang#360
[2]: rust-lang/rust#127173
tgross35 added a commit to tgross35/compiler-builtins that referenced this pull request Mar 19, 2025
`builtins-test-intrinsics` has long included a call to an unmangled
`rust_begin_unwind` (the name `rustc` gives the `#[panic_handler]`),
since [1], which I believe was intended to ensure panic machinery links
correctly. However, since [2], `rust_begin_unwind` is mangled and
unavailable for calling directly, which explains the recent CI failures.

Instead of calling the function directly, we can just panic; do so here.
Additionally, put this call behind `black_box(false)` rather than
unconditional, which means we can run the binary and ensure there are no
runtime issues.

[1]: rust-lang#360
[2]: rust-lang/rust#127173
tgross35 pushed a commit to rust-lang/libm that referenced this pull request Apr 18, 2025
* Use macros for more division/array checks

This commit moves over more array accesses to the `i!` macro to avoid
bounds checks when debug assertions are disabled. This is surfaced from
rust-lang/compiler-builtins#360 where recent changes in codegen units
has caused some bounds checks to not get elided in release mode. This
also adds a `div!` macro to work around rust-lang/rust#72751.

* Don't test/bench our shim crate

It's not intended to run all our tests
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant