xref: /aosp_15_r20/external/llvm/test/ExecutionEngine/fma3-jit.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: %lli %s | FileCheck %s
2*9880d681SAndroid Build Coastguard Worker; REQUIRES: fma3
3*9880d681SAndroid Build Coastguard Worker; CHECK: 12.000000
4*9880d681SAndroid Build Coastguard Worker
5*9880d681SAndroid Build Coastguard Worker@msg_double = internal global [4 x i8] c"%f\0A\00"
6*9880d681SAndroid Build Coastguard Worker
7*9880d681SAndroid Build Coastguard Workerdeclare i32 @printf(i8*, ...)
8*9880d681SAndroid Build Coastguard Worker
9*9880d681SAndroid Build Coastguard Workerdefine i32 @main() {
10*9880d681SAndroid Build Coastguard Worker  %fma = tail call double @llvm.fma.f64(double 3.0, double 3.0, double 3.0) nounwind readnone
11*9880d681SAndroid Build Coastguard Worker
12*9880d681SAndroid Build Coastguard Worker  %ptr1 = getelementptr [4 x i8], [4 x i8]* @msg_double, i32 0, i32 0
13*9880d681SAndroid Build Coastguard Worker  call i32 (i8*,...) @printf(i8* %ptr1, double %fma)
14*9880d681SAndroid Build Coastguard Worker
15*9880d681SAndroid Build Coastguard Worker  ret i32 0
16*9880d681SAndroid Build Coastguard Worker}
17*9880d681SAndroid Build Coastguard Worker
18*9880d681SAndroid Build Coastguard Workerdeclare double @llvm.fma.f64(double, double, double) nounwind readnone
19