[PATCH] D55304: [RISCV, WIP] Lower calls through GOT and PLT

Lewis Revill via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 4 17:15:38 PST 2018


lewis-revill created this revision.
lewis-revill added reviewers: asb, rogfer01, jrtc27.
Herald added subscribers: llvm-commits, jocewei, PkmX, the_o, brucehoult, MartinMosbeck, mgrang, edward-jones, zzheng, shiva0217, kito-cheng, niosHD, sabuasal, apazos, simoncook, johnrusso, rbar.

This patch adds support for generating calls through the global offset table and the procedure linkage table where required. The function `RISCVSubtarget::classifyFunctionReference` determines the type of call to use for a given global address or external symbol.

Depends on D55303 <https://reviews.llvm.org/D55303> as it's part of a set of patches but can be rebased on master if necessary.


Repository:
  rL LLVM

https://reviews.llvm.org/D55304

Files:
  lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
  lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
  lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.h
  lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
  lib/Target/RISCV/MCTargetDesc/RISCVFixupKinds.h
  lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
  lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp
  lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.h
  lib/Target/RISCV/RISCVISelLowering.cpp
  lib/Target/RISCV/RISCVMCInstLower.cpp
  lib/Target/RISCV/RISCVSubtarget.cpp
  lib/Target/RISCV/RISCVSubtarget.h
  lib/Target/RISCV/Utils/RISCVBaseInfo.h
  test/MC/RISCV/function-call.s

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D55304.176742.patch
Type: text/x-patch
Size: 11619 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20181205/9fcc8e93/attachment.bin>


More information about the llvm-commits mailing list