1
Fork 0
rust/compiler/rustc_codegen_ssa/src
bors e50ff9b452 Auto merge of #95241 - Gankra:cleaned-provenance, r=workingjubilee
Strict Provenance MVP

This patch series examines the question: how bad would it be if we adopted
an extremely strict pointer provenance model that completely banished all
int<->ptr casts.

The key insight to making this approach even *vaguely* pallatable is the

ptr.with_addr(addr) -> ptr

function, which takes a pointer and an address and creates a new pointer
with that address and the provenance of the input pointer. In this way
the "chain of custody" is completely and dynamically restored, making the
model suitable even for dynamic checkers like CHERI and Miri.

This is not a formal model, but lots of the docs discussing the model
have been updated to try to the *concept* of this design in the hopes
that it can be iterated on.

See #95228
2022-03-30 10:09:10 +00:00
..
back Spellchecking some comments 2022-03-30 01:39:38 -04:00
coverageinfo Remove in_band_lifetimes from rustc_codegen_ssa 2021-12-15 00:41:41 -05:00
debuginfo Auto merge of #95056 - Dylan-DPC:rollup-swtuw2n, r=Dylan-DPC 2022-03-18 00:35:19 +00:00
mir fix other source of box deref 2022-03-27 13:35:29 -07:00
traits debuginfo: Refactor debuginfo generation for types -- Rename DebugInfoMethods::create_vtable_metadata() to DebugInfoMethods::create_vtable_debuginfo() 2022-03-14 17:25:24 +01:00
base.rs use cfg attribute instead of macro 2022-03-28 08:37:32 +03:00
common.rs Adopt let else in more places 2022-02-19 17:27:43 +01:00
glue.rs Improve AdtDef interning. 2022-03-11 13:31:24 +11:00
lib.rs Make some rustc code conform to strict provenance. 2022-03-29 20:18:27 -04:00
meth.rs debuginfo: Refactor debuginfo generation for types -- Rename DebugInfoMethods::create_vtable_metadata() to DebugInfoMethods::create_vtable_debuginfo() 2022-03-14 17:25:24 +01:00
mono_item.rs Make some rustc code conform to strict provenance. 2022-03-29 20:18:27 -04:00
target_features.rs Rollup merge of #91608 - workingjubilee:fold-neon-fp, r=nagisa,Amanieu 2022-03-23 03:05:28 +01:00