Files
clang-p2996/llvm/test/CodeGen/NVPTX/tid-range.ll
Andrew Savonichev 0f1b5f115a [NVPTX] Integrate ptxas to LIT tests
ptxas is a proprietary compiler from Nvidia that can compile PTX to
machine code (SASS). It has a lot of diagnostics to catch errors
in PTX, which can be used to verify PTX output from llc.

Set -DPXTAS_EXECUTABLE=/path/to/ptxas CMake option to enable it.
If this option is not set, then ptxas is substituted to true which
effectively disables all ptxas RUN lines.

LLVM_PTXAS_EXECUTABLE environment variable takes precedence over
the CMake option, and allows to override ptxas executable that is used for LIT
without complete re-configuration.

Differential Revision: https://reviews.llvm.org/D121727
2022-04-28 14:59:45 +03:00

21 lines
496 B
LLVM

; RUN: llc < %s -march=nvptx64 | FileCheck %s
; RUN: %if ptxas %{ llc < %s -march=nvptx64 | %ptxas-verify %}
declare i32 @get_register()
define i1 @test1() {
entry:
%call = call i32 @llvm.nvvm.read.ptx.sreg.tid.x(), !range !0
%cmp = icmp eq i32 %call, 1
ret i1 %cmp
}
; CHECK-LABEL: test1(
; CHECK: setp.eq.s32 %p1, %r1, 1;
; CHECK: selp.u32 %[[R:.+]], 1, 0, %p1;
; CHECK: st.param.b32 [func_retval0+0], %[[R]];
declare i32 @llvm.nvvm.read.ptx.sreg.tid.x()
!0 = !{ i32 0, i32 3 }