S390: Add Mul64WithOverflow under AssembleArchBoolean

Operation was already implemented in crrev.com/c/3945132.

This CL adds it under AssembleArchBoolean as well as FlagsConditionToCondition.

Change-Id: I24b56dd6f3cabccefb5fdc0d699c78a960f97fb1
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4062268
Commit-Queue: Milad Farazmand <mfarazma@redhat.com>
Reviewed-by: Junliang Yan <junyan@redhat.com>
Cr-Commit-Position: refs/heads/main@{#84557}
This commit is contained in:
Milad Fa 2022-11-28 12:30:35 -05:00 committed by V8 LUCI CQ
parent e6f4f33512
commit 8d43b96711

View File

@ -321,6 +321,7 @@ Condition FlagsConditionToCondition(FlagsCondition condition, ArchOpcode op) {
case kS390_Abs64:
case kS390_Abs32:
case kS390_Mul32:
case kS390_Mul64WithOverflow:
return nooverflow;
default:
break;
@ -3300,7 +3301,8 @@ void CodeGenerator::AssembleArchBoolean(Instruction* instr,
// Overflow checked for add/sub only.
DCHECK((condition != kOverflow && condition != kNotOverflow) ||
(op == kS390_Add32 || op == kS390_Add64 || op == kS390_Sub32 ||
op == kS390_Sub64 || op == kS390_Mul32));
op == kS390_Sub64 || op == kS390_Mul32 ||
op == kS390_Mul64WithOverflow));
// Materialize a full 32-bit 1 or 0 value. The result register is always the
// last output of the instruction.