aboutsummaryrefslogtreecommitdiff
path: root/llvm/test/CodeGen/NVPTX/module-inline-asm.ll
blob: 345e06d000bfeb0f2763d1ca6b5cabef15fe394a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
; RUN: llc < %s -mtriple=nvptx64 -mcpu=sm_20 | FileCheck %s
; RUN: %if ptxas %{ llc < %s -mtriple=nvptx64 -mcpu=sm_20 | %ptxas-verify %}

target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v16:16:16-v32:32:32-v64:64:64-v128:128:128-n16:32:64"

; module asm must come after PTX version/target directives.
; CHECK-NOT: .global .b32 val;

; CHECK-DAG: .version
; CHECK-DAG: .target

; CHECK: .global .b32 val;
module asm ".global .b32 val;"

; module asm must happen before we emit other things.
; CHECK-LABEL: .visible .func foo
define void @foo() {
  ret void
}
; Make sure it does not show up anywhere else in the output.
; CHECK-NOT: .global .b32 val;