Mangle __unaligned in Itanium ABI
__unaligned is not currently mangled in any way in the Itanium ABI. This causes failures when using -fms-extensions and C++ in targets using Itanium ABI. As suggested by @rsmith the simplest thing to do here is actually mangle the qualifier as a vendor extension. This patch also removes the change done in D31976 and updates its test to the new reality. This fixes https://bugs.llvm.org/show_bug.cgi?id=33080 https://bugs.llvm.org/show_bug.cgi?id=33178 Differential Revision: https://reviews.llvm.org/D33398 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@304523 91177308-0d34-0410-b5e6-96231b3b80d8
Showing
- lib/AST/ItaniumMangle.cpp 16 additions, 6 deletionslib/AST/ItaniumMangle.cpp
- test/CodeGenCXX/pr33080.cpp 33 additions, 0 deletionstest/CodeGenCXX/pr33080.cpp
- test/CodeGenCXX/unaligned-member-qualifier.cpp 20 additions, 0 deletionstest/CodeGenCXX/unaligned-member-qualifier.cpp
- test/CodeGenObjCXX/arc-mangle.mm 10 additions, 0 deletionstest/CodeGenObjCXX/arc-mangle.mm
Loading
Please register or sign in to comment