Correctly encode pcrel|indirect.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122624 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/MC/MCDwarf.cpp b/lib/MC/MCDwarf.cpp
index eff9dd6..0b8b06c 100644
--- a/lib/MC/MCDwarf.cpp
+++ b/lib/MC/MCDwarf.cpp
@@ -526,7 +526,7 @@
MCContext &context = streamer.getContext();
const TargetAsmInfo &asmInfo = context.getTargetAsmInfo();
unsigned format = symbolEncoding & 0x0f;
- unsigned application = symbolEncoding & 0xf0;
+ unsigned application = symbolEncoding & 0x70;
unsigned size;
switch (format) {
default:
@@ -553,7 +553,6 @@
assert(0 && "Unknown Encoding");
break;
case 0:
- case dwarf::DW_EH_PE_indirect:
streamer.EmitSymbolValue(&symbol, size);
break;
case dwarf::DW_EH_PE_pcrel:
diff --git a/lib/MC/MCParser/AsmParser.cpp b/lib/MC/MCParser/AsmParser.cpp
index d8a166c..9105ad5 100644
--- a/lib/MC/MCParser/AsmParser.cpp
+++ b/lib/MC/MCParser/AsmParser.cpp
@@ -2248,10 +2248,9 @@
Format != dwarf::DW_EH_PE_sdata8 && Format != dwarf::DW_EH_PE_signed)
return false;
- const unsigned Application = Encoding & 0xf0;
+ const unsigned Application = Encoding & 0x70;
if (Application != dwarf::DW_EH_PE_absptr &&
- Application != dwarf::DW_EH_PE_pcrel &&
- Application != dwarf::DW_EH_PE_indirect)
+ Application != dwarf::DW_EH_PE_pcrel)
return false;
return true;