Commit b6cddfbc authored by Santiago Aboy Solanes's avatar Santiago Aboy Solanes Committed by Commit Bot

[ptr-compr] Added ChangeTagged*ToCompressed* (and back) to the graph verifier

... for * in ("", "Tagged", "Signed").

Cq-Include-Trybots: luci.v8.try:v8_linux64_pointer_compression_rel_ng
Cq-Include-Trybots: luci.v8.try:v8_linux64_arm64_pointer_compression_rel_ng
Bug: v8:7703
Change-Id: I6891fea9596058e7290df7a6b6775dd8a184ea2f
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1578500Reviewed-by: 's avatarJaroslav Sevcik <jarin@chromium.org>
Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org>
Cr-Commit-Position: refs/heads/master@{#60968}
parent f8374ee4
......@@ -206,8 +206,29 @@ class MachineRepresentationInferrer {
case IrOpcode::kChangeUint32ToTagged:
case IrOpcode::kBitcastWordToTagged:
case IrOpcode::kTaggedPoisonOnSpeculation:
case IrOpcode::kChangeCompressedToTagged:
representation_vector_[node->id()] = MachineRepresentation::kTagged;
break;
case IrOpcode::kChangeCompressedPointerToTaggedPointer:
representation_vector_[node->id()] =
MachineRepresentation::kTaggedPointer;
break;
case IrOpcode::kChangeCompressedSignedToTaggedSigned:
representation_vector_[node->id()] =
MachineRepresentation::kTaggedSigned;
break;
case IrOpcode::kChangeTaggedToCompressed:
representation_vector_[node->id()] =
MachineRepresentation::kCompressed;
break;
case IrOpcode::kChangeTaggedPointerToCompressedPointer:
representation_vector_[node->id()] =
MachineRepresentation::kCompressedPointer;
break;
case IrOpcode::kChangeTaggedSignedToCompressedSigned:
representation_vector_[node->id()] =
MachineRepresentation::kCompressedSigned;
break;
case IrOpcode::kWord32PoisonOnSpeculation:
representation_vector_[node->id()] = MachineRepresentation::kWord32;
break;
......@@ -363,6 +384,29 @@ class MachineRepresentationChecker {
CHECK_EQ(MachineRepresentation::kTagged,
inferrer_->GetRepresentation(node->InputAt(0)));
break;
case IrOpcode::kChangeCompressedToTagged:
CHECK(IsAnyCompressed(
inferrer_->GetRepresentation(node->InputAt(0))));
break;
case IrOpcode::kChangeCompressedPointerToTaggedPointer:
CHECK(CanBeCompressedPointer(
inferrer_->GetRepresentation(node->InputAt(0))));
break;
case IrOpcode::kChangeCompressedSignedToTaggedSigned:
CHECK(CanBeCompressedSigned(
inferrer_->GetRepresentation(node->InputAt(0))));
break;
case IrOpcode::kChangeTaggedToCompressed:
CHECK(IsAnyTagged(inferrer_->GetRepresentation(node->InputAt(0))));
break;
case IrOpcode::kChangeTaggedPointerToCompressedPointer:
CHECK(CanBeTaggedPointer(
inferrer_->GetRepresentation(node->InputAt(0))));
break;
case IrOpcode::kChangeTaggedSignedToCompressedSigned:
CHECK(CanBeTaggedSigned(
inferrer_->GetRepresentation(node->InputAt(0))));
break;
case IrOpcode::kRoundInt64ToFloat64:
case IrOpcode::kRoundUint64ToFloat64:
case IrOpcode::kRoundInt64ToFloat32:
......
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