Commit d232dcfd authored by mvstanton's avatar mvstanton Committed by Commit bot

The Global Load IC doesn't yet play well with --vector-ics.

Until this is addressed, we can simply use the regular IC, as we do
in times of serialization.

R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/974853002

Cr-Commit-Position: refs/heads/master@{#26977}
parent 30b995fc
...@@ -442,7 +442,10 @@ void FullCodeGenerator::CallLoadIC(ContextualMode contextual_mode, ...@@ -442,7 +442,10 @@ void FullCodeGenerator::CallLoadIC(ContextualMode contextual_mode,
void FullCodeGenerator::CallGlobalLoadIC(Handle<String> name) { void FullCodeGenerator::CallGlobalLoadIC(Handle<String> name) {
if (masm()->serializer_enabled()) return CallLoadIC(CONTEXTUAL); if (masm()->serializer_enabled() || FLAG_vector_ics) {
// Vector-ICs don't work with LoadGlobalIC.
return CallLoadIC(CONTEXTUAL);
}
Handle<Code> ic = CodeFactory::LoadGlobalIC( Handle<Code> ic = CodeFactory::LoadGlobalIC(
isolate(), isolate()->global_object(), name).code(); isolate(), isolate()->global_object(), name).code();
CallIC(ic, TypeFeedbackId::None()); CallIC(ic, TypeFeedbackId::None());
......
...@@ -951,6 +951,9 @@ Handle<Code> LoadIC::initialize_stub(Isolate* isolate, ...@@ -951,6 +951,9 @@ Handle<Code> LoadIC::initialize_stub(Isolate* isolate,
Handle<Code> LoadIC::load_global(Isolate* isolate, Handle<GlobalObject> global, Handle<Code> LoadIC::load_global(Isolate* isolate, Handle<GlobalObject> global,
Handle<String> name) { Handle<String> name) {
// This special IC doesn't work with vector ics.
DCHECK(!FLAG_vector_ics);
Handle<ScriptContextTable> script_contexts( Handle<ScriptContextTable> script_contexts(
global->native_context()->script_context_table()); global->native_context()->script_context_table());
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment