Configuration Files
The primary configuration is stored in a.toml file that you pass to the recompiler. This file controls:
- Project settings - Project name, input/output paths
- Code generation options - Register allocation, optimization flags
- Analysis tuning - Function size limits, data region detection
- Manual overrides - Functions, jump tables, hooks
Configuration Structure
Configuration Hierarchy
- Project-level - vcpkg.json, CMakeLists.txt for build system
- Recompiler config - TOML file for codegen behavior
- Source-level - Function annotations and attributes
Validation
The configuration is validated before code generation:- All addresses must be 4-byte aligned (PowerPC instruction alignment)
- Function boundaries cannot overlap (except chunks)
sizeandendare mutually exclusive- Required fields (
file_path) must be present
Loading Configuration
In C++ code:See Also
- Project Configuration - Build system setup
- Codegen Config - TOML reference
- Functions - Function and chunk configuration
- Hooks - Mid-assembly hook system