pub fn from_elf(path: &str) -> eyre::Result<Self> {
        let mut elf_code = Vec::new();
        File::open(path)?.read_to_end(&mut elf_code)?;
        Program::from(&elf_code)
    }
Disassemble a RV32IM ELF to a program that be executed by the VM from a file path.

# Errors

This function will return an error if the file cannot be opened or read.
crates/core/executor/src/program.rs