[all-commits] [llvm/llvm-project] 7941dc: GlobalISel: Translate llvm.powi intrinsic

Matt Arsenault via All-commits all-commits at lists.llvm.org
Tue Jul 21 15:27:06 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 7941dc504107799440e7efab974026c506b4dbd3
      https://github.com/llvm/llvm-project/commit/7941dc504107799440e7efab974026c506b4dbd3
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2020-07-21 (Tue, 21 Jul 2020)

  Changed paths:
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Target/GenericOpcodes.td
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir

  Log Message:
  -----------
  GlobalISel: Translate llvm.powi intrinsic

There are a few questionable things about this intrinsic and existing
DAG implementation. For some reason the intrinsic hardcodes the second
operand to be scalar-only i32, and SelectionDAG builder makes a
legalization decision based on whether the operand is constant.


  Commit: 7cd8a0256da290fe5f97dbf65d4d2d0c82354e13
      https://github.com/llvm/llvm-project/commit/7cd8a0256da290fe5f97dbf65d4d2d0c82354e13
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2020-07-21 (Tue, 21 Jul 2020)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
    M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    A llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fpowi.mir
    A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.powi.ll

  Log Message:
  -----------
  GlobalISel: Legalize G_FPOWI


Compare: https://github.com/llvm/llvm-project/compare/1168119c2f0e...7cd8a0256da2


More information about the All-commits mailing list