Go to file
Jiong Wang 66b18e5755 [BPF] add code-gen support for JMP32 instructions
JMP32 instructions has been added to eBPF ISA. They are 32-bit variants of
existing BPF conditional jump instructions, but the comparison happens on
low 32-bit sub-register only, therefore some unnecessary extensions could
be saved.

JMP32 instructions will only be available for -mcpu=v3. Host probe hook has
been updated accordingly.

JMP32 instructions will only be enabled in code-gen when -mattr=+alu32
enabled, meaning compiling the program using sub-register mode.

For JMP32 encoding, it is a new instruction class, and is using the
reserved eBPF class number 0x6.

This patch has been tested by compiling and running kernel bpf selftests
with JMP32 enabled.

Acked-by: Yonghong Song <yhs@fb.com>
Signed-off-by: Jiong Wang <jiong.wang@netronome.com>
llvm-svn: 353384
2019-02-07 10:43:09 +00:00
clang Move the SMT API to LLVM 2019-02-07 03:19:45 +00:00
clang-tools-extra [clang-tidy] Expand and clarify the NOLINT documentation a bit. 2019-02-07 10:34:43 +00:00
compiler-rt [sanitizer] Fix Android tests 2019-02-07 07:40:33 +00:00
debuginfo-tests Set config.lit_tools_dir, which is needed by lit.llvm.initialize. 2018-11-06 21:54:27 +00:00
libclc Adjust documentation for git migration. 2019-01-29 16:37:27 +00:00
libcxx Revert "[libc++] Only add dylib-related features when using the system's libc++" 2019-02-06 18:33:02 +00:00
libcxxabi [CMake] Support compiler-rt builtins library in tests 2019-02-05 19:50:47 +00:00
libunwind [CMake] Support compiler-rt builtins library in tests 2019-02-05 19:50:47 +00:00
lld [LLD][ELF] - Set DF_STATIC_TLS flag for X64 target 2019-02-07 07:59:43 +00:00
lldb Fix documentation formatting for ShellExpandArguments 2019-02-07 09:47:57 +00:00
llgo Adjust documentation for git migration. 2019-01-29 16:37:27 +00:00
llvm [BPF] add code-gen support for JMP32 instructions 2019-02-07 10:43:09 +00:00
openmp [OMPT] Make sure that OMPT is enabled when accessing internals of the runtime 2019-02-04 15:59:42 +00:00
parallel-libs Fix typos throughout the license files that somehow I and my reviewers 2019-01-21 09:52:34 +00:00
polly Adjust documentation for git migration. 2019-01-29 16:37:27 +00:00
pstl Fix typos throughout the license files that somehow I and my reviewers 2019-01-21 09:52:34 +00:00
.arcconfig Update monorepo .arcconfig with new project callsign. 2019-01-31 14:34:59 +00:00
.clang-format Add .clang-tidy and .clang-format files to the toplevel of the 2019-01-29 16:43:16 +00:00
.clang-tidy Disable tidy checks with too many hits 2019-02-01 11:20:13 +00:00
README.md

README.md

The LLVM Compiler Infrastructure

This directory and its subdirectories contain source code for LLVM, a toolkit for the construction of highly optimized compilers, optimizers, and runtime environments.