xref: /aosp_15_r20/external/llvm/test/CodeGen/NVPTX/isspacep.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=nvptx -mcpu=sm_20 | FileCheck %s
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Workerdeclare i1 @llvm.nvvm.isspacep.const(i8*) readnone noinline
4*9880d681SAndroid Build Coastguard Workerdeclare i1 @llvm.nvvm.isspacep.global(i8*) readnone noinline
5*9880d681SAndroid Build Coastguard Workerdeclare i1 @llvm.nvvm.isspacep.local(i8*) readnone noinline
6*9880d681SAndroid Build Coastguard Workerdeclare i1 @llvm.nvvm.isspacep.shared(i8*) readnone noinline
7*9880d681SAndroid Build Coastguard Worker
8*9880d681SAndroid Build Coastguard Worker; CHECK: is_const
9*9880d681SAndroid Build Coastguard Workerdefine i1 @is_const(i8* %addr) {
10*9880d681SAndroid Build Coastguard Worker; CHECK: isspacep.const
11*9880d681SAndroid Build Coastguard Worker  %v = tail call i1 @llvm.nvvm.isspacep.const(i8* %addr)
12*9880d681SAndroid Build Coastguard Worker  ret i1 %v
13*9880d681SAndroid Build Coastguard Worker}
14*9880d681SAndroid Build Coastguard Worker
15*9880d681SAndroid Build Coastguard Worker; CHECK: is_global
16*9880d681SAndroid Build Coastguard Workerdefine i1 @is_global(i8* %addr) {
17*9880d681SAndroid Build Coastguard Worker; CHECK: isspacep.global
18*9880d681SAndroid Build Coastguard Worker  %v = tail call i1 @llvm.nvvm.isspacep.global(i8* %addr)
19*9880d681SAndroid Build Coastguard Worker  ret i1 %v
20*9880d681SAndroid Build Coastguard Worker}
21*9880d681SAndroid Build Coastguard Worker
22*9880d681SAndroid Build Coastguard Worker; CHECK: is_local
23*9880d681SAndroid Build Coastguard Workerdefine i1 @is_local(i8* %addr) {
24*9880d681SAndroid Build Coastguard Worker; CHECK: isspacep.local
25*9880d681SAndroid Build Coastguard Worker  %v = tail call i1 @llvm.nvvm.isspacep.local(i8* %addr)
26*9880d681SAndroid Build Coastguard Worker  ret i1 %v
27*9880d681SAndroid Build Coastguard Worker}
28*9880d681SAndroid Build Coastguard Worker
29*9880d681SAndroid Build Coastguard Worker; CHECK: is_shared
30*9880d681SAndroid Build Coastguard Workerdefine i1 @is_shared(i8* %addr) {
31*9880d681SAndroid Build Coastguard Worker; CHECK: isspacep.shared
32*9880d681SAndroid Build Coastguard Worker  %v = tail call i1 @llvm.nvvm.isspacep.shared(i8* %addr)
33*9880d681SAndroid Build Coastguard Worker  ret i1 %v
34*9880d681SAndroid Build Coastguard Worker}
35*9880d681SAndroid Build Coastguard Worker
36