On Tue, 8 Apr 2025 15:49:44 GMT, Roman Marchenko <rmarche...@openjdk.org> wrote:
>> All the crashes are on "`movaps`" instructions, like "`movaps xmmword ptr >> [esi+0x30], xmm0`". >> >> "`movaps`" must operate with aligned addresses as >>> When the source or destination operand is a memory operand, the operand >>> must be aligned on a 16-byte boundary or a general-protection exception >>> (#GP) is generated >> >> written in docs. When crashes, ESI contains value like `0x27DB63A8`, so it >> doesn’t seem aligned to 16-byte boundary. The line "`siginfo: >> ExceptionCode=0xc0000005, reading address 0xffffffff`" from `hs_err` file >> implicitly says it is GP, not a real "reading address 0xffffffff". >> >> It might be related to clang-cl bug, see >> https://github.com/llvm/llvm-project/issues/55844 >> >> The workaround is to disable SSE when building 32bit on Windows. (`-mno-sse`) > > Roman Marchenko has updated the pull request incrementally with one > additional commit since the last revision: > > Update WebKitCompilerFlags.cmake modules/javafx.web/src/main/native/Source/cmake/WebKitCompilerFlags.cmake line 154: > 152: WEBKIT_PREPEND_GLOBAL_COMPILER_FLAGS(-Wno-sign-compare > 153: > -Wno-deprecated-declarations) > 154: if (WTF_CPU_X86 AND NOT CMAKE_CROSSCOMPILING) Suggestion: # Disable SSE for 32-bit Windows on JAVA platform if (WTF_CPU_X86 AND NOT CMAKE_CROSSCOMPILING) ------------- PR Review Comment: https://git.openjdk.org/jfx/pull/1764#discussion_r2033505361