The compiler is fully portable, so you can use the whistler package or whistler cli to generate bpf object files. The loader (whistler/loader) has some sbcl-isms that could probably be made portable. This is primarily used for inlining bpf code in your lisp program. Feel free to open an Issue on this.
Looks awesome! Did you find you needed to emit code in particular ways so the verifier would be happy?
Yes, there were a number of little things. For instance, the verifier doesn't allow for backwards jumps, so you have to make sure the return block is at the end of the code.
zmitchell | 2 hours ago
Pretty cool! Does the BPF code have CO-RE helper support?
[OP] atgreen | 2 hours ago
Yes
marcecoll | 10 hours ago
Woah, this is amazing, I've been rekindling my CL love these last couple of days. Is it SBCL only?
[OP] atgreen | 8 hours ago
The compiler is fully portable, so you can use the whistler package or whistler cli to generate bpf object files. The loader (
whistler/loader) has some sbcl-isms that could probably be made portable. This is primarily used for inlining bpf code in your lisp program. Feel free to open an Issue on this.deivid | 7 hours ago
Looks awesome! Did you find you needed to emit code in particular ways so the verifier would be happy?
[OP] atgreen | 5 hours ago
Yes, there were a number of little things. For instance, the verifier doesn't allow for backwards jumps, so you have to make sure the return block is at the end of the code.