[llvm] r257697 - Convert a few assert failures into proper errors.

JF Bastien via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 13 15:42:19 PST 2016


FYI this broke the WebAssembly build, fixed in r257709.

On Wed, Jan 13, 2016 at 2:56 PM, Rafael Espindola via llvm-commits <
llvm-commits at lists.llvm.org> wrote:

> Author: rafael
> Date: Wed Jan 13 16:56:57 2016
> New Revision: 257697
>
> URL: http://llvm.org/viewvc/llvm-project?rev=257697&view=rev
> Log:
> Convert a few assert failures into proper errors.
>
> Fixes PR25944.
>
> Added:
>     llvm/trunk/test/MC/X86/error-reloc.s
> Modified:
>     llvm/trunk/include/llvm/MC/MCELFObjectWriter.h
>     llvm/trunk/lib/MC/ELFObjectWriter.cpp
>     llvm/trunk/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
>     llvm/trunk/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
>     llvm/trunk/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
>     llvm/trunk/lib/Target/BPF/MCTargetDesc/BPFELFObjectWriter.cpp
>     llvm/trunk/lib/Target/Hexagon/MCTargetDesc/HexagonELFObjectWriter.cpp
>     llvm/trunk/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
>     llvm/trunk/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp
>     llvm/trunk/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
>     llvm/trunk/lib/Target/SystemZ/MCTargetDesc/SystemZMCObjectWriter.cpp
>     llvm/trunk/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp
>
> Modified: llvm/trunk/include/llvm/MC/MCELFObjectWriter.h
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/MC/MCELFObjectWriter.h?rev=257697&r1=257696&r2=257697&view=diff
>
> ==============================================================================
> --- llvm/trunk/include/llvm/MC/MCELFObjectWriter.h (original)
> +++ llvm/trunk/include/llvm/MC/MCELFObjectWriter.h Wed Jan 13 16:56:57 2016
> @@ -17,6 +17,7 @@
>
>  namespace llvm {
>  class MCAssembler;
> +class MCContext;
>  class MCFixup;
>  class MCFragment;
>  class MCObjectWriter;
> @@ -64,8 +65,8 @@ public:
>
>    virtual ~MCELFObjectTargetWriter() {}
>
> -  virtual unsigned GetRelocType(const MCValue &Target, const MCFixup
> &Fixup,
> -                                bool IsPCRel) const = 0;
> +  virtual unsigned getRelocType(MCContext &Ctx, const MCValue &Target,
> +                                const MCFixup &Fixup, bool IsPCRel) const
> = 0;
>
>    virtual bool needsRelocateWithSymbol(const MCSymbol &Sym,
>                                         unsigned Type) const;
>
> Modified: llvm/trunk/lib/MC/ELFObjectWriter.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/ELFObjectWriter.cpp?rev=257697&r1=257696&r2=257697&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/MC/ELFObjectWriter.cpp (original)
> +++ llvm/trunk/lib/MC/ELFObjectWriter.cpp Wed Jan 13 16:56:57 2016
> @@ -129,9 +129,9 @@ class ELFObjectWriter : public MCObjectW
>      bool hasRelocationAddend() const {
>        return TargetObjectWriter->hasRelocationAddend();
>      }
> -    unsigned GetRelocType(const MCValue &Target, const MCFixup &Fixup,
> -                          bool IsPCRel) const {
> -      return TargetObjectWriter->GetRelocType(Target, Fixup, IsPCRel);
> +    unsigned getRelocType(MCContext &Ctx, const MCValue &Target,
> +                          const MCFixup &Fixup, bool IsPCRel) const {
> +      return TargetObjectWriter->getRelocType(Ctx, Target, Fixup,
> IsPCRel);
>      }
>
>      void align(unsigned Alignment);
> @@ -682,7 +682,7 @@ void ELFObjectWriter::recordRelocation(M
>      }
>    }
>
> -  unsigned Type = GetRelocType(Target, Fixup, IsPCRel);
> +  unsigned Type = getRelocType(Ctx, Target, Fixup, IsPCRel);
>    bool RelocateWithSymbol = shouldRelocateWithSymbol(Asm, RefA, SymA, C,
> Type);
>    if (!RelocateWithSymbol && SymA && !SymA->isUndefined())
>      C += Layout.getSymbolOffset(*SymA);
>
> Modified:
> llvm/trunk/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp?rev=257697&r1=257696&r2=257697&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
> (original)
> +++ llvm/trunk/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
> Wed Jan 13 16:56:57 2016
> @@ -29,8 +29,8 @@ public:
>    ~AArch64ELFObjectWriter() override;
>
>  protected:
> -  unsigned GetRelocType(const MCValue &Target, const MCFixup &Fixup,
> -                        bool IsPCRel) const override;
> +  unsigned getRelocType(MCContext &Ctx, const MCValue &Target,
> +                        const MCFixup &Fixup, bool IsPCRel) const
> override;
>
>  private:
>  };
> @@ -43,9 +43,10 @@ AArch64ELFObjectWriter::AArch64ELFObject
>
>  AArch64ELFObjectWriter::~AArch64ELFObjectWriter() {}
>
> -unsigned AArch64ELFObjectWriter::GetRelocType(const MCValue &Target,
> -                                            const MCFixup &Fixup,
> -                                            bool IsPCRel) const {
> +unsigned AArch64ELFObjectWriter::getRelocType(MCContext &Ctx,
> +                                              const MCValue &Target,
> +                                              const MCFixup &Fixup,
> +                                              bool IsPCRel) const {
>    AArch64MCExpr::VariantKind RefKind =
>        static_cast<AArch64MCExpr::VariantKind>(Target.getRefKind());
>    AArch64MCExpr::VariantKind SymLoc =
> AArch64MCExpr::getSymbolLoc(RefKind);
>
> Modified:
> llvm/trunk/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp?rev=257697&r1=257696&r2=257697&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
> (original)
> +++ llvm/trunk/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
> Wed Jan 13 16:56:57 2016
> @@ -20,8 +20,8 @@ class AMDGPUELFObjectWriter : public MCE
>  public:
>    AMDGPUELFObjectWriter(bool Is64Bit);
>  protected:
> -  unsigned GetRelocType(const MCValue &Target, const MCFixup &Fixup,
> -                        bool IsPCRel) const override {
> +  unsigned getRelocType(MCContext &Ctx, const MCValue &Target,
> +                        const MCFixup &Fixup, bool IsPCRel) const
> override {
>      return Fixup.getKind();
>    }
>
>
> Modified: llvm/trunk/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp?rev=257697&r1=257696&r2=257697&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
> (original)
> +++ llvm/trunk/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp Wed Jan
> 13 16:56:57 2016
> @@ -34,8 +34,8 @@ namespace {
>
>      ~ARMELFObjectWriter() override;
>
> -    unsigned GetRelocType(const MCValue &Target, const MCFixup &Fixup,
> -                          bool IsPCRel) const override;
> +    unsigned getRelocType(MCContext &Ctx, const MCValue &Target,
> +                          const MCFixup &Fixup, bool IsPCRel) const
> override;
>
>      bool needsRelocateWithSymbol(const MCSymbol &Sym,
>                                   unsigned Type) const override;
> @@ -67,7 +67,7 @@ bool ARMELFObjectWriter::needsRelocateWi
>  // Need to examine the Fixup when determining whether to
>  // emit the relocation as an explicit symbol or as a section relative
>  // offset
> -unsigned ARMELFObjectWriter::GetRelocType(const MCValue &Target,
> +unsigned ARMELFObjectWriter::getRelocType(MCContext &Ctx, const MCValue
> &Target,
>                                            const MCFixup &Fixup,
>                                            bool IsPCRel) const {
>    return GetRelocTypeInner(Target, Fixup, IsPCRel);
>
> Modified: llvm/trunk/lib/Target/BPF/MCTargetDesc/BPFELFObjectWriter.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/BPF/MCTargetDesc/BPFELFObjectWriter.cpp?rev=257697&r1=257696&r2=257697&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/Target/BPF/MCTargetDesc/BPFELFObjectWriter.cpp
> (original)
> +++ llvm/trunk/lib/Target/BPF/MCTargetDesc/BPFELFObjectWriter.cpp Wed Jan
> 13 16:56:57 2016
> @@ -22,8 +22,8 @@ public:
>    ~BPFELFObjectWriter() override;
>
>  protected:
> -  unsigned GetRelocType(const MCValue &Target, const MCFixup &Fixup,
> -                        bool IsPCRel) const override;
> +  unsigned getRelocType(MCContext &Ctx, const MCValue &Target,
> +                        const MCFixup &Fixup, bool IsPCRel) const
> override;
>  };
>  }
>
> @@ -33,7 +33,7 @@ BPFELFObjectWriter::BPFELFObjectWriter(u
>
>  BPFELFObjectWriter::~BPFELFObjectWriter() {}
>
> -unsigned BPFELFObjectWriter::GetRelocType(const MCValue &Target,
> +unsigned BPFELFObjectWriter::getRelocType(MCContext &Ctx, const MCValue
> &Target,
>                                            const MCFixup &Fixup,
>                                            bool IsPCRel) const {
>    // determine the type of the relocation
>
> Modified:
> llvm/trunk/lib/Target/Hexagon/MCTargetDesc/HexagonELFObjectWriter.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Hexagon/MCTargetDesc/HexagonELFObjectWriter.cpp?rev=257697&r1=257696&r2=257697&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/Target/Hexagon/MCTargetDesc/HexagonELFObjectWriter.cpp
> (original)
> +++ llvm/trunk/lib/Target/Hexagon/MCTargetDesc/HexagonELFObjectWriter.cpp
> Wed Jan 13 16:56:57 2016
> @@ -28,8 +28,8 @@ private:
>  public:
>    HexagonELFObjectWriter(uint8_t OSABI, StringRef C);
>
> -  unsigned GetRelocType(MCValue const &Target, MCFixup const &Fixup,
> -                        bool IsPCRel) const override;
> +  unsigned getRelocType(MCContext &Ctx, MCValue const &Target,
> +                        MCFixup const &Fixup, bool IsPCRel) const
> override;
>  };
>  }
>
> @@ -38,7 +38,8 @@ HexagonELFObjectWriter::HexagonELFObject
>                                /*HasRelocationAddend*/ true),
>        CPU(C) {}
>
> -unsigned HexagonELFObjectWriter::GetRelocType(MCValue const & /*Target*/,
> +unsigned HexagonELFObjectWriter::getRelocType(MCContext &Ctx,
> +                                              MCValue const & /*Target*/,
>                                                MCFixup const &Fixup,
>                                                bool IsPCRel) const {
>    switch ((unsigned)Fixup.getKind()) {
>
> Modified: llvm/trunk/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp?rev=257697&r1=257696&r2=257697&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
> (original)
> +++ llvm/trunk/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp Wed
> Jan 13 16:56:57 2016
> @@ -44,8 +44,8 @@ struct MipsRelocationEntry {
>
>      ~MipsELFObjectWriter() override;
>
> -    unsigned GetRelocType(const MCValue &Target, const MCFixup &Fixup,
> -                          bool IsPCRel) const override;
> +    unsigned getRelocType(MCContext &Ctx, const MCValue &Target,
> +                          const MCFixup &Fixup, bool IsPCRel) const
> override;
>      bool needsRelocateWithSymbol(const MCSymbol &Sym,
>                                   unsigned Type) const override;
>      virtual void sortRelocs(const MCAssembler &Asm,
> @@ -61,7 +61,8 @@ MipsELFObjectWriter::MipsELFObjectWriter
>
>  MipsELFObjectWriter::~MipsELFObjectWriter() {}
>
> -unsigned MipsELFObjectWriter::GetRelocType(const MCValue &Target,
> +unsigned MipsELFObjectWriter::getRelocType(MCContext &Ctx,
> +                                           const MCValue &Target,
>                                             const MCFixup &Fixup,
>                                             bool IsPCRel) const {
>    // Determine the type of the relocation.
>
> Modified: llvm/trunk/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp?rev=257697&r1=257696&r2=257697&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp
> (original)
> +++ llvm/trunk/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp Wed
> Jan 13 16:56:57 2016
> @@ -25,8 +25,8 @@ namespace {
>      PPCELFObjectWriter(bool Is64Bit, uint8_t OSABI);
>
>    protected:
> -    unsigned GetRelocType(const MCValue &Target, const MCFixup &Fixup,
> -                          bool IsPCRel) const override;
> +    unsigned getRelocType(MCContext &Ctx, const MCValue &Target,
> +                          const MCFixup &Fixup, bool IsPCRel) const
> override;
>
>      bool needsRelocateWithSymbol(const MCSymbol &Sym,
>                                   unsigned Type) const override;
> @@ -66,7 +66,7 @@ static MCSymbolRefExpr::VariantKind getA
>    llvm_unreachable("unknown PPCMCExpr kind");
>  }
>
> -unsigned PPCELFObjectWriter::GetRelocType(const MCValue &Target,
> +unsigned PPCELFObjectWriter::getRelocType(MCContext &Ctx, const MCValue
> &Target,
>                                            const MCFixup &Fixup,
>                                            bool IsPCRel) const {
>    MCSymbolRefExpr::VariantKind Modifier = getAccessVariant(Target, Fixup);
>
> Modified: llvm/trunk/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp?rev=257697&r1=257696&r2=257697&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
> (original)
> +++ llvm/trunk/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp Wed
> Jan 13 16:56:57 2016
> @@ -29,8 +29,8 @@ namespace {
>      ~SparcELFObjectWriter() override {}
>
>    protected:
> -    unsigned GetRelocType(const MCValue &Target, const MCFixup &Fixup,
> -                          bool IsPCRel) const override;
> +    unsigned getRelocType(MCContext &Ctx, const MCValue &Target,
> +                          const MCFixup &Fixup, bool IsPCRel) const
> override;
>
>      bool needsRelocateWithSymbol(const MCSymbol &Sym,
>                                   unsigned Type) const override;
> @@ -38,7 +38,8 @@ namespace {
>    };
>  }
>
> -unsigned SparcELFObjectWriter::GetRelocType(const MCValue &Target,
> +unsigned SparcELFObjectWriter::getRelocType(MCContext &Ctx,
> +                                            const MCValue &Target,
>                                              const MCFixup &Fixup,
>                                              bool IsPCRel) const {
>
>
> Modified:
> llvm/trunk/lib/Target/SystemZ/MCTargetDesc/SystemZMCObjectWriter.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/SystemZ/MCTargetDesc/SystemZMCObjectWriter.cpp?rev=257697&r1=257696&r2=257697&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/Target/SystemZ/MCTargetDesc/SystemZMCObjectWriter.cpp
> (original)
> +++ llvm/trunk/lib/Target/SystemZ/MCTargetDesc/SystemZMCObjectWriter.cpp
> Wed Jan 13 16:56:57 2016
> @@ -24,8 +24,8 @@ public:
>
>  protected:
>    // Override MCELFObjectTargetWriter.
> -  unsigned GetRelocType(const MCValue &Target, const MCFixup &Fixup,
> -                        bool IsPCRel) const override;
> +  unsigned getRelocType(MCContext &Ctx, const MCValue &Target,
> +                        const MCFixup &Fixup, bool IsPCRel) const
> override;
>  };
>  } // end anonymous namespace
>
> @@ -106,7 +106,8 @@ static unsigned getPLTReloc(unsigned Kin
>    llvm_unreachable("Unsupported absolute address");
>  }
>
> -unsigned SystemZObjectWriter::GetRelocType(const MCValue &Target,
> +unsigned SystemZObjectWriter::getRelocType(MCContext &Ctx,
> +                                           const MCValue &Target,
>                                             const MCFixup &Fixup,
>                                             bool IsPCRel) const {
>    MCSymbolRefExpr::VariantKind Modifier = Target.getAccessVariant();
>
> Modified: llvm/trunk/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp?rev=257697&r1=257696&r2=257697&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp
> (original)
> +++ llvm/trunk/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp Wed Jan
> 13 16:56:57 2016
> @@ -9,6 +9,7 @@
>
>  #include "MCTargetDesc/X86FixupKinds.h"
>  #include "MCTargetDesc/X86MCTargetDesc.h"
> +#include "llvm/MC/MCContext.h"
>  #include "llvm/MC/MCELFObjectWriter.h"
>  #include "llvm/MC/MCExpr.h"
>  #include "llvm/MC/MCValue.h"
> @@ -25,8 +26,8 @@ namespace {
>      ~X86ELFObjectWriter() override;
>
>    protected:
> -    unsigned GetRelocType(const MCValue &Target, const MCFixup &Fixup,
> -                          bool IsPCRel) const override;
> +    unsigned getRelocType(MCContext &Ctx, const MCValue &Target,
> +                          const MCFixup &Fixup, bool IsPCRel) const
> override;
>    };
>  }
>
> @@ -77,7 +78,14 @@ static X86_64RelType getType64(unsigned
>    }
>  }
>
> -static unsigned getRelocType64(MCSymbolRefExpr::VariantKind Modifier,
> +static void checkIs32(MCContext &Ctx, SMLoc Loc, X86_64RelType Type) {
> +  if (Type != RT64_32)
> +    Ctx.reportError(Loc,
> +                    "32 bit reloc applied to a field with a different
> size");
> +}
> +
> +static unsigned getRelocType64(MCContext &Ctx, SMLoc Loc,
> +                               MCSymbolRefExpr::VariantKind Modifier,
>                                 X86_64RelType Type, bool IsPCRel) {
>    switch (Modifier) {
>    default:
> @@ -147,19 +155,19 @@ static unsigned getRelocType64(MCSymbolR
>        llvm_unreachable("Unimplemented");
>      }
>    case MCSymbolRefExpr::VK_TLSGD:
> -    assert(Type == RT64_32);
> +    checkIs32(Ctx, Loc, Type);
>      return ELF::R_X86_64_TLSGD;
>    case MCSymbolRefExpr::VK_GOTTPOFF:
> -    assert(Type == RT64_32);
> +    checkIs32(Ctx, Loc, Type);
>      return ELF::R_X86_64_GOTTPOFF;
>    case MCSymbolRefExpr::VK_TLSLD:
> -    assert(Type == RT64_32);
> +    checkIs32(Ctx, Loc, Type);
>      return ELF::R_X86_64_TLSLD;
>    case MCSymbolRefExpr::VK_PLT:
> -    assert(Type == RT64_32);
> +    checkIs32(Ctx, Loc, Type);
>      return ELF::R_X86_64_PLT32;
>    case MCSymbolRefExpr::VK_GOTPCREL:
> -    assert(Type == RT64_32);
> +    checkIs32(Ctx, Loc, Type);
>      return ELF::R_X86_64_GOTPCREL;
>    }
>  }
> @@ -240,13 +248,13 @@ static unsigned getRelocType32(MCSymbolR
>    }
>  }
>
> -unsigned X86ELFObjectWriter::GetRelocType(const MCValue &Target,
> +unsigned X86ELFObjectWriter::getRelocType(MCContext &Ctx, const MCValue
> &Target,
>                                            const MCFixup &Fixup,
>                                            bool IsPCRel) const {
>    MCSymbolRefExpr::VariantKind Modifier = Target.getAccessVariant();
>    X86_64RelType Type = getType64(Fixup.getKind(), Modifier, IsPCRel);
>    if (getEMachine() == ELF::EM_X86_64)
> -    return getRelocType64(Modifier, Type, IsPCRel);
> +    return getRelocType64(Ctx, Fixup.getLoc(), Modifier, Type, IsPCRel);
>
>    assert((getEMachine() == ELF::EM_386 || getEMachine() == ELF::EM_IAMCU)
> &&
>           "Unsupported ELF machine type.");
>
> Added: llvm/trunk/test/MC/X86/error-reloc.s
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/X86/error-reloc.s?rev=257697&view=auto
>
> ==============================================================================
> --- llvm/trunk/test/MC/X86/error-reloc.s (added)
> +++ llvm/trunk/test/MC/X86/error-reloc.s Wed Jan 13 16:56:57 2016
> @@ -0,0 +1,21 @@
> +// RUN: not llvm-mc %s -o %t.o -filetype=obj 2>&1 | FileCheck %s
> +
> +        .quad foo at gotpcrel
> +// CHECK:      32 bit reloc applied to a field with a different size
> +// CHECK-NEXT: .quad foo at gotpcrel
> +
> +        .quad foo at plt
> +// CHECK:      32 bit reloc applied to a field with a different size
> +// CHECK-NEXT: .quad foo at plt
> +
> +        .quad foo at tlsld
> +// CHECK:      32 bit reloc applied to a field with a different size
> +// CHECK-NEXT: .quad foo at tlsld
> +
> +        .quad foo at gottpoff
> +// CHECK:      32 bit reloc applied to a field with a different size
> +// CHECK-NEXT: .quad foo at gottpoff
> +
> +        .quad foo at tlsgd
> +// CHECK:      32 bit reloc applied to a field with a different size
> +// CHECK-NEXT: .quad foo at tlsgd
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160113/188b7dd2/attachment-0001.html>


More information about the llvm-commits mailing list