Rename 'an block' to 'a block'
Missed this in the automatic rename of 'Ebb' to 'Block'.
This commit is contained in:
@@ -13,7 +13,7 @@ use crate::verifier::{VerifierErrors, VerifierStepResult};
|
||||
///
|
||||
/// Conventional SSA form is represented in Cranelift with the help of virtual registers:
|
||||
///
|
||||
/// - Two values are said to be *PHI-related* if one is an block argument and the other is passed as
|
||||
/// - Two values are said to be *PHI-related* if one is a block argument and the other is passed as
|
||||
/// a branch argument in a location that matches the first value.
|
||||
/// - PHI-related values must belong to the same virtual register.
|
||||
/// - Two values in the same virtual register must not have overlapping live ranges.
|
||||
|
||||
@@ -16,7 +16,7 @@ use crate::verifier::{VerifierErrors, VerifierStepResult};
|
||||
/// - All values in the program must have a live range.
|
||||
/// - The live range def point must match where the value is defined.
|
||||
/// - The live range must reach all uses.
|
||||
/// - When a live range is live-in to an block, it must be live at all the predecessors.
|
||||
/// - When a live range is live-in to a block, it must be live at all the predecessors.
|
||||
/// - The live range affinity must be compatible with encoding constraints.
|
||||
///
|
||||
/// We don't verify that live ranges are minimal. This would require recomputing live ranges for
|
||||
|
||||
@@ -15,7 +15,7 @@ use crate::verifier::{VerifierErrors, VerifierStepResult};
|
||||
/// instruction encoding recipes.
|
||||
///
|
||||
/// Values can be temporarily diverted to a different location by using the `regmove`, `regspill`,
|
||||
/// and `regfill` instructions, but only inside an block.
|
||||
/// and `regfill` instructions, but only inside a block.
|
||||
///
|
||||
/// If a liveness analysis is provided, it is used to verify that there are no active register
|
||||
/// diversions across control flow edges.
|
||||
|
||||
@@ -19,13 +19,13 @@
|
||||
//! SSA form
|
||||
//!
|
||||
//! - Values must be defined by an instruction that exists and that is inserted in
|
||||
//! an block, or be an argument of an existing block.
|
||||
//! a block, or be an argument of an existing block.
|
||||
//! - Values used by an instruction must dominate the instruction.
|
||||
//!
|
||||
//! Control flow graph and dominator tree integrity:
|
||||
//!
|
||||
//! - All predecessors in the CFG must be branches to the block.
|
||||
//! - All branches to an block must be present in the CFG.
|
||||
//! - All branches to a block must be present in the CFG.
|
||||
//! - A recomputed dominator tree is identical to the existing one.
|
||||
//!
|
||||
//! Type checking
|
||||
@@ -961,7 +961,7 @@ impl<'a> Verifier<'a> {
|
||||
format!("{} is defined by invalid instruction {}", v, def_inst),
|
||||
));
|
||||
}
|
||||
// Defining instruction is inserted in an block.
|
||||
// Defining instruction is inserted in a block.
|
||||
if self.func.layout.inst_block(def_inst) == None {
|
||||
return errors.fatal((
|
||||
loc_inst,
|
||||
|
||||
Reference in New Issue
Block a user