diff --git a/pkg/sbf/elf.go b/pkg/sbf/loader/loader.go similarity index 98% rename from pkg/sbf/elf.go rename to pkg/sbf/loader/loader.go index 8f435e4..a754386 100644 --- a/pkg/sbf/elf.go +++ b/pkg/sbf/loader/loader.go @@ -1,4 +1,7 @@ -package sbf +// Package loader implements an ELF loader for the Sealevel virtual machine. +// +// Based on https://docs.rs/solana_rbpf/latest/solana_rbpf/elf_parser/index.html +package loader import ( "bufio" diff --git a/pkg/sbf/elf_test.go b/pkg/sbf/loader/loader_test.go similarity index 99% rename from pkg/sbf/elf_test.go rename to pkg/sbf/loader/loader_test.go index 3969f56..ad66311 100644 --- a/pkg/sbf/elf_test.go +++ b/pkg/sbf/loader/loader_test.go @@ -1,4 +1,4 @@ -package sbf +package loader import ( "debug/elf" diff --git a/pkg/sbf/tests/bss_section.so b/pkg/sbf/loader/tests/bss_section.so similarity index 100% rename from pkg/sbf/tests/bss_section.so rename to pkg/sbf/loader/tests/bss_section.so diff --git a/pkg/sbf/tests/empty_rodata.so b/pkg/sbf/loader/tests/empty_rodata.so similarity index 100% rename from pkg/sbf/tests/empty_rodata.so rename to pkg/sbf/loader/tests/empty_rodata.so diff --git a/pkg/sbf/tests/multiple_file.so b/pkg/sbf/loader/tests/multiple_file.so similarity index 100% rename from pkg/sbf/tests/multiple_file.so rename to pkg/sbf/loader/tests/multiple_file.so diff --git a/pkg/sbf/tests/noop.so b/pkg/sbf/loader/tests/noop.so similarity index 100% rename from pkg/sbf/tests/noop.so rename to pkg/sbf/loader/tests/noop.so diff --git a/pkg/sbf/tests/noro.so b/pkg/sbf/loader/tests/noro.so similarity index 100% rename from pkg/sbf/tests/noro.so rename to pkg/sbf/loader/tests/noro.so diff --git a/pkg/sbf/tests/pass_stack_reference.so b/pkg/sbf/loader/tests/pass_stack_reference.so similarity index 100% rename from pkg/sbf/tests/pass_stack_reference.so rename to pkg/sbf/loader/tests/pass_stack_reference.so diff --git a/pkg/sbf/tests/program_headers_overflow.so b/pkg/sbf/loader/tests/program_headers_overflow.so similarity index 100% rename from pkg/sbf/tests/program_headers_overflow.so rename to pkg/sbf/loader/tests/program_headers_overflow.so diff --git a/pkg/sbf/tests/relative_call.so b/pkg/sbf/loader/tests/relative_call.so similarity index 100% rename from pkg/sbf/tests/relative_call.so rename to pkg/sbf/loader/tests/relative_call.so diff --git a/pkg/sbf/tests/reloc_64_64.so b/pkg/sbf/loader/tests/reloc_64_64.so similarity index 100% rename from pkg/sbf/tests/reloc_64_64.so rename to pkg/sbf/loader/tests/reloc_64_64.so diff --git a/pkg/sbf/tests/reloc_64_64_high_vaddr.so b/pkg/sbf/loader/tests/reloc_64_64_high_vaddr.so similarity index 100% rename from pkg/sbf/tests/reloc_64_64_high_vaddr.so rename to pkg/sbf/loader/tests/reloc_64_64_high_vaddr.so diff --git a/pkg/sbf/tests/reloc_64_relative.so b/pkg/sbf/loader/tests/reloc_64_relative.so similarity index 100% rename from pkg/sbf/tests/reloc_64_relative.so rename to pkg/sbf/loader/tests/reloc_64_relative.so diff --git a/pkg/sbf/tests/reloc_64_relative_data.so b/pkg/sbf/loader/tests/reloc_64_relative_data.so similarity index 100% rename from pkg/sbf/tests/reloc_64_relative_data.so rename to pkg/sbf/loader/tests/reloc_64_relative_data.so diff --git a/pkg/sbf/tests/reloc_64_relative_data_high_vaddr.so b/pkg/sbf/loader/tests/reloc_64_relative_data_high_vaddr.so similarity index 100% rename from pkg/sbf/tests/reloc_64_relative_data_high_vaddr.so rename to pkg/sbf/loader/tests/reloc_64_relative_data_high_vaddr.so diff --git a/pkg/sbf/tests/reloc_64_relative_data_pre_sbfv2.so b/pkg/sbf/loader/tests/reloc_64_relative_data_pre_sbfv2.so similarity index 100% rename from pkg/sbf/tests/reloc_64_relative_data_pre_sbfv2.so rename to pkg/sbf/loader/tests/reloc_64_relative_data_pre_sbfv2.so diff --git a/pkg/sbf/tests/reloc_64_relative_high_vaddr.so b/pkg/sbf/loader/tests/reloc_64_relative_high_vaddr.so similarity index 100% rename from pkg/sbf/tests/reloc_64_relative_high_vaddr.so rename to pkg/sbf/loader/tests/reloc_64_relative_high_vaddr.so diff --git a/pkg/sbf/tests/rodata.so b/pkg/sbf/loader/tests/rodata.so similarity index 100% rename from pkg/sbf/tests/rodata.so rename to pkg/sbf/loader/tests/rodata.so diff --git a/pkg/sbf/tests/rodata_high_vaddr.so b/pkg/sbf/loader/tests/rodata_high_vaddr.so similarity index 100% rename from pkg/sbf/tests/rodata_high_vaddr.so rename to pkg/sbf/loader/tests/rodata_high_vaddr.so diff --git a/pkg/sbf/tests/scratch_registers.so b/pkg/sbf/loader/tests/scratch_registers.so similarity index 100% rename from pkg/sbf/tests/scratch_registers.so rename to pkg/sbf/loader/tests/scratch_registers.so diff --git a/pkg/sbf/tests/syscall_static.so b/pkg/sbf/loader/tests/syscall_static.so similarity index 100% rename from pkg/sbf/tests/syscall_static.so rename to pkg/sbf/loader/tests/syscall_static.so diff --git a/pkg/sbf/tests/syscall_static_unknown.so b/pkg/sbf/loader/tests/syscall_static_unknown.so similarity index 100% rename from pkg/sbf/tests/syscall_static_unknown.so rename to pkg/sbf/loader/tests/syscall_static_unknown.so diff --git a/pkg/sbf/tests/unresolved_syscall.so b/pkg/sbf/loader/tests/unresolved_syscall.so similarity index 100% rename from pkg/sbf/tests/unresolved_syscall.so rename to pkg/sbf/loader/tests/unresolved_syscall.so diff --git a/pkg/sbf/tests/writable_data_section.so b/pkg/sbf/loader/tests/writable_data_section.so similarity index 100% rename from pkg/sbf/tests/writable_data_section.so rename to pkg/sbf/loader/tests/writable_data_section.so