diff options
author | Carlo Kok <ck@remobjects.com> | 2013-08-13 17:45:53 +0000 |
---|---|---|
committer | Carlo Kok <ck@remobjects.com> | 2013-08-13 17:45:53 +0000 |
commit | fb849b0f211687bc685fd34a34e68b45807f6ae7 (patch) | |
tree | 1473444e5edeb408da7bab0c726c5de45a11cdf6 /llvm/lib/CodeGen/AsmPrinter/DIE.cpp | |
parent | 349e1c18eb37d67acfdac93344426c04f2b03341 (diff) | |
download | bcm5719-llvm-fb849b0f211687bc685fd34a34e68b45807f6ae7.tar.gz bcm5719-llvm-fb849b0f211687bc685fd34a34e68b45807f6ae7.zip |
For COFF only: dwarf debug info output a label reference as a section relative item only when it's one of dw_from strp, sec_offset, ref_addr or op_call_ref instead of going by size.
llvm-svn: 188296
Diffstat (limited to 'llvm/lib/CodeGen/AsmPrinter/DIE.cpp')
-rw-r--r-- | llvm/lib/CodeGen/AsmPrinter/DIE.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/DIE.cpp b/llvm/lib/CodeGen/AsmPrinter/DIE.cpp index a22fd6064df..7fb3c90dcb6 100644 --- a/llvm/lib/CodeGen/AsmPrinter/DIE.cpp +++ b/llvm/lib/CodeGen/AsmPrinter/DIE.cpp @@ -293,7 +293,9 @@ void DIEExpr::print(raw_ostream &O) const { /// EmitValue - Emit label value. /// void DIELabel::EmitValue(AsmPrinter *AP, uint16_t Form) const { - AP->EmitLabelReference(Label, SizeOf(AP, Form)); + AP->EmitLabelReference(Label, SizeOf(AP, Form), Form == dwarf::DW_FORM_strp + || Form == dwarf::DW_FORM_sec_offset || Form == dwarf::DW_OP_call_ref + || Form == dwarf::DW_FORM_ref_addr); } /// SizeOf - Determine size of label value in bytes. |