1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00
llvm-mirror/lib/CodeGen/AsmPrinter
Simon Tatham bc23ee33a0 [clang] Use i64 for the !srcloc metadata on asm IR nodes.
This is part of a patch series working towards the ability to make
SourceLocation into a 64-bit type to handle larger translation units.

!srcloc is generated in clang codegen, and pulled back out by llvm
functions like AsmPrinter::emitInlineAsm that need to report errors in
the inline asm. From there it goes to LLVMContext::emitError, is
stored in DiagnosticInfoInlineAsm, and ends up back in clang, at
BackendConsumer::InlineAsmDiagHandler(), which reconstitutes a true
clang::SourceLocation from the integer cookie.

Throughout this code path, it's now 64-bit rather than 32, which means
that if SourceLocation is expanded to a 64-bit type, this error report
won't lose half of the data.

The compiler will tolerate both of i32 and i64 !srcloc metadata in
input IR without faulting. Test added in llvm/MC. (The semantic
accuracy of the metadata is another matter, but I don't know of any
situation where that matters: if you're reading an IR file written by
a previous run of clang, you don't have the SourceManager that can
relate those source locations back to the original source files.)

Original version of the patch by Mikhail Maltsev.

Reviewed By: dexonsmith

Differential Revision: https://reviews.llvm.org/D105491
2021-07-22 10:24:52 +01:00
..
AccelTable.cpp
AddressPool.cpp
AddressPool.h
AIXException.cpp [AIX][XCOFF] generate eh_info when vector registers are saved according to the traceback table. 2021-06-22 13:01:31 -04:00
ARMException.cpp [NFC] Refactor how CFI section types are represented in AsmPrinter 2021-04-28 09:04:04 +05:30
AsmPrinter.cpp [CSSPGO] Do not import pseudo probe desc in thinLTO 2021-07-13 18:26:36 -07:00
AsmPrinterDwarf.cpp Implement DW_CFA_LLVM_* for Heterogeneous Debugging 2021-06-14 08:51:50 +05:30
AsmPrinterInlineAsm.cpp [clang] Use i64 for the !srcloc metadata on asm IR nodes. 2021-07-22 10:24:52 +01:00
ByteStreamer.h
CMakeLists.txt
CodeViewDebug.cpp [Debug-Info] change Tag type to dwarf::Tag for createAndAddDIE; NFC 2021-05-13 21:15:06 -04:00
CodeViewDebug.h
DbgEntityHistoryCalculator.cpp
DebugHandlerBase.cpp Resubmit D85085 after fixing the tests that were failing. 2021-06-01 21:59:47 -07:00
DebugLocEntry.h Partial Reapply "[DebugInfo] Use variadic debug values to salvage BinOps and GEP instrs with non-const operands" 2021-06-24 09:46:38 +01:00
DebugLocStream.cpp
DebugLocStream.h
DIE.cpp
DIEHash.cpp
DIEHash.h
DIEHashAttributes.def
DwarfCFIException.cpp [MCAsmInfo] Support UsesCFIForDebug for targets with no exception handling 2021-05-06 04:53:45 +05:30
DwarfCompileUnit.cpp [Debug-Info][NFC] add a wrapper for Die.addValue 2021-05-07 07:24:09 +00:00
DwarfCompileUnit.h
DwarfDebug.cpp [NFC] Fix a few whitespace issues and typos. 2021-07-04 11:49:58 +01:00
DwarfDebug.h [DebuggerTuning] Move a comment to a more useful place. 2021-05-03 11:08:04 -07:00
DwarfException.h [NFC] Delete the redundant member 'shouldEmitMoves' from DwarfCFIException class 2021-04-24 06:35:39 +05:30
DwarfExpression.cpp
DwarfExpression.h
DwarfFile.cpp
DwarfFile.h
DwarfStringPool.cpp
DwarfStringPool.h
DwarfUnit.cpp PR37255: DebugInfo: LTO with -g inlined into -gmlt combined with Split DWARF without CU cross-references 2021-06-27 14:40:38 -07:00
DwarfUnit.h PR37255: DebugInfo: LTO with -g inlined into -gmlt combined with Split DWARF without CU cross-references 2021-06-27 14:40:38 -07:00
EHStreamer.cpp
EHStreamer.h
ErlangGCPrinter.cpp [GC][NFC] Move GCStrategy from CodeGen to IR 2021-05-13 12:31:59 +07:00
OcamlGCPrinter.cpp [GC][NFC] Move GCStrategy from CodeGen to IR 2021-05-13 12:31:59 +07:00
PseudoProbePrinter.cpp [CSSPGO] Do not import pseudo probe desc in thinLTO 2021-07-13 18:26:36 -07:00
PseudoProbePrinter.h [CSSPGO] Do not import pseudo probe desc in thinLTO 2021-07-13 18:26:36 -07:00
WasmException.cpp
WasmException.h
WinCFGuard.cpp
WinCFGuard.h
WinException.cpp
WinException.h [ADT] Move DenseMapInfo for ArrayRef/StringRef into respective headers (NFC) 2021-06-03 18:34:36 +02:00