OSDN Git Service

DebugInfo: preparation to implement DW_AT_alignment
authorVictor Leschuk <vleschuk@accesssoftek.com>
Thu, 20 Oct 2016 00:13:12 +0000 (00:13 +0000)
committerVictor Leschuk <vleschuk@accesssoftek.com>
Thu, 20 Oct 2016 00:13:12 +0000 (00:13 +0000)
commite69c459a6e9756ca1ff3acb1dcfc434843aee80f
tree27f144cf0e94b59ce10d6554ff4d15a6f87ff674
parent1c2f240908d2fc0d2707dd8eb2f5bc9f5ff798e3
DebugInfo: preparation to implement DW_AT_alignment

 - Add alignment attribute to DIVariable family
 - Modify bitcode format to match new DIVariable representation
 - Update tests to match these changes (also add bitcode upgrade test)
 - Expect that frontend passes non-zero align value only when it is not default
   (was forcibly aligned by alignas()/_Alignas()/__atribute__(aligned())

Differential Revision: https://reviews.llvm.org/D25073

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@284678 91177308-0d34-0410-b5e6-96231b3b80d8
22 files changed:
include/llvm/IR/DIBuilder.h
include/llvm/IR/DebugInfoMetadata.h
lib/AsmParser/LLParser.cpp
lib/Bitcode/Reader/BitcodeReader.cpp
lib/Bitcode/Writer/BitcodeWriter.cpp
lib/CodeGen/AsmPrinter/DwarfUnit.cpp
lib/IR/AsmWriter.cpp
lib/IR/DIBuilder.cpp
lib/IR/DebugInfoMetadata.cpp
lib/IR/LLVMContextImpl.h
test/Assembler/diglobalvariable.ll
test/Assembler/dilocalvariable.ll
test/Bitcode/dilocalvariable-3.9.ll [new file with mode: 0644]
test/Bitcode/dilocalvariable-3.9.ll.bc [new file with mode: 0644]
test/DebugInfo/AArch64/bitfields.ll
test/DebugInfo/ARM/big-endian-bitfield.ll
test/DebugInfo/COFF/bitfields.ll
test/DebugInfo/X86/bitfields-dwarf4.ll
test/DebugInfo/X86/bitfields.ll
test/DebugInfo/X86/debug-info-packed-struct.ll
unittests/IR/MetadataTest.cpp
unittests/Transforms/Utils/Cloning.cpp