rust/compiler/rustc_codegen_ssa/src/mir
Guillaume Gomez 4755173cf6
Rollup merge of #96935 - thomcc:atomicptr-strict-prov, r=dtolnay
Allow arithmetic and certain bitwise ops on AtomicPtr

This is mainly to support migrating from `AtomicUsize`, for the strict provenance experiment.

This is a pretty dubious set of APIs, but it should be sufficient to allow code that's using `AtomicUsize` to manipulate a tagged pointer atomically. It's under a new feature gate, `#![feature(strict_provenance_atomic_ptr)]`, but I'm not sure if it needs its own tracking issue. I'm happy to make one, but it's not clear that it's needed.

I'm unsure if it needs changes in the various non-LLVM backends. Because we just cast things to integers anyway (and were already doing so), I doubt it.

API change proposal: https://github.com/rust-lang/libs-team/issues/60

Fixes #95492
2022-07-06 20:43:23 +02:00
..
analyze.rs cleanup mir visitor for rustc::pass_by_value 2022-07-01 16:21:21 +02:00
block.rs Update TypeVisitor paths 2022-07-06 06:41:53 +01:00
constant.rs implement valtrees as the type-system representation for constant values 2022-06-14 16:07:11 +02:00
coverageinfo.rs coverageinfo query needs to use the same MIR as codegen 2021-05-12 20:27:07 -07:00
debuginfo.rs not need Option for dbg_scope 2022-04-26 21:00:19 +08:00
intrinsic.rs Allow arithmetic and certain bitwise ops on AtomicPtr 2022-07-01 06:21:18 -07:00
mod.rs Update TypeVisitor paths 2022-07-06 06:41:53 +01:00
operand.rs fix codegen assertion 2022-06-15 18:39:23 -07:00
place.rs Prefer trace level instrumentation for the new noisy instrument attributes 2022-07-05 09:27:06 +00:00
rvalue.rs Auto merge of #96862 - oli-obk:enum_cast_mir, r=RalfJung 2022-07-05 09:36:29 +00:00
statement.rs Some tracing cleanups 2022-06-29 09:56:30 +00:00