[all-commits] [llvm/llvm-project] 671f09: [X86] Selective relocation relaxation for +tagged-...

Matt Morehouse via All-commits all-commits at lists.llvm.org
Fri Nov 19 07:19:47 PST 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 671f0930fe29913011df4eacc89ca19a78e8dbb0
      https://github.com/llvm/llvm-project/commit/671f0930fe29913011df4eacc89ca19a78e8dbb0
  Author: Matt Morehouse <mascasa at google.com>
  Date:   2021-11-19 (Fri, 19 Nov 2021)

  Changed paths:
    M llvm/docs/Extensions.rst
    M llvm/include/llvm/MC/MCExpr.h
    M llvm/lib/MC/ELFObjectWriter.cpp
    M llvm/lib/MC/MCExpr.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86BaseInfo.h
    M llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp
    M llvm/lib/Target/X86/X86.td
    M llvm/lib/Target/X86/X86AsmPrinter.cpp
    M llvm/lib/Target/X86/X86FastISel.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrInfo.h
    M llvm/lib/Target/X86/X86MCInstLower.cpp
    M llvm/lib/Target/X86/X86Subtarget.cpp
    M llvm/test/CodeGen/X86/tagged-globals-pic.ll
    M llvm/test/CodeGen/X86/tagged-globals-static.ll
    A llvm/test/MC/X86/gotpcrel_norelax.s

  Log Message:
  -----------
  [X86] Selective relocation relaxation for +tagged-globals

For tagged-globals, we only need to disable relaxation for globals that
we actually tag.  With this patch function pointer relocations, which
we do not instrument, can be relaxed.

This patch also makes tagged-globals work properly with LTO, as
-Wa,-mrelax-relocations=no doesn't work with LTO.

Reviewed By: pcc

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




More information about the All-commits mailing list