| /wasmtime-44.0.1/cranelift/codegen/src/ir/ |
| H A D | condcodes.rs | 37 pub enum IntCC { enum 60 impl CondCode for IntCC { implementation 62 use self::IntCC::*; in complement() 78 use self::IntCC::*; in swap_args() 94 impl IntCC { implementation 98 IntCC::Equal, in all() 114 use self::IntCC::*; in without_equal() 127 use self::IntCC::*; in unsigned() 139 use self::IntCC::*; in to_static_str() 155 impl Display for IntCC { implementation [all …]
|
| /wasmtime-44.0.1/cranelift/codegen/src/isa/aarch64/ |
| H A D | lower.rs | 11 use crate::ir::condcodes::{FloatCC, IntCC}; 54 pub(crate) fn lower_condcode(cc: IntCC) -> Cond { in lower_condcode() 56 IntCC::Equal => Cond::Eq, in lower_condcode() 57 IntCC::NotEqual => Cond::Ne, in lower_condcode() 58 IntCC::SignedGreaterThanOrEqual => Cond::Ge, in lower_condcode() 59 IntCC::SignedGreaterThan => Cond::Gt, in lower_condcode() 60 IntCC::SignedLessThanOrEqual => Cond::Le, in lower_condcode() 61 IntCC::SignedLessThan => Cond::Lt, in lower_condcode() 63 IntCC::UnsignedGreaterThan => Cond::Hi, in lower_condcode() 64 IntCC::UnsignedLessThanOrEqual => Cond::Ls, in lower_condcode() [all …]
|
| H A D | inst.isle | 4164 (decl cond_code (IntCC) Cond) 4211 (decl icmp_zero_cond (IntCC) IntCC) 4215 (decl icmp_zero_cond_not_eq (IntCC) IntCC) 4656 (= cc (IntCC.Equal)) 4657 (= cc (IntCC.NotEqual)) 4730 (= c (IntCC.Equal)) 4731 (= c (IntCC.NotEqual)) 4770 (= c (IntCC.Equal)) 4771 (= c (IntCC.NotEqual)) 4813 (= c (IntCC.Equal)) [all …]
|
| /wasmtime-44.0.1/cranelift/codegen/src/isa/s390x/inst/ |
| H A D | args.rs | 4 use crate::ir::condcodes::{FloatCC, IntCC}; 136 pub fn from_intcc(cc: IntCC) -> Cond { in from_intcc() 138 IntCC::Equal => 8, in from_intcc() 139 IntCC::NotEqual => 4 | 2, in from_intcc() 140 IntCC::SignedGreaterThanOrEqual => 8 | 2, in from_intcc() 141 IntCC::SignedGreaterThan => 2, in from_intcc() 142 IntCC::SignedLessThanOrEqual => 8 | 4, in from_intcc() 143 IntCC::SignedLessThan => 4, in from_intcc() 145 IntCC::UnsignedGreaterThan => 2, in from_intcc() 146 IntCC::UnsignedLessThanOrEqual => 8 | 4, in from_intcc() [all …]
|
| /wasmtime-44.0.1/cranelift/codegen/src/ |
| H A D | inst_specs.isle | 3 (model IntCC (enum 61 (= c (IntCC.Equal)) 62 (= c (IntCC.NotEqual)) 63 (= c (IntCC.UnsignedGreaterThanOrEqual)) 64 (= c (IntCC.UnsignedGreaterThan)) 65 (= c (IntCC.UnsignedLessThanOrEqual)) 66 (= c (IntCC.UnsignedLessThan)) 67 (= c (IntCC.SignedGreaterThanOrEqual)) 68 (= c (IntCC.SignedGreaterThan)) 69 (= c (IntCC.SignedLessThanOrEqual)) [all …]
|
| H A D | isle_prelude.rs | 200 IntCC::Equal => ux == uy, 201 IntCC::NotEqual => ux != uy, 696 fn intcc_unsigned(&mut self, x: &IntCC) -> IntCC { 701 fn signed_cond_code(&mut self, cc: &IntCC) -> Option<IntCC> { 703 IntCC::Equal 707 | IntCC::UnsignedLessThan 708 | IntCC::NotEqual => None, 710 | IntCC::SignedGreaterThan 717 fn intcc_swap_args(&mut self, cc: &IntCC) -> IntCC { 722 fn intcc_complement(&mut self, cc: &IntCC) -> IntCC { [all …]
|
| H A D | prelude_opt.isle | 39 (rule (eq ty x y) (icmp ty (IntCC.Equal) x y)) 40 (rule (ne ty x y) (icmp ty (IntCC.NotEqual) x y)) 41 (rule (ult ty x y) (icmp ty (IntCC.UnsignedLessThan) x y)) 42 (rule (ule ty x y) (icmp ty (IntCC.UnsignedLessThanOrEqual) x y)) 43 (rule (ugt ty x y) (icmp ty (IntCC.UnsignedGreaterThan) x y)) 45 (rule (slt ty x y) (icmp ty (IntCC.SignedLessThan) x y)) 46 (rule (sle ty x y) (icmp ty (IntCC.SignedLessThanOrEqual) x y)) 47 (rule (sgt ty x y) (icmp ty (IntCC.SignedGreaterThan) x y)) 190 (extractor (eq ty x y) (icmp ty (IntCC.Equal) x y)) 193 (extractor (ne ty x y) (icmp ty (IntCC.NotEqual) x y)) [all …]
|
| H A D | prelude.isle | 105 (decl pure imm64_icmp (Type IntCC Imm64 Imm64) Imm64) 323 ;; Swap args of an IntCC flag. 324 (decl intcc_swap_args (IntCC) IntCC) 327 ;; Complement an IntCC flag. 328 (decl intcc_complement (IntCC) IntCC) 331 ;; This is a direct import of `IntCC::without_equal`. 332 ;; Get the corresponding IntCC with the equal component removed. 334 (decl pure intcc_without_eq (IntCC) IntCC) 566 ;; This is a direct import of `IntCC::unsigned`. 569 (decl pure intcc_unsigned (IntCC) IntCC) [all …]
|
| H A D | souper_harvest.rs | 438 ir::condcodes::IntCC::Equal => ast::Instruction::Eq { a, b }.into(), in harvest_candidate_lhs() 439 ir::condcodes::IntCC::NotEqual => ast::Instruction::Ne { a, b }.into(), in harvest_candidate_lhs() 440 ir::condcodes::IntCC::UnsignedLessThan => { in harvest_candidate_lhs() 443 ir::condcodes::IntCC::SignedLessThan => { in harvest_candidate_lhs() 446 ir::condcodes::IntCC::UnsignedLessThanOrEqual => { in harvest_candidate_lhs() 449 ir::condcodes::IntCC::SignedLessThanOrEqual => { in harvest_candidate_lhs()
|
| /wasmtime-44.0.1/cranelift/codegen/src/isa/aarch64/lower/ |
| H A D | isle.rs | 503 fn icmp_zero_cond(&mut self, cond: &IntCC) -> Option<IntCC> { in icmp_zero_cond() argument 505 &IntCC::Equal in icmp_zero_cond() 506 | &IntCC::SignedGreaterThanOrEqual in icmp_zero_cond() 507 | &IntCC::SignedGreaterThan in icmp_zero_cond() 508 | &IntCC::SignedLessThanOrEqual in icmp_zero_cond() 509 | &IntCC::SignedLessThan => Some(*cond), in icmp_zero_cond() 532 fn icmp_zero_cond_not_eq(&mut self, cond: &IntCC) -> Option<IntCC> { in icmp_zero_cond_not_eq() argument 534 &IntCC::NotEqual => Some(IntCC::NotEqual), in icmp_zero_cond_not_eq() 552 &IntCC::Equal => VecMisc2::Cmeq0, in int_cc_cmp_zero_to_vec_misc_op() 556 &IntCC::SignedLessThan => VecMisc2::Cmlt0, in int_cc_cmp_zero_to_vec_misc_op() [all …]
|
| /wasmtime-44.0.1/cranelift/codegen/src/opts/ |
| H A D | icmp.isle | 211 (decl pure partial intcc_comparable (IntCC IntCC) bool) 216 (decl pure decompose_intcc (IntCC) u64) 217 (rule (decompose_intcc (IntCC.Equal)) 1) 219 (rule (decompose_intcc (IntCC.SignedLessThan)) 2) 226 (rule (decompose_intcc (IntCC.NotEqual)) 6) 242 (decl pure intcc_class (IntCC) u64) 243 (rule (intcc_class (IntCC.UnsignedLessThan)) 1) 247 (rule (intcc_class (IntCC.SignedLessThan)) 2) 249 (rule (intcc_class (IntCC.SignedGreaterThan)) 2) 251 (rule (intcc_class (IntCC.Equal)) 3) [all …]
|
| /wasmtime-44.0.1/cranelift/codegen/src/isa/pulley_shared/ |
| H A D | lower.isle | 28 (decl lower_cond_icmp32 (IntCC Value Value) Cond) 62 (decl lower_cond_icmp64 (IntCC Value Value) Cond) 745 (decl rec lower_icmp (Type IntCC Value Value) XReg) 747 (rule (lower_icmp $I64 (IntCC.Equal) a b) 750 (rule (lower_icmp $I64 (IntCC.NotEqual) a b) 753 (rule (lower_icmp $I64 (IntCC.SignedLessThan) a b) 785 (rule (lower_icmp ty (IntCC.SignedGreaterThan) a b) 786 (lower_icmp ty (IntCC.SignedLessThan) b a)) 803 (rule (lower_icmp $I128 (IntCC.Equal) x y) 807 (rule (lower_icmp $I128 (IntCC.NotEqual) x y) [all …]
|
| /wasmtime-44.0.1/cranelift/fuzzgen/src/passes/ |
| H A D | int_divz.rs | 5 use cranelift::prelude::{InstBuilder, IntCC}; 50 let denominator_is_zero = pos.ins().icmp(IntCC::Equal, rhs, zero); in insert_int_divz_sequence() 62 let lhs_check = pos.ins().icmp(IntCC::Equal, lhs, int_min); in insert_int_divz_sequence() 63 let rhs_check = pos.ins().icmp(IntCC::Equal, rhs, neg_one); in insert_int_divz_sequence()
|
| /wasmtime-44.0.1/cranelift/codegen/src/isa/riscv64/inst/ |
| H A D | args.rs | 216 pub(crate) kind: IntCC, 257 IntCC::Equal => (BranchFunct3::Eq, false), in funct3() 276 IntCC::Equal => "beq", in op_name() 277 IntCC::NotEqual => "bne", in op_name() 278 IntCC::SignedLessThan => "blt", in op_name() 279 IntCC::SignedGreaterThanOrEqual => "bge", in op_name() 280 IntCC::SignedGreaterThan => "bgt", in op_name() 281 IntCC::SignedLessThanOrEqual => "ble", in op_name() 282 IntCC::UnsignedLessThan => "bltu", in op_name() 284 IntCC::UnsignedGreaterThan => "bgtu", in op_name() [all …]
|
| H A D | emit.rs | 1463 kind: IntCC::UnsignedLessThan, in emit_uncompressed() 1762 kind: IntCC::NotEqual, in emit_uncompressed() 1799 kind: IntCC::NotEqual, in emit_uncompressed() 2004 kind: IntCC::NotEqual, in emit_uncompressed() 2271 kind: IntCC::SignedLessThanOrEqual, in emit_uncompressed() 2291 kind: IntCC::Equal, in emit_uncompressed() 2357 kind: IntCC::SignedLessThanOrEqual, in emit_uncompressed() 2376 kind: IntCC::NotEqual, in emit_uncompressed() 2450 kind: IntCC::SignedLessThanOrEqual, in emit_uncompressed() 2470 kind: IntCC::Equal, in emit_uncompressed() [all …]
|
| /wasmtime-44.0.1/cranelift/codegen/src/isa/s390x/lower/ |
| H A D | isle.rs | 921 fn condcode_is_signed(cc: IntCC) -> bool { in condcode_is_signed() 923 IntCC::Equal => false, in condcode_is_signed() 924 IntCC::NotEqual => false, in condcode_is_signed() 925 IntCC::SignedGreaterThanOrEqual => true, in condcode_is_signed() 926 IntCC::SignedGreaterThan => true, in condcode_is_signed() 927 IntCC::SignedLessThanOrEqual => true, in condcode_is_signed() 928 IntCC::SignedLessThan => true, in condcode_is_signed() 929 IntCC::UnsignedGreaterThanOrEqual => false, in condcode_is_signed() 930 IntCC::UnsignedGreaterThan => false, in condcode_is_signed() 931 IntCC::UnsignedLessThanOrEqual => false, in condcode_is_signed() [all …]
|
| /wasmtime-44.0.1/cranelift/codegen/src/isa/x64/inst/ |
| H A D | args.rs | 5 use crate::ir::condcodes::{FloatCC, IntCC}; 869 pub(crate) fn from_intcc(intcc: IntCC) -> Self { in from_intcc() 871 IntCC::Equal => CC::Z, in from_intcc() 872 IntCC::NotEqual => CC::NZ, in from_intcc() 873 IntCC::SignedGreaterThanOrEqual => CC::NL, in from_intcc() 874 IntCC::SignedGreaterThan => CC::NLE, in from_intcc() 875 IntCC::SignedLessThanOrEqual => CC::LE, in from_intcc() 876 IntCC::SignedLessThan => CC::L, in from_intcc() 878 IntCC::UnsignedGreaterThan => CC::NBE, in from_intcc() 879 IntCC::UnsignedLessThanOrEqual => CC::BE, in from_intcc() [all …]
|
| /wasmtime-44.0.1/crates/cranelift/src/ |
| H A D | bounds_checks.rs | 31 ir::{self, InstBuilder, RelSourceLoc, condcodes::IntCC}, 222 |builder: &mut FunctionBuilder, compare_kind: IntCC, lhs: ir::Value, rhs: ir::Value| { in bounds_check_field_access() 360 IntCC::UnsignedGreaterThan, in bounds_check_field_access() 388 let oob = make_compare(builder, IntCC::UnsignedGreaterThanOrEqual, index, bound); in bounds_check_field_access() 428 let oob = make_compare(builder, IntCC::UnsignedGreaterThan, index, bound); in bounds_check_field_access() 453 let oob = make_compare(builder, IntCC::UnsignedGreaterThan, index, adjusted_bound); in bounds_check_field_access() 478 let oob = make_compare(builder, IntCC::UnsignedGreaterThan, adjusted_index, bound); in bounds_check_field_access()
|
| H A D | trap.rs | 4 use cranelift_codegen::ir::condcodes::IntCC; 61 let cmp = builder.ins().icmp(IntCC::Equal, value, zero); in trapz() 72 let cmp = builder.ins().icmp(IntCC::NotEqual, value, zero); in trapnz()
|
| /wasmtime-44.0.1/cranelift/frontend/src/ |
| H A D | switch.rs | 4 use cranelift_codegen::ir::condcodes::IntCC; 140 icmp_imm_u128(bx, IntCC::UnsignedGreaterThanOrEqual, val, first_index); in build_search_tree() 177 let is_good_val = icmp_imm_u128(bx, IntCC::Equal, val, range.first_index); in build_search_branches() 182 IntCC::UnsignedGreaterThanOrEqual, in build_search_branches() 244 .icmp_imm(IntCC::UnsignedGreaterThan, discr, u32::MAX as i64); in build_jump_table() 281 fn icmp_imm_u128(bx: &mut FunctionBuilder, cond: IntCC, x: Value, y: u128) -> Value { in icmp_imm_u128() argument
|
| /wasmtime-44.0.1/cranelift/codegen/src/isa/riscv64/ |
| H A D | inst_vector.isle | 1585 (decl gen_icmp_mask (Type IntCC Value Value) VReg) 1587 ;; IntCC.Equal 1606 ;; IntCC.NotEqual 1625 ;; IntCC.UnsignedLessThan 1640 ;; IntCC.SignedLessThan 1655 ;; IntCC.UnsignedLessThanOrEqual 1667 ;; IntCC.SignedLessThanOrEqual 1679 ;; IntCC.UnsignedGreaterThan 1694 ;; IntCC.SignedGreaterThan 1709 ;; IntCC.UnsignedGreaterThanOrEqual [all …]
|
| H A D | inst.isle | 130 (cc IntCC) 2675 (if-let (IntCC.UnsignedLessThan) (intcc_without_eq cc)) 2680 (if-let (IntCC.SignedLessThan) (intcc_without_eq cc)) 2690 (if-let (IntCC.SignedGreaterThan) (intcc_without_eq cc)) 2859 (decl int_compare (IntCC XReg XReg) IntegerCompare) 2956 ;; using `IntCC`. 2960 (decl put_value_in_reg_for_icmp (IntCC Value) XReg) 3073 (decl gen_trapif (IntCC XReg XReg TrapCode) InstOutput) 3085 (gen_trapif (IntCC.Equal) test (zero_reg) trap_code)) 3093 (decl zero_cond_to_cc (ZeroCond) IntCC) [all …]
|
| /wasmtime-44.0.1/crates/cranelift/src/translate/ |
| H A D | table.rs | 4 use cranelift_codegen::ir::{self, InstBuilder, condcodes::IntCC, immediates::Imm64}; 79 .icmp(IntCC::UnsignedGreaterThanOrEqual, index, bound); in prepare_table_addr()
|
| /wasmtime-44.0.1/cranelift/interpreter/src/ |
| H A D | step.rs | 9 use cranelift_codegen::ir::condcodes::{FloatCC, IntCC}; 1424 code: IntCC, in icmp() argument 1429 code: IntCC, in icmp() 1435 IntCC::Equal => left == right, in icmp() 1436 IntCC::NotEqual => left != right, in icmp() 1437 IntCC::SignedGreaterThan => left > right, in icmp() 1439 IntCC::SignedLessThan => left < right, in icmp() 1441 IntCC::UnsignedGreaterThan => { in icmp() 1444 IntCC::UnsignedGreaterThanOrEqual => { in icmp() 1447 IntCC::UnsignedLessThan => { in icmp() [all …]
|
| /wasmtime-44.0.1/cranelift/umbrella/src/ |
| H A D | lib.rs | 26 pub use crate::codegen::ir::condcodes::{FloatCC, IntCC};
|