diff options
| author | bjorn3 <17426603+bjorn3@users.noreply.github.com> | 2024-08-15 17:46:33 +0000 |
|---|---|---|
| committer | bjorn3 <17426603+bjorn3@users.noreply.github.com> | 2024-08-15 17:46:33 +0000 |
| commit | c7d43c333a37664d546912fae979c92fce63c374 (patch) | |
| tree | 4efa798f5918f2982a2246561e64f8d452b76aa3 | |
| parent | b4e46de5f35727b31d80bf8a9a58191e63e6e57e (diff) | |
| parent | e2acda7447694df7bbed8b44183753275c0ad223 (diff) | |
| download | rust-c7d43c333a37664d546912fae979c92fce63c374.tar.gz rust-c7d43c333a37664d546912fae979c92fce63c374.zip | |
Sync from rust 13a52890dde8cfeb95069d77c223ac37c0cf3a46
| -rw-r--r-- | src/common.rs | 2 | ||||
| -rw-r--r-- | src/intrinsics/mod.rs | 3 | ||||
| -rw-r--r-- | src/value_and_place.rs | 2 |
3 files changed, 4 insertions, 3 deletions
diff --git a/src/common.rs b/src/common.rs index a1b29a42225..b9000a3874f 100644 --- a/src/common.rs +++ b/src/common.rs @@ -69,7 +69,7 @@ fn clif_type_from_ty<'tcx>(tcx: TyCtxt<'tcx>, ty: Ty<'tcx>) -> Option<types::Typ FloatTy::F64 => types::F64, FloatTy::F128 => unimplemented!("f16_f128"), }, - ty::FnPtr(_) => pointer_ty(tcx), + ty::FnPtr(..) => pointer_ty(tcx), ty::RawPtr(pointee_ty, _) | ty::Ref(_, pointee_ty, _) => { if has_ptr_meta(tcx, *pointee_ty) { return None; diff --git a/src/intrinsics/mod.rs b/src/intrinsics/mod.rs index b21c559e668..29deac60730 100644 --- a/src/intrinsics/mod.rs +++ b/src/intrinsics/mod.rs @@ -725,7 +725,8 @@ fn codegen_regular_intrinsic_call<'tcx>( // Cranelift treats stores as volatile by default // FIXME correctly handle unaligned_volatile_store - // FIXME actually do nontemporal stores if requested + // FIXME actually do nontemporal stores if requested (but do not just emit MOVNT on x86; + // see the LLVM backend for details) let dest = CPlace::for_ptr(Pointer::new(ptr), val.layout()); dest.write_cvalue(fx, val); } diff --git a/src/value_and_place.rs b/src/value_and_place.rs index 8eb2095e523..fd77502224e 100644 --- a/src/value_and_place.rs +++ b/src/value_and_place.rs @@ -874,7 +874,7 @@ pub(crate) fn assert_assignable<'tcx>( (ty::Ref(_, a, _), ty::RawPtr(b, _)) | (ty::RawPtr(a, _), ty::Ref(_, b, _)) => { assert_assignable(fx, *a, *b, limit - 1); } - (ty::FnPtr(_), ty::FnPtr(_)) => { + (ty::FnPtr(..), ty::FnPtr(..)) => { let from_sig = fx.tcx.normalize_erasing_late_bound_regions( ParamEnv::reveal_all(), from_ty.fn_sig(fx.tcx), |
