llvm/lib/IR
Manman Ren c664d76716 Debug Info: In DIBuilder, the derived-from field of a DW_TAG_pointer_type
is updated to use DITypeRef.

Move isUnsignedDIType and getOriginalTypeSize from DebugInfo.h to be static
helper functions in DwarfCompileUnit. We already have a static helper function
"isTypeSigned" in DwarfCompileUnit, and a pointer to DwarfDebug is added to
resolve the derived-from field. All three functions need to go across link
for derived-from fields, so we need to get hold of a type identifier map.

A pointer to DwarfDebug is also added to DbgVariable in order to resolve the
derived-from field.

Debug info verifier is updated to check a derived-from field is a TypeRef.
Verifier will not go across link for derived-from fields, in debug info finder,
we go across the link to add derived-from fields to types.

Function getDICompositeType is only used by dragonegg and since dragonegg does
not generate identifier for types, we use an empty map to resolve the
derived-from field.

When printing a derived-from field, we use DITypeRef::getName to either return
the type identifier or getName of the DIType.

A paired commit at clang is required due to changes to DIBuilder.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192018 91177308-0d34-0410-b5e6-96231b3b80d8
2013-10-05 01:43:03 +00:00
..
AsmWriter.cpp Implement function prefix data as an IR feature. 2013-09-16 01:08:15 +00:00
AsmWriter.h Revert "Give internal classes hidden visibility." 2013-09-11 18:05:11 +00:00
AttributeImpl.h Revert "Give internal classes hidden visibility." 2013-09-11 18:05:11 +00:00
Attributes.cpp Add function attribute 'optnone'. 2013-08-23 11:53:55 +00:00
AutoUpgrade.cpp AutoUpgrade: upgrade from scalar TBAA format to struct-path aware TBAA format. 2013-09-28 00:22:27 +00:00
BasicBlock.cpp
CMakeLists.txt
ConstantFold.cpp Respect address space sizes in isEliminableCastPair. 2013-07-30 22:27:10 +00:00
ConstantFold.h
Constants.cpp
ConstantsContext.h Revert "Give internal classes hidden visibility." 2013-09-11 18:05:11 +00:00
Core.cpp Revert "Encapsulate PassManager debug flags to avoid static init and cxa_exit." 2013-09-19 06:02:43 +00:00
DataLayout.cpp MemCpyOptimizer: Use max legal int size instead of pointer size 2013-09-16 22:43:16 +00:00
DebugInfo.cpp Debug Info: In DIBuilder, the derived-from field of a DW_TAG_pointer_type 2013-10-05 01:43:03 +00:00
DebugLoc.cpp
DIBuilder.cpp Debug Info: In DIBuilder, the derived-from field of a DW_TAG_pointer_type 2013-10-05 01:43:03 +00:00
Dominators.cpp
Function.cpp Initial support for Neon scalar instructions. 2013-09-24 02:47:27 +00:00
GCOV.cpp
Globals.cpp Introduce non-const overloads for GlobalAlias::{get,resolve}AliasedGlobal. 2013-08-19 23:13:33 +00:00
GVMaterializer.cpp
InlineAsm.cpp
Instruction.cpp
Instructions.cpp Revert patches to add case-range support for PR1255. 2013-09-09 19:14:35 +00:00
IntrinsicInst.cpp
IRBuilder.cpp
LeakDetector.cpp
LeaksContext.h Revert "Give internal classes hidden visibility." 2013-09-11 18:05:11 +00:00
LLVMBuild.txt
LLVMContext.cpp
LLVMContextImpl.cpp
LLVMContextImpl.h Implement function prefix data as an IR feature. 2013-09-16 01:08:15 +00:00
Makefile
Metadata.cpp
Module.cpp Reuse variable 2013-09-30 23:31:50 +00:00
Pass.cpp
PassManager.cpp Revert "Encapsulate PassManager debug flags to avoid static init and cxa_exit." 2013-09-19 06:02:43 +00:00
PassRegistry.cpp
PrintModulePass.cpp
SymbolTableListTraitsImpl.h
Type.cpp
TypeFinder.cpp Implement function prefix data as an IR feature. 2013-09-16 01:08:15 +00:00
Use.cpp
User.cpp
Value.cpp Fix a bug where we would corrupt the offset when evaluating 2013-08-25 10:46:39 +00:00
ValueSymbolTable.cpp
ValueTypes.cpp Add v4f16 to supported value types. 2013-10-03 03:29:21 +00:00
Verifier.cpp Debug Info: Use DIScopeRef for DIType::getContext. 2013-09-09 19:47:11 +00:00