mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-07-20 10:30:03 +00:00
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
|
||
|
}
|