File tree 1 file changed +12
-3
lines changed
1 file changed +12
-3
lines changed Original file line number Diff line number Diff line change @@ -23,15 +23,24 @@ use std::u32;
23
23
24
24
/// Lowered representation of a single function.
25
25
pub struct Mir < ' tcx > {
26
+ /// List of basic blocks. References to basic block use a newtyped index type `BasicBlock`
27
+ /// that indexes into this vector.
26
28
pub basic_blocks : Vec < BasicBlockData < ' tcx > > ,
27
29
30
+ /// Return type of the function.
28
31
pub return_ty : FnOutput < ' tcx > ,
29
32
30
- // for every node id
31
- pub extents : FnvHashMap < CodeExtent , Vec < GraphExtent > > ,
32
-
33
+ /// Variables: these are stack slots corresponding to user variables. They may be
34
+ /// assigned many times.
33
35
pub var_decls : Vec < VarDecl < ' tcx > > ,
36
+
37
+ /// Args: these are stack slots corresponding to the input arguments.
34
38
pub arg_decls : Vec < ArgDecl < ' tcx > > ,
39
+
40
+ /// Temp declarations: stack slots that for temporaries created by
41
+ /// the compiler. These are assigned once, but they are not SSA
42
+ /// values in that it is possible to borrow them and mutate them
43
+ /// through the resulting reference.
35
44
pub temp_decls : Vec < TempDecl < ' tcx > > ,
36
45
}
37
46
You can’t perform that action at this time.
0 commit comments