[PATCH] D133340: [PowerPC][GISel]select floating point constant from TOC

ChenZheng via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jan 5 19:49:16 PST 2023


shchenz marked an inline comment as done.
shchenz added inline comments.


================
Comment at: llvm/test/CodeGen/PowerPC/GlobalISel/fconstant-unsupported.ll:1
+; REQUIRES: asserts
+
----------------
nemanjai wrote:
> shchenz wrote:
> > nemanjai wrote:
> > > arsenm wrote:
> > > > This doesn't require asserts
> > > Hmm, is it that producing FP constants using GISel is not supported or that GISel is not supported at all for BE and 32-bit? I imagine it is the latter.
> > Yes, GISel is not supported at all for BE for now. GISel supports 32 bit, but PPC does not support 32 bit GISel for now.
> Right. But I would expect that we simply reject an attempt to use GISel for `ppc32` rather than trying to turn it on and possibly selecting an incorrect instruction. Namely, treat it the same as big endian targets are treated.
OK. Got your point. At the beginning of GISel, IRTranslator pass, the big endian case triggers an error. 
For ppc32, maybe a virtual function `isGlobalISelEnabled()` is needed in `class LLVMTargetMachine` and an override version is needed in `class PPCTargetMachine` and only `isELFv2ABI()` returns true for now in the PPC's implementation? If so, I can add another patch to do this.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D133340



More information about the llvm-commits mailing list