aboutsummaryrefslogtreecommitdiffstats
path: root/tools/bpf
diff options
context:
space:
mode:
authorAlexei Starovoitov <ast@kernel.org>2019-01-23 17:35:33 -0800
committerAlexei Starovoitov <ast@kernel.org>2019-01-23 17:35:33 -0800
commit923cefe3f90148b5da26433f6affbce7908e528d (patch)
tree28a991a3a4afc3b0116f559f139c94e473044499 /tools/bpf
parentselftests/bpf: don't hardcode iptables/nc path in test_tcpnotify_user (diff)
parentnfp: bpf: support removing dead code (diff)
downloadlinux-dev-923cefe3f90148b5da26433f6affbce7908e528d.tar.xz
linux-dev-923cefe3f90148b5da26433f6affbce7908e528d.zip
Merge branch 'dead-code-elimination'
Jakub Kicinski says: ==================== This set adds support for complete removal of dead code. Patch 3 contains all the code removal logic, patches 2 and 4 additionally optimize branches around and to dead code. Patches 6 and 7 allow offload JITs to take advantage of the optimization. After a few small clean ups (8, 9, 10) nfp support is added (11, 12). Removing code directly in the verifier makes it easy to adjust the relevant metadata (line info, subprogram info). JITs for code store constrained architectures would have hard time performing such adjustments at JIT level. Removing subprograms or line info is very hard once BPF core finished the verification. For user space to perform dead code removal it would have to perform the execution simulation/analysis similar to what the verifier does. v3: - fix uninitilized var warning in GCC 6 (buildbot). v4: - simplify the linfo-keeping logic (Yonghong). Instead of trying to figure out that we are removing first instruction of a subprogram, just always keep last dead line info, if first live instruction doesn't have one. v5: - improve comments (Martin Lau). ==================== Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Diffstat (limited to 'tools/bpf')
0 files changed, 0 insertions, 0 deletions