bpf.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* bpf: jit: s390 64/32 bits for index in tail call
@ 2019-06-25 16:56 Yauheni Kaliuta
  2019-07-03  9:22 ` Ilya Leoshkevich
  0 siblings, 1 reply; 2+ messages in thread
From: Yauheni Kaliuta @ 2019-06-25 16:56 UTC (permalink / raw)
  To: Michael Holzheu; +Cc: bpf, Jiri Olsa

Hi!

I have a question about 6651ee070b3124fe9b9db383e3a895a0e4aded65

```
    With this patch a tail call generates the following code on s390x:
    
     if (index >= array->map.max_entries)
             goto out
     000003ff8001c7e4: e31030100016   llgf    %r1,16(%r3)
     000003ff8001c7ea: ec41001fa065   clgrj   %r4,%r1,10,3ff8001c828
```

Do I understand corretly, that it uses 64 bit index value?

"runtime/jit: pass > 32bit index to tail_call"
test_verifier's test fails for me and I see, for example,
/* mov edx, edx */  in the x86 implementation


-- 
WBR,
Yauheni Kaliuta

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: bpf: jit: s390 64/32 bits for index in tail call
  2019-06-25 16:56 bpf: jit: s390 64/32 bits for index in tail call Yauheni Kaliuta
@ 2019-07-03  9:22 ` Ilya Leoshkevich
  0 siblings, 0 replies; 2+ messages in thread
From: Ilya Leoshkevich @ 2019-07-03  9:22 UTC (permalink / raw)
  To: Yauheni Kaliuta; +Cc: Michael Holzheu, bpf, Jiri Olsa

> ```
>    With this patch a tail call generates the following code on s390x:
> 
>     if (index >= array->map.max_entries)
>             goto out
>     000003ff8001c7e4: e31030100016   llgf    %r1,16(%r3)
>     000003ff8001c7ea: ec41001fa065   clgrj   %r4,%r1,10,3ff8001c828
> ```
> 
> Do I understand corretly, that it uses 64 bit index value?
> 
> "runtime/jit: pass > 32bit index to tail_call"
> test_verifier's test fails for me and I see, for example,
> /* mov edx, edx */  in the x86 implementation

Hi Yauheni,

llgf zero-extends a 32-bit value and puts it into a register, so I would
expect index to be a 32-bit value here. This test passes for me:

#752/u runtime/jit: pass > 32bit index to tail_call OK
#752/p runtime/jit: pass > 32bit index to tail_call OK

Which machine are you using for testing? I tried that on z14 (3906).

Best regards,
Ilya


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2019-07-03  9:23 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-25 16:56 bpf: jit: s390 64/32 bits for index in tail call Yauheni Kaliuta
2019-07-03  9:22 ` Ilya Leoshkevich

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).