Fast path for searching through simple transitions (issue 11189089)

12 views
Skip to first unread message

verw...@chromium.org

unread,
Oct 19, 2012, 10:22:56 AM10/19/12
to yan...@chromium.org, v8-...@googlegroups.com
Reviewers: Yang,

Message:
PTAL.

Description:
Fast path for searching through simple transitions


Please review this at https://chromiumcodereview.appspot.com/11189089/

SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

Affected files:
M src/transitions-inl.h


Index: src/transitions-inl.h
diff --git a/src/transitions-inl.h b/src/transitions-inl.h
index
2df30028317e0c64e71c7f8edfc39e706cbd4339..6957a0e63efb001b72e5982b08df639bd0605062
100644
--- a/src/transitions-inl.h
+++ b/src/transitions-inl.h
@@ -191,6 +191,12 @@ PropertyDetails TransitionArray::GetTargetDetails(int
transition_number) {


int TransitionArray::Search(String* name) {
+ if (IsSimpleTransition()) {
+ Map* target = Map::cast(get(kSimpleTransitionTarget));
+ String* key =
target->instance_descriptors()->GetKey(target->LastAdded());
+ if (key == name) return 0;
+ return kNotFound;
+ }
return internal::Search<ALL_ENTRIES>(this, name);
}



yan...@chromium.org

unread,
Oct 19, 2012, 10:40:22 AM10/19/12
to verw...@chromium.org, v8-...@googlegroups.com
Reply all
Reply to author
Forward
0 new messages