; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 4
; RUN: opt < %s -passes=instcombine -S | FileCheck %s

define float @tanAtanInverseFast(float %x) {
; CHECK-LABEL: define float @tanAtanInverseFast(
; CHECK-SAME: float [[X:%.*]]) {
; CHECK-NEXT:    [[CALL:%.*]] = call fast float @atanf(float [[X]])
; CHECK-NEXT:    ret float [[X]]
;
  %call = call fast float @atanf(float %x)
  %call1 = call fast float @tanf(float %call)
  ret float %call1
}

define float @atanhTanhInverseFast(float %x) {
; CHECK-LABEL: define float @atanhTanhInverseFast(
; CHECK-SAME: float [[X:%.*]]) {
; CHECK-NEXT:    [[CALL:%.*]] = call fast float @tanhf(float [[X]])
; CHECK-NEXT:    ret float [[X]]
;
  %call = call fast float @tanhf(float %x)
  %call1 = call fast float @atanhf(float %call)
  ret float %call1
}

define float @sinhAsinhInverseFast(float %x) {
; CHECK-LABEL: define float @sinhAsinhInverseFast(
; CHECK-SAME: float [[X:%.*]]) {
; CHECK-NEXT:    [[CALL:%.*]] = call fast float @asinhf(float [[X]])
; CHECK-NEXT:    ret float [[X]]
;
  %call = call fast float @asinhf(float %x)
  %call1 = call fast float @sinhf(float %call)
  ret float %call1
}

define float @asinhSinhInverseFast(float %x) {
; CHECK-LABEL: define float @asinhSinhInverseFast(
; CHECK-SAME: float [[X:%.*]]) {
; CHECK-NEXT:    [[CALL:%.*]] = call fast float @sinhf(float [[X]])
; CHECK-NEXT:    ret float [[X]]
;
  %call = call fast float @sinhf(float %x)
  %call1 = call fast float @asinhf(float %call)
  ret float %call1
}

define float @coshAcoshInverseFast(float %x) {
; CHECK-LABEL: define float @coshAcoshInverseFast(
; CHECK-SAME: float [[X:%.*]]) {
; CHECK-NEXT:    [[CALL:%.*]] = call fast float @acoshf(float [[X]])
; CHECK-NEXT:    ret float [[X]]
;
  %call = call fast float @acoshf(float %x)
  %call1 = call fast float @coshf(float %call)
  ret float %call1
}

define float @indirectTanCall(ptr %fptr) {
; CHECK-LABEL: define float @indirectTanCall(
; CHECK-SAME: ptr [[FPTR:%.*]]) {
; CHECK-NEXT:    [[CALL1:%.*]] = call fast float [[FPTR]]()
; CHECK-NEXT:    [[TAN:%.*]] = call fast float @tanf(float [[CALL1]])
; CHECK-NEXT:    ret float [[TAN]]
;
  %call1 = call fast float %fptr()
  %tan = call fast float @tanf(float %call1)
  ret float %tan
}

; No fast-math.

define float @tanAtanInverse(float %x) {
; CHECK-LABEL: define float @tanAtanInverse(
; CHECK-SAME: float [[X:%.*]]) {
; CHECK-NEXT:    [[CALL:%.*]] = call float @atanf(float [[X]])
; CHECK-NEXT:    [[CALL1:%.*]] = call float @tanf(float [[CALL]])
; CHECK-NEXT:    ret float [[CALL1]]
;
  %call = call float @atanf(float %x)
  %call1 = call float @tanf(float %call)
  ret float %call1
}

define float @atanhTanhInverse(float %x) {
; CHECK-LABEL: define float @atanhTanhInverse(
; CHECK-SAME: float [[X:%.*]]) {
; CHECK-NEXT:    [[CALL:%.*]] = call float @tanhf(float [[X]])
; CHECK-NEXT:    [[CALL1:%.*]] = call float @atanhf(float [[CALL]])
; CHECK-NEXT:    ret float [[CALL1]]
;
  %call = call float @tanhf(float %x)
  %call1 = call float @atanhf(float %call)
  ret float %call1
}

define float @sinhAsinhInverse(float %x) {
; CHECK-LABEL: define float @sinhAsinhInverse(
; CHECK-SAME: float [[X:%.*]]) {
; CHECK-NEXT:    [[CALL:%.*]] = call float @asinhf(float [[X]])
; CHECK-NEXT:    [[CALL1:%.*]] = call float @sinhf(float [[CALL]])
; CHECK-NEXT:    ret float [[CALL1]]
;
  %call = call float @asinhf(float %x)
  %call1 = call float @sinhf(float %call)
  ret float %call1
}

define float @asinhSinhInverse(float %x) {
; CHECK-LABEL: define float @asinhSinhInverse(
; CHECK-SAME: float [[X:%.*]]) {
; CHECK-NEXT:    [[CALL:%.*]] = call float @sinhf(float [[X]])
; CHECK-NEXT:    [[CALL1:%.*]] = call float @asinhf(float [[CALL]])
; CHECK-NEXT:    ret float [[CALL1]]
;
  %call = call float @sinhf(float %x)
  %call1 = call float @asinhf(float %call)
  ret float %call1
}

define float @coshAcoshInverse(float %x)  {
; CHECK-LABEL: define float @coshAcoshInverse(
; CHECK-SAME: float [[X:%.*]]) {
; CHECK-NEXT:    [[CALL:%.*]] = call float @acoshf(float [[X]])
; CHECK-NEXT:    [[CALL1:%.*]] = call float @coshf(float [[CALL]])
; CHECK-NEXT:    ret float [[CALL1]]
;
  %call = call float @acoshf(float %x)
  %call1 = call float @coshf(float %call)
  ret float %call1
}

declare float @asinhf(float)
declare float @sinhf(float)
declare float @acoshf(float)
declare float @coshf(float)
declare float @tanhf(float)
declare float @atanhf(float)
declare float @tanf(float)
declare float @atanf(float)
