[llvm] [AMDGPU] Implement llvm.lrint intrinsic lowering (PR #98931)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Fri Jul 19 04:02:43 PDT 2024


================
@@ -3889,6 +3889,17 @@ LegalizerHelper::lower(MachineInstr &MI, unsigned TypeIdx, LLT LowerHintTy) {
     changeOpcode(MI, TargetOpcode::G_INTRINSIC_ROUNDEVEN);
     return Legalized;
   }
+  case TargetOpcode::G_INTRINSIC_LRINT:
+  case TargetOpcode::G_INTRINSIC_LLRINT: {
+    Register DstReg = MI.getOperand(0).getReg();
+    Register SrcReg = MI.getOperand(1).getReg();
+    LLT SrcTy = MRI.getType(SrcReg);
+    auto Round = MIRBuilder.buildIntrinsicRoundeven(SrcTy, SrcReg);
----------------
arsenm wrote:

Probably should use G_FRINT, even though they should be the same in the default FP env 

https://github.com/llvm/llvm-project/pull/98931


More information about the llvm-commits mailing list