mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-07-20 10:30:03 +00:00
missing some and not all of these match yet, but I'm sure that Nate will clean up my mess :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21168 91177308-0d34-0410-b5e6-96231b3b80d8
31 lines
789 B
LLVM
31 lines
789 B
LLVM
; RUN: llvm-as < %s | llc -march=ppc32 -enable-ppc-pattern-isel | grep 'fn\?madd\|fn\?msub' | wc -l | grep 5
|
|
|
|
double %test_FMADD(double %A, double %B, double %C) {
|
|
%D = mul double %A, %B
|
|
%E = add double %D, %C
|
|
ret double %E
|
|
}
|
|
double %test_FMSUB(double %A, double %B, double %C) {
|
|
%D = mul double %A, %B
|
|
%E = sub double %D, %C
|
|
ret double %E
|
|
}
|
|
double %test_FNMADD1(double %A, double %B, double %C) {
|
|
%D = mul double %A, %B
|
|
%E = sub double %D, %C
|
|
%F = sub double -0.0, %E
|
|
ret double %F
|
|
}
|
|
double %test_FNMADD2(double %A, double %B, double %C) {
|
|
%D = mul double %A, %B
|
|
%E = add double %D, %C
|
|
%F = sub double -0.0, %E
|
|
ret double %F
|
|
}
|
|
double %test_FNMADD3(double %A, double %B, double %C) {
|
|
%D = mul double %A, %B
|
|
%E = add double %C, %D
|
|
%F = sub double -0.0, %E
|
|
ret double %F
|
|
}
|