+++ This bug was initially created as a clone of Bug #1285652 +++ I hit a compile failure when compiling js 32-bit ARM-simulator shell on m-c rev d5f20820c805. LD=ld CROSS_COMPILE=1 CC="clang -Qunused-arguments -msse2 -mfpmath=sse -arch i386" RANLIB=ranlib CXX="clang++ -Qunused-arguments -msse2 -mfpmath=sse -arch i386" AS=$CC AR=ar STRIP="strip -x -S" HOST_CC="clang -Qunused-arguments -msse2 -mfpmath=sse" AUTOCONF=/usr/local/Cellar/autoconf213/2.13/bin/autoconf213 HOST_CXX="clang++ -Qunused-arguments -msse2 -mfpmath=sse" sh /Users/skywalker/trees/mozilla-central/js/src/configure --target=i386-apple-darwin9.2.0 --enable-macos-target=10.5 --enable-arm-simulator --enable-debug --enable-optimize --enable-nspr-build --enable-more-deterministic --with-ccache --enable-gczeal --enable-debug-symbols --disable-tests === autoBisect shows this is probably related to the following changeset: The first bad revision is: changeset: https://hg.mozilla.org/mozilla-central/rev/f6fddb22a8b5 user: Dimo date: Mon Aug 29 21:30:04 2016 -0500 summary: Bug 1287967 - Baldr: Add current_memory and grow_memory (r=luke,sunfish) Luke/Dan, is bug 1287967 a likely regressor? This blocks fuzzing 32-bit ARM simulator builds on Mac.
Can you post the error message?
I'll try to get to this as soon as I can but I think the basic problem is: the #ifdef is for CODEGEN_ARM but we're actually compiling on x86 so arm_thread_state_t is not available. With the ARM simulator, fault handling isn't even needed (we handle it specially in the simulator) so with a bit of #ifdefery you should be able to avoid compiling any of this code in WasmSignalHandlers.cpp.
Created attachment 8787852 [details] [diff] [review] fix-mac-arm-sim Oops, I think it's much simpler than that; just need to change some JS_CODEGEN_* to JS_CPU_*.
Comment on attachment 8787852 [details] [diff] [review] fix-mac-arm-sim Review of attachment 8787852 [details] [diff] [review]: ----------------------------------------------------------------- Makes sense. We don't use the signal-handling path with the simulator (Simulator::handleWasmFault), so it's ok that these types aren't available in that case.
Comment on attachment 8787852 [details] [diff] [review] fix-mac-arm-sim Fixes the compile failure, thanks!
Helping to set checkin-needed for a blocker fix.