Skip to main content

Module retag

Module retag 

Source
Expand description

Experimental support for emitting retags as function calls in generated code.

We attempt to retag every argument and return value of a function, and every rvalue of an assignment. The first step to retagging is to generate a RetagPlan, which describes which pointers within the place or operand can be retagged. Then, we traverse the RetagPlan to emit the calls.

Structsยง

UnsafeCellRanges ๐Ÿ”’
Collects the ranges within a type that are covered by UnsafeCell.
UnsafePinnedRanges ๐Ÿ”’
Collects the ranges within a type that are covered by UnsafePinned.

Enumsยง

RetagPlan ๐Ÿ”’
A description of the pointers within a type that need to be retagged.

Traitsยง

PerByteTracking ๐Ÿ”’
A visitor trait for collecting the ranges within a layout that satisfy a given predicate.

Functionsยง

rvalue_needs_retag ๐Ÿ”’