OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 275 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
286 | 286 |
287 Failure* IC::ReferenceError(const char* type, Handle<String> name) { | 287 Failure* IC::ReferenceError(const char* type, Handle<String> name) { |
288 HandleScope scope(isolate()); | 288 HandleScope scope(isolate()); |
289 Handle<Object> error = isolate()->factory()->NewReferenceError( | 289 Handle<Object> error = isolate()->factory()->NewReferenceError( |
290 type, HandleVector(&name, 1)); | 290 type, HandleVector(&name, 1)); |
291 return isolate()->Throw(*error); | 291 return isolate()->Throw(*error); |
292 } | 292 } |
293 | 293 |
294 | 294 |
295 void IC::PostPatching() { | 295 void IC::PostPatching() { |
296 if (FLAG_counting_profiler) { | 296 if (FLAG_watch_ic_patching) { |
297 Isolate::Current()->runtime_profiler()->NotifyICChanged(); | 297 Isolate::Current()->runtime_profiler()->NotifyICChanged(); |
298 // We do not want to optimize until the ICs have settled down, | 298 // We do not want to optimize until the ICs have settled down, |
299 // so when they are patched, we postpone optimization for the | 299 // so when they are patched, we postpone optimization for the |
300 // current function and the functions above it on the stack that | 300 // current function and the functions above it on the stack that |
301 // might want to inline this one. | 301 // might want to inline this one. |
302 StackFrameIterator it; | 302 StackFrameIterator it; |
303 if (it.done()) return; | 303 if (it.done()) return; |
304 it.Advance(); | 304 it.Advance(); |
305 static const int kStackFramesToMark = Compiler::kMaxInliningLevels - 1; | 305 static const int kStackFramesToMark = Compiler::kMaxInliningLevels - 1; |
306 for (int i = 0; i < kStackFramesToMark; ++i) { | 306 for (int i = 0; i < kStackFramesToMark; ++i) { |
(...skipping 2156 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2463 #undef ADDR | 2463 #undef ADDR |
2464 }; | 2464 }; |
2465 | 2465 |
2466 | 2466 |
2467 Address IC::AddressFromUtilityId(IC::UtilityId id) { | 2467 Address IC::AddressFromUtilityId(IC::UtilityId id) { |
2468 return IC_utilities[id]; | 2468 return IC_utilities[id]; |
2469 } | 2469 } |
2470 | 2470 |
2471 | 2471 |
2472 } } // namespace v8::internal | 2472 } } // namespace v8::internal |
OLD | NEW |