[llvm-branch-commits] [llvm] Bundle operands to specify denormal modes (PR #136501)
Matt Arsenault via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Mon Apr 21 01:46:20 PDT 2025
================
@@ -678,6 +682,71 @@ fp::ExceptionBehavior CallBase::getExceptionBehavior() const {
return fp::ebIgnore;
}
+DenormalMode::DenormalModeKind CallBase::getInputDenormMode() const {
+ if (auto InDenormBundle = getOperandBundle(LLVMContext::OB_fp_control)) {
+ auto DenormOperand =
+ getBundleOperandByPrefix(*InDenormBundle, "denorm.in=");
+ if (DenormOperand) {
+ if (auto Mode = parseDenormalKindFromOperandBundle(*DenormOperand))
+ return *Mode;
+ } else {
+ return DenormalMode::IEEE;
+ }
+ }
+
+ if (!getParent())
+ return DenormalMode::IEEE;
+ const Function *F = getFunction();
+ if (!F)
+ return DenormalMode::IEEE;
----------------
arsenm wrote:
I don't think this low level query should try to get creative and inspect the calling context function. It should stick to just parsing the bundle
https://github.com/llvm/llvm-project/pull/136501
More information about the llvm-branch-commits
mailing list