mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-08-14 09:18:09 +00:00
fix source of vmap baking determinism issue, + fix use-after-free from cross-lane scratch usage
This commit is contained in:
@@ -4837,6 +4837,7 @@ p2r_convert(Arena *arena, P2R_ConvertParams *params)
|
||||
result.line_tables = all_line_tables;
|
||||
}
|
||||
|
||||
lane_sync();
|
||||
scratch_end(scratch);
|
||||
return result;
|
||||
}
|
||||
|
||||
@@ -881,7 +881,7 @@ rdim_bake(Arena *arena, RDIM_BakeParams *params)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
lane_sync();
|
||||
scratch_end(scratch);
|
||||
}
|
||||
lane_sync();
|
||||
@@ -3202,7 +3202,7 @@ rdim_bake(Arena *arena, RDIM_BakeParams *params)
|
||||
for EachNode(case_n, RDIM_LocationCase, s->location_cases.first)
|
||||
{
|
||||
lane_chunk_constant_data_counts[slot_idx] += case_n->location.value_data.size;
|
||||
lane_chunk_bytecode_data_counts[slot_idx] += case_n->location.bytecode.encoded_size;
|
||||
lane_chunk_bytecode_data_counts[slot_idx] += case_n->location.bytecode.encoded_size + 1; // NOTE(rjf): +1 for the `stop` op
|
||||
}
|
||||
}
|
||||
chunk_idx += 1;
|
||||
|
||||
Reference in New Issue
Block a user