Fixes for LLVM 4.0 and python3
authorBrenden Blanco <bblanco@gmail.com>
Thu, 5 Jan 2017 19:13:12 +0000 (11:13 -0800)
committerBrenden Blanco <bblanco@gmail.com>
Thu, 5 Jan 2017 19:18:26 +0000 (11:18 -0800)
commit2d8620469b1c48b3c363c15f95ffd0f91dcaf494
tree6a3c42cc836367d3d979496374db34a322932262
parenteb6cdda7739bfd9b6bce85b2dc4edef798590c21
Fixes for LLVM 4.0 and python3

Avoid conflicting [no]inline attributes in function annotation. This was
probably always there but now 4.0 is treating this as an error.
Also, explicitly inline several functions in helpers.h.

Turn off unwind tables in the flags passed to clang. This was generating
calls to the elf relocator, which doesn't work for the BPF target. It is
unclear which change in LLVM 4.0 altered this behavior.

On python3, handle byte strings in the usual way for supporting
backwards compatibility.

Signed-off-by: Brenden Blanco <bblanco@gmail.com>
src/cc/bpf_module.cc
src/cc/export/helpers.h
src/cc/frontends/clang/loader.cc
tools/execsnoop.py