| Index: src/compiler/js-type-feedback.cc
 | 
| diff --git a/src/compiler/js-type-feedback.cc b/src/compiler/js-type-feedback.cc
 | 
| index 22ebf480c76f3191ccab90f397ae4be9c6abfdd6..432e2d0366620bcc93c7388db47fd6d2af33fb90 100644
 | 
| --- a/src/compiler/js-type-feedback.cc
 | 
| +++ b/src/compiler/js-type-feedback.cc
 | 
| @@ -52,6 +52,8 @@ Reduction JSTypeFeedbackSpecializer::Reduce(Node* node) {
 | 
|        return ReduceJSLoadProperty(node);
 | 
|      case IrOpcode::kJSLoadNamed:
 | 
|        return ReduceJSLoadNamed(node);
 | 
| +    case IrOpcode::kJSLoadGlobal:
 | 
| +      return ReduceJSLoadGlobal(node);
 | 
|      case IrOpcode::kJSStoreNamed:
 | 
|        return ReduceJSStoreNamed(node);
 | 
|      case IrOpcode::kJSStoreProperty:
 | 
| @@ -137,19 +139,8 @@ static bool GetInObjectFieldAccess(LoadOrStore mode, Handle<Map> map,
 | 
|  }
 | 
|  
 | 
|  
 | 
| -static bool IsGlobalObject(Node* node) {
 | 
| -  return NodeProperties::IsTyped(node) &&
 | 
| -         NodeProperties::GetBounds(node).upper->Is(Type::GlobalObject());
 | 
| -}
 | 
| -
 | 
| -
 | 
|  Reduction JSTypeFeedbackSpecializer::ReduceJSLoadNamed(Node* node) {
 | 
|    DCHECK(node->opcode() == IrOpcode::kJSLoadNamed);
 | 
| -  Node* receiver = node->InputAt(0);
 | 
| -  if (IsGlobalObject(receiver)) {
 | 
| -    return ReduceJSLoadNamedForGlobalVariable(node);
 | 
| -  }
 | 
| -
 | 
|    if (mode() != kDeoptimizationEnabled) return NoChange();
 | 
|    Node* frame_state_before = GetFrameStateBefore(node);
 | 
|    if (frame_state_before == nullptr) return NoChange();
 | 
| @@ -166,6 +157,7 @@ Reduction JSTypeFeedbackSpecializer::ReduceJSLoadNamed(Node* node) {
 | 
|    }
 | 
|    oracle()->PropertyReceiverTypes(slot, name, &maps);
 | 
|  
 | 
| +  Node* receiver = node->InputAt(0);
 | 
|    Node* effect = NodeProperties::GetEffectInput(node);
 | 
|  
 | 
|    if (maps.length() != 1) return NoChange();  // TODO(turbofan): polymorphism
 | 
| @@ -196,10 +188,10 @@ Reduction JSTypeFeedbackSpecializer::ReduceJSLoadNamed(Node* node) {
 | 
|  }
 | 
|  
 | 
|  
 | 
| -Reduction JSTypeFeedbackSpecializer::ReduceJSLoadNamedForGlobalVariable(
 | 
| -    Node* node) {
 | 
| +Reduction JSTypeFeedbackSpecializer::ReduceJSLoadGlobal(Node* node) {
 | 
| +  DCHECK(node->opcode() == IrOpcode::kJSLoadGlobal);
 | 
|    Handle<String> name =
 | 
| -      Handle<String>::cast(LoadNamedParametersOf(node->op()).name().handle());
 | 
| +      Handle<String>::cast(LoadGlobalParametersOf(node->op()).name().handle());
 | 
|    // Try to optimize loads from the global object.
 | 
|    Handle<Object> constant_value =
 | 
|        jsgraph()->isolate()->factory()->GlobalConstantFor(name);
 | 
| 
 |