aboutsummaryrefslogtreecommitdiff
path: root/deps/v8/src/compiler/machine-graph-verifier.cc
diff options
context:
space:
mode:
authorMichaël Zasso <targos@protonmail.com>2019-11-08 15:39:11 +0100
committerMichaël Zasso <targos@protonmail.com>2019-11-08 15:46:25 +0100
commit6ca81ad72a3c6fdf16c683335be748f22aaa9a0d (patch)
tree33c8ee75f729aed76c2c0b89c63f9bf1b4dd66aa /deps/v8/src/compiler/machine-graph-verifier.cc
parent1eee0b8bf8bba39b600fb16a9223e545e3bac2bc (diff)
downloadandroid-node-v8-6ca81ad72a3c6fdf16c683335be748f22aaa9a0d.tar.gz
android-node-v8-6ca81ad72a3c6fdf16c683335be748f22aaa9a0d.tar.bz2
android-node-v8-6ca81ad72a3c6fdf16c683335be748f22aaa9a0d.zip
deps: update V8 to 7.9.317.20
PR-URL: https://github.com/nodejs/node/pull/30020 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Diffstat (limited to 'deps/v8/src/compiler/machine-graph-verifier.cc')
-rw-r--r--deps/v8/src/compiler/machine-graph-verifier.cc13
1 files changed, 10 insertions, 3 deletions
diff --git a/deps/v8/src/compiler/machine-graph-verifier.cc b/deps/v8/src/compiler/machine-graph-verifier.cc
index 4c7ee1d141..f6b747c04d 100644
--- a/deps/v8/src/compiler/machine-graph-verifier.cc
+++ b/deps/v8/src/compiler/machine-graph-verifier.cc
@@ -241,7 +241,7 @@ class MachineRepresentationInferrer {
MachineType::PointerRepresentation();
break;
case IrOpcode::kBitcastTaggedToWord:
- case IrOpcode::kBitcastTaggedSignedToWord:
+ case IrOpcode::kBitcastTaggedToWordForTagAndSmiBits:
representation_vector_[node->id()] =
MachineType::PointerRepresentation();
break;
@@ -437,7 +437,7 @@ class MachineRepresentationChecker {
MachineRepresentation::kWord64);
break;
case IrOpcode::kBitcastTaggedToWord:
- case IrOpcode::kBitcastTaggedSignedToWord:
+ case IrOpcode::kBitcastTaggedToWordForTagAndSmiBits:
case IrOpcode::kTaggedPoisonOnSpeculation:
CheckValueInputIsTagged(node, 0);
break;
@@ -461,7 +461,7 @@ class MachineRepresentationChecker {
CheckValueInputForFloat64Op(node, 0);
break;
case IrOpcode::kWord64Equal:
- if (Is64()) {
+ if (Is64() && !COMPRESS_POINTERS_BOOL) {
CheckValueInputIsTaggedOrPointer(node, 0);
CheckValueInputIsTaggedOrPointer(node, 1);
if (!is_stub_) {
@@ -1007,6 +1007,13 @@ class MachineRepresentationChecker {
return IsAnyCompressed(actual);
case MachineRepresentation::kTaggedSigned:
case MachineRepresentation::kTaggedPointer:
+ // TODO(tebbi): At the moment, the machine graph doesn't contain
+ // reliable information if a node is kTaggedSigned, kTaggedPointer or
+ // kTagged, and often this is context-dependent. We should at least
+ // check for obvious violations: kTaggedSigned where we expect
+ // kTaggedPointer and the other way around, but at the moment, this
+ // happens in dead code.
+ return IsAnyTagged(actual);
case MachineRepresentation::kCompressedSigned:
case MachineRepresentation::kCompressedPointer:
case MachineRepresentation::kFloat32: