| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
Move the Windows unwind information emitter into a separate header. This is not
related to DWARF based emission. NFC.
llvm-svn: 216894
|
| |
|
|
|
|
|
|
|
|
| |
Add header guards to files that were missing guards. Remove #endif comments
as they don't seem common in LLVM (we can easily add them back if we decide
they're useful)
Changes made by clang-tidy with minor tweaks.
llvm-svn: 215558
|
| |
|
|
|
|
|
|
|
|
|
|
| |
DwarfException served as a base class for exception handling directive emission.
However, this is also used by other exception models (e.g. Win64EH). Rename
this class to EHStreamer and split it out of DwarfException.h. NFC.
Use the opportunity to fix up some of the documentation comments to match
current LLVM style. Also rename some functions to conform better with current
LLVM coding style.
llvm-svn: 210622
|
| |
|
|
|
|
| |
class.
llvm-svn: 203339
|
| |
|
|
|
|
| |
No functionality change.
llvm-svn: 203288
|
| |
|
|
|
|
|
|
| |
for ARM/Thumb functions.
Patch by Keith Walker!
llvm-svn: 201423
|
| |
|
|
|
|
| |
Addressing the existense AMDGPUAsmPrinter and other subclasses of AsmPrinter
llvm-svn: 196288
|
| |
|
|
|
|
| |
It broke CodeGen/R600 tests with +Asserts.
llvm-svn: 196272
|
| |
|
|
| |
llvm-svn: 196270
|
| |
|
|
|
|
| |
DwarfDebug and the style guide
llvm-svn: 195763
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This patch fixes an old FIXME by creating a MCTargetStreamer interface
and moving the target specific functions for ARM, Mips and PPC to it.
The ARM streamer is still declared in a common place because it is
used from lib/CodeGen/ARMException.cpp, but the Mips and PPC are
completely hidden in the corresponding Target directories.
I will send an email to llvmdev with instructions on how to use this.
llvm-svn: 192181
|
| |
|
|
|
|
|
| |
It works with clang, but GCC has different rules so we can't make all of those
hidden. This reverts commit r190534.
llvm-svn: 190536
|
| |
|
|
|
|
| |
Worth 100k on a linux/x86_64 Release+Asserts clang.
llvm-svn: 190534
|
| |
|
|
|
|
|
|
|
|
|
|
| |
It was just a less powerful and more confusing version of
MCCFIInstruction. A side effect is that, since MCCFIInstruction uses
dwarf register numbers, calls to getDwarfRegNum are pushed out, which
should allow further simplifications.
I left the MachineModuleInfo::addFrameMove interface unchanged since
this patch was already fairly big.
llvm-svn: 181680
|
| |
|
|
|
|
|
| |
It turned out that ARM wants different layout of type infos.
This is yet another patch in attempt to fix PR7187
llvm-svn: 168325
|
| |
|
|
| |
llvm-svn: 163194
|
| |
|
|
|
|
| |
clang's -Wunused-private-field.
llvm-svn: 160583
|
| |
|
|
|
|
|
| |
the Win64 EH mechanism to implement GCC-style exceptions. LLVM supports
hardly anything else at this point!
llvm-svn: 132234
|
| |
|
|
| |
llvm-svn: 131151
|
| |
|
|
|
|
|
|
|
| |
this clang will use .debug_frame in, for example,
clang -g -c -m32 test.c
This matches gcc's behaviour. It looks like .debug_frame is a bit bigger
than .eh_frame, but has the big advantage of not being allocated.
llvm-svn: 131140
|
| |
|
|
| |
llvm-svn: 130964
|
| |
|
|
| |
llvm-svn: 130947
|
| |
|
|
|
|
| |
emmits: .cfi_personality, .cfi_lsda and the moves.
llvm-svn: 130503
|
| |
|
|
|
|
| |
mode".
llvm-svn: 127099
|
| |
|
|
| |
llvm-svn: 123474
|
| |
|
|
| |
llvm-svn: 123473
|
| |
|
|
|
|
|
|
|
| |
the variable actually tracks.
N.B., several back-ends are using "HasCalls" as being synonymous for something
that adjusts the stack. This isn't 100% correct and should be looked into.
llvm-svn: 103802
|
| |
|
|
| |
llvm-svn: 100616
|
| |
|
|
| |
llvm-svn: 100410
|
| |
|
|
| |
llvm-svn: 100409
|
| |
|
|
| |
llvm-svn: 100408
|
| |
|
|
| |
llvm-svn: 100374
|
| |
|
|
|
|
|
| |
The only thing left is LEB printing, which uses EmitRawText
for now.
llvm-svn: 100325
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
instead of label ID's. This cleans up and regularizes a bunch
of code and makes way for future progress.
Unfortunately, this pointed out to me that JITDwarfEmitter.cpp
is largely copy and paste from DwarfException/MachineModuleInfo
and other places. This is very sad and disturbing. :(
One major change here is that TidyLandingPads moved from being
called in DwarfException::BeginFunction to being called in
DwarfException::EndFunction. There should not be any
functionality change from doing this, but I'm not an EH expert.
llvm-svn: 98459
|
| |
|
|
| |
llvm-svn: 98365
|
| |
|
|
|
|
| |
Personality / FDE / LSDA / TType encoding depending on target / options (e.g. code model / relocation model) - MCIzation of Dwarf EH printer to use encoding information - Stub generation for ELF target (needed for indirect references) - Some other small changes here and there
llvm-svn: 96285
|
| |
|
|
|
|
| |
the pointer values could be invalid.
llvm-svn: 95813
|
| |
|
|
| |
llvm-svn: 95781
|
| |
|
|
|
|
| |
is constified.
llvm-svn: 94613
|
| |
|
|
| |
llvm-svn: 94290
|
| |
|
|
|
|
| |
and much more accurately describes what it is all about.
llvm-svn: 94233
|
| |
|
|
|
|
|
|
| |
and add an explicit ForcePrivate argument.
Switch FunctionEHFrameInfo to be MCSymbol based instead of string based.
llvm-svn: 93646
|
| |
|
|
|
|
|
|
| |
isPodLike type trait. This is a generally useful type trait for
more than just DenseMap, and we really care about whether something
acts like a pod, not whether it really is a pod.
llvm-svn: 91421
|
| |
|
|
| |
llvm-svn: 89075
|
| |
|
|
|
|
| |
more than one place. No intended functionality change.
llvm-svn: 89024
|
| |
|
|
| |
llvm-svn: 87036
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
U lib/CodeGen/AsmPrinter/DwarfException.cpp
U lib/CodeGen/AsmPrinter/DwarfException.h
--- Reverse-merging r82274 into '.':
U lib/Target/TargetLoweringObjectFile.cpp
G lib/CodeGen/AsmPrinter/DwarfException.cpp
These revisions were breaking everything.
llvm-svn: 82396
|
| |
|
|
| |
llvm-svn: 82282
|
| |
|
|
| |
llvm-svn: 81406
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Basically, this patch is working towards removing the hard-coded values that are
output for the CIE. In particular, the CIE augmentation and the CIE augmentation
size. Both of these should be calculated. In the process, I was able to make a
bunch of code simpler.
The encodings for the personality, LSDA, and FDE in the CIE are still not
correct. They should be generated either from target-specific callbacks (blech!)
or grokked from first-principles.
llvm-svn: 81404
|