| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
These all had somewhat custom file headers with different text from the
ones I searched for previously, and so I missed them. Thanks to Hal and
Kristina and others who prompted me to fix this, and sorry it took so
long.
Reviewers: hfinkel
Subscribers: mcrosier, javed.absar, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D60406
llvm-svn: 357941
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
_Unwind_Word / _Unwind_SWord definitions
The rationale of this change is to fix _Unwind_Word / _Unwind_SWord
definitions for MIPS N32 ABI. This ABI uses 32-bit pointers,
but _Unwind_Word and _Unwind_SWord types are eight bytes long.
# The __attribute__((__mode__(__unwind_word__))) is added to the type
definitions. It makes them equal to the corresponding definitions used
by GCC and allows to override types using `getUnwindWordWidth` function.
# The `getUnwindWordWidth` virtual function override in the `MipsTargetInfo`
class and provides correct type size values.
Differential revision: https://reviews.llvm.org/D58165
llvm-svn: 353965
|
|
|
|
|
|
|
|
| |
This matches how GCC defines this struct.
Differential Revision: https://reviews.llvm.org/D50380
llvm-svn: 339170
|
|
|
|
|
|
| |
These typos appeared in SVN r309226 and r309327.
llvm-svn: 316149
|
|
|
|
|
|
|
|
| |
GCC will interpret `__attribute__((__aligned__))` as 8-byte alignment on
ARM, but clang will not. Explicitly specify the alignment. This
mirrors the declaration in libunwind.
llvm-svn: 311576
|
|
|
|
|
|
|
|
|
|
| |
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.
llvm-svn: 311563
|
|
|
|
|
|
|
|
| |
The EHABI definition was being inlined into the users even when EHABI
was not in use. Adjust the condition to ensure that the right version
is defined.
llvm-svn: 309327
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Ensure that we define the `_Unwind_Control_Block` structure used on ARM
EHABI targets. This is needed for building libc++abi with the unwind.h
from the resource dir. A minor fallout of this is that we needed to
create a typedef for _Unwind_Exception to work across ARM EHABI and
non-EHABI targets. The structure definitions here are based originally
on the documentation from ARM under the "Exception Handling ABI for the
ARM® Architecture" Section 7.2. They are then adjusted to more closely
reflect the definition in libunwind from LLVM. Those changes are
compatible in layout but permit easier use in libc++abi and help
maintain compatibility between libunwind and the compiler provided
definition.
llvm-svn: 309226
|
|
|
|
|
|
|
|
|
|
| |
Adds a number of constants, defined in the ARM EHABI spec, to the Clang
lib/Headers/unwind.h header. This is prerequisite for landing
http://reviews.llvm.org/D15781, as previously discussed there.
Patch by Timon Van Overveldt.
llvm-svn: 262178
|
|
|
|
|
|
| |
Instead of using 'unavailable', use '__unavailable__'
llvm-svn: 228087
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
libunwind in all cases when installed.
At the time, Clang's unwind.h didn't provide huge chunks of the
LSB-specified unwind interface, and was generally too aenemic to use for
real software. However, it has since then become a strict superset of
the APIs provided by libunwind on Linux. Notably, you cannot compile
llgo's libgo library against libunwind, but you can against Clang's
unwind.h. So let's just use our header. =] I've checked pretty
thoroughly for any incompatibilities, and I am not aware of any.
An open question is whether or not we should continue to munge
GNU_SOURCE here. I didn't touch that as it potentially has compatibility
implications on systems I cannot easily test -- Darwin. If a Darwin
maintainer can verify that this is in fact unnecessary and remove it,
cool. Until then, leaving it in makes this change a no-op there, and
only really relevant on Linux systems where it is pretty clearly the
right way to go.
llvm-svn: 224934
|
|
|
|
|
|
|
|
|
| |
necessary to be fully compatible with existing software that calls into
the linux unwind code. You can find documentation of this API and why it
exists in the discussion abot NPTL here:
https://gcc.gnu.org/ml/gcc-patches/2003-09/msg00154.html
llvm-svn: 224933
|
|
|
|
|
|
|
|
|
|
|
| |
These symbols were showing up as undefined when trying to link programs on
Android. We should match libgcc's behaviour and provide inline definitions
of these on ARM.
It seems unwind.h on ARM/Darwin doesn't provide inline definitions, so we
just declare them for that platform.
llvm-svn: 191406
|
|
|
|
|
|
| |
Differential Revision: http://llvm-reviews.chandlerc.com/D1542
llvm-svn: 189558
|
|
|
|
| |
llvm-svn: 189538
|
|
|
|
|
|
| |
Original patch by Charles Davis.
llvm-svn: 189535
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Several of the intrinsic headers were using plain non-reserved identifiers.
C++11 17.6.4.3.2 [global.names] p1 reservers names containing a double
begining with an underscore followed by an uppercase letter for any use.
I think I got them all, but open to being corrected. For the most part I
didn't bother updating function-like macro parameter names because I don't
believe they're subject to any such collission - though some function-like
macros already follow this convention (I didn't update them in part because
the churn was more significant as several function-like macros use the double
underscore prefixed version of the same name as a parameter in their
implementation)
llvm-svn: 172666
|
|
|
|
|
|
|
|
| |
is specified.
For GCC compatibility.
llvm-svn: 171991
|
|
|
|
| |
llvm-svn: 167915
|
|
|
|
|
|
|
|
| |
In the C programming language, we have to add the
"struct" keyword. Otherwise, the compiler will
emit error message.
llvm-svn: 164665
|
|
|
|
|
|
|
| |
with libunwind installed.
Patch by Jeffrey Yasskin!
llvm-svn: 153633
|
|
|
|
|
|
| |
that's installed.
llvm-svn: 151058
|
|
|
|
|
|
|
| |
available. Clang's <unwind.h> isn't ready for prime time. Fixes
<rdar://problem/10733587>.
llvm-svn: 148807
|
|
|
|
|
|
|
| |
These declarations come from the sample code in the
"Exception Handling ABI for the ARM Architecture" document.
llvm-svn: 148469
|
|
|
|
|
|
| |
preprocessor to warn about it.
llvm-svn: 147466
|
|
|
|
|
|
| |
the behavior of gcc's unwind.h.
llvm-svn: 146208
|
|
that have it in /usr/include (only OS X Lion so far).
llvm-svn: 146140
|