clean up to gsound! (#709)

This commit is contained in:
water111
2021-07-19 20:49:33 -04:00
committed by GitHub
parent 9ed1170046
commit c76b51d805
27 changed files with 2263 additions and 218 deletions
+10 -1
View File
@@ -306,8 +306,17 @@ void ObjectFileDB::ir2_atomic_op_pass(const Config& config) {
bool inline_asm =
config.hacks.hint_inline_assembly_functions.find(func.guessed_name.to_string()) !=
config.hacks.hint_inline_assembly_functions.end();
std::unordered_set<int> blocks_ending_in_asm_branch;
auto asm_branch_it = config.hacks.blocks_ending_in_asm_branch_by_func_name.find(
func.guessed_name.to_string());
if (asm_branch_it != config.hacks.blocks_ending_in_asm_branch_by_func_name.end()) {
blocks_ending_in_asm_branch = asm_branch_it->second;
}
auto ops = convert_function_to_atomic_ops(func, data.linked_data.labels, func.warnings,
inline_asm);
inline_asm, blocks_ending_in_asm_branch);
func.ir2.atomic_ops = std::make_shared<FunctionAtomicOps>(std::move(ops));
func.ir2.atomic_ops_succeeded = true;
func.ir2.env.set_end_var(func.ir2.atomic_ops->end_op().return_var());