[PATCH] D64957: [WebAssembly] Don't set UseARMGuardVarABI, just use the default (64-bit)

Sam Clegg via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Jul 18 16:03:59 PDT 2019


sbc100 created this revision.
Herald added subscribers: cfe-commits, sunfish, aheejin, kristof.beyls, jgravelle-google, javed.absar, dschuff.
Herald added a project: clang.
sbc100 added a reviewer: sunfish.

This fixes a disagreement between libc++abi and clang about the width
of the guard variable to use.  Currnently libc++abi clobbers memory
because it thinks the region is 64-bit on all non-arm platforms.

If there is some reason to prefer 32-bit we can instead update
libc++abi.

Fixes PR42680


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D64957

Files:
  clang/lib/CodeGen/ItaniumCXXABI.cpp


Index: clang/lib/CodeGen/ItaniumCXXABI.cpp
===================================================================
--- clang/lib/CodeGen/ItaniumCXXABI.cpp
+++ clang/lib/CodeGen/ItaniumCXXABI.cpp
@@ -450,8 +450,7 @@
 class WebAssemblyCXXABI final : public ItaniumCXXABI {
 public:
   explicit WebAssemblyCXXABI(CodeGen::CodeGenModule &CGM)
-      : ItaniumCXXABI(CGM, /*UseARMMethodPtrABI=*/true,
-                      /*UseARMGuardVarABI=*/true) {}
+      : ItaniumCXXABI(CGM, /*UseARMMethodPtrABI=*/true {}
   void emitBeginCatch(CodeGenFunction &CGF, const CXXCatchStmt *C) override;
 
 private:


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D64957.210699.patch
Type: text/x-patch
Size: 595 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20190718/897cc77c/attachment.bin>


More information about the cfe-commits mailing list