OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "src/full-codegen/full-codegen.h" | 5 #include "src/full-codegen/full-codegen.h" |
6 | 6 |
7 #include "src/ast/ast-numbering.h" | 7 #include "src/ast/ast-numbering.h" |
8 #include "src/ast/ast.h" | 8 #include "src/ast/ast.h" |
9 #include "src/ast/prettyprinter.h" | 9 #include "src/ast/prettyprinter.h" |
10 #include "src/ast/scopes.h" | 10 #include "src/ast/scopes.h" |
(...skipping 220 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
231 | 231 |
232 void FullCodeGenerator::CallLoadGlobalIC(TypeofMode typeof_mode, | 232 void FullCodeGenerator::CallLoadGlobalIC(TypeofMode typeof_mode, |
233 TypeFeedbackId id) { | 233 TypeFeedbackId id) { |
234 Handle<Code> ic = CodeFactory::LoadGlobalIC(isolate(), typeof_mode).code(); | 234 Handle<Code> ic = CodeFactory::LoadGlobalIC(isolate(), typeof_mode).code(); |
235 CallIC(ic, id); | 235 CallIC(ic, id); |
236 } | 236 } |
237 | 237 |
238 void FullCodeGenerator::CallStoreIC(TypeFeedbackId id) { | 238 void FullCodeGenerator::CallStoreIC(TypeFeedbackId id) { |
239 Handle<Code> ic = CodeFactory::StoreIC(isolate(), language_mode()).code(); | 239 Handle<Code> ic = CodeFactory::StoreIC(isolate(), language_mode()).code(); |
240 CallIC(ic, id); | 240 CallIC(ic, id); |
| 241 RestoreContext(); |
241 } | 242 } |
242 | 243 |
243 void FullCodeGenerator::CallKeyedStoreIC() { | 244 void FullCodeGenerator::CallKeyedStoreIC() { |
244 Handle<Code> ic = | 245 Handle<Code> ic = |
245 CodeFactory::KeyedStoreIC(isolate(), language_mode()).code(); | 246 CodeFactory::KeyedStoreIC(isolate(), language_mode()).code(); |
246 CallIC(ic); | 247 CallIC(ic); |
247 RestoreContext(); | 248 RestoreContext(); |
248 } | 249 } |
249 | 250 |
250 void FullCodeGenerator::RecordJSReturnSite(Call* call) { | 251 void FullCodeGenerator::RecordJSReturnSite(Call* call) { |
(...skipping 1763 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2014 return info_->has_simple_parameters(); | 2015 return info_->has_simple_parameters(); |
2015 } | 2016 } |
2016 | 2017 |
2017 FunctionLiteral* FullCodeGenerator::literal() const { return info_->literal(); } | 2018 FunctionLiteral* FullCodeGenerator::literal() const { return info_->literal(); } |
2018 | 2019 |
2019 #undef __ | 2020 #undef __ |
2020 | 2021 |
2021 | 2022 |
2022 } // namespace internal | 2023 } // namespace internal |
2023 } // namespace v8 | 2024 } // namespace v8 |
OLD | NEW |