[llvm] Fix: Distinguish CFI Metadata Checks in MergeFunctions Pass (PR #65963)
Oskar Wirga via llvm-commits
llvm-commits at lists.llvm.org
Fri Sep 22 10:03:13 PDT 2023
================
@@ -0,0 +1,18 @@
+;; Make sure internal constrained FP intrinsics still merge properly
+; RUN: opt -passes=mergefunc -S < %s | FileCheck %s
+
+declare float @llvm.experimental.constrained.fadd.f32(float, float, metadata, metadata)
+
+define float @func1(float %a, float %b) {
+; CHECK-LABEL: define float @func1(float %a, float %b)
+ %result = call float @llvm.experimental.constrained.fadd.f32(float %a, float %b, metadata !"round.dynamic", metadata !"fpexcept.strict")
+ %result_2 = call float @llvm.experimental.constrained.fadd.f32(float %a, float %b, metadata !"round.dynamic", metadata !"fpexcept.strict")
+ ret float %result
+}
+
+define float @func2(float %a, float %b) {
+; CHECK-NOT: define float @func2(float %a, float %b)
----------------
oskarwirga wrote:
Wow it works like magic :O
https://github.com/llvm/llvm-project/pull/65963
More information about the llvm-commits
mailing list