[PATCH] D50634: [RISCV] Add support for local PIC addressing

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 14 12:28:20 PDT 2018


efriedma added inline comments.


================
Comment at: lib/Target/RISCV/RISCVISelLowering.cpp:387
 
   if (isPositionIndependent() || Subtarget.is64Bit())
     report_fatal_error("Unable to lowerExternalSymbol");
----------------
rogfer01 wrote:
> I'm not sure how `ExternalSymbol` must be dealt. Like `GlobalAddress` or they should always use the GOT?
An ExternalSymbol is basically a global which doesn't have a corresponding IR symbol, so treat it the same way as any other extern global.  They're mostly used for runtime library calls (memcpy, soft-float math, etc.).

That said, I'm not sure you can actually trigger this codepath given that LowerCall lowers the callee of calls itself.


https://reviews.llvm.org/D50634





More information about the llvm-commits mailing list