llvm-6502/lib/CodeGen/AsmPrinter
Chris Lattner 8c6ed05157 Big change #1 for personality function references:
Eliminate the PersonalityPrefix/Suffix & NeedsIndirectEncoding
fields from MAI: they aren't part of the asm syntax, they are
related to the structure of the object file.

To replace their functionality, add a new 
TLOF::getSymbolForDwarfGlobalReference method which asks targets
to decide how to reference a global from EH in a pc-relative way.

The default implementation just returns the symbol.  The default
darwin implementation references the symbol through an indirect
$non_lazy_ptr stub.  The bizarro x86-64 darwin specialization
handles the weird "foo@GOTPCREL+4" hack.

DwarfException.cpp now uses this to emit the reference to the
symbol in the right way, and this also eliminates another 
horrible hack from DwarfException.cpp:

-    if (strcmp(MAI->getPersonalitySuffix(), "+4@GOTPCREL"))
-      O << "-" << MAI->getPCSymbol();



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81991 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-16 01:46:41 +00:00
..
AsmPrinter.cpp inline AsmPrinter::getCurrentFunctionEHName into its only caller. 2009-09-16 00:35:39 +00:00
CMakeLists.txt Fix cmake builds. 2009-05-19 00:18:14 +00:00
DIE.cpp convert the DIE printing stuff to use raw_ostream instead of std::ostream. 2009-08-23 01:01:17 +00:00
DIE.h convert the DIE printing stuff to use raw_ostream instead of std::ostream. 2009-08-23 01:01:17 +00:00
DwarfDebug.cpp eliminate the horrid AsmPrinter::getGlobalLinkName method, inlining 2009-09-16 00:08:41 +00:00
DwarfDebug.h Subprogram is a scope. Derive DISubprogram from DIScope. 2009-08-31 22:47:13 +00:00
DwarfException.cpp Big change #1 for personality function references: 2009-09-16 01:46:41 +00:00
DwarfException.h Add helpful comment. 2009-09-10 00:04:48 +00:00
DwarfLabel.cpp convert the DIE printing stuff to use raw_ostream instead of std::ostream. 2009-08-23 01:01:17 +00:00
DwarfLabel.h convert the DIE printing stuff to use raw_ostream instead of std::ostream. 2009-08-23 01:01:17 +00:00
DwarfPrinter.cpp Simply LSDA lable emission to use a direct special-case output instead of 2009-09-01 16:43:35 +00:00
DwarfPrinter.h Simply LSDA lable emission to use a direct special-case output instead of 2009-09-01 16:43:35 +00:00
DwarfWriter.cpp Fix PR4948 (and a leak): by not destroying the DwarfException 2009-09-11 17:24:29 +00:00
Makefile remove dead makefile flags. 2009-06-24 05:29:56 +00:00
OcamlGCPrinter.cpp rename TAI -> MAI, being careful not to make MAILJMP instructions :) 2009-08-22 21:43:10 +00:00