OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 10151 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10162 ASSERT_EQ(builtins->builtin(Builtins::kJSConstructStubGeneric), | 10162 ASSERT_EQ(builtins->builtin(Builtins::kJSConstructStubGeneric), |
10163 *RawField(this, kConstructStubOffset)); | 10163 *RawField(this, kConstructStubOffset)); |
10164 set_construct_stub(builtins->builtin(Builtins::kJSConstructStubCountdown)); | 10164 set_construct_stub(builtins->builtin(Builtins::kJSConstructStubCountdown)); |
10165 // The map survived the gc, so there may be objects referencing it. | 10165 // The map survived the gc, so there may be objects referencing it. |
10166 set_live_objects_may_exist(true); | 10166 set_live_objects_may_exist(true); |
10167 } | 10167 } |
10168 | 10168 |
10169 | 10169 |
10170 void SharedFunctionInfo::ResetForNewContext(int new_ic_age) { | 10170 void SharedFunctionInfo::ResetForNewContext(int new_ic_age) { |
10171 code()->ClearInlineCaches(); | 10171 code()->ClearInlineCaches(); |
10172 // If we clear ICs, we need to clear the type feedback vector too, since | |
10173 // CallICs are synced with a feedback vector slot. | |
10174 code()->ClearTypeFeedbackInfo(map()->GetHeap()); | |
10175 set_ic_age(new_ic_age); | 10172 set_ic_age(new_ic_age); |
10176 if (code()->kind() == Code::FUNCTION) { | 10173 if (code()->kind() == Code::FUNCTION) { |
10177 code()->set_profiler_ticks(0); | 10174 code()->set_profiler_ticks(0); |
10178 if (optimization_disabled() && | 10175 if (optimization_disabled() && |
10179 opt_count() >= FLAG_max_opt_count) { | 10176 opt_count() >= FLAG_max_opt_count) { |
10180 // Re-enable optimizations if they were disabled due to opt_count limit. | 10177 // Re-enable optimizations if they were disabled due to opt_count limit. |
10181 set_optimization_disabled(false); | 10178 set_optimization_disabled(false); |
10182 code()->set_optimizable(true); | 10179 code()->set_optimizable(true); |
10183 } | 10180 } |
10184 set_opt_count(0); | 10181 set_opt_count(0); |
(...skipping 6276 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
16461 #define ERROR_MESSAGES_TEXTS(C, T) T, | 16458 #define ERROR_MESSAGES_TEXTS(C, T) T, |
16462 static const char* error_messages_[] = { | 16459 static const char* error_messages_[] = { |
16463 ERROR_MESSAGES_LIST(ERROR_MESSAGES_TEXTS) | 16460 ERROR_MESSAGES_LIST(ERROR_MESSAGES_TEXTS) |
16464 }; | 16461 }; |
16465 #undef ERROR_MESSAGES_TEXTS | 16462 #undef ERROR_MESSAGES_TEXTS |
16466 return error_messages_[reason]; | 16463 return error_messages_[reason]; |
16467 } | 16464 } |
16468 | 16465 |
16469 | 16466 |
16470 } } // namespace v8::internal | 16467 } } // namespace v8::internal |
OLD | NEW |