On 09/23/2016 10:35 PM, Naveen N. Rao wrote:
In line with similar support for other architectures by Daniel Borkmann.

'MOD Default X' from test_bpf without constant blinding:
84 bytes emitted from JIT compiler (pass:3, flen:7)
d0000000058a4688 + <x>:
    0:  nop
    4:  nop
    8:  std     r27,-40(r1)
    c:  std     r28,-32(r1)
   10:  xor     r8,r8,r8
   14:  xor     r28,r28,r28
   18:  mr      r27,r3
   1c:  li      r8,66
   20:  cmpwi   r28,0
   24:  bne     0x0000000000000030
   28:  li      r8,0
   2c:  b       0x0000000000000044
   30:  divwu   r9,r8,r28
   34:  mullw   r9,r28,r9
   38:  subf    r8,r9,r8
   3c:  rotlwi  r8,r8,0
   40:  li      r8,66
   44:  ld      r27,-40(r1)
   48:  ld      r28,-32(r1)
   4c:  mr      r3,r8
   50:  blr

... and with constant blinding:
140 bytes emitted from JIT compiler (pass:3, flen:11)
d00000000bd6ab24 + <x>:
    0:  nop
    4:  nop
    8:  std     r27,-40(r1)
    c:  std     r28,-32(r1)
   10:  xor     r8,r8,r8
   14:  xor     r28,r28,r28
   18:  mr      r27,r3
   1c:  lis     r2,-22834
   20:  ori     r2,r2,36083
   24:  rotlwi  r2,r2,0
   28:  xori    r2,r2,36017
   2c:  xoris   r2,r2,42702
   30:  rotlwi  r2,r2,0
   34:  mr      r8,r2
   38:  rotlwi  r8,r8,0
   3c:  cmpwi   r28,0
   40:  bne     0x000000000000004c
   44:  li      r8,0
   48:  b       0x000000000000007c
   4c:  divwu   r9,r8,r28
   50:  mullw   r9,r28,r9
   54:  subf    r8,r9,r8
   58:  rotlwi  r8,r8,0
   5c:  lis     r2,-17137
   60:  ori     r2,r2,39065
   64:  rotlwi  r2,r2,0
   68:  xori    r2,r2,39131
   6c:  xoris   r2,r2,48399
   70:  rotlwi  r2,r2,0
   74:  mr      r8,r2
   78:  rotlwi  r8,r8,0
   7c:  ld      r27,-40(r1)
   80:  ld      r28,-32(r1)
   84:  mr      r3,r8
   88:  blr

Signed-off-by: Naveen N. Rao <naveen.n....@linux.vnet.ibm.com>

Acked-by: Daniel Borkmann <dan...@iogearbox.net>

Reply via email to