small tweak for read_from_term performance (#2668)
This commit is contained in:
@@ -1384,10 +1384,16 @@ impl MachineState {
|
|||||||
stackful_post_order_iter::<NonListElider>(&mut self.heap, &mut self.stack, 0);
|
stackful_post_order_iter::<NonListElider>(&mut self.heap, &mut self.stack, 0);
|
||||||
|
|
||||||
while let Some(addr) = iter.next() {
|
while let Some(addr) = iter.next() {
|
||||||
let addr = unmark_cell_bits!(heap_bound_store(
|
let addr = unmark_cell_bits!(addr);
|
||||||
|
|
||||||
|
let addr = if addr.is_var() {
|
||||||
|
unmark_cell_bits!(heap_bound_store(
|
||||||
iter.base_iter.heap,
|
iter.base_iter.heap,
|
||||||
heap_bound_deref(iter.base_iter.heap, addr),
|
heap_bound_deref(iter.base_iter.heap, addr)
|
||||||
));
|
))
|
||||||
|
} else {
|
||||||
|
addr
|
||||||
|
};
|
||||||
|
|
||||||
read_heap_cell!(addr,
|
read_heap_cell!(addr,
|
||||||
(HeapCellValueTag::Lis) => {
|
(HeapCellValueTag::Lis) => {
|
||||||
|
|||||||
Reference in New Issue
Block a user