don't mark temp variables as safe through argument_to_value (#2307)

This commit is contained in:
Mark
2024-01-25 12:34:21 -07:00
parent 44b945a5f3
commit 99131131af

View File

@@ -604,16 +604,9 @@ impl DebrayAllocator {
Target::unsafe_argument_to_value(r, arg_c)
}
}
VarAlloc::Temp { ref mut safety, .. } => {
if self
.branch_stack
.safety_unneeded_in_branch(safety, &branch_designator)
{
Target::argument_to_value(r, arg_c)
} else {
*safety = VarSafetyStatus::GloballyUnneeded;
Target::unsafe_argument_to_value(r, arg_c)
}
VarAlloc::Temp { .. } => {
debug_assert!(matches!(r, RegType::Temp(_)));
Target::argument_to_value(r, arg_c)
}
_ => {
unreachable!()