aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
diff options
context:
space:
mode:
authorThorsten Schütt <schuett@gmail.com>2024-05-08 14:27:02 +0200
committerGitHub <noreply@github.com>2024-05-08 14:27:02 +0200
commit737e0bcfe344bd9a8c4e4c3c2e80fdbe93bfaafb (patch)
treef8915138dc0263a13aa7a568353a940bb94be0b2 /llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
parentc5509fedc5757fffece385d9d068e36b26793ade (diff)
downloadllvm-737e0bcfe344bd9a8c4e4c3c2e80fdbe93bfaafb.zip
llvm-737e0bcfe344bd9a8c4e4c3c2e80fdbe93bfaafb.tar.gz
llvm-737e0bcfe344bd9a8c4e4c3c2e80fdbe93bfaafb.tar.bz2
[GlobalIsel] combine ext of trunc with flags (#87115)
https://github.com/llvm/llvm-project/pull/85592 https://discourse.llvm.org/t/rfc-add-nowrap-flags-to-trunc/77453 https://github.com/llvm/llvm-project/pull/88609
Diffstat (limited to 'llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp')
-rw-r--r--llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp b/llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
index 2e84078..afe2703 100644
--- a/llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
+++ b/llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
@@ -490,8 +490,9 @@ MachineInstrBuilder MachineIRBuilder::buildSExt(const DstOp &Res,
}
MachineInstrBuilder MachineIRBuilder::buildZExt(const DstOp &Res,
- const SrcOp &Op) {
- return buildInstr(TargetOpcode::G_ZEXT, Res, Op);
+ const SrcOp &Op,
+ std::optional<unsigned> Flags) {
+ return buildInstr(TargetOpcode::G_ZEXT, Res, Op, Flags);
}
unsigned MachineIRBuilder::getBoolExtOp(bool IsVec, bool IsFP) const {
@@ -869,9 +870,10 @@ MachineInstrBuilder MachineIRBuilder::buildIntrinsic(Intrinsic::ID ID,
return buildIntrinsic(ID, Results, HasSideEffects, isConvergent);
}
-MachineInstrBuilder MachineIRBuilder::buildTrunc(const DstOp &Res,
- const SrcOp &Op) {
- return buildInstr(TargetOpcode::G_TRUNC, Res, Op);
+MachineInstrBuilder
+MachineIRBuilder::buildTrunc(const DstOp &Res, const SrcOp &Op,
+ std::optional<unsigned> Flags) {
+ return buildInstr(TargetOpcode::G_TRUNC, Res, Op, Flags);
}
MachineInstrBuilder