Skip to content

Releases: solana-labs/rbpf

solana_rbpf v0.3.0

04 Apr 11:59
44487c3
Compare
Choose a tag to compare
  • #455: Cleanup - Error message wording "at BPF instruction"
  • #454: Verifier - Stricter control flow
  • #453: Fix - Checkes enable_instruction_meter consistently at the callee
  • #451: Fix - Interpreter not limiting the instruction meter on the final exit
  • #449: Refactor - remove EbpfError::UserError, use Box<dyn std::error::Error> instead

solana_rbpf v0.2.40

10 Mar 10:26
d3f64cd
Compare
Choose a tag to compare
  • #448: Cleanup - Preparation for refactoring of Errors
  • #447: Refactor - Remove emit_profile_instruction_count_finalize()
  • #446: Cleanup - Adds test_utils::assert_error!()
  • #445: MemoryRegion: add tests and fix unaligned mapping bug
  • #444: Fix - Instruction meter in syscall error case
  • #443: Replaces check closure by expected_result parameter
  • #437: Add CoW support to MemoryRegion

solana_rbpf v0.2.39

17 Feb 23:32
de4e9fa
Compare
Choose a tag to compare
  • #441: Fix - Allow SBF machine in new ELF parser only
  • #440: Fix - Makes functions starting in the middle of lddw fail verification in SBFv2
  • #439: Refactor - Unify call and callx error handlers in JIT
  • #438: Fix - lints, fix ci a bit
  • #435: Refactor - Add load(), store() and region() methods to MemoryMapping
  • #434: Fix - handling of 64_64 relocations in non .text sections for SBFv2
  • #433: Fix - Resolving function names in disassembler

solana_rbpf v0.2.38

08 Dec 12:04
5a6a7a3
Compare
Choose a tag to compare
  • #429: Fix - Monorepo build
  • #428: Refactor - Pass Config in BuiltInProgram::new_loader()
  • #427: Recompiled all ELFs with SBFv2
  • #426: Refactor - Move function names in BuiltInPrograms
  • #425: Refactor - Rename SyscallRegistry to BuiltInProgram
  • #412: Refactor - disassemble_instruction() in order to get rid of generic
  • #423: Refactor - Removes redundant Interpreter wrapping in debugger
  • #422: Feature - Memory management on Windows
  • #413: Refactor - Wraps SyscallRegistry in std::sync::Arc
  • #421: Refactor - Remove RuntimeEnvironment::frame_pointer
  • #420: Refactor - Unify handling of ProgramResult
  • #419: Refactor - AccessViolation pc
  • #418: Refactor - Control registers and entry of Interpreter in VM
  • #417: Refactor - Simplifies the call stack handling inside the Interpreter
  • #416: Cleanup - cfg, cargo fmt and clippy
  • #415: Cleanup - JitCompiler and JitProgram
  • #414: Refactor - RuntimeEnvironment

solana_rbpf v0.2.37

17 Nov 17:34
bc97474
Compare
Choose a tag to compare

#410: Fixes errno on target_os = "android"

solana_rbpf v0.2.36

14 Nov 23:05
adb5ed3
Compare
Choose a tag to compare
  • #407: Refactor - Moves some members of EbpfVm into Interpreter
  • #406: Refactor - Merge execute_program()
  • #405: Refactor - Return instruction count after execution
  • #404: Refactor - Merge Tracer into ContextObject
  • #403: Remove - 'static lifetime constraints
  • #402: Refactor - Frees up R10 in JIT
  • #401: Refactor - Use ContextObject type in syscalls
  • #400: Refactor - ContextObject
  • #398: Fix - nightly lints
  • #397: Refactor - Restrict callx to registered functions
  • #396: Refactor - Enforces explicit declaration of functions in assembler
  • #395: Refactor - FunctionRegistry
  • #394: Refactor - Stop hashing when static syscalls is active

solana_rbpf v0.2.35

24 Oct 22:23
Compare
Choose a tag to compare
  • #392 Recognize new SBF machine code in ELF header

solana_rbpf v0.2.34

06 Oct 11:28
92e4765
Compare
Choose a tag to compare
  • #391: Fix - interface of bencher in nightly test crate
  • #389: Refactor AlignedMemory
  • #388: Refactor - Move EbpfVm::bind_syscall_context_object() to EbpfVm::new()
  • #387: Refactor - Reduces having one syscall context object per syscall to having one per vm instance
  • #386: Fix - Adds StableResult
  • #385: Refactor - Replaces syscalls::Result by vm::ProgramResult
  • #384: Refactor - Removes generic UserError from EbpfError

solana_rbpf v0.2.33

27 Sep 17:57
6e3ffd4
Compare
Choose a tag to compare
  • #363: Resolve unaligned memory regions
  • #381: Fix - Lookup BPF function only if its not a syscall
  • #379: AlignedMemory add write_*_unchecked variants
  • #378: Fix - Adds MACHINE_CODE_PER_INSTRUCTION_METER_CHECKPOINT to code_length_estimate in JIT
  • #380: Fix - Result type encoding in JIT
  • #377: Cleanup - Turn Pin<Box<Executable<E, I>>> back to Executable<E, I>
  • #376: Fix #355 - Do not use PhantomData if the JIT feature is active
  • #338: Feature - Add debugger
  • #355: Allow interpreter-only builds

solana_rbpf v0.2.32

15 Aug 07:46
fbff683
Compare
Choose a tag to compare
  • #362: Refactor the way memory mapping, syscalls and instruction tracer are passed to programs
  • #372: Remove unused ElfParser::symbol() method
  • #361: Make EbpfError enum discriminant size explicit
  • #368: Refactor - AlignedMemory::resize()
  • #348: Introduce new ELF parser
  • #360: AlignedMemory: use calloc to get zeroed memory
  • #357: Fixes the missing entrypoint in the "disassemble" example
  • #353: Cleanup old feature gates
  • #351: AlignedMemory tweaks
  • #350: CI - generate test coverage
  • #349: fix nit
  • #347: use native types
  • #346: Remove unused helpers
  • #345: audit nits