mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-11-02 07:11:49 +00:00
4a4fb84d4b
Most of the tests that behave differently on llvm-arm-linux buildbot did so becase the triple wasn't set correctly to armv5, so we can revert most of the special behaviour added previously. Some tests still need the special treatment, though. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176243 91177308-0d34-0410-b5e6-96231b3b80d8
25 lines
775 B
LLVM
25 lines
775 B
LLVM
; RUN: %lli %s > /dev/null
|
|
; XFAIL: arm
|
|
|
|
define double @test(double* %DP, double %Arg) {
|
|
%D = load double* %DP ; <double> [#uses=1]
|
|
%V = fadd double %D, 1.000000e+00 ; <double> [#uses=2]
|
|
%W = fsub double %V, %V ; <double> [#uses=3]
|
|
%X = fmul double %W, %W ; <double> [#uses=2]
|
|
%Y = fdiv double %X, %X ; <double> [#uses=2]
|
|
%Z = frem double %Y, %Y ; <double> [#uses=3]
|
|
%Z1 = fdiv double %Z, %W ; <double> [#uses=0]
|
|
%Q = fadd double %Z, %Arg ; <double> [#uses=1]
|
|
%R = bitcast double %Q to double ; <double> [#uses=1]
|
|
store double %R, double* %DP
|
|
ret double %Z
|
|
}
|
|
|
|
define i32 @main() {
|
|
%X = alloca double ; <double*> [#uses=2]
|
|
store double 0.000000e+00, double* %X
|
|
call double @test( double* %X, double 2.000000e+00 ) ; <double>:1 [#uses=0]
|
|
ret i32 0
|
|
}
|
|
|