mirror of
https://github.com/open-goal/jak-project
synced 2026-05-23 06:54:31 -04:00
[decompiler] ASM Branching Support (#677)
* basic example working in geometry * before updating offline' * clean up * temp * progress
This commit is contained in:
@@ -219,7 +219,15 @@ void ObjectFileDB::ir2_basic_block_pass(const Config& config) {
|
||||
if (lookup != config.hacks.cond_with_else_len_by_func_name.end()) {
|
||||
hack = lookup->second;
|
||||
}
|
||||
func.cfg = build_cfg(data.linked_data, segment_id, func, hack);
|
||||
|
||||
std::unordered_set<int> asm_br_blocks;
|
||||
auto asm_lookup =
|
||||
config.hacks.blocks_ending_in_asm_branch_by_func_name.find(func.guessed_name.to_string());
|
||||
if (asm_lookup != config.hacks.blocks_ending_in_asm_branch_by_func_name.end()) {
|
||||
asm_br_blocks = asm_lookup->second;
|
||||
}
|
||||
|
||||
func.cfg = build_cfg(data.linked_data, segment_id, func, hack, asm_br_blocks);
|
||||
if (!func.cfg->is_fully_resolved()) {
|
||||
lg::warn("Function {} from {} failed to build control flow graph!",
|
||||
func.guessed_name.to_string(), data.to_unique_name());
|
||||
|
||||
Reference in New Issue
Block a user