diff options
| author | Ralf Jung <post@ralfj.de> | 2021-07-12 20:29:05 +0200 |
|---|---|---|
| committer | Ralf Jung <post@ralfj.de> | 2021-07-14 18:17:49 +0200 |
| commit | 626605cea02ee5f512f5efae0cd188ae1a7007c7 (patch) | |
| tree | f5ca5be22c69768e444371f0b64230ab763c3159 /compiler/rustc_codegen_llvm/src | |
| parent | d4f7dd670226a4235ea4cf900c14eb9c6a536843 (diff) | |
| download | rust-626605cea02ee5f512f5efae0cd188ae1a7007c7.tar.gz rust-626605cea02ee5f512f5efae0cd188ae1a7007c7.zip | |
consistently treat None-tagged pointers as ints; get rid of some deprecated Scalar methods
Diffstat (limited to 'compiler/rustc_codegen_llvm/src')
| -rw-r--r-- | compiler/rustc_codegen_llvm/src/common.rs | 2 | ||||
| -rw-r--r-- | compiler/rustc_codegen_llvm/src/consts.rs | 7 |
2 files changed, 6 insertions, 3 deletions
diff --git a/compiler/rustc_codegen_llvm/src/common.rs b/compiler/rustc_codegen_llvm/src/common.rs index a73932ee1b5..35e72621c56 100644 --- a/compiler/rustc_codegen_llvm/src/common.rs +++ b/compiler/rustc_codegen_llvm/src/common.rs @@ -243,7 +243,7 @@ impl ConstMethods<'tcx> for CodegenCx<'ll, 'tcx> { self.const_bitcast(llval, llty) } } - Scalar::Ptr(ptr) => { + Scalar::Ptr(ptr, _size) => { let (alloc_id, offset) = ptr.into_parts(); let (base_addr, base_addr_space) = match self.tcx.global_alloc(alloc_id) { GlobalAlloc::Memory(alloc) => { diff --git a/compiler/rustc_codegen_llvm/src/consts.rs b/compiler/rustc_codegen_llvm/src/consts.rs index 71a387bfcac..3ca295f4a7e 100644 --- a/compiler/rustc_codegen_llvm/src/consts.rs +++ b/compiler/rustc_codegen_llvm/src/consts.rs @@ -11,7 +11,7 @@ use rustc_codegen_ssa::traits::*; use rustc_hir::def_id::DefId; use rustc_middle::middle::codegen_fn_attrs::{CodegenFnAttrFlags, CodegenFnAttrs}; use rustc_middle::mir::interpret::{ - read_target_uint, Allocation, ErrorHandled, GlobalAlloc, Pointer, + read_target_uint, Allocation, ErrorHandled, GlobalAlloc, Pointer, Scalar as InterpScalar, }; use rustc_middle::mir::mono::MonoItem; use rustc_middle::ty::{self, Instance, Ty}; @@ -55,7 +55,10 @@ pub fn const_alloc_to_llvm(cx: &CodegenCx<'ll, '_>, alloc: &Allocation) -> &'ll }; llvals.push(cx.scalar_to_backend( - Pointer::new(alloc_id, Size::from_bytes(ptr_offset)).into(), + InterpScalar::from_pointer( + Pointer::new(alloc_id, Size::from_bytes(ptr_offset)), + &cx.tcx, + ), &Scalar { value: Primitive::Pointer, valid_range: 0..=!0 }, cx.type_i8p_ext(address_space), )); |
