Author: compnerd Date: Wed Aug 23 08:35:33 2017 New Revision: 311563 URL: http://llvm.org/viewvc/llvm-project?rev=311563&view=rev Log: Headers: give _Unwind_Control_Block double-word alignment
The C++ ABI requires that the exception object (which under AEABI is the `_Unwind_Control_Block`) is double-word aligned. The attribute was applied to the `_Unwind_Exception` type, but not the `_Unwind_Control_Block`. This should fix the libunwind test for the alignment of the exception type. Modified: cfe/trunk/lib/Headers/unwind.h Modified: cfe/trunk/lib/Headers/unwind.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Headers/unwind.h?rev=311563&r1=311562&r2=311563&view=diff ============================================================================== --- cfe/trunk/lib/Headers/unwind.h (original) +++ cfe/trunk/lib/Headers/unwind.h Wed Aug 23 08:35:33 2017 @@ -149,7 +149,7 @@ struct _Unwind_Control_Block { uint32_t reserved1; } pr_cache; long long int : 0; /* force alignment of next item to 8-byte boundary */ -}; +} __attribute__((__aligned__)); #else struct _Unwind_Exception { _Unwind_Exception_Class exception_class; _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits