Expand description
DWARF expression evaluation results for LLVM/eBPF code generation
This module defines the simplified representation of DWARF expressions that can be directly converted to LLVM IR for eBPF code generation.
Design principles:
- Optimize for eBPF constraints (read registers from pt_regs, read memory via bpf_probe_read_user)
- Pre-compute as much as possible at compile time
- Clearly separate value semantics from location semantics
- Make register dependencies explicit for eBPF verification
Structs§
- Piece
Result - Piece of a composite location
Enums§
- CfaResult
- CFA (Canonical Frame Address) computation for stack variables
- Compute
Step - Computation step for LLVM IR generation These map directly to LLVM IR operations that can be generated in eBPF
- Direct
Value Result - Direct value results - expression produces the variable value directly
- Evaluation
Result - Result of evaluating a DWARF expression for eBPF code generation
- Location
Result - Memory location results - expression produces an address to be read via bpf_probe_read_user
- Memory
Access Size - Memory access size for bpf_probe_read_user