blob: 9d794ce5f46b006491f76d2b1daef56bc60d77c0 [file] [log] [blame] [edit]
; 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_rsqrt() {
; CHECK-LABEL: define float @test_tdo_scalar_f32_rsqrt() {
; CHECK-NEXT: [[ENTRY:.*:]]
; CHECK-NEXT: ret float 1.000000e+00
;
entry:
%c = call float @_Z5rsqrtf(float 1.000000e+00)
ret float %c
}
define <2 x float> @test_tdo_v2_f32_rsqrt() {
; CHECK-LABEL: define <2 x float> @test_tdo_v2_f32_rsqrt() {
; CHECK-NEXT: [[ENTRY:.*:]]
; CHECK-NEXT: ret <2 x float> splat (float 1.000000e+00)
;
entry:
%c = call <2 x float> @_Z5rsqrtDv2_f(<2 x float> <float 1.000000e+00, float 1.000000e+00>)
ret <2 x float> %c
}
define half @test_tdo_scalar_f16_rsqrt() {
; CHECK-LABEL: define half @test_tdo_scalar_f16_rsqrt() {
; CHECK-NEXT: [[ENTRY:.*:]]
; CHECK-NEXT: ret half 0xH3C00
;
entry:
%c = call half @_Z5rsqrtDh(half 1.000000e+00)
ret half %c
}
define <2 x half> @test_tdo_v2_f16_rsqrt() {
; CHECK-LABEL: define <2 x half> @test_tdo_v2_f16_rsqrt() {
; CHECK-NEXT: [[ENTRY:.*:]]
; CHECK-NEXT: ret <2 x half> splat (half 0xH3C00)
;
entry:
%c = call <2 x half> @_Z5rsqrtDv2_Dh(<2 x half> <half 1.000000e+00, half 1.000000e+00>)
ret <2 x half> %c
}
define double @test_tdo_scalar_f64_rsqrt() {
; CHECK-LABEL: define double @test_tdo_scalar_f64_rsqrt() {
; CHECK-NEXT: [[ENTRY:.*:]]
; CHECK-NEXT: ret double 1.000000e+00
;
entry:
%c = call double @_Z5rsqrtd(double 1.000000e+00)
ret double %c
}
define <2 x double> @test_tdo_v2_f64_rsqrt() {
; CHECK-LABEL: define <2 x double> @test_tdo_v2_f64_rsqrt() {
; CHECK-NEXT: [[ENTRY:.*:]]
; CHECK-NEXT: ret <2 x double> splat (double 1.000000e+00)
;
entry:
%c = call <2 x double> @_Z5rsqrtDv2_d(<2 x double> <double 1.000000e+00, double 1.000000e+00>)
ret <2 x double> %c
}
declare float @_Z5rsqrtf(float)
declare <2 x float> @_Z5rsqrtDv2_f(<2 x float>)
declare half @_Z5rsqrtDh(half)
declare <2 x half> @_Z5rsqrtDv2_Dh(<2 x half>)
declare double @_Z5rsqrtd(double)
declare <2 x double> @_Z5rsqrtDv2_d(<2 x double>)