Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(129)

Unified Diff: src/x64/stub-cache-x64.cc

Issue 65413003: Make index translate/inobject only rely on the map. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Map* rather than Handle<Map> Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/property.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/x64/stub-cache-x64.cc
diff --git a/src/x64/stub-cache-x64.cc b/src/x64/stub-cache-x64.cc
index a1e8f211161e9c42cbfeffa0f9d9d3eb9818bcae..c41421ea9da26f8a3fd233da4ce6c431c2b06e4e 100644
--- a/src/x64/stub-cache-x64.cc
+++ b/src/x64/stub-cache-x64.cc
@@ -1278,13 +1278,13 @@ void LoadStubCompiler::GenerateLoadField(Register reg,
Representation representation) {
if (!reg.is(receiver())) __ movq(receiver(), reg);
if (kind() == Code::LOAD_IC) {
- LoadFieldStub stub(field.is_inobject(holder),
- field.translate(holder),
+ LoadFieldStub stub(field.is_inobject(holder->map()),
+ field.translate(holder->map()),
representation);
GenerateTailCall(masm(), stub.GetCode(isolate()));
} else {
- KeyedLoadFieldStub stub(field.is_inobject(holder),
- field.translate(holder),
+ KeyedLoadFieldStub stub(field.is_inobject(holder->map()),
+ field.translate(holder->map()),
representation);
GenerateTailCall(masm(), stub.GetCode(isolate()));
}
@@ -1568,8 +1568,9 @@ Handle<Code> CallStubCompiler::CompileCallField(Handle<JSObject> object,
Register reg = CheckPrototypes(object, rdx, holder, rbx, rax, rdi,
name, &miss);
- GenerateFastPropertyLoad(masm(), rdi, reg, index.is_inobject(holder),
- index.translate(holder), Representation::Tagged());
+ GenerateFastPropertyLoad(
+ masm(), rdi, reg, index.is_inobject(holder->map()),
+ index.translate(holder->map()), Representation::Tagged());
// Check that the function really is a function.
__ JumpIfSmi(rdi, &miss);
« no previous file with comments | « src/property.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698