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 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
59 // We only have one byte to store the number of ticks. | 59 // We only have one byte to store the number of ticks. |
60 STATIC_ASSERT(kProfilerTicksBeforeOptimization < 256); | 60 STATIC_ASSERT(kProfilerTicksBeforeOptimization < 256); |
61 STATIC_ASSERT(kProfilerTicksBeforeReenablingOptimization < 256); | 61 STATIC_ASSERT(kProfilerTicksBeforeReenablingOptimization < 256); |
62 STATIC_ASSERT(kTicksWhenNotEnoughTypeInfo < 256); | 62 STATIC_ASSERT(kTicksWhenNotEnoughTypeInfo < 256); |
63 | 63 |
64 // Maximum size in bytes of generate code for a function to allow OSR. | 64 // Maximum size in bytes of generate code for a function to allow OSR. |
65 static const int kOSRCodeSizeAllowanceBase = | 65 static const int kOSRCodeSizeAllowanceBase = |
66 100 * FullCodeGenerator::kCodeSizeMultiplier; | 66 100 * FullCodeGenerator::kCodeSizeMultiplier; |
67 | 67 |
68 static const int kOSRCodeSizeAllowancePerTick = | 68 static const int kOSRCodeSizeAllowancePerTick = |
69 3 * FullCodeGenerator::kCodeSizeMultiplier; | 69 4 * FullCodeGenerator::kCodeSizeMultiplier; |
70 | 70 |
71 // Maximum size in bytes of generated code for a function to be optimized | 71 // Maximum size in bytes of generated code for a function to be optimized |
72 // the very first time it is seen on the stack. | 72 // the very first time it is seen on the stack. |
73 static const int kMaxSizeEarlyOpt = | 73 static const int kMaxSizeEarlyOpt = |
74 5 * FullCodeGenerator::kCodeSizeMultiplier; | 74 5 * FullCodeGenerator::kCodeSizeMultiplier; |
75 | 75 |
76 | 76 |
77 RuntimeProfiler::RuntimeProfiler(Isolate* isolate) | 77 RuntimeProfiler::RuntimeProfiler(Isolate* isolate) |
78 : isolate_(isolate), | 78 : isolate_(isolate), |
79 any_ic_changed_(false) { | 79 any_ic_changed_(false) { |
(...skipping 192 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
272 Optimize(function, "small function"); | 272 Optimize(function, "small function"); |
273 } else { | 273 } else { |
274 shared_code->set_profiler_ticks(ticks + 1); | 274 shared_code->set_profiler_ticks(ticks + 1); |
275 } | 275 } |
276 } | 276 } |
277 any_ic_changed_ = false; | 277 any_ic_changed_ = false; |
278 } | 278 } |
279 | 279 |
280 | 280 |
281 } } // namespace v8::internal | 281 } } // namespace v8::internal |
OLD | NEW |