interpret: rename Pointer::from_addr → from_addr_invalid
This commit is contained in:
parent
2d91939bb7
commit
91d25168cd
5 changed files with 8 additions and 6 deletions
|
@ -517,7 +517,7 @@ pub macro compile_time_machine(<$mir: lifetime, $tcx: lifetime>) {
|
|||
// Allow these casts, but make the pointer not dereferenceable.
|
||||
// (I.e., they behave like transmutation.)
|
||||
// This is correct because no pointers can ever be exposed in compile-time evaluation.
|
||||
Ok(Pointer::from_addr(addr))
|
||||
Ok(Pointer::from_addr_invalid(addr))
|
||||
}
|
||||
|
||||
#[inline(always)]
|
||||
|
|
|
@ -178,7 +178,7 @@ impl<'tcx, Prov: Provenance> MPlaceTy<'tcx, Prov> {
|
|||
pub fn fake_alloc_zst(layout: TyAndLayout<'tcx>) -> Self {
|
||||
assert!(layout.is_zst());
|
||||
let align = layout.align.abi;
|
||||
let ptr = Pointer::from_addr(align.bytes()); // no provenance, absolute address
|
||||
let ptr = Pointer::from_addr_invalid(align.bytes()); // no provenance, absolute address
|
||||
MPlaceTy { mplace: MemPlace { ptr, meta: MemPlaceMeta::None }, layout, align }
|
||||
}
|
||||
|
||||
|
|
|
@ -323,7 +323,7 @@ impl fmt::Display for UndefinedBehaviorInfo {
|
|||
write!(
|
||||
f,
|
||||
"{msg}{pointer} is a dangling pointer (it has no provenance)",
|
||||
pointer = Pointer::<Option<AllocId>>::from_addr(*i),
|
||||
pointer = Pointer::<Option<AllocId>>::from_addr_invalid(*i),
|
||||
)
|
||||
}
|
||||
AlignmentCheckFailed { required, has } => write!(
|
||||
|
|
|
@ -251,14 +251,16 @@ impl<Prov> Pointer<Option<Prov>> {
|
|||
}
|
||||
|
||||
impl<Prov> Pointer<Option<Prov>> {
|
||||
/// Creates a pointer to the given address, with invalid provenance (i.e., cannot be used for
|
||||
/// any memory access).
|
||||
#[inline(always)]
|
||||
pub fn from_addr(addr: u64) -> Self {
|
||||
pub fn from_addr_invalid(addr: u64) -> Self {
|
||||
Pointer { provenance: None, offset: Size::from_bytes(addr) }
|
||||
}
|
||||
|
||||
#[inline(always)]
|
||||
pub fn null() -> Self {
|
||||
Pointer::from_addr(0)
|
||||
Pointer::from_addr_invalid(0)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -322,7 +322,7 @@ impl<'tcx, Prov: Provenance> Scalar<Prov> {
|
|||
Right(ptr) => Ok(ptr.into()),
|
||||
Left(bits) => {
|
||||
let addr = u64::try_from(bits).unwrap();
|
||||
Ok(Pointer::from_addr(addr))
|
||||
Ok(Pointer::from_addr_invalid(addr))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue