[PATCH] D67279: GlobalISel/AMDGPU: Legalize G_FMAD

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 6 08:02:39 PDT 2019


arsenm created this revision.
arsenm added reviewers: aemerson, aditya_nandakumar, paquette, tstellar, nhaehnle, kerbowa.
Herald added subscribers: Petar.Avramovic, volkan, t-tye, tpr, dstuttard, rovka, yaxunl, wdng, jvesely, kzhuravl.

Unlike SelectionDAG, treat this as a normally legalizable operation.
In SelectionDAG this is supposed to only ever formed if it's legal, but
I've found that to be restricting. For AMDGPU this is contextually legal
depending on whether denormal flushing is allowed in the use function.

Technically we currently treat the denormal mode as a subtarget
feature, so custom lowering could be avoided. However I consider this
to be a defect, and this should be contextually dependent on the
controllable rounding mode of the parent function.


https://reviews.llvm.org/D67279

Files:
  include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
  include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
  lib/CodeGen/GlobalISel/LegalizerHelper.cpp
  lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
  lib/Target/AMDGPU/AMDGPULegalizerInfo.h
  lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
  test/CodeGen/AMDGPU/GlobalISel/legalize-fmad.mir
  test/CodeGen/AMDGPU/GlobalISel/legalize-fmad.s16.mir

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D67279.219109.patch
Type: text/x-patch
Size: 61365 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190906/d28d3625/attachment.bin>


More information about the llvm-commits mailing list