; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 6
; RUN: opt -S -mtriple=amdgcn-amd-amdhsa -passes=amdgpu-simplifylib %s | FileCheck %s

define float @test_tdo_scalar_f32_tanh() {
; CHECK-LABEL: define float @test_tdo_scalar_f32_tanh() {
; CHECK-NEXT:  [[ENTRY:.*:]]
; CHECK-NEXT:    ret float 0.000000e+00
;
entry:
  %c = call float @_Z4tanhf(float 0.000000e+00)
  ret float %c
}

define <2 x float> @test_tdo_v2_f32_tanh() {
; CHECK-LABEL: define <2 x float> @test_tdo_v2_f32_tanh() {
; CHECK-NEXT:  [[ENTRY:.*:]]
; CHECK-NEXT:    ret <2 x float> zeroinitializer
;
entry:
  %c = call <2 x float> @_Z4tanhDv2_f(<2 x float> zeroinitializer)
  ret <2 x float> %c
}

define half @test_tdo_scalar_f16_tanh() {
; CHECK-LABEL: define half @test_tdo_scalar_f16_tanh() {
; CHECK-NEXT:  [[ENTRY:.*:]]
; CHECK-NEXT:    ret half 0xH0000
;
entry:
  %c = call half @_Z4tanhDh(half 0.000000e+00)
  ret half %c
}

define <2 x half> @test_tdo_v2_f16_tanh() {
; CHECK-LABEL: define <2 x half> @test_tdo_v2_f16_tanh() {
; CHECK-NEXT:  [[ENTRY:.*:]]
; CHECK-NEXT:    ret <2 x half> zeroinitializer
;
entry:
  %c = call <2 x half> @_Z4tanhDv2_Dh(<2 x half> zeroinitializer)
  ret <2 x half> %c
}

define double @test_tdo_scalar_f64_tanh() {
; CHECK-LABEL: define double @test_tdo_scalar_f64_tanh() {
; CHECK-NEXT:  [[ENTRY:.*:]]
; CHECK-NEXT:    ret double 0.000000e+00
;
entry:
  %c = call double @_Z4tanhd(double 0.000000e+00)
  ret double %c
}

define <2 x double> @test_tdo_v2_f64_tanh() {
; CHECK-LABEL: define <2 x double> @test_tdo_v2_f64_tanh() {
; CHECK-NEXT:  [[ENTRY:.*:]]
; CHECK-NEXT:    ret <2 x double> zeroinitializer
;
entry:
  %c = call <2 x double> @_Z4tanhDv2_d(<2 x double> zeroinitializer)
  ret <2 x double> %c
}

declare float        @_Z4tanhf(float)
declare <2 x float>  @_Z4tanhDv2_f(<2 x float>)
declare half         @_Z4tanhDh(half)
declare <2 x half>   @_Z4tanhDv2_Dh(<2 x half>)
declare double       @_Z4tanhd(double)
declare <2 x double> @_Z4tanhDv2_d(<2 x double>)
