beignet

あ、これ出力asm見れるのか。


Kernel BuilderはGPUだとasm見れないから諦めていた。

$ export OCL_OUTPUT_ASM=1
$ ./a.out
    <.. snip ..>
hello's disassemble begin:
  L0:
    (       0)  mov(16)         g2<1>:UW        0xffffUW                        { align1 WE_all 1H };
    (       2)  mov(16)         g2<1>:UW        0x0UW                           { align1 WE_normal 1H };
    (       4)  mov(1)          g1<2>:UW        0x0UW                           { align1 WE_normal };
    (       6)  mov(1)          g1.2<2>:UW      -1W                             { align1 WE_normal };
    (       8)  cmp.le(16)      null:UW         g2<8,8,1>:UW    0x0UW           { align1 WE_all 1H switch };
    (      10)  (+f0) if(16) 70                                                 { align1 WE_normal 1H };
    <.. snip ..>
    (      95)  nop                                                             ;
    (      97)  nop                                                             ;
    (      99)  nop                                                             ;

とかになる。