Index: src/ic/ic.cc |
diff --git a/src/ic/ic.cc b/src/ic/ic.cc |
index 21c5bc76a439dbc0810a2130585304ab443b9502..698dde5e53e43de4c9ff0241d28cf5c8be7ab3a1 100644 |
--- a/src/ic/ic.cc |
+++ b/src/ic/ic.cc |
@@ -16,6 +16,7 @@ |
#include "src/frames-inl.h" |
#include "src/ic/call-optimization.h" |
#include "src/ic/handler-compiler.h" |
+#include "src/ic/handler-configuration-inl.h" |
#include "src/ic/ic-compiler.h" |
#include "src/ic/ic-inl.h" |
#include "src/ic/stub-cache.h" |
@@ -849,7 +850,7 @@ Handle<Code> KeyedStoreIC::ChooseMegamorphicStub(Isolate* isolate, |
Handle<Object> LoadIC::SimpleFieldLoad(FieldIndex index) { |
if (FLAG_tf_load_ic_stub) { |
TRACE_HANDLER_STATS(isolate(), LoadIC_LoadFieldDH); |
- return handle(Smi::FromInt(index.GetLoadByFieldOffset()), isolate()); |
+ return SmiHandler::MakeLoadFieldHandler(isolate(), index); |
} |
TRACE_HANDLER_STATS(isolate(), LoadIC_LoadFieldStub); |
LoadFieldStub stub(isolate(), index); |
@@ -888,9 +889,7 @@ Handle<Object> LoadIC::SimpleFieldLoadFromPrototype(FieldIndex index, |
Map::GetOrCreatePrototypeChainValidityCell(receiver_map, isolate()); |
DCHECK(!validity_cell.is_null()); |
- Handle<Object> handler(Smi::FromInt(index.GetLoadByFieldOffset()), isolate()); |
- DCHECK(handler->IsSmi()); |
- |
+ Handle<Object> handler(SmiHandler::MakeLoadFieldHandler(isolate(), index)); |
Factory* factory = isolate()->factory(); |
Handle<WeakCell> holder_cell = factory->NewWeakCell(holder); |