-; NOTE: Assertions have been autogenerated by update_test_checks.py
+; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
; RUN: opt < %s -instsimplify -S | FileCheck %s
+define float @fdiv_constant_fold() {
+; CHECK-LABEL: @fdiv_constant_fold(
+; CHECK-NEXT: [[F:%.*]] = fdiv float 3.000000e+00, 2.000000e+00
+; CHECK-NEXT: ret float [[F]]
+;
+ %f = fdiv float 3.0, 2.0
+ ret float %f
+}
+
+define float @frem_constant_fold() {
+; CHECK-LABEL: @frem_constant_fold(
+; CHECK-NEXT: [[F:%.*]] = frem float 3.000000e+00, 2.000000e+00
+; CHECK-NEXT: ret float [[F]]
+;
+ %f = frem float 3.0, 2.0
+ ret float %f
+}
+
define double @fdiv_of_undef(double %X) {
; CHECK-LABEL: @fdiv_of_undef(
-; CHECK: ret double undef
+; CHECK-NEXT: ret double undef
;
; undef / X -> undef
%r = fdiv double undef, %X
define double @fdiv_by_undef(double %X) {
; CHECK-LABEL: @fdiv_by_undef(
-; CHECK: ret double undef
+; CHECK-NEXT: ret double undef
;
; X / undef -> undef
%r = fdiv double %X, undef