Module evaluation

Module evaluation 

Source
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:

  1. Optimize for eBPF constraints (read registers from pt_regs, read memory via bpf_probe_read_user)
  2. Pre-compute as much as possible at compile time
  3. Clearly separate value semantics from location semantics
  4. Make register dependencies explicit for eBPF verification

Structs§

PieceResult
Piece of a composite location

Enums§

CfaResult
CFA (Canonical Frame Address) computation for stack variables
ComputeStep
Computation step for LLVM IR generation These map directly to LLVM IR operations that can be generated in eBPF
DirectValueResult
Direct value results - expression produces the variable value directly
EvaluationResult
Result of evaluating a DWARF expression for eBPF code generation
LocationResult
Memory location results - expression produces an address to be read via bpf_probe_read_user
MemoryAccessSize
Memory access size for bpf_probe_read_user