[llvm-bugs] [Bug 42680] New: WebAssembly: libc++abi and clang disagree and width of guard variables in __cxa_guard_acquire/release
via llvm-bugs
llvm-bugs at lists.llvm.org
Thu Jul 18 15:56:50 PDT 2019
https://bugs.llvm.org/show_bug.cgi?id=42680
Bug ID: 42680
Summary: WebAssembly: libc++abi and clang disagree and width of
guard variables in __cxa_guard_acquire/release
Product: libc++abi
Version: unspecified
Hardware: PC
OS: Linux
Status: NEW
Severity: enhancement
Priority: P
Component: All Bugs
Assignee: unassignedbugs at nondot.org
Reporter: sbc at chromium.org
CC: llvm-bugs at lists.llvm.org, mclow.lists at gmail.com
In ItaniumCXXABI.cpp we set UseARMGuardVarABI=true for WebAssembly, but in
cxxabi.h we only set the guard type to 32-bit on arm.
This means that clang allocates 4 butes for the guard but libc++abi will assume
it 8 bytes and clobber memory on __cxa_guard_acquire/__cxa_guard_release.
I suggest we simply stop setting UseARMGuardVarABI unless there was a good
reason for doing this?
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20190718/7dacccff/attachment.html>
More information about the llvm-bugs
mailing list