@@ -85,15 +85,15 @@ impl CoverageGraph {
85
85
let mut bb_to_bcb = IndexVec :: from_elem_n ( None , num_basic_blocks) ;
86
86
87
87
let mut add_basic_coverage_block = |basic_blocks : & mut Vec < BasicBlock > | {
88
- // Take the accumulated list of blocks, but leave
88
+ // Take the accumulated list of blocks as a boxed slice , but leave
89
89
// the vector's capacity intact to be reused for subsequent BCBs.
90
- let basic_blocks = basic_blocks. split_off ( 0 ) ;
90
+ let basic_blocks: Box < [ BasicBlock ] > = basic_blocks. split_off ( 0 ) . into ( ) ;
91
91
92
92
let bcb = bcbs. next_index ( ) ;
93
93
for & bb in basic_blocks. iter ( ) {
94
94
bb_to_bcb[ bb] = Some ( bcb) ;
95
95
}
96
- let bcb_data = BasicCoverageBlockData :: from ( basic_blocks) ;
96
+ let bcb_data = BasicCoverageBlockData :: new ( basic_blocks) ;
97
97
debug ! ( "adding bcb{}: {:?}" , bcb. index( ) , bcb_data) ;
98
98
bcbs. push ( bcb_data) ;
99
99
} ;
@@ -281,11 +281,11 @@ rustc_index::newtype_index! {
281
281
/// significance.
282
282
#[ derive( Debug , Clone ) ]
283
283
pub ( super ) struct BasicCoverageBlockData {
284
- pub basic_blocks : Vec < BasicBlock > ,
284
+ pub basic_blocks : Box < [ BasicBlock ] > ,
285
285
}
286
286
287
287
impl BasicCoverageBlockData {
288
- pub fn from ( basic_blocks : Vec < BasicBlock > ) -> Self {
288
+ pub fn new ( basic_blocks : Box < [ BasicBlock ] > ) -> Self {
289
289
assert ! ( basic_blocks. len( ) > 0 ) ;
290
290
Self { basic_blocks }
291
291
}
0 commit comments