mirror of
https://github.com/torvalds/linux.git
synced 2024-12-25 12:21:37 +00:00
804ec72c68
This patch adds functions for encoding and emitting compressed riscv (RVC) instructions to the BPF JIT. Some regular riscv instructions can be compressed into an RVC instruction if the instruction fields meet some requirements. For example, "add rd, rs1, rs2" can be compressed into "c.add rd, rs2" when rd == rs1. To make using RVC encodings simpler, this patch also adds helper functions that selectively emit either a regular instruction or a compressed instruction if possible. For example, emit_add will produce a "c.add" if possible and regular "add" otherwise. Signed-off-by: Luke Nelson <luke.r.nels@gmail.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org> Link: https://lore.kernel.org/bpf/20200721025241.8077-3-luke.r.nels@gmail.com |
||
---|---|---|
.. | ||
bpf_jit_comp32.c | ||
bpf_jit_comp64.c | ||
bpf_jit_core.c | ||
bpf_jit.h | ||
Makefile |