Closed Bug 1608791 Opened 4 years ago Closed 4 years ago

Harden Rabaldr register classes

Categories

(Core :: JavaScript: WebAssembly, enhancement, P3)

enhancement

Tracking

()

RESOLVED FIXED
mozilla74
Tracking Status
firefox74 --- fixed

People

(Reporter: lth, Assigned: lth)

References

Details

Attachments

(1 file)

It is possible to assert that (a) the float register wrappers are created with the correct underlying float register types and that (b) when the register wrappers are created with explicit wrapped registers, those registers are never invalid. Part (a) is really the important part here: it is already a concern that "FloatRegister" is used to represent both f32 and f64 registers, and with simd, the risk of confusion is greater.

By cleaning up the register set APIs very slightly we can simplify the wrappers and
make space for meaningful assertions.

Attachment #9120413 - Attachment description: Bug 1608791 - Harden the Rabaldr register wrappers. r?rhunt → Bug 1608791 - Harden the Rabaldr register wrappers. r=rhunt
Pushed by lhansen@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/d2457f7efd8a
Harden the Rabaldr register wrappers. r=rhunt

Turns out these new asserts actually found a bug on arm64; more patches coming, I guess...

Flags: needinfo?(lhansen)
Depends on: 1609138
Blocks: 1609381
Pushed by lhansen@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/7d2c3216d225
Harden the Rabaldr register wrappers. r=rhunt

Backed out because of bug 1609138.
Copying backout message from the linked bug.

Backed out 2 changesets (Bug 1609138, Bug 1608791) for Assembler-vixl.h related bustage

Push with failures: https://treeherder.mozilla.org/#/jobs?repo=autoland&searchStr=spidermonkey&fromchange=74e4bc39fbb10fb53f90fa88d2072809e916d561&tochange=292b3f9194c0c216e82130d7568951af18ad89c0&selectedJob=285594499

Backout link: https://hg.mozilla.org/integration/autoland/rev/292b3f9194c0c216e82130d7568951af18ad89c0

Failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=285594499&repo=autoland&lineNumber=643

[task 2020-01-20T07:47:23.930Z] mfbt/tests/TestCasting.o
[task 2020-01-20T07:47:24.594Z] In file included from /builds/worker/workspace/build/src/js/src/jit/arm64/Assembler-arm64.h:10:0,
[task 2020-01-20T07:47:24.594Z] from /builds/worker/workspace/build/src/js/src/jit/arm64/MacroAssembler-arm64.h:10,
[task 2020-01-20T07:47:24.594Z] from /builds/worker/workspace/build/src/js/src/jit/MacroAssembler.h:23,
[task 2020-01-20T07:47:24.594Z] from /builds/worker/workspace/build/src/js/src/jit/arm64/SharedICRegisters-arm64.h:10,
[task 2020-01-20T07:47:24.594Z] from /builds/worker/workspace/build/src/js/src/jit/SharedICRegisters.h:17,
[task 2020-01-20T07:47:24.594Z] from /builds/worker/workspace/build/src/js/src/jit/BaselineIC.h:18,
[task 2020-01-20T07:47:24.594Z] from /builds/worker/workspace/build/src/js/src/jit/JitScript.h:13,
[task 2020-01-20T07:47:24.594Z] from /builds/worker/workspace/build/src/js/src/vm/TypeInference-inl.h:23,
[task 2020-01-20T07:47:24.595Z] from /builds/worker/workspace/build/src/js/src/vm/ObjectOperations-inl.h:36,
[task 2020-01-20T07:47:24.595Z] from /builds/worker/workspace/build/src/js/src/vm/JSObject-inl.h:20,
[task 2020-01-20T07:47:24.595Z] from /builds/worker/workspace/build/src/js/src/vm/EnvironmentObject-inl.h:12,
[task 2020-01-20T07:47:24.595Z] from /builds/worker/workspace/build/src/js/src/builtin/RegExp.cpp:24:
[task 2020-01-20T07:47:24.595Z] /builds/worker/workspace/build/src/js/src/jit/arm64/vixl/Assembler-vixl.h: In constructor 'constexpr vixl::VRegister::VRegister(js::jit::FloatRegister)':
[task 2020-01-20T07:47:24.595Z] /builds/worker/workspace/build/src/js/src/jit/arm64/vixl/Assembler-vixl.h:305:31: error: call to non-constexpr function 'js::jit::FloatRegister::Encoding js::jit::FloatRegister::encoding() const'
[task 2020-01-20T07:47:24.595Z] : CPURegister(r.encoding(), r.size() * 8, kVRegister), lanes_(1) {
[task 2020-01-20T07:47:24.595Z] ^
[task 2020-01-20T07:47:24.595Z] /builds/worker/workspace/build/src/js/src/jit/arm64/vixl/Assembler-vixl.h: In constructor 'constexpr vixl::VRegister::VRegister(js::jit::FloatRegister, unsigned int)':
[task 2020-01-20T07:47:24.595Z] /builds/worker/workspace/build/src/js/src/jit/arm64/vixl/Assembler-vixl.h:308:31: error: call to non-constexpr function 'js::jit::FloatRegister::Encoding js::jit::FloatRegister::encoding() const'
[task 2020-01-20T07:47:24.595Z] : CPURegister(r.encoding(), size, kVRegister), lanes_(1) {
[task 2020-01-20T07:47:24.595Z] ^
[task 2020-01-20T07:47:24.647Z] In file included from /builds/worker/workspace/build/src/mfbt/tests/TestBufferList.cpp:9:0:
[task 2020-01-20T07:47:24.647Z] /builds/worker/workspace/build/src/obj-spider/dist/include/mozilla/BufferList.h: In member function 'mozilla::BufferList<AllocPolicy> mozilla::BufferList<AllocPolicy>::Extract(mozilla::BufferList<AllocPolicy>::IterImpl&, size_t, bool*) [with AllocPolicy = InfallibleAllocPolicy]':
[task 2020-01-20T07:47:24.647Z] /builds/worker/workspace/build/src/obj-spider/dist/include/mozilla/BufferList.h:408:17: warning: 'lastSegmentSize' may be used uninitialized in this function [-Wmaybe-uninitialized]
[task 2020-01-20T07:47:24.647Z] while (copied < aSize) {
[task 2020-01-20T07:47:24.647Z] ^
[task 2020-01-20T07:47:24.647Z] /builds/worker/workspace/build/src/obj-spider/dist/include/mozilla/BufferList.h:542:17: note: 'lastSegmentSize' was declared here
[task 2020-01-20T07:47:24.647Z] Maybe<size_t> lastSegmentSize;
[task 2020-01-20T07:47:24.647Z] ^~~~~~~~~~~~~~~
[task 2020-01-20T07:47:24.665Z] Compiling lazy_static v1.4.0
[task 2020-01-20T07:47:24.665Z] Running CARGO_PKG_VERSION_MINOR=4 CARGO_PKG_AUTHORS='Marvin Löbel <loebel.marvin@gmail.com>' CARGO_PKG_VERSION=1.4.0 CARGO=/builds/worker/fetches/rustc/bin/cargo LD_LIBRARY_PATH='/builds/worker/workspace/build/src/obj-spider/js/src/frontend/binast/./debug/deps:/builds/worker/fetches/rustc/lib:/builds/worker/workspace/build/src/obj-spider/dist/bin:/builds/worker/fetches/gcc/lib64' CARGO_PKG_NAME=lazy_static CARGO_PKG_VERSION_MAJOR=1 CARGO_PKG_VERSION_PATCH=0 CARGO_MANIFEST_DIR=/builds/worker/workspace/build/src/third_party/rust/lazy_static CARGO_PKG_DESCRIPTION='A macro for declaring lazily evaluated statics in Rust.' CARGO_PKG_HOMEPAGE= CARGO_PKG_VERSION_PRE= CARGO_PKG_REPOSITORY='https://github.com/rust-lang-nursery/lazy-static.rs' /builds/worker/fetches/rustc/bin/rustc --crate-name lazy_static /builds/worker/workspace/build/src/third_party/rust/lazy_static/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=1 -C panic=abort -C debuginfo=2 -C debug-assertions=on -C metadata=3794392dc2077794 -C extra-filename=-3794392dc2077794 --out-dir /builds/worker/workspace/build/src/obj-spider/js/src/frontend/binast/./x86_64-unknown-linux-gnu/debug/deps --target x86_64-unknown-linux-gnu -C linker=/builds/worker/workspace/build/src/build/cargo-linker -L dependency=/builds/worker/workspace/build/src/obj-spider/js/src/frontend/binast/./x86_64-unknown-linux-gnu/debug/deps -L dependency=/builds/worker/workspace/build/src/obj-spider/js/src/frontend/binast/./debug/deps --cap-lints warn -C opt-level=2 -C debuginfo=2 -C force-frame-pointers=yes -Dwarnings
[task 2020-01-20T07:47:24.737Z] Compiling libc v0.2.59
[task 2020-01-20T07:47:24.738Z] Running CARGO_PKG_VERSION_MINOR=2 CARGO_PKG_AUTHORS='The Rust Project Developers' CARGO_PKG_VERSION=0.2.59 CARGO=/builds/worker/fetches/rustc/bin/cargo LD_LIBRARY_PATH='/builds/worker/workspace/build/src/obj-spider/js/src/frontend/binast/./debug/deps:/builds/worker/fetches/rustc/lib:/builds/worker/workspace/build/src/obj-spider/dist/bin:/builds/worker/fetches/gcc/lib64' CARGO_PKG_NAME=libc CARGO_PKG_VERSION_MAJOR=0 CARGO_PKG_VERSION_PATCH=59 CARGO_MANIFEST_DIR=/builds/worker/workspace/build/src/third_party/rust/libc CARGO_PKG_DESCRIPTION='Raw FFI bindings to platform libraries like libc. [task 2020-01-20T07:47:24.738Z] ' CARGO_PKG_HOMEPAGE='https://github.com/rust-lang/libc' CARGO_PKG_VERSION_PRE= CARGO_PKG_REPOSITORY='https://github.com/rust-lang/libc' /builds/worker/fetches/rustc/bin/rustc --crate-name build_script_build /builds/worker/workspace/build/src/third_party/rust/libc/build.rs --color never --crate-type bin --emit=dep-info,link -C opt-level=1 -C debuginfo=2 -C debug-assertions=on --cfg 'feature="default"' --cfg 'feature="std"' -C metadata=32b4c970150ec062 -C extra-filename=-32b4c970150ec062 --out-dir /builds/worker/workspace/build/src/obj-spider/js/src/frontend/binast/./debug/build/libc-32b4c970150ec062 -C linker=/builds/worker/workspace/build/src/build/cargo-linker -L dependency=/builds/worker/workspace/build/src/obj-spider/js/src/frontend/binast/./debug/deps --cap-lints warn
[task 2020-01-20T07:47:24.779Z] Compiling proc-macro2 v1.0.5
[task 2020-01-20T07:47:24.779Z] Running CARGO_PKG_NAME=proc-macro2 CARGO=/builds/worker/fetches/rustc/bin/cargo CARGO_PKG_VERSION_MAJOR=1 CARGO_PKG_VERSION_MINOR=0 CARGO_PKG_VERSION_PATCH=5 CARGO_PKG_VERSION=1.0.5 CARGO_MANIFEST_DIR=/builds/worker/workspace/build/src/third_party/rust/proc-macro2 CARGO_PKG_REPOSITORY='https://github.com/alexcrichton/proc-macro2' CARGO_PKG_DESCRIPTION='A stable implementation of the upcoming newproc_macroAPI. Comes with an [task 2020-01-20T07:47:24.779Z] option, off by default, to also reimplement itself in terms of the upstream [task 2020-01-20T07:47:24.779Z] unstable API. [task 2020-01-20T07:47:24.779Z] ' CARGO_PKG_VERSION_PRE= LD_LIBRARY_PATH='/builds/worker/workspace/build/src/obj-spider/debug/deps:/builds/worker/fetches/rustc/lib:/builds/worker/workspace/build/src/obj-spider/dist/bin:/builds/worker/fetches/gcc/lib64' CARGO_PKG_AUTHORS='Alex Crichton <alex@alexcrichton.com>' CARGO_PKG_HOMEPAGE='https://github.com/alexcrichton/proc-macro2' /builds/worker/fetches/rustc/bin/rustc --edition=2018 --crate-name build_script_build /builds/worker/workspace/build/src/third_party/rust/proc-macro2/build.rs --color never --crate-type bin --emit=dep-info,link -C opt-level=1 -C debuginfo=2 -C debug-assertions=on --cfg 'feature="default"' --cfg 'feature="proc-macro"' -C metadata=0f53207182d1075f -C extra-filename=-0f53207182d1075f --out-dir /builds/worker/workspace/build/src/obj-spider/debug/build/proc-macro2-0f53207182d1075f -C linker=/builds/worker/workspace/build/src/build/cargo-linker -L dependency=/builds/worker/workspace/build/src/obj-spider/debug/deps --cap-lints warn
[task 2020-01-20T07:47:24.815Z] In file included from /builds/worker/workspace/build/src/js/src/jit/arm64/Assembler-arm64.h:10:0,
[task 2020-01-20T07:47:24.815Z] from /builds/worker/workspace/build/src/js/src/jit/arm64/MacroAssembler-arm64.h:10,
[task 2020-01-20T07:47:24.815Z] from /builds/worker/workspace/build/src/js/src/jit/MacroAssembler.h:23,
[task 2020-01-20T07:47:24.815Z] from /builds/worker/workspace/build/src/js/src/jit/arm64/SharedICRegisters-arm64.h:10,
[task 2020-01-20T07:47:24.815Z] from /builds/worker/workspace/build/src/js/src/jit/SharedICRegisters.h:17,
[task 2020-01-20T07:47:24.815Z] from /builds/worker/workspace/build/src/js/src/jit/BaselineIC.h:18,
[task 2020-01-20T07:47:24.815Z] from /builds/worker/workspace/build/src/js/src/jit/JitScript.h:13,
[task 2020-01-20T07:47:24.815Z] from /builds/worker/workspace/build/src/js/src/vm/TypeInference-inl.h:23,
[task 2020-01-20T07:47:24.815Z] from /builds/worker/workspace/build/src/js/src/vm/ObjectOperations-inl.h:36,
[task 2020-01-20T07:47:24.815Z] from /builds/worker/workspace/build/src/js/src/vm/JSObject-inl.h:20,
[task 2020-01-20T07:47:24.815Z] from /builds/worker/workspace/build/src/js/src/shell/OSObject.cpp:40,
[task 2020-01-20T07:47:24.815Z] from Unified_cpp_js_src_shell0.cpp:2:
[task 2020-01-20T07:47:24.815Z] /builds/worker/workspace/build/src/js/src/jit/arm64/vixl/Assembler-vixl.h: In constructor 'constexpr vixl::VRegister::VRegister(js::jit::FloatRegister)':
[task 2020-01-20T07:47:24.815Z] /builds/worker/workspace/build/src/js/src/jit/arm64/vixl/Assembler-vixl.h:305:31: error: call to non-constexpr function 'js::jit::FloatRegister::Encoding js::jit::FloatRegister::encoding() const'
[task 2020-01-20T07:47:24.815Z] : CPURegister(r.encoding(), r.size() * 8, kVRegister), lanes_(1) {
[task 2020-01-20T07:47:24.815Z] ^
[task 2020-01-20T07:47:24.665Z] Compiling lazy_static v1.4.0
[task 2020-01-20T07:47:24.665Z] Running CARGO_PKG_VERSION_MINOR=4 CARGO_PKG_AUTHORS='Marvin Löbel <loebel.marvin@gmail.com>' CARGO_PKG_VERSION=1.4.0 CARGO=/builds/worker/fetches/rustc/bin/cargo LD_LIBRARY_PATH='/builds/worker/workspace/build/src/obj-spider/js/src/frontend/binast/./debug/deps:/builds/worker/fetches/rustc/lib:/builds/worker/workspace/build/src/obj-spider/dist/bin:/builds/worker/fetches/gcc/lib64' CARGO_PKG_NAME=lazy_static CARGO_PKG_VERSION_MAJOR=1 CARGO_PKG_VERSION_PATCH=0 CARGO_MANIFEST_DIR=/builds/worker/workspace/build/src/third_party/rust/lazy_static CARGO_PKG_DESCRIPTION='A macro for declaring lazily evaluated statics in Rust.' CARGO_PKG_HOMEPAGE= CARGO_PKG_VERSION_PRE= CARGO_PKG_REPOSITORY='https://github.com/rust-lang-nursery/lazy-static.rs' /builds/worker/fetches/rustc/bin/rustc --crate-name lazy_static /builds/worker/workspace/build/src/third_party/rust/lazy_static/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=1 -C panic=abort -C debuginfo=2 -C debug-assertions=on -C metadata=3794392dc2077794 -C extra-filename=-3794392dc2077794 --out-dir /builds/worker/workspace/build/src/obj-spider/js/src/frontend/binast/./x86_64-unknown-linux-gnu/debug/deps --target x86_64-unknown-linux-gnu -C linker=/builds/worker/workspace/build/src/build/cargo-linker -L dependency=/builds/worker/workspace/build/src/obj-spider/js/src/frontend/binast/./x86_64-unknown-linux-gnu/debug/deps -L dependency=/builds/worker/workspace/build/src/obj-spider/js/src/frontend/binast/./debug/deps --cap-lints warn -C opt-level=2 -C debuginfo=2 -C force-frame-pointers=yes -Dwarnings
[task 2020-01-20T07:47:24.737Z] Compiling libc v0.2.59
[task 2020-01-20T07:47:24.738Z] Running CARGO_PKG_VERSION_MINOR=2 CARGO_PKG_AUTHORS='The Rust Project Developers' CARGO_PKG_VERSION=0.2.59 CARGO=/builds/worker/fetches/rustc/bin/cargo LD_LIBRARY_PATH='/builds/worker/workspace/build/src/obj-spider/js/src/frontend/binast/./debug/deps:/builds/worker/fetches/rustc/lib:/builds/worker/workspace/build/src/obj-spider/dist/bin:/builds/worker/fetches/gcc/lib64' CARGO_PKG_NAME=libc CARGO_PKG_VERSION_MAJOR=0 CARGO_PKG_VERSION_PATCH=59 CARGO_MANIFEST_DIR=/builds/worker/workspace/build/src/third_party/rust/libc CARGO_PKG_DESCRIPTION='Raw FFI bindings to platform libraries like libc. [task 2020-01-20T07:47:24.738Z] ' CARGO_PKG_HOMEPAGE='https://github.com/rust-lang/libc' CARGO_PKG_VERSION_PRE= CARGO_PKG_REPOSITORY='https://github.com/rust-lang/libc' /builds/worker/fetches/rustc/bin/rustc --crate-name build_script_build /builds/worker/workspace/build/src/third_party/rust/libc/build.rs --color never --crate-type bin --emit=dep-info,link -C opt-level=1 -C debuginfo=2 -C debug-assertions=on --cfg 'feature="default"' --cfg 'feature="std"' -C metadata=32b4c970150ec062 -C extra-filename=-32b4c970150ec062 --out-dir /builds/worker/workspace/build/src/obj-spider/js/src/frontend/binast/./debug/build/libc-32b4c970150ec062 -C linker=/builds/worker/workspace/build/src/build/cargo-linker -L dependency=/builds/worker/workspace/build/src/obj-spider/js/src/frontend/binast/./debug/deps --cap-lints warn
[task 2020-01-20T07:47:24.779Z] Compiling proc-macro2 v1.0.5
[task 2020-01-20T07:47:24.779Z] Running CARGO_PKG_NAME=proc-macro2 CARGO=/builds/worker/fetches/rustc/bin/cargo CARGO_PKG_VERSION_MAJOR=1 CARGO_PKG_VERSION_MINOR=0 CARGO_PKG_VERSION_PATCH=5 CARGO_PKG_VERSION=1.0.5 CARGO_MANIFEST_DIR=/builds/worker/workspace/build/src/third_party/rust/proc-macro2 CARGO_PKG_REPOSITORY='https://github.com/alexcrichton/proc-macro2' CARGO_PKG_DESCRIPTION='A stable implementation of the upcoming newproc_macroAPI. Comes with an [task 2020-01-20T07:47:24.779Z] option, off by default, to also reimplement itself in terms of the upstream [task 2020-01-20T07:47:24.779Z] unstable API. [task 2020-01-20T07:47:24.779Z] ' CARGO_PKG_VERSION_PRE= LD_LIBRARY_PATH='/builds/worker/workspace/build/src/obj-spider/debug/deps:/builds/worker/fetches/rustc/lib:/builds/worker/workspace/build/src/obj-spider/dist/bin:/builds/worker/fetches/gcc/lib64' CARGO_PKG_AUTHORS='Alex Crichton <alex@alexcrichton.com>' CARGO_PKG_HOMEPAGE='https://github.com/alexcrichton/proc-macro2' /builds/worker/fetches/rustc/bin/rustc --edition=2018 --crate-name build_script_build /builds/worker/workspace/build/src/third_party/rust/proc-macro2/build.rs --color never --crate-type bin --emit=dep-info,link -C opt-level=1 -C debuginfo=2 -C debug-assertions=on --cfg 'feature="default"' --cfg 'feature="proc-macro"' -C metadata=0f53207182d1075f -C extra-filename=-0f53207182d1075f --out-dir /builds/worker/workspace/build/src/obj-spider/debug/build/proc-macro2-0f53207182d1075f -C linker=/builds/worker/workspace/build/src/build/cargo-linker -L dependency=/builds/worker/workspace/build/src/obj-spider/debug/deps --cap-lints warn
[task 2020-01-20T07:47:24.815Z] In file included from /builds/worker/workspace/build/src/js/src/jit/arm64/Assembler-arm64.h:10:0,
[task 2020-01-20T07:47:24.815Z] from /builds/worker/workspace/build/src/js/src/jit/arm64/MacroAssembler-arm64.h:10,
[task 2020-01-20T07:47:24.815Z] from /builds/worker/workspace/build/src/js/src/jit/MacroAssembler.h:23,
[task 2020-01-20T07:47:24.815Z] from /builds/worker/workspace/build/src/js/src/jit/arm64/SharedICRegisters-arm64.h:10,
[task 2020-01-20T07:47:24.815Z] from /builds/worker/workspace/build/src/js/src/jit/SharedICRegisters.h:17,
[task 2020-01-20T07:47:24.815Z] from /builds/worker/workspace/build/src/js/src/jit/BaselineIC.h:18,
[task 2020-01-20T07:47:24.815Z] from /builds/worker/workspace/build/src/js/src/jit/JitScript.h:13,
[task 2020-01-20T07:47:24.815Z] from /builds/worker/workspace/build/src/js/src/vm/TypeInference-inl.h:23,
[task 2020-01-20T07:47:24.815Z] from /builds/worker/workspace/build/src/js/src/vm/ObjectOperations-inl.h:36,
[task 2020-01-20T07:47:24.815Z] from /builds/worker/workspace/build/src/js/src/vm/JSObject-inl.h:20,
[task 2020-01-20T07:47:24.815Z] from /builds/worker/workspace/build/src/js/src/shell/OSObject.cpp:40,
[task 2020-01-20T07:47:24.815Z] from Unified_cpp_js_src_shell0.cpp:2:
[task 2020-01-20T07:47:24.815Z] /builds/worker/workspace/build/src/js/src/jit/arm64/vixl/Assembler-vixl.h: In constructor 'constexpr vixl::VRegister::VRegister(js::jit::FloatRegister)':
[task 2020-01-20T07:47:24.815Z] /builds/worker/workspace/build/src/js/src/jit/arm64/vixl/Assembler-vixl.h:305:31: error: call to non-constexpr function 'js::jit::FloatRegister::Encoding js::jit::FloatRegister::encoding() const'
[task 2020-01-20T07:47:24.815Z] : CPURegister(r.encoding(), r.size() * 8, kVRegister), lanes_(1) {
[task 2020-01-20T07:47:24.815Z] ^
[task 2020-01-20T07:47:24.815Z] /builds/worker/workspace/build/src/js/src/jit/arm64/vixl/Assembler-vixl.h: In constructor 'constexpr vixl::VRegister::VRegister(js::jit::FloatRegister, unsigned int)':
[task 2020-01-20T07:47:24.815Z] /builds/worker/workspace/build/src/js/src/jit/arm64/vixl/Assembler-vixl.h:308:31: error: call to non-constexpr function 'js::jit::FloatRegister::Encoding js::jit::FloatRegister::encoding() const'
[task 2020-01-20T07:47:24.815Z] : CPURegister(r.encoding(), size, kVRegister), lanes_(1) {
[task 2020-01-20T07:47:24.815Z] ^
[task 2020-01-20T07:47:24.946Z] /builds/worker/fetches/gcc/bin/g++ -std=gnu++17 -o TestCasting.o -c -I/builds/worker/workspace/build/src/obj-spider/dist/system_wrappers -include /builds/worker/workspace/build/src/config/gcc_hidden.h -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -DDEBUG=1 -DIMPL_MFBT -I/builds/worker/workspace/build/src/mfbt/tests -I/builds/worker/workspace/build/src/obj-spider/mfbt/tests -I/builds/worker/workspace/build/src/obj-spider/dist/include -I/builds/worker/workspace/build/src/obj-spider/dist/include/testing -I/builds/worker/workspace/build/src/obj-spider/dist/include/nspr -fPIC -DMOZILLA_CLIENT -include /builds/worker/workspace/build/src/obj-spider/js/src/js-confdefs.h -Wall -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wsign-compare -Wtype-limits -Wunreachable-code -Wwrite-strings -Wno-invalid-offsetof -Wduplicated-cond -Wimplicit-fallthrough -Wno-error=maybe-uninitialized -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=coverage-mismatch -Wno-error=free-nonheap-object -Wformat -Wformat-overflow=2 -Wno-noexcept-type -D_GLIBCXX_USE_CXX11_ABI=0 -fno-sized-deallocation -fno-aligned-new -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -fno-math-errno -pthread -pipe -g -freorder-blocks -O3 -fno-omit-frame-pointer -funwind-tables -Werror -Wno-error=shadow -MD -MP -MF .deps/TestCasting.o.pp /builds/worker/workspace/build/src/mfbt/tests/TestCasting.cpp
[task 2020-01-20T07:47:24.946Z] mfbt/tests/TestCeilingFloor.o
....

Another failure for WasmBaselineCompile.cpp: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=285594554&repo=autoland&lineNumber=4686

[task 2020-01-20T07:55:27.753Z] In file included from Unified_cpp_js_src_wasm0.cpp:11:0:
[task 2020-01-20T07:55:27.753Z] /builds/worker/workspace/build/src/js/src/wasm/WasmBaselineCompile.cpp: In member function 'bool js::wasm::RegF32::isValid() const':
[task 2020-01-20T07:55:27.753Z] /builds/worker/workspace/build/src/js/src/wasm/WasmBaselineCompile.cpp:335:34: error: 'isInvalid' was not declared in this scope
[task 2020-01-20T07:55:27.754Z] bool isValid() const { return !isInvalid(); }
[task 2020-01-20T07:55:27.754Z] ^~~~~~~~~
[task 2020-01-20T07:55:27.757Z] /builds/worker/workspace/build/src/js/src/wasm/WasmBaselineCompile.cpp:335:34: note: suggested alternative: 'Invalid'
[task 2020-01-20T07:55:27.757Z] bool isValid() const { return !isInvalid(); }
[task 2020-01-20T07:55:27.757Z] ^~~~~~~~~
[task 2020-01-20T07:55:27.757Z] Invalid
[task 2020-01-20T07:55:27.758Z] /builds/worker/workspace/build/src/js/src/wasm/WasmBaselineCompile.cpp: In member function 'bool js::wasm::RegF64::isValid() const':
[task 2020-01-20T07:55:27.758Z] /builds/worker/workspace/build/src/js/src/wasm/WasmBaselineCompile.cpp:344:34: error: 'isInvalid' was not declared in this scope
[task 2020-01-20T07:55:27.758Z] bool isValid() const { return !isInvalid(); }
[task 2020-01-20T07:55:27.758Z] ^~~~~~~~~
[task 2020-01-20T07:55:27.761Z] /builds/worker/workspace/build/src/js/src/wasm/WasmBaselineCompile.cpp:344:34: note: suggested alternative: 'Invalid'
[task 2020-01-20T07:55:27.761Z] bool isValid() const { return !isInvalid(); }
[task 2020-01-20T07:55:27.761Z] ^~~~~~~~~
[task 2020-01-20T07:55:27.761Z] Invalid
[task 2020-01-20T07:55:28.310Z] /builds/worker/fetches/gcc/bin/g++ -std=gnu++17 -o Unified_cpp_js_src_frontend5.o -c -I/builds/worker/workspace/build/src/obj-spider/dist/system_wrappers -include /builds/worker/workspace/build/src/config/gcc_hidden.h -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -DNDEBUG=1 -DTRIMMED=1 -DJS_CACHEIR_SPEW -DJS_STRUCTURED_SPEW -DEXPORT_JS_API -DMOZ_HAS_MOZGLUE -I/builds/worker/workspace/build/src/js/src/frontend -I/builds/worker/workspace/build/src/obj-spider/js/src/frontend -I/builds/worker/workspace/build/src/obj-spider/js/src -I/builds/worker/workspace/build/src/js/src -I/builds/worker/workspace/build/src/obj-spider/dist/include -I/builds/worker/workspace/build/src/obj-spider/dist/include/nspr -fPIC -DMOZILLA_CLIENT -include /builds/worker/workspace/build/src/obj-spider/js/src/js-confdefs.h -Wall -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wsign-compare -Wtype-limits -Wunreachable-code -Wwrite-strings -Wno-invalid-offsetof -Wduplicated-cond -Wimplicit-fallthrough -Wno-error=maybe-uninitialized -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=coverage-mismatch -Wno-error=free-nonheap-object -Wformat -Wformat-overflow=2 -Wno-noexcept-type -D_GLIBCXX_USE_CXX11_ABI=0 -fno-sized-deallocation -fno-aligned-new -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -fno-math-errno -pthread -pipe -g -freorder-blocks -O3 -fno-omit-frame-pointer -funwind-tables -Werror -fno-strict-aliasing -Werror=format -Wno-shadow -Wno-attributes -MD -MP -MF .deps/Unified_cpp_js_src_frontend5.o.pp Unified_cpp_js_src_frontend5.cpp
[task 2020-01-20T07:55:28.787Z] Compiling regex v1.3.1
[task 2020-01-20T07:55:28.787Z] Running CARGO_MANIFEST_DIR=/builds/worker/workspace/build/src/third_party/rust/regex CARGO_PKG_VERSION_MINOR=3 CARGO_PKG_VERSION_MAJOR=1 CARGO_PKG_VERSION_PRE= CARGO_PKG_NAME=regex LD_LIBRARY_PATH='/builds/worker/workspace/build/src/obj-spider/release/deps:/builds/worker/fetches/rustc/lib:/builds/worker/workspace/build/src/obj-spider/dist/bin:/builds/worker/fetches/gcc/lib64' CARGO_PKG_DESCRIPTION='An implementation of regular expressions for Rust. This implementation uses [task 2020-01-20T07:55:28.787Z] finite automata and guarantees linear time matching on all inputs. [task 2020-01-20T07:55:28.787Z] ' CARGO_PKG_HOMEPAGE='https://github.com/rust-lang/regex' CARGO_PKG_AUTHORS='The Rust Project Developers' CARGO_PKG_VERSION_PATCH=1 CARGO=/builds/worker/fetches/rustc/bin/cargo CARGO_PKG_REPOSITORY='https://github.com/rust-lang/regex' CARGO_PKG_VERSION=1.3.1 /builds/worker/fetches/rustc/bin/rustc --crate-name regex /builds/worker/workspace/build/src/third_party/rust/regex/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=2 -C codegen-units=1 --cfg 'feature="aho-corasick"' --cfg 'feature="default"' --cfg 'feature="memchr"' --cfg 'feature="perf"' --cfg 'feature="perf-cache"' --cfg 'feature="perf-dfa"' --cfg 'feature="perf-inline"' --cfg 'feature="perf-literal"' --cfg 'feature="std"' --cfg 'feature="thread_local"' --cfg 'feature="unicode"' --cfg 'feature="unicode-age"' --cfg 'feature="unicode-bool"' --cfg 'feature="unicode-case"' --cfg 'feature="unicode-gencat"' --cfg 'feature="unicode-perl"' --cfg 'feature="unicode-script"' --cfg 'feature="unicode-segment"' -C metadata=54bcb8048586e257 -C extra-filename=-54bcb8048586e257 --out-dir /builds/worker/workspace/build/src/obj-spider/release/deps -C linker=/builds/worker/workspace/build/src/build/cargo-linker -L dependency=/builds/worker/workspace/build/src/obj-spider/release/deps --extern aho_corasick=/builds/worker/workspace/build/src/obj-spider/release/deps/libaho_corasick-daf088e745b56d3a.rmeta --extern memchr=/builds/worker/workspace/build/src/obj-spider/release/deps/libmemchr-2b6437bfc7deb441.rmeta --extern regex_syntax=/builds/worker/workspace/build/src/obj-spider/release/deps/libregex_syntax-1c127b3176dd2dba.rmeta --extern thread_local=/builds/worker/workspace/build/src/obj-spider/release/deps/libthread_local-a2d99d939d9f5de6.rmeta --cap-lints warn
[task 2020-01-20T07:55:30.021Z] /builds/worker/fetches/gcc/bin/g++ -std=gnu++17 -o Unified_cpp_js_src_jit10.o -c -I/builds/worker/workspace/build/src/obj-spider/dist/system_wrappers -include /builds/worker/workspace/build/src/config/gcc_hidden.h -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -DNDEBUG=1 -DTRIMMED=1 -DJS_CACHEIR_SPEW -DJS_STRUCTURED_SPEW -DEXPORT_JS_API -DMOZ_HAS_MOZGLUE -I/builds/worker/workspace/build/src/js/src/jit -I/builds/worker/workspace/build/src/obj-spider/js/src/jit -I/builds/worker/workspace/build/src/obj-spider/js/src -I/builds/worker/workspace/build/src/js/src -I/builds/worker/workspace/build/src/obj-spider/dist/include -I/builds/worker/workspace/build/src/obj-spider/dist/include/nspr -fPIC -DMOZILLA_CLIENT -include /builds/worker/workspace/build/src/obj-spider/js/src/js-confdefs.h -Wall -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wsign-compare -Wtype-limits -Wunreachable-code -Wwrite-strings -Wno-invalid-offsetof -Wduplicated-cond -Wimplicit-fallthrough -Wno-error=maybe-uninitialized -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=coverage-mismatch -Wno-error=free-nonheap-object -Wformat -Wformat-overflow=2 -Wno-noexcept-type -D_GLIBCXX_USE_CXX11_ABI=0 -fno-sized-deallocation -fno-aligned-new -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -fno-math-errno -pthread -pipe -g -freorder-blocks -O3 -fno-omit-frame-pointer -funwind-tables -Werror -fno-strict-aliasing -Werror=format -Wno-shadow -Wno-attributes -MD -MP -MF .deps/Unified_cpp_js_src_jit10.o.pp Unified_cpp_js_src_jit10.cpp
[task 2020-01-20T07:55:30.022Z] js/src/jit/Unified_cpp_js_src_jit11.o
[task 2020-01-20T07:55:30.365Z] /builds/worker/workspace/build/src/config/rules.mk:744: recipe for target 'Unified_cpp_js_src_wasm0.o' failed
[task 2020-01-20T07:55:30.365Z] make[3]: *** [Unified_cpp_js_src_wasm0.o] Error 1
[task 2020-01-20T07:55:30.365Z] make[3]: Leaving directory '/builds/worker/workspace/build/src/obj-spider/js/src/wasm'
[task 2020-01-20T07:55:30.365Z] /builds/worker/workspace/build/src/config/recurse.mk:74: recipe for target 'js/src/wasm/target-objects' failed
[task 2020-01-20T07:55:30.365Z] make[2]: *** [js/src/wasm/target-objects] Error 2
[task 2020-01-20T07:55:30.365Z] make[2]: *** Waiting for unfinished jobs....
[task 2020-01-20T07:55:30.365Z] /builds/worker/fetches/gcc/bin/g++ -std=gnu++17 -o Unified_cpp_js_src26.o -c -I/builds/worker/workspace/build/src/obj-spider/dist/system_wrappers -include /builds/worker/workspace/build/src/config/gcc_hidden.h -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -DNDEBUG=1 -DTRIMMED=1 -DJS_CACHEIR_SPEW -DJS_STRUCTURED_SPEW -DEXPORT_JS_API -DMOZ_HAS_MOZGLUE -I/builds/worker/workspace/build/src/js/src -I/builds/worker/workspace/build/src/obj-spider/js/src -I/builds/worker/workspace/build/src/obj-spider/dist/include -I/builds/worker/workspace/build/src/obj-spider/dist/include/nspr -fPIC -DMOZILLA_CLIENT -include /builds/worker/workspace/build/src/obj-spider/js/src/js-confdefs.h -Wall -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wsign-compare -Wtype-limits -Wunreachable-code -Wwrite-strings -Wno-invalid-offsetof -Wduplicated-cond -Wimplicit-fallthrough -Wno-error=maybe-uninitialized -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=coverage-mismatch -Wno-error=free-nonheap-object -Wformat -Wformat-overflow=2 -Wno-noexcept-type -D_GLIBCXX_USE_CXX11_ABI=0 -fno-sized-deallocation -fno-aligned-new -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -fno-math-errno -pthread -pipe -g -freorder-blocks -O3 -fno-omit-frame-pointer -funwind-tables -Werror -fno-strict-aliasing -Werror=format -Wno-shadow -Wno-attributes -MD -MP -MF .deps/Unified_cpp_js_src26.o.pp Unified_cpp_js_src26.cpp
[task 2020-01-20T07:55:30.366Z] js/src/Unified_cpp_js_src27.o

Flags: needinfo?(lhansen)
Pushed by lhansen@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/16309c907652
Harden the Rabaldr register wrappers. r=rhunt
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla74
Flags: needinfo?(lhansen)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: