Commit 06b0f23d authored by Junliang Yan's avatar Junliang Yan Committed by Commit Bot

s390x: [liftoff] implement Popcnt32/64

Change-Id: I5bd0079eb81b962e03e475e48a7429933295f25a
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2774564Reviewed-by: 's avatarMilad Fa <mfarazma@redhat.com>
Commit-Queue: Junliang Yan <junyan@redhat.com>
Cr-Commit-Position: refs/heads/master@{#73552}
parent f19142e6
......@@ -801,6 +801,9 @@ void LiftoffAssembler::FillStackSlotsWithZero(int start, int size) {
// V(name, instr, dtype, stype, dcast, scast, rcast, return_val, return_type)
#define UNOP_LIST(V) \
V(i32_popcnt, Popcnt32, Register, Register, , , USE, true, bool) \
V(i64_popcnt, Popcnt64, LiftoffRegister, LiftoffRegister, LFR_TO_REG, \
LFR_TO_REG, USE, true, bool) \
V(u32_to_intptr, LoadU32, Register, Register, , , USE, , void) \
V(i32_signextend_i8, lbr, Register, Register, , , USE, , void) \
V(i32_signextend_i16, lhr, Register, Register, , , USE, , void) \
......@@ -933,17 +936,6 @@ BINOP_LIST(EMIT_BINOP_FUNCTION)
#undef REGISTER_AND_WITH_1F
#undef LFR_TO_REG
bool LiftoffAssembler::emit_i32_popcnt(Register dst, Register src) {
bailout(kUnsupportedArchitecture, "i32_popcnt");
return true;
}
bool LiftoffAssembler::emit_i64_popcnt(LiftoffRegister dst,
LiftoffRegister src) {
Popcnt64(dst.gp(), src.gp());
return true;
}
bool LiftoffAssembler::emit_f32_ceil(DoubleRegister dst, DoubleRegister src) {
fiebra(ROUND_TOWARD_POS_INF, dst, src);
return true;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment