diff options
| author | Ralf Jung <post@ralfj.de> | 2017-06-21 23:09:34 -0700 |
|---|---|---|
| committer | Ralf Jung <post@ralfj.de> | 2017-06-21 23:09:34 -0700 |
| commit | 7b2b0dd56c2ab8d5dc4e9c7e2bbd0c4128ba4f5d (patch) | |
| tree | 403019c467a5d995af34ad89151d093f481004d4 /src | |
| parent | 894306e47d1bf5d7c4328d762e0e2c94dbeea2fe (diff) | |
| download | rust-7b2b0dd56c2ab8d5dc4e9c7e2bbd0c4128ba4f5d.tar.gz rust-7b2b0dd56c2ab8d5dc4e9c7e2bbd0c4128ba4f5d.zip | |
test HashMap creation in libstd-MIR, and make it work again
Diffstat (limited to 'src')
| -rw-r--r-- | src/terminator/intrinsic.rs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/terminator/intrinsic.rs b/src/terminator/intrinsic.rs index f6ef46ecbfb..8ede9fa7559 100644 --- a/src/terminator/intrinsic.rs +++ b/src/terminator/intrinsic.rs @@ -424,9 +424,10 @@ impl<'a, 'tcx> EvalContext<'a, 'tcx> { let ty_align = self.type_align(ty)?; let val_byte = self.value_to_primval(arg_vals[1], u8)?.to_u128()? as u8; let size = self.type_size(ty)?.expect("write_bytes() type must be sized"); - let ptr = arg_vals[0].read_ptr(&self.memory)?.to_ptr()?; + let ptr = arg_vals[0].read_ptr(&self.memory)?; let count = self.value_to_primval(arg_vals[2], usize)?.to_u64()?; if count > 0 { + let ptr = ptr.to_ptr()?; self.memory.check_align(ptr, ty_align, size * count)?; self.memory.write_repeat(ptr, val_byte, size * count)?; } |
