xref: /aosp_15_r20/external/llvm/test/CodeGen/Mips/inlineasm64.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: llc -march=mips64el -mcpu=mips64r2 -target-abi=n64 < %s | FileCheck %s
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Worker@gl2 = external global i64
4*9880d681SAndroid Build Coastguard Worker@gl1 = external global i64
5*9880d681SAndroid Build Coastguard Worker@gl0 = external global i64
6*9880d681SAndroid Build Coastguard Worker
7*9880d681SAndroid Build Coastguard Workerdefine void @foo1() nounwind {
8*9880d681SAndroid Build Coastguard Workerentry:
9*9880d681SAndroid Build Coastguard Worker; CHECK: foo1
10*9880d681SAndroid Build Coastguard Worker; CHECK: daddu
11*9880d681SAndroid Build Coastguard Worker  %0 = load i64, i64* @gl1, align 8
12*9880d681SAndroid Build Coastguard Worker  %1 = load i64, i64* @gl0, align 8
13*9880d681SAndroid Build Coastguard Worker  %2 = tail call i64 asm "daddu $0, $1, $2", "=r,r,r"(i64 %0, i64 %1) nounwind
14*9880d681SAndroid Build Coastguard Worker  store i64 %2, i64* @gl2, align 8
15*9880d681SAndroid Build Coastguard Worker  ret void
16*9880d681SAndroid Build Coastguard Worker}
17*9880d681SAndroid Build Coastguard Worker
18