Skip to main content

Crate synth_backend

Crate synth_backend 

Source
Expand description

Synth Backend - Code generation and binary emission

Generic scaffolding (ELF builder, linker scripts, memory layout) is always available. ARM-specific modules are behind the arm-cortex-m feature.

Re-exports§

pub use elf_builder::ArmRelocationType;
pub use elf_builder::EF_ARM_ABI_FLOAT_HARD;
pub use elf_builder::EF_ARM_ABI_FLOAT_SOFT;
pub use elf_builder::EF_ARM_EABI_VER5;
pub use elf_builder::ElfBuilder;
pub use elf_builder::ElfClass;
pub use elf_builder::ElfData;
pub use elf_builder::ElfMachine;
pub use elf_builder::ElfType;
pub use elf_builder::ProgramFlags;
pub use elf_builder::ProgramHeader;
pub use elf_builder::ProgramType;
pub use elf_builder::Relocation;
pub use elf_builder::Section;
pub use elf_builder::SectionFlags;
pub use elf_builder::SectionType as ElfSectionType;
pub use elf_builder::Symbol;
pub use elf_builder::SymbolBinding;
pub use elf_builder::SymbolType;
pub use linker_script::LinkerScriptGenerator;
pub use linker_script::MemoryRegion;
pub use memory_layout::MemoryLayout;
pub use memory_layout::MemoryLayoutAnalyzer;
pub use memory_layout::MemorySection;
pub use memory_layout::SectionType;
pub use mpu::MPUAttributes;
pub use mpu::MPUPermissions;
pub use mpu::MPURegion;
pub use mpu::MPUSize;
pub use mpu_allocator::MPUAllocationRequest;
pub use mpu_allocator::MPUAllocator;
pub use w2c2_wrapper::TranspileOptions;
pub use w2c2_wrapper::TranspileResult;
pub use w2c2_wrapper::W2C2Backend;
pub use w2c2_wrapper::W2C2Transpiler;
pub use arm_backend::ArmBackend;
pub use arm_encoder::ArmEncoder;
pub use arm_startup::ARMStartupGenerator;
pub use reset_handler::ResetHandlerGenerator;
pub use vector_table::VectorEntry;
pub use vector_table::VectorTable;

Modules§

arm_backend
ARM Backend — wraps the instruction selector + optimizer + encoder as a Backend
arm_encoder
ARM Code Encoder - Converts ARM instructions to binary machine code
arm_startup
ARM Cortex-M Startup Code Generation
cortex_m
Cortex-M specific code generation
elf_builder
ELF (Executable and Linkable Format) Builder for ARM
linker_script
Linker Script Generator for ARM Cortex-M
memory_layout
Memory Layout Analyzer
mpu
ARM Cortex-M Memory Protection Unit (MPU) Support
mpu_allocator
MPU Region Allocator
reset_handler
Reset Handler Code Generation
vector_table
ARM Cortex-M Vector Table Generation
w2c2_wrapper
w2c2 WebAssembly-to-C Transpiler Wrapper