| Index: third_party/WebKit/Source/bindings/tests/results/core/V8TestDictionaryDerived.cpp | 
| diff --git a/third_party/WebKit/Source/bindings/tests/results/core/V8TestDictionaryDerived.cpp b/third_party/WebKit/Source/bindings/tests/results/core/V8TestDictionaryDerived.cpp | 
| index 19236bc1bb026ebcc1e24299a047b0337907c117..cdccf8d143e56d2dfff7564fbf850163e9be7e01 100644 | 
| --- a/third_party/WebKit/Source/bindings/tests/results/core/V8TestDictionaryDerived.cpp | 
| +++ b/third_party/WebKit/Source/bindings/tests/results/core/V8TestDictionaryDerived.cpp | 
| @@ -18,6 +18,17 @@ | 
|  | 
| namespace blink { | 
|  | 
| +static const v8::Eternal<v8::Name>* eternalV8TestDictionaryDerivedImplementedAsKeys(v8::Isolate* isolate) { | 
| +  static const char* const kKeys[] = { | 
| +    "derivedStringMember", | 
| +    "derivedStringMemberWithDefault", | 
| +    "requiredLongMember", | 
| +    "stringOrDoubleSequenceMember", | 
| +  }; | 
| +  return V8PerIsolateData::from(isolate)->findOrCreateEternalNameCache( | 
| +      kKeys, kKeys, WTF_ARRAY_LENGTH(kKeys)); | 
| +} | 
| + | 
| void V8TestDictionaryDerivedImplementedAs::toImpl(v8::Isolate* isolate, v8::Local<v8::Value> v8Value, TestDictionaryDerivedImplementedAs& impl, ExceptionState& exceptionState) { | 
| if (isUndefinedOrNull(v8Value)) { | 
| exceptionState.throwTypeError("Missing required member(s): requiredLongMember."); | 
| @@ -34,9 +45,11 @@ void V8TestDictionaryDerivedImplementedAs::toImpl(v8::Isolate* isolate, v8::Loca | 
| if (exceptionState.hadException()) | 
| return; | 
|  | 
| +  const v8::Eternal<v8::Name>* keys = eternalV8TestDictionaryDerivedImplementedAsKeys(isolate); | 
| v8::TryCatch block(isolate); | 
| +  v8::Local<v8::Context> context = isolate->GetCurrentContext(); | 
| v8::Local<v8::Value> derivedStringMemberValue; | 
| -  if (!v8Object->Get(isolate->GetCurrentContext(), v8AtomicString(isolate, "derivedStringMember")).ToLocal(&derivedStringMemberValue)) { | 
| +  if (!v8Object->Get(context, keys[0].Get(isolate)).ToLocal(&derivedStringMemberValue)) { | 
| exceptionState.rethrowV8Exception(block.Exception()); | 
| return; | 
| } | 
| @@ -50,7 +63,7 @@ void V8TestDictionaryDerivedImplementedAs::toImpl(v8::Isolate* isolate, v8::Loca | 
| } | 
|  | 
| v8::Local<v8::Value> derivedStringMemberWithDefaultValue; | 
| -  if (!v8Object->Get(isolate->GetCurrentContext(), v8AtomicString(isolate, "derivedStringMemberWithDefault")).ToLocal(&derivedStringMemberWithDefaultValue)) { | 
| +  if (!v8Object->Get(context, keys[1].Get(isolate)).ToLocal(&derivedStringMemberWithDefaultValue)) { | 
| exceptionState.rethrowV8Exception(block.Exception()); | 
| return; | 
| } | 
| @@ -64,7 +77,7 @@ void V8TestDictionaryDerivedImplementedAs::toImpl(v8::Isolate* isolate, v8::Loca | 
| } | 
|  | 
| v8::Local<v8::Value> requiredLongMemberValue; | 
| -  if (!v8Object->Get(isolate->GetCurrentContext(), v8AtomicString(isolate, "requiredLongMember")).ToLocal(&requiredLongMemberValue)) { | 
| +  if (!v8Object->Get(context, keys[2].Get(isolate)).ToLocal(&requiredLongMemberValue)) { | 
| exceptionState.rethrowV8Exception(block.Exception()); | 
| return; | 
| } | 
| @@ -79,7 +92,7 @@ void V8TestDictionaryDerivedImplementedAs::toImpl(v8::Isolate* isolate, v8::Loca | 
| } | 
|  | 
| v8::Local<v8::Value> stringOrDoubleSequenceMemberValue; | 
| -  if (!v8Object->Get(isolate->GetCurrentContext(), v8AtomicString(isolate, "stringOrDoubleSequenceMember")).ToLocal(&stringOrDoubleSequenceMemberValue)) { | 
| +  if (!v8Object->Get(context, keys[3].Get(isolate)).ToLocal(&stringOrDoubleSequenceMemberValue)) { | 
| exceptionState.rethrowV8Exception(block.Exception()); | 
| return; | 
| } | 
| @@ -104,6 +117,8 @@ bool toV8TestDictionaryDerivedImplementedAs(const TestDictionaryDerivedImplement | 
| if (!toV8TestDictionary(impl, dictionary, creationContext, isolate)) | 
| return false; | 
|  | 
| +  const v8::Eternal<v8::Name>* keys = eternalV8TestDictionaryDerivedImplementedAsKeys(isolate); | 
| +  v8::Local<v8::Context> context = isolate->GetCurrentContext(); | 
| v8::Local<v8::Value> derivedStringMemberValue; | 
| bool derivedStringMemberHasValueOrDefault = false; | 
| if (impl.hasDerivedStringMember()) { | 
| @@ -111,7 +126,7 @@ bool toV8TestDictionaryDerivedImplementedAs(const TestDictionaryDerivedImplement | 
| derivedStringMemberHasValueOrDefault = true; | 
| } | 
| if (derivedStringMemberHasValueOrDefault && | 
| -      !v8CallBoolean(dictionary->CreateDataProperty(isolate->GetCurrentContext(), v8AtomicString(isolate, "derivedStringMember"), derivedStringMemberValue))) { | 
| +      !v8CallBoolean(dictionary->CreateDataProperty(context, keys[0].Get(isolate), derivedStringMemberValue))) { | 
| return false; | 
| } | 
|  | 
| @@ -125,7 +140,7 @@ bool toV8TestDictionaryDerivedImplementedAs(const TestDictionaryDerivedImplement | 
| derivedStringMemberWithDefaultHasValueOrDefault = true; | 
| } | 
| if (derivedStringMemberWithDefaultHasValueOrDefault && | 
| -      !v8CallBoolean(dictionary->CreateDataProperty(isolate->GetCurrentContext(), v8AtomicString(isolate, "derivedStringMemberWithDefault"), derivedStringMemberWithDefaultValue))) { | 
| +      !v8CallBoolean(dictionary->CreateDataProperty(context, keys[1].Get(isolate), derivedStringMemberWithDefaultValue))) { | 
| return false; | 
| } | 
|  | 
| @@ -138,7 +153,7 @@ bool toV8TestDictionaryDerivedImplementedAs(const TestDictionaryDerivedImplement | 
| NOTREACHED(); | 
| } | 
| if (requiredLongMemberHasValueOrDefault && | 
| -      !v8CallBoolean(dictionary->CreateDataProperty(isolate->GetCurrentContext(), v8AtomicString(isolate, "requiredLongMember"), requiredLongMemberValue))) { | 
| +      !v8CallBoolean(dictionary->CreateDataProperty(context, keys[2].Get(isolate), requiredLongMemberValue))) { | 
| return false; | 
| } | 
|  | 
| @@ -149,7 +164,7 @@ bool toV8TestDictionaryDerivedImplementedAs(const TestDictionaryDerivedImplement | 
| stringOrDoubleSequenceMemberHasValueOrDefault = true; | 
| } | 
| if (stringOrDoubleSequenceMemberHasValueOrDefault && | 
| -      !v8CallBoolean(dictionary->CreateDataProperty(isolate->GetCurrentContext(), v8AtomicString(isolate, "stringOrDoubleSequenceMember"), stringOrDoubleSequenceMemberValue))) { | 
| +      !v8CallBoolean(dictionary->CreateDataProperty(context, keys[3].Get(isolate), stringOrDoubleSequenceMemberValue))) { | 
| return false; | 
| } | 
|  | 
|  |