blob: a86ba1e29d5cd8c33445c5912389b1f0979eb777 [file] [log] [blame]
Justin Holewinski4f5bc9b2013-11-11 19:28:16 +00001; RUN: llc < %s -march=nvptx -mcpu=sm_20 | FileCheck %s
2
3target triple = "nvptx-unknown-cuda"
4
5; CHECK: .visible .func foo
6define void @foo(<8 x i8> %a, i8* %b) {
Artem Belevich29bbdc12017-02-21 22:56:05 +00007; CHECK-DAG: ld.param.v4.u8 {[[E0:%rs[0-9]+]], [[E1:%rs[0-9]+]], [[E2:%rs[0-9]+]], [[E3:%rs[0-9]+]]}, [foo_param_0]
8; CHECK-DAG: ld.param.v4.u8 {[[E4:%rs[0-9]+]], [[E5:%rs[0-9]+]], [[E6:%rs[0-9]+]], [[E7:%rs[0-9]+]]}, [foo_param_0+4]
9; CHECK-DAG: ld.param.u32 %[[B:r[0-9+]]], [foo_param_1]
Hans Wennborgb00ffd82017-05-18 18:50:05 +000010; CHECK: add.s16 [[T:%rs[0-9+]]], [[E1]], [[E6]];
Artem Belevich29bbdc12017-02-21 22:56:05 +000011; CHECK: st.u8 [%[[B]]], [[T]];
12 %t0 = extractelement <8 x i8> %a, i32 1
13 %t1 = extractelement <8 x i8> %a, i32 6
14 %t = add i8 %t0, %t1
15 store i8 %t, i8* %b
Justin Holewinski4f5bc9b2013-11-11 19:28:16 +000016 ret void
17}
18