cranelift: Remove booleans (#5031)
Remove the boolean types from cranelift, and the associated instructions breduce, bextend, bconst, and bint. Standardize on using 1/0 for the return value from instructions that produce scalar boolean results, and -1/0 for boolean vector elements. Fixes #3205 Co-authored-by: Afonso Bordado <afonso360@users.noreply.github.com> Co-authored-by: Ulrich Weigand <ulrich.weigand@de.ibm.com> Co-authored-by: Chris Fallin <chris@cfallin.org>
This commit is contained in:
@@ -44,11 +44,6 @@ pub(crate) struct Immediates {
|
||||
/// IEEE 754-2008 binary64 interchange format.
|
||||
pub ieee64: OperandKind,
|
||||
|
||||
/// An immediate boolean operand.
|
||||
///
|
||||
/// This type of immediate boolean can interact with SSA values with any BoolType type.
|
||||
pub boolean: OperandKind,
|
||||
|
||||
/// A condition code for comparing integer values.
|
||||
///
|
||||
/// This enumerated operand kind is used for the `icmp` instruction and corresponds to the
|
||||
@@ -142,7 +137,6 @@ impl Immediates {
|
||||
"ir::immediates::Ieee64",
|
||||
"A 64-bit immediate floating point number.",
|
||||
),
|
||||
boolean: new_imm("imm", "bool", "An immediate boolean."),
|
||||
intcc: {
|
||||
let mut intcc_values = HashMap::new();
|
||||
intcc_values.insert("eq", "Equal");
|
||||
|
||||
Reference in New Issue
Block a user