Skip to content

Releases: solana-labs/rbpf

solana_rbpf v0.2.31

06 Jun 17:50
ce5e8d5
Compare
Choose a tag to compare

Safer API:

  • Verifier is now a trait
  • VM creation requires a verified executable

solana_rbpf v0.2.30

03 Jun 11:33
1425e19
Compare
Choose a tag to compare
  • #339: Fix: *const u8 ptr in JitProgramSections
  • #337: Refactor: Remove Result from all emit functions
  • #336: Cleanup: Shifts down anchor indices
  • #335: Cleanup: Move encoding of jump & call instructions into X86Instruction
  • #334: Makes X86Instruction publicly unconstructable
  • #333: Optimize random no-op insertion
  • #332: Refactor: Offset the IP/PC section
  • #331: JIT: Aggressively inline emitter functions
  • #330: Refactor: Removes derived traits from the code emitter
  • #328: Refactor: Anchor relocations in JIT
  • #327: CI: Remove invalid tests
  • #326: Speedup X86Instruction::emit()
  • #325: Refactor: Remove sdiv anchor in JIT
  • #324: Fix CI
  • #323: Add verifier negative jump bounds test

solana_rbpf v0.2.29

18 May 16:07
5afcc2f
Compare
Choose a tag to compare
  • #320: Fix - ELF arithmetic overflow with invalid program headers
  • #317: Fix - typo in EbpfError::SyscallAlreadyRegistered
  • #319: Fix - ELF loading highest_addr
  • #318: CI - Add fuzz build check
  • #316: Feature - Makes MemoryRegion replaceable
  • #315: Refactor - Give the interpreter its own struct and mod
  • #314: Fix - some compile issues in the fuzzers
  • #313: Cleanup - interpreter code

solana_rbpf v0.2.28

29 Apr 14:33
96169f8
Compare
Choose a tag to compare
  • #311: Force static_syscalls=false for non-SBFv2 files
  • #310: JIT: sign-extend the quotient register on sdiv32
  • #301: ELF: add support for rodata sections already aligned to MM_PROGRAM_START
  • #296: Add support for static syscalls
  • #309: Removes the optional hash parameter from bind_syscall_context_objects()
  • #308: Bring back #293
  • #307: Set Config::dynamic_stack_frames=true by default

solana_rbpf v0.2.27

26 Apr 13:57
7c22a66
Compare
Choose a tag to compare
  • #305: Revert "Simplify syscall register and bind (#293)"
  • #303: Remove syscalls BpfRand and BpfSqrtI
  • #302: Pass custom MemoryRegions to VM constructor
  • #300: Adds test code_length_estimate
  • #289: Add a variety of fuzzers
  • #299: Add to CI checks that build and test the CLI tool
  • #297: Fix: bind_syscall_context_objects in the CLI tool
  • #298: Have StaticAnalysis constructor return a Result type
  • #295: Fix bench build

solana_rbpf v0.2.26

08 Apr 21:16
5ab331e
Compare
Choose a tag to compare
  • #293 Simplify syscall register and bind
  • #284 elf: avoid copying read-only sections
  • #292 Benchmarks for stack address translation and for call depth tracking.
  • #283 Add support for signed division
  • #274 Add support for dynamic stack frames

solana_rbpf v0.2.25

24 Mar 00:01
330baea
Compare
Choose a tag to compare

Fixes:

  • #281 Fix: Stack gap end check
  • #280 Reject callx r10
  • #278 Syscall & BPF function hash collision
  • #276 Fix: Static analyzer CHK algorithm
  • #275 Fix static analysis: Detect dead code caused by CFG cycles

CI:

  • #285 CI: Adds more test cases

Other Changes:

  • #286 Cleanup: MemoryMapping
  • #282 CLI tool independent jit_compile()
  • #277 Pull deps forward

solana_rbpf v0.2.24

17 Mar 19:09
8e835fe
Compare
Choose a tag to compare

Fixes:

  • #271 Fix: LDDW instruction meter in the Interpreter
  • #272 Fix: Static analysis CFG

solana_rbpf v0.2.23

17 Mar 19:09
2aad68e
Compare
Choose a tag to compare

Fixes:

  • #266 JIT x86 code emitter operand sizes

Other Changes:

  • #267 Cleanup: Constants for magic numbers in MemoryRegion
  • #265 Format callx operand as register

solana_rbpf v0.2.22

17 Mar 19:09
6adc245
Compare
Choose a tag to compare

Fixes:

  • #263 Fix: JIT instruction meter in exit instruction
  • #262 Fix: JIT callx unsupported instruction
  • #258 Fix: Don't munmap nothing

Other Changes:

  • #261 Feature: disable_unresolved_symbols_at_runtime
  • #256 Cleanup: Feature gate related configs
  • #254 calc executable size
  • #251 Add option to disable ldabs* and ldind* instructions

Performance:

  • #260 JIT: don't blind safe constants
  • #259 Elf load optimizations
  • #257 Performance: JIT syscall
  • #255 Performance: Truncate mmap
  • #252 Performance: JIT emit_bpf_call()

Test Builds:

  • #253 CI: Add more memory_region bounds check tests