File tree Expand file tree Collapse file tree 2 files changed +382
-26
lines changed Expand file tree Collapse file tree 2 files changed +382
-26
lines changed Original file line number Diff line number Diff line change @@ -233,8 +233,23 @@ impl Debug for BasicBlock {
233
233
234
234
#[ derive( Clone , Debug , RustcEncodable , RustcDecodable ) ]
235
235
pub struct BasicBlockData < ' tcx > {
236
+ /// List of statements in this block.
236
237
pub statements : Vec < Statement < ' tcx > > ,
238
+
239
+ /// Terminator for this block.
240
+ ///
241
+ /// NB. This should generally ONLY be `None` during construction.
242
+ /// Therefore, you should generally access it via the
243
+ /// `terminator()` or `terminator_mut()` methods. The only
244
+ /// exception is that certain passes, such as `simplify_cfg`, swap
245
+ /// out the terminator temporarily with `None` while they continue
246
+ /// to recurse over the set of basic blocks.
237
247
pub terminator : Option < Terminator < ' tcx > > ,
248
+
249
+ /// If true, this block lies on an unwind path. This is used
250
+ /// during trans where distinct kinds of basic blocks may be
251
+ /// generated (particularly for MSVC cleanup). Unwind blocks must
252
+ /// only branch to other unwind blocks.
238
253
pub is_cleanup : bool ,
239
254
}
240
255
You can’t perform that action at this time.
0 commit comments