[PATCH] D44485: [MC] Always emit relocations for same-section function references

Valentin Churavy via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 29 16:46:22 PDT 2020


vchuravy added a comment.

Right the issue for is that LLVM6 used to accept and compile it without issue:

  ➜  v6 tools/llc -version
  LLVM (http://llvm.org/):
    LLVM version 6.0.1
    Optimized build.
  
  ➜  v6 cat t.ll
  @gv = hidden local_unnamed_addr global i64 sub (i64 ptrtoint (i32 ()* @f1 to i64),
                                                  i64 ptrtoint (i32 ()* @f2 to i64)), align 8
  define internal i32 @f1() { ret i32 13 }
  define internal i32 @f2() { ret i32 42 }
  
  ➜  v6 tools/llc t.ll -filetype=obj -mtriple=x86_64-windows-gnu -o t.o

As well as a toolchain that has this PR reverted:

  ➜  v9 tools/llc -version
  LLVM (http://llvm.org/):
    LLVM version 9.0.1jl
    Optimized build.
    Default target: x86_64-linux-gnu
    Host CPU: skylake
  
    Registered Targets:
      amdgcn  - AMD GCN GPUs
      nvptx   - NVIDIA PTX 32-bit
      nvptx64 - NVIDIA PTX 64-bit
      r600    - AMD GPUs HD2XXX-HD6XXX
      wasm32  - WebAssembly 32-bit
      wasm64  - WebAssembly 64-bit
      x86     - 32-bit X86: Pentium-Pro and above
      x86-64  - 64-bit X86: EM64T and AMD64
  ➜  v9 tools/llc t.ll -filetype=obj -mtriple=x86_64-windows-gnu -o t.o


Repository:
  rL LLVM

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D44485/new/

https://reviews.llvm.org/D44485





More information about the llvm-commits mailing list