Index: src/compiler/js-native-context-specialization.cc |
diff --git a/src/compiler/js-native-context-specialization.cc b/src/compiler/js-native-context-specialization.cc |
index 1881cd02bc538e8ea0a031274293e3db7b03c891..35b3c82756bee89dc6ebd8609e9827c2ec28e7bc 100644 |
--- a/src/compiler/js-native-context-specialization.cc |
+++ b/src/compiler/js-native-context-specialization.cc |
@@ -818,13 +818,14 @@ JSNativeContextSpecialization::BuildPropertyAccess( |
DCHECK_EQ(AccessMode::kLoad, access_mode); |
value = jsgraph()->UndefinedConstant(); |
} else if (access_info.IsDataConstant()) { |
- value = jsgraph()->Constant(access_info.constant()); |
+ Node* constant_value = jsgraph()->Constant(access_info.constant()); |
if (access_mode == AccessMode::kStore) { |
- Node* check = |
- graph()->NewNode(simplified()->ReferenceEqual(), value, value); |
+ Node* check = graph()->NewNode(simplified()->ReferenceEqual(), value, |
+ constant_value); |
effect = |
graph()->NewNode(simplified()->CheckIf(), check, effect, control); |
} |
+ value = constant_value; |
} else if (access_info.IsAccessorConstant()) { |
// TODO(bmeurer): Properly rewire the IfException edge here if there's any. |
Node* target = jsgraph()->Constant(access_info.constant()); |