remove move_value
, which is a dupe of write_value
This commit is contained in:
parent
fcbaf990f2
commit
fe614e342d
@ -938,13 +938,6 @@ impl<'a, 'tcx> EvalContext<'a, 'tcx> {
|
||||
self.monomorphize(operand.ty(&self.mir(), self.tcx), self.substs())
|
||||
}
|
||||
|
||||
fn move_value(&mut self, src: Value, dest: Pointer, ty: Ty<'tcx>) -> EvalResult<'tcx, ()> {
|
||||
match src {
|
||||
Value::ByRef(ptr) => self.move_(ptr, dest, ty),
|
||||
Value::ByVal(val) => self.memory.write_primval(dest, val),
|
||||
}
|
||||
}
|
||||
|
||||
fn move_(&mut self, src: Pointer, dest: Pointer, ty: Ty<'tcx>) -> EvalResult<'tcx, ()> {
|
||||
let size = self.type_size(ty);
|
||||
let align = self.type_align(ty);
|
||||
|
@ -136,7 +136,7 @@ impl<'a, 'tcx> EvalContext<'a, 'tcx> {
|
||||
"move_val_init" => {
|
||||
let ty = substs.type_at(0);
|
||||
let ptr = args_ptrs[0].read_ptr(&self.memory)?;
|
||||
self.move_value(args_ptrs[1], ptr, ty)?;
|
||||
self.write_value(args_ptrs[1], ptr, ty)?;
|
||||
}
|
||||
|
||||
"needs_drop" => {
|
||||
@ -213,7 +213,7 @@ impl<'a, 'tcx> EvalContext<'a, 'tcx> {
|
||||
|
||||
"transmute" => {
|
||||
let ty = substs.type_at(0);
|
||||
self.move_value(args_ptrs[0], dest, ty)?;
|
||||
self.write_value(args_ptrs[0], dest, ty)?;
|
||||
}
|
||||
|
||||
"try" => unimplemented!(),
|
||||
@ -229,7 +229,7 @@ impl<'a, 'tcx> EvalContext<'a, 'tcx> {
|
||||
"volatile_store" => {
|
||||
let ty = substs.type_at(0);
|
||||
let dest = args_ptrs[0].read_ptr(&self.memory)?;
|
||||
self.move_value(args_ptrs[1], dest, ty)?;
|
||||
self.write_value(args_ptrs[1], dest, ty)?;
|
||||
}
|
||||
|
||||
name => return Err(EvalError::Unimplemented(format!("unimplemented intrinsic: {}", name))),
|
||||
|
Loading…
x
Reference in New Issue
Block a user