Hi David.

> New instructions have been added over time to the eBPF ISA, but
> previously there has been no good method to select which version to
> target in GCC.
>
> This patch adds the following options to the BPF backend:
>
>   -mcpu={v1, v2, v3}
>     Select which version of the eBPF ISA to target. This enables or
>     disables generation of certain instructions. The default is v3.
>
>   -mjmpext
>     Enable extra conditional branch instructions.
>     Enabled for CPU v2 and above.
>
>   -mjmp32
>     Enable 32-bit jump/branch instructions.
>     Enabled for CPU v3 and above.
>
>   -malu32
>     Enable 32-bit ALU instructions.
>     Enabled for CPU v3 and above.
>
> Negative versions of -mjmpext, -mjmp32, and -malu32 options are also
> supported.

The series is OK.
Thanks!

>
> David Faust (3):
>   bpf: add -mcpu and related feature options
>   bpf testsuite: add tests for new feature options
>   doc: document BPF -mcpu and related options
>
>  gcc/config/bpf/bpf-opts.h            |  7 ++++
>  gcc/config/bpf/bpf-protos.h          |  1 +
>  gcc/config/bpf/bpf.c                 | 41 ++++++++++++++++++++
>  gcc/config/bpf/bpf.md                | 44 +++++++++++----------
>  gcc/config/bpf/bpf.opt               | 29 ++++++++++++++
>  gcc/doc/invoke.texi                  | 39 ++++++++++++++++++-
>  gcc/testsuite/gcc.target/bpf/alu-1.c | 56 +++++++++++++++++++++++++++
>  gcc/testsuite/gcc.target/bpf/jmp-1.c | 57 ++++++++++++++++++++++++++++
>  8 files changed, 253 insertions(+), 21 deletions(-)
>  create mode 100644 gcc/testsuite/gcc.target/bpf/alu-1.c
>  create mode 100644 gcc/testsuite/gcc.target/bpf/jmp-1.c

Reply via email to