summaryrefslogtreecommitdiffstats
path: root/llvm/lib/MC/WinCOFFObjectWriter.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2017-06-23 04:07:44 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2017-06-23 04:07:44 +0000
commit58173b97209bfc907dd0b47ecfc5ab7c1fe1f036 (patch)
treec05199260e332ee7793659d617a2766a84f06d04 /llvm/lib/MC/WinCOFFObjectWriter.cpp
parent4ab0f4910a2b494b89f3ea11516fb04d3f3a49c8 (diff)
downloadbcm5719-llvm-58173b97209bfc907dd0b47ecfc5ab7c1fe1f036.tar.gz
bcm5719-llvm-58173b97209bfc907dd0b47ecfc5ab7c1fe1f036.zip
COFF: Produce an error on invalid pcrel relocs.
X86_64 COFF only has support for 32 bit pcrel relocations. Produce an error on all others. Note that gnu as has extended the relocation values to support this. It is not clear if we should support the gnu extension. llvm-svn: 306082
Diffstat (limited to 'llvm/lib/MC/WinCOFFObjectWriter.cpp')
-rw-r--r--llvm/lib/MC/WinCOFFObjectWriter.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/MC/WinCOFFObjectWriter.cpp b/llvm/lib/MC/WinCOFFObjectWriter.cpp
index 8d8c5ff9b60..fc523495039 100644
--- a/llvm/lib/MC/WinCOFFObjectWriter.cpp
+++ b/llvm/lib/MC/WinCOFFObjectWriter.cpp
@@ -781,8 +781,8 @@ void WinCOFFObjectWriter::recordRelocation(
++Reloc.Symb->Relocations;
Reloc.Data.VirtualAddress += Fixup.getOffset();
- Reloc.Data.Type =
- TargetObjectWriter->getRelocType(Target, Fixup, SymB, Asm.getBackend());
+ Reloc.Data.Type = TargetObjectWriter->getRelocType(
+ Asm.getContext(), Target, Fixup, SymB, Asm.getBackend());
// FIXME: Can anyone explain what this does other than adjust for the size
// of the offset?
OpenPOWER on IntegriCloud