Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
5 changed files
with
533 additions
and
533 deletions.
There are no files selected for viewing
390 changes: 195 additions & 195 deletions
390
llvm/test/Transforms/InstSimplify/ConstProp/math-1.ll
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,195 +1,195 @@ | ||
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py | ||
; RUN: opt -early-cse -S -o - %s | FileCheck %s | ||
|
||
declare double @acos(double) | ||
define double @f_acos() { | ||
; CHECK-LABEL: @f_acos( | ||
; CHECK-NEXT: ret double 0.000000e+00 | ||
; | ||
%res = tail call fast double @acos(double 1.0) | ||
ret double %res | ||
} | ||
|
||
declare float @asinf(float) | ||
define float @f_asinf() { | ||
; CHECK-LABEL: @f_asinf( | ||
; CHECK-NEXT: ret float 0x3FF921FB{{.+}} | ||
; | ||
%res = tail call fast float @asinf(float 1.0) | ||
ret float %res | ||
} | ||
|
||
declare double @atan(double) | ||
define double @f_atan() { | ||
; CHECK-LABEL: @f_atan( | ||
; CHECK-NEXT: [[RES:%.*]] = tail call fast double @atan(double 1.000000e+00) | ||
; CHECK-NEXT: ret double 0x3FE921FB | ||
; | ||
%res = tail call fast double @atan(double 1.0) | ||
ret double %res | ||
} | ||
|
||
declare float @cosf(float) | ||
define float @f_cosf() { | ||
; CHECK-LABEL: @f_cosf( | ||
; CHECK-NEXT: ret float 0x3FE14A2{{.+}} | ||
; | ||
%res = tail call fast float @cosf(float 1.0) | ||
ret float %res | ||
} | ||
|
||
declare float @llvm.cos.f32(float) | ||
define float @i_cosf() { | ||
; CHECK-LABEL: @i_cosf( | ||
; CHECK-NEXT: ret float 0x3FE14A2 | ||
; | ||
%res = tail call fast float @llvm.cos.f32(float 1.0) | ||
ret float %res | ||
} | ||
|
||
declare double @cosh(double) | ||
define double @f_cosh() { | ||
; CHECK-LABEL: @f_cosh( | ||
; CHECK-NEXT: ret double 0x3FF8B075{{.+}} | ||
; | ||
%res = tail call fast double @cosh(double 1.0) | ||
ret double %res | ||
} | ||
|
||
declare float @expf(float) | ||
define float @f_expf() { | ||
; CHECK-LABEL: @f_expf( | ||
; CHECK-NEXT: ret float 0x4005BF0A{{.+}} | ||
; | ||
%res = tail call fast float @expf(float 1.0) | ||
ret float %res | ||
} | ||
|
||
declare float @llvm.exp.f32(float) | ||
define float @i_expf() { | ||
; CHECK-LABEL: @i_expf( | ||
; CHECK-NEXT: ret float 0x4005BF0A{{.+}} | ||
; | ||
%res = tail call fast float @llvm.exp.f32(float 1.0) | ||
ret float %res | ||
} | ||
|
||
declare double @exp2(double) | ||
define double @f_exp2() { | ||
; CHECK-LABEL: @f_exp2( | ||
; CHECK-NEXT: ret double 2.000000e+00 | ||
; | ||
%res = tail call fast double @exp2(double 1.0) | ||
ret double %res | ||
} | ||
|
||
declare double @llvm.exp2.f64(double) | ||
define double @i_exp2() { | ||
; CHECK-LABEL: @i_exp2( | ||
; CHECK-NEXT: ret double 2.000000e+00 | ||
; | ||
%res = tail call fast double @llvm.exp2.f64(double 1.0) | ||
ret double %res | ||
} | ||
|
||
; FIXME: exp10() is not widely supported. | ||
declare float @exp10f(float) | ||
define float @f_exp10f() { | ||
; CHECK-LABEL: @f_exp10f( | ||
; CHECK-NEXT: [[RES:%.*]] = tail call float @exp10f(float 1.000000e+00) | ||
; CHECK-NEXT: ret float [[RES]] | ||
; | ||
%res = tail call float @exp10f(float 1.0) | ||
ret float %res | ||
} | ||
|
||
declare double @log(double) | ||
define double @f_log() { | ||
; CHECK-LABEL: @f_log( | ||
; CHECK-NEXT: ret double 0.000000e+00 | ||
; | ||
%res = tail call fast double @log(double 1.0) | ||
ret double %res | ||
} | ||
|
||
declare double @llvm.log.f64(double) | ||
define double @i_log() { | ||
; CHECK-LABEL: @i_log( | ||
; CHECK-NEXT: ret double 0.000000e+00 | ||
; | ||
%res = tail call fast double @llvm.log.f64(double 1.0) | ||
ret double %res | ||
} | ||
|
||
declare float @log2f(float) | ||
define float @f_log2f() { | ||
; CHECK-LABEL: @f_log2f( | ||
; CHECK-NEXT: ret float 0.000000e+00 | ||
; | ||
%res = tail call fast float @log2f(float 1.0) | ||
ret float %res | ||
} | ||
|
||
declare float @llvm.log2.f32(float) | ||
define float @i_log2f() { | ||
; CHECK-LABEL: @i_log2f( | ||
; CHECK-NEXT: ret float 0.000000e+00 | ||
; | ||
%res = tail call fast float @llvm.log2.f32(float 1.0) | ||
ret float %res | ||
} | ||
|
||
declare double @log10(double) | ||
define double @f_log10() { | ||
; CHECK-LABEL: @f_log10( | ||
; CHECK-NEXT: ret double 0.000000e+00 | ||
; | ||
%res = tail call fast double @log10(double 1.0) | ||
ret double %res | ||
} | ||
|
||
declare float @sinf(float) | ||
define float @f_sinf() { | ||
; CHECK-LABEL: @f_sinf( | ||
; CHECK-NEXT: ret float 0x3FEAED54{{.+}} | ||
; | ||
%res = tail call fast float @sinf(float 1.0) | ||
ret float %res | ||
} | ||
|
||
declare double @sinh(double) | ||
define double @f_sinh() { | ||
; CHECK-LABEL: @f_sinh( | ||
; CHECK-NEXT: ret double 0x3FF2CD9F{{.+}} | ||
; | ||
%res = tail call fast double @sinh(double 1.0) | ||
ret double %res | ||
} | ||
|
||
declare float @sqrtf(float) | ||
define float @f_sqrtf() { | ||
; CHECK-LABEL: @f_sqrtf( | ||
; CHECK-NEXT: ret float 1.000000e+00 | ||
; | ||
%res = tail call fast float @sqrtf(float 1.0) | ||
ret float %res | ||
} | ||
|
||
declare double @tan(double) | ||
define double @f_tan() { | ||
; CHECK-LABEL: @f_tan( | ||
; CHECK-NEXT: ret double 0x3FF8EB24{{.+}} | ||
; | ||
%res = tail call fast double @tan(double 1.0) | ||
ret double %res | ||
} | ||
|
||
declare float @tanhf(float) | ||
define float @f_tanhf() { | ||
; CHECK-LABEL: @f_tanhf( | ||
; CHECK-NEXT: [[RES:%.*]] = tail call fast float @tanhf(float 1.000000e+00) | ||
; CHECK-NEXT: ret float 0x3FE85EFA{{.+}} | ||
; | ||
%res = tail call fast float @tanhf(float 1.0) | ||
ret float %res | ||
} | ||
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py | ||
; RUN: opt -early-cse -S -o - %s | FileCheck %s | ||
|
||
declare double @acos(double) | ||
define double @f_acos() { | ||
; CHECK-LABEL: @f_acos( | ||
; CHECK-NEXT: ret double 0.000000e+00 | ||
; | ||
%res = tail call fast double @acos(double 1.0) | ||
ret double %res | ||
} | ||
|
||
declare float @asinf(float) | ||
define float @f_asinf() { | ||
; CHECK-LABEL: @f_asinf( | ||
; CHECK-NEXT: ret float 0x3FF921FB{{.+}} | ||
; | ||
%res = tail call fast float @asinf(float 1.0) | ||
ret float %res | ||
} | ||
|
||
declare double @atan(double) | ||
define double @f_atan() { | ||
; CHECK-LABEL: @f_atan( | ||
; CHECK-NEXT: [[RES:%.*]] = tail call fast double @atan(double 1.000000e+00) | ||
; CHECK-NEXT: ret double 0x3FE921FB | ||
; | ||
%res = tail call fast double @atan(double 1.0) | ||
ret double %res | ||
} | ||
|
||
declare float @cosf(float) | ||
define float @f_cosf() { | ||
; CHECK-LABEL: @f_cosf( | ||
; CHECK-NEXT: ret float 0x3FE14A2{{.+}} | ||
; | ||
%res = tail call fast float @cosf(float 1.0) | ||
ret float %res | ||
} | ||
|
||
declare float @llvm.cos.f32(float) | ||
define float @i_cosf() { | ||
; CHECK-LABEL: @i_cosf( | ||
; CHECK-NEXT: ret float 0x3FE14A2 | ||
; | ||
%res = tail call fast float @llvm.cos.f32(float 1.0) | ||
ret float %res | ||
} | ||
|
||
declare double @cosh(double) | ||
define double @f_cosh() { | ||
; CHECK-LABEL: @f_cosh( | ||
; CHECK-NEXT: ret double 0x3FF8B075{{.+}} | ||
; | ||
%res = tail call fast double @cosh(double 1.0) | ||
ret double %res | ||
} | ||
|
||
declare float @expf(float) | ||
define float @f_expf() { | ||
; CHECK-LABEL: @f_expf( | ||
; CHECK-NEXT: ret float 0x4005BF0A{{.+}} | ||
; | ||
%res = tail call fast float @expf(float 1.0) | ||
ret float %res | ||
} | ||
|
||
declare float @llvm.exp.f32(float) | ||
define float @i_expf() { | ||
; CHECK-LABEL: @i_expf( | ||
; CHECK-NEXT: ret float 0x4005BF0A{{.+}} | ||
; | ||
%res = tail call fast float @llvm.exp.f32(float 1.0) | ||
ret float %res | ||
} | ||
|
||
declare double @exp2(double) | ||
define double @f_exp2() { | ||
; CHECK-LABEL: @f_exp2( | ||
; CHECK-NEXT: ret double 2.000000e+00 | ||
; | ||
%res = tail call fast double @exp2(double 1.0) | ||
ret double %res | ||
} | ||
|
||
declare double @llvm.exp2.f64(double) | ||
define double @i_exp2() { | ||
; CHECK-LABEL: @i_exp2( | ||
; CHECK-NEXT: ret double 2.000000e+00 | ||
; | ||
%res = tail call fast double @llvm.exp2.f64(double 1.0) | ||
ret double %res | ||
} | ||
|
||
; FIXME: exp10() is not widely supported. | ||
declare float @exp10f(float) | ||
define float @f_exp10f() { | ||
; CHECK-LABEL: @f_exp10f( | ||
; CHECK-NEXT: [[RES:%.*]] = tail call float @exp10f(float 1.000000e+00) | ||
; CHECK-NEXT: ret float [[RES]] | ||
; | ||
%res = tail call float @exp10f(float 1.0) | ||
ret float %res | ||
} | ||
|
||
declare double @log(double) | ||
define double @f_log() { | ||
; CHECK-LABEL: @f_log( | ||
; CHECK-NEXT: ret double 0.000000e+00 | ||
; | ||
%res = tail call fast double @log(double 1.0) | ||
ret double %res | ||
} | ||
|
||
declare double @llvm.log.f64(double) | ||
define double @i_log() { | ||
; CHECK-LABEL: @i_log( | ||
; CHECK-NEXT: ret double 0.000000e+00 | ||
; | ||
%res = tail call fast double @llvm.log.f64(double 1.0) | ||
ret double %res | ||
} | ||
|
||
declare float @log2f(float) | ||
define float @f_log2f() { | ||
; CHECK-LABEL: @f_log2f( | ||
; CHECK-NEXT: ret float 0.000000e+00 | ||
; | ||
%res = tail call fast float @log2f(float 1.0) | ||
ret float %res | ||
} | ||
|
||
declare float @llvm.log2.f32(float) | ||
define float @i_log2f() { | ||
; CHECK-LABEL: @i_log2f( | ||
; CHECK-NEXT: ret float 0.000000e+00 | ||
; | ||
%res = tail call fast float @llvm.log2.f32(float 1.0) | ||
ret float %res | ||
} | ||
|
||
declare double @log10(double) | ||
define double @f_log10() { | ||
; CHECK-LABEL: @f_log10( | ||
; CHECK-NEXT: ret double 0.000000e+00 | ||
; | ||
%res = tail call fast double @log10(double 1.0) | ||
ret double %res | ||
} | ||
|
||
declare float @sinf(float) | ||
define float @f_sinf() { | ||
; CHECK-LABEL: @f_sinf( | ||
; CHECK-NEXT: ret float 0x3FEAED54{{.+}} | ||
; | ||
%res = tail call fast float @sinf(float 1.0) | ||
ret float %res | ||
} | ||
|
||
declare double @sinh(double) | ||
define double @f_sinh() { | ||
; CHECK-LABEL: @f_sinh( | ||
; CHECK-NEXT: ret double 0x3FF2CD9F{{.+}} | ||
; | ||
%res = tail call fast double @sinh(double 1.0) | ||
ret double %res | ||
} | ||
|
||
declare float @sqrtf(float) | ||
define float @f_sqrtf() { | ||
; CHECK-LABEL: @f_sqrtf( | ||
; CHECK-NEXT: ret float 1.000000e+00 | ||
; | ||
%res = tail call fast float @sqrtf(float 1.0) | ||
ret float %res | ||
} | ||
|
||
declare double @tan(double) | ||
define double @f_tan() { | ||
; CHECK-LABEL: @f_tan( | ||
; CHECK-NEXT: ret double 0x3FF8EB24{{.+}} | ||
; | ||
%res = tail call fast double @tan(double 1.0) | ||
ret double %res | ||
} | ||
|
||
declare float @tanhf(float) | ||
define float @f_tanhf() { | ||
; CHECK-LABEL: @f_tanhf( | ||
; CHECK-NEXT: [[RES:%.*]] = tail call fast float @tanhf(float 1.000000e+00) | ||
; CHECK-NEXT: ret float 0x3FE85EFA{{.+}} | ||
; | ||
%res = tail call fast float @tanhf(float 1.0) | ||
ret float %res | ||
} |
Oops, something went wrong.