llvm-6502/lib/IR
Duncan P. N. Exon Smith 99f12691dd IR: Change MDFile to directly store the filename/directory
In the old (well, current) schema, there are two types of file
references: untagged and tagged (the latter references the former).

    !0 = !{!"filename", !"/directory"}
    !1 = !{!"0x29", !1} ; DW_TAG_file_type [filename] [/directory]

The interface to `DIBuilder` universally takes the tagged version,
described by `DIFile`.  However, most `file:` references actually use
the untagged version directly.

In the new hierarchy, I'm merging this into a single node: `MDFile`.

Originally I'd planned to keep the old schema unchanged until after I
moved the new hierarchy into place.

However, it turns out to be trivial to make `MDFile` match both nodes at
the same time.

  - Anyone referencing !1 does so through `DIFile`, whose implementation
    I need to gut anyway (as I do the rest of the `DIDescriptor`s).
  - Anyone referencing !0 just references an `MDNode`, and expects a
    node with two `MDString` operands.

This commit achieves that, and updates all the testcases for the parts
of the new hierarchy that used the two-node schema (I've replaced the
untagged nodes with `distinct !{}` to make the diff clear (otherwise the
metadata all gets renumbered); it might be worthwhile to come back and
delete those nodes and renumber the world, not sure).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@230057 91177308-0d34-0410-b5e6-96231b3b80d8
2015-02-20 20:35:17 +00:00
..
AsmWriter.cpp Bitcode: Stop assuming non-null fields 2015-02-20 03:17:58 +00:00
AsmWriter.h Removing LLVM_DELETED_FUNCTION, as MSVC 2012 was the last reason for requiring the macro. NFC; LLVM edition. 2015-02-15 22:54:22 +00:00
AttributeImpl.h Removing LLVM_DELETED_FUNCTION, as MSVC 2012 was the last reason for requiring the macro. NFC; LLVM edition. 2015-02-15 22:54:22 +00:00
Attributes.cpp InstCombine: propagate deref via new addDereferenceableAttr 2015-02-14 19:37:54 +00:00
AutoUpgrade.cpp [X86] Remove AVX2 and SSE2 pslldq and psrldq intrinsics. We can represent them in IR with vector shuffles now. All their uses have been removed from clang in favor of shuffles. 2015-02-18 06:24:44 +00:00
BasicBlock.cpp Add a pass for inserting safepoints into (nearly) arbitrary IR 2015-02-04 00:37:33 +00:00
CMakeLists.txt Use ADDITIONAL_HEADER_DIRS in all LLVM CMake projects. 2015-02-11 03:28:02 +00:00
Comdat.cpp
ConstantFold.cpp Prefer SmallVector::append/insert over push_back loops. 2015-02-17 15:29:18 +00:00
ConstantFold.h
ConstantRange.cpp
Constants.cpp Constants.cpp: Only read 32 bits for float. 2015-02-20 15:11:55 +00:00
ConstantsContext.h Removing LLVM_DELETED_FUNCTION, as MSVC 2012 was the last reason for requiring the macro. NFC; LLVM edition. 2015-02-15 22:54:22 +00:00
Core.cpp [PM] Remove the old 'PassManager.h' header file at the top level of 2015-02-13 10:01:29 +00:00
DataLayout.cpp DataLayout: Validate that the pref alignment is at least the ABI align 2015-02-16 05:41:55 +00:00
DebugInfo.cpp IR: Drop the scope in DI template parameters 2015-02-18 20:30:45 +00:00
DebugInfoMetadata.cpp IR: Change MDFile to directly store the filename/directory 2015-02-20 20:35:17 +00:00
DebugLoc.cpp
DiagnosticInfo.cpp
DiagnosticPrinter.cpp
DIBuilder.cpp IR: Drop the scope in DI template parameters 2015-02-18 20:30:45 +00:00
Dominators.cpp
Function.cpp InstCombine: propagate deref via new addDereferenceableAttr 2015-02-14 19:37:54 +00:00
GCOV.cpp
Globals.cpp
GVMaterializer.cpp
InlineAsm.cpp Reformat (and remove some tabs) to make debugging this code a 2015-02-10 21:15:06 +00:00
Instruction.cpp
Instructions.cpp IR: SrcTy == DstTy doesn't imply that a cast is valid 2015-02-16 09:37:35 +00:00
IntrinsicInst.cpp
IRBuilder.cpp [Statepoint] Improve two asserts, fix some style (NFC) 2015-02-09 23:02:10 +00:00
IRPrintingPasses.cpp
LegacyPassManager.cpp
LLVMBuild.txt
LLVMContext.cpp
LLVMContextImpl.cpp
LLVMContextImpl.h IR: Fix MDType fields from unsigned to uint64_t 2015-02-19 23:56:07 +00:00
Makefile
Mangler.cpp
MDBuilder.cpp
Metadata.cpp IR: Add MDNode::replaceWithPermanent() 2015-02-10 19:13:46 +00:00
MetadataImpl.h
MetadataTracking.cpp
Module.cpp Verifier: Check for null operands in !llvm.module.flags 2015-02-11 09:13:06 +00:00
module.modulemap
Pass.cpp
PassManager.cpp
PassRegistry.cpp
Statepoint.cpp Add invoke related functionality into StatepointSite classes. 2015-02-19 11:02:11 +00:00
SymbolTableListTraitsImpl.h
Type.cpp [slp] Fix a nasty bug in the SLP vectorizer that Joerg pointed out. 2015-02-12 02:30:56 +00:00
TypeFinder.cpp
Use.cpp
UseListOrder.cpp
User.cpp
Value.cpp isDereferenceablePointer: look through gc.relocate calls 2015-02-09 21:08:03 +00:00
ValueSymbolTable.cpp
ValueTypes.cpp
Verifier.cpp Verifier: Unused comdats might not have a corresponding GV 2015-02-20 19:58:48 +00:00