; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
; RUN: opt < %s -constprop -S | FileCheck %s

define float @fneg_constant() {
; CHECK-LABEL: @fneg_constant(
; CHECK-NEXT:    ret float 0.000000e+00
;
  %r = fneg float -0.0
  ret float %r
}

define float @fneg_undef() {
; CHECK-LABEL: @fneg_undef(
; CHECK-NEXT:    ret float undef
;
  %r = fneg float undef
  ret float %r
}

define <4 x float> @fneg_constant_elts_v4f32() {
; CHECK-LABEL: @fneg_constant_elts_v4f32(
; CHECK-NEXT:    ret <4 x float> <float 0.000000e+00, float -0.000000e+00, float 1.000000e+00, float -1.000000e+00>
;
  %r = fneg <4 x float> <float -0.0, float 0.0, float -1.0, float 1.0>
  ret <4 x float> %r
}

define <4 x float> @fneg_constant_undef_elts_v4f32() {
; CHECK-LABEL: @fneg_constant_undef_elts_v4f32(
; CHECK-NEXT:    ret <4 x float> <float 0.000000e+00, float undef, float undef, float -1.000000e+00>
;
  %r = fneg <4 x float> <float -0.0, float undef, float undef, float 1.0>
  ret <4 x float> %r
}

define <4 x float> @fneg_constant_all_undef_elts_v4f32() {
; CHECK-LABEL: @fneg_constant_all_undef_elts_v4f32(
; CHECK-NEXT:    ret <4 x float> undef
;
  %r = fneg <4 x float> <float undef, float undef, float undef, float undef>
  ret <4 x float> %r
}
