hi justn,<br><br>I have a llvm ir file which is generated by my own code generator.<br>When I run <br><br><b>llc -march=ptx64 ./gpu_kernel.ll </b><br><br>on it, the following error was given<br><br>LLVM ERROR: Cannot select: 0x269a7a0: ch = store 0x2666370, 0x2697760, 0x269a2a0, 0x2698d90<ST4[%p_arrayidx5], trunc to i32> [ID=20]<br>
  0x2697760: i64 = add 0x2699ea0, 0x2699590 [ORD=23] [ID=16]<br>    0x2699ea0: i64 = shl 0x2699fa0, 0x269a6a0 [ORD=22] [ID=13]<br>      0x2699fa0: i64,ch = CopyFromReg 0x2666370, 0x2699990 [ORD=22] [ID=10]<br>        0x2699990: i64 = Register %vreg6 [ORD=22] [ID=2]<br>
      0x269a6a0: i32 = Constant<7> [ORD=22] [ID=3]<br>    0x2699590: i64,ch = CopyFromReg 0x2666370, 0x2699290 [ORD=23] [ID=11]<br>      0x2699290: i64 = Register %vreg7 [ORD=23] [ID=4]<br>  0x269a2a0: i32 = add 0x269a0a0, 0x2697f60 [ORD=24] [ID=19]<br>
    0x269a0a0: i32 = add 0x2699490, 0x2697a60 [ORD=24] [ID=18]<br>      0x2699490: i32,ch = CopyFromReg 0x2666370, 0x2698c90 [ORD=21] [ID=9]<br>        0x2698c90: i32 = Register %vreg8 [ORD=21] [ID=1]<br>      0x2697a60: i32 = shl 0x2699da0, 0x2697860 [ORD=24] [ID=15]<br>
        0x2699da0: i32 = truncate 0x2699fa0 [ORD=24] [ID=12]<br>          0x2699fa0: i64,ch = CopyFromReg 0x2666370, 0x2699990 [ORD=22] [ID=10]<br>            0x2699990: i64 = Register %vreg6 [ORD=22] [ID=2]<br>        0x2697860: i32 = Constant<9> [ORD=24] [ID=5]<br>
    0x2697f60: i32 = shl 0x2697b60, 0x269a4a0 [ORD=24] [ID=17]<br>      0x2697b60: i32 = truncate 0x2699590 [ORD=24] [ID=14]<br>        0x2699590: i64,ch = CopyFromReg 0x2666370, 0x2699290 [ORD=23] [ID=11]<br>          0x2699290: i64 = Register %vreg7 [ORD=23] [ID=4]<br>
      0x269a4a0: i32 = Constant<2> [ORD=24] [ID=6]<br>  0x2698d90: i32 = undef [ORD=26] [ID=7]<br><br>The ll file is attached here.<br>Please check this for me.<br>Thanks a lot!<br><br>best regards,<br>Yabin<br><br>