Skip to content

Commit

Permalink
Vpopcnt for x64
Browse files Browse the repository at this point in the history
  • Loading branch information
jlb6740 committed May 21, 2021
1 parent 8b9057a commit e06d98d
Show file tree
Hide file tree
Showing 6 changed files with 399 additions and 312 deletions.
1 change: 0 additions & 1 deletion build.rs
Original file line number Diff line number Diff line change
Expand Up @@ -191,7 +191,6 @@ fn x64_should_panic(testsuite: &str, testname: &str, strategy: &str) -> bool {
}

match (testsuite, testname) {
("simd", "simd_i8x16_arith2") => return true, // Unsupported feature: proposed simd operator I8x16Popcnt
("simd", "simd_conversions") => return true, // unknown operator or unexpected token: tests/spec_testsuite/proposals/simd/simd_conversions.wast:724:6
("simd", "simd_i16x8_extadd_pairwise_i8x16") => return true,
("simd", "simd_i16x8_extmul_i8x16") => return true,
Expand Down
3 changes: 3 additions & 0 deletions cranelift/codegen/meta/src/shared/instructions.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3314,6 +3314,9 @@ pub(crate) fn define(
.operands_out(vec![a]),
);

let x = &Operand::new("x", Int);
let a = &Operand::new("a", Int);

ig.push(
Inst::new(
"popcnt",
Expand Down
1 change: 1 addition & 0 deletions cranelift/codegen/src/isa/aarch64/lower_inst.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3046,6 +3046,7 @@ pub(crate) fn lower_insn_to_regs<C: LowerCtx<I = Inst>>(

Opcode::TlsValue => unimplemented!("tls_value"),
Opcode::FcvtLowFromSint => unimplemented!("FcvtLowFromSint"),
Opcode::Vpopcnt => unimplemented!("Vpopcnt"),
}

Ok(())
Expand Down
Loading

0 comments on commit e06d98d

Please sign in to comment.