1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 11:13:28 +01:00
llvm-mirror/lib/IR
Scott Linder 538dfe3e23 Implement -frecord-command-line (-frecord-gcc-switches)
Implement options in clang to enable recording the driver command-line
in an ELF section.

Implement a new special named metadata, llvm.commandline, to support
frontends embedding their command-line options in IR/ASM/ELF.

This differs from the GCC implementation in some key ways:

* In GCC there is only one command-line possible per compilation-unit,
  in LLVM it mirrors llvm.ident and multiple are allowed.
* In GCC individual options are separated by NULL bytes, in LLVM entire
  command-lines are separated by NULL bytes. The advantage of the GCC
  approach is to clearly delineate options in the face of embedded
  spaces. The advantage of the LLVM approach is to support merging
  multiple command-lines unambiguously, while handling embedded spaces
  with escaping.

Differential Revision: https://reviews.llvm.org/D54487
Clang Differential Revision: https://reviews.llvm.org/D54489

llvm-svn: 349155
2018-12-14 15:38:15 +00:00
..
AsmWriter.cpp [mir] Serialize DILocation inline when not possible to use a metadata reference 2018-12-13 14:25:27 +00:00
AttributeImpl.h
Attributes.cpp [Inliner] Modify the merging of min-legal-vector-width attribute to better handle when the caller or callee don't have the attribute. 2018-11-29 07:27:38 +00:00
AttributesCompatFunc.td
AutoUpgrade.cpp [X86] Merge addcarryx/addcarry intrinsic into a single addcarry intrinsic. 2018-12-10 06:07:50 +00:00
BasicBlock.cpp [IR] Add hasNPredecessors, hasNPredecessorsOrMore to BasicBlock 2018-11-19 19:54:27 +00:00
CMakeLists.txt
Comdat.cpp
ConstantFold.cpp [ConstantFold] Use getMinSignedBits for APInt in isIndexInRangeOfArrayType. 2018-12-12 18:55:14 +00:00
ConstantFold.h
ConstantRange.cpp
Constants.cpp [ConstantInt] Check active bits before calling getZExtValue. 2018-12-12 02:22:12 +00:00
ConstantsContext.h [IR] Add a dedicated FNeg IR Instruction 2018-11-13 18:15:47 +00:00
Core.cpp [LLVM-C] Fix Windows Build of Core 2018-11-06 01:54:12 +00:00
DataLayout.cpp
DebugInfo.cpp [DebugInfo] DISubprogram flags get their own flags word. NFC. 2018-11-19 18:29:28 +00:00
DebugInfoMetadata.cpp Comment tweak requested in code review. NFC 2018-11-29 21:13:51 +00:00
DebugLoc.cpp
DiagnosticHandler.cpp
DiagnosticInfo.cpp Reapply "Adapt gcov to changes in CFE." 2018-12-06 18:44:48 +00:00
DiagnosticPrinter.cpp
DIBuilder.cpp [DebugInfo] DISubprogram flags get their own flags word. NFC. 2018-11-19 18:29:28 +00:00
Dominators.cpp
DomTreeUpdater.cpp
Function.cpp Make Function::getInstructionCount const 2018-10-18 19:49:44 +00:00
Globals.cpp [IR] Allow increasing the alignment of dso-local globals. 2018-10-31 23:03:58 +00:00
GVMaterializer.cpp
InlineAsm.cpp
Instruction.cpp [IR] Add a dedicated FNeg IR Instruction 2018-11-13 18:15:47 +00:00
Instructions.cpp [TI removal] Leverage the fact that TerminatorInst is gone to create 2018-11-22 10:31:35 +00:00
IntrinsicInst.cpp [FPEnv] Add constrained CEIL/FLOOR/ROUND/TRUNC intrinsics 2018-11-05 15:59:49 +00:00
IRBuilder.cpp
IRPrintingPasses.cpp Print newline after banner for ModulePass 2018-11-14 10:05:28 +00:00
LegacyPassManager.cpp
LLVMBuild.txt
LLVMContext.cpp
LLVMContextImpl.cpp
LLVMContextImpl.h [DebugInfo] DISubprogram flags get their own flags word. NFC. 2018-11-19 18:29:28 +00:00
Mangler.cpp
MDBuilder.cpp
Metadata.cpp Use llvm::copy. NFC 2018-11-17 01:44:25 +00:00
MetadataImpl.h
Module.cpp [macho] save the SDK version stored in module metadata into the version min and 2018-12-14 01:14:10 +00:00
ModuleSummaryIndex.cpp [ThinLTO] Fix comment. NFC 2018-11-19 14:19:37 +00:00
Operator.cpp
OptBisect.cpp
Pass.cpp
PassInstrumentation.cpp
PassManager.cpp
PassRegistry.cpp
PassTimingInfo.cpp [NewPM] fixing asserts on deleted loop in -print-after-all 2018-12-11 19:05:35 +00:00
ProfileSummary.cpp
SafepointIRVerifier.cpp Use llvm::any_of instead std::any_of. NFC 2018-10-31 00:31:06 +00:00
Statepoint.cpp
SymbolTableListTraitsImpl.h
Type.cpp IR: Optimize StructType::get to perform one hash lookup instead of two, NFCI 2018-10-25 13:38:07 +00:00
TypeFinder.cpp
Use.cpp
User.cpp
Value.cpp [IR] Add hasNPredecessors, hasNPredecessorsOrMore to BasicBlock 2018-11-19 19:54:27 +00:00
ValueSymbolTable.cpp
Verifier.cpp Implement -frecord-command-line (-frecord-gcc-switches) 2018-12-14 15:38:15 +00:00