Puranjay Mohan f9e6981b1f arm32, bpf: add support for sign-extension load instruction
The cpuv4 added the support of an instruction that is similar to load
but also sign-extends the result after the load.

BPF_MEMSX | <size> | BPF_LDX means dst = *(signed size *) (src + offset)
here <size> can be one of BPF_B, BPF_H, BPF_W.

ARM32 has instructions to load a byte or a half word with sign
extension into a 32bit register. As the JIT uses two 32 bit registers
to simulate a 64-bit BPF register, an extra instruction is emitted to
sign-extent the result up to the second register.

Signed-off-by: Puranjay Mohan <puranjay12@gmail.com>
Reviewed-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Link: https://lore.kernel.org/r/20230907230550.1417590-3-puranjay12@gmail.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
2023-09-15 17:16:56 -07:00
..
2023-09-05 11:01:47 -07:00
2023-09-04 15:38:24 -07:00
2023-09-07 13:52:20 -07:00
2023-09-01 08:02:45 -07:00
2023-08-31 12:20:12 -07:00
2023-09-05 11:01:47 -07:00
2023-09-05 12:37:28 -07:00
2023-09-05 10:15:22 -07:00
2023-09-07 13:52:20 -07:00
2023-08-31 12:20:12 -07:00
2023-09-05 10:09:31 -07:00
2023-09-05 12:37:28 -07:00
2023-09-05 12:37:28 -07:00
2023-09-07 13:52:20 -07:00
2023-08-31 12:20:12 -07:00
2023-09-05 12:37:28 -07:00
2023-09-12 13:06:12 -07:00
2023-09-07 10:30:17 -07:00
2023-08-31 12:20:12 -07:00