use more fixnums in cryptographic routines

This commit is contained in:
Markus Triska
2020-05-19 17:02:15 +02:00
parent da4d061067
commit 34f7752c0f

View File

@@ -5252,7 +5252,7 @@ impl MachineState {
_ => { unreachable!() } _ => { unreachable!() }
}, },
&bytes); &bytes);
Addr::HeapCell(self.heap.to_list(ints.as_ref().iter().map(|b| HeapCellValue::Integer(Rc::new(Integer::from(*b)))))) Addr::HeapCell(self.heap.to_list(ints.as_ref().iter().map(|b| HeapCellValue::from(Addr::Fixnum(*b as isize)))))
} }
}; };
@@ -5308,7 +5308,7 @@ impl MachineState {
_ => { self.fail = true; return Ok(()); } _ => { self.fail = true; return Ok(()); }
} }
Addr::HeapCell(self.heap.to_list(bytes.iter().map(|b| HeapCellValue::Integer(Rc::new(Integer::from(*b)))))) Addr::HeapCell(self.heap.to_list(bytes.iter().map(|b| HeapCellValue::from(Addr::Fixnum(*b as isize)))))
}; };
self.unify(self[temp_v!(6)], ints_list); self.unify(self[temp_v!(6)], ints_list);
@@ -5341,7 +5341,7 @@ impl MachineState {
NonZeroU32::new(iterations as u32).unwrap(), &salt, NonZeroU32::new(iterations as u32).unwrap(), &salt,
&data, &mut bytes); &data, &mut bytes);
Addr::HeapCell(self.heap.to_list(bytes.iter().map(|b| HeapCellValue::Integer(Rc::new(Integer::from(*b)))))) Addr::HeapCell(self.heap.to_list(bytes.iter().map(|b| HeapCellValue::from(Addr::Fixnum(*b as isize)))))
}; };
self.unify(self[temp_v!(4)], ints_list); self.unify(self[temp_v!(4)], ints_list);
@@ -5366,7 +5366,7 @@ impl MachineState {
}; };
let tag_list = let tag_list =
Addr::HeapCell(self.heap.to_list(tag.as_ref().iter().map(|b| HeapCellValue::Integer(Rc::new(Integer::from(*b)))))); Addr::HeapCell(self.heap.to_list(tag.as_ref().iter().map(|b| HeapCellValue::from(Addr::Fixnum(*b as isize)))));
let complete_string = { let complete_string = {
let buffer = String::from_iter(in_out.iter().map(|b| *b as char)); let buffer = String::from_iter(in_out.iter().map(|b| *b as char));