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 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
170 DEFINE_bool(optimize_closures, true, "optimize closures") | 170 DEFINE_bool(optimize_closures, true, "optimize closures") |
171 DEFINE_bool(inline_construct, false, "inline constructor calls") | 171 DEFINE_bool(inline_construct, false, "inline constructor calls") |
172 DEFINE_int(loop_weight, 1, "loop weight for representation inference") | 172 DEFINE_int(loop_weight, 1, "loop weight for representation inference") |
173 | 173 |
174 DEFINE_bool(optimize_for_in, true, | 174 DEFINE_bool(optimize_for_in, true, |
175 "optimize functions containing for-in loops") | 175 "optimize functions containing for-in loops") |
176 | 176 |
177 // Experimental profiler changes. | 177 // Experimental profiler changes. |
178 DEFINE_bool(experimental_profiler, false, "enable all profiler experiments") | 178 DEFINE_bool(experimental_profiler, false, "enable all profiler experiments") |
179 DEFINE_bool(watch_ic_patching, false, "profiler considers IC stability") | 179 DEFINE_bool(watch_ic_patching, false, "profiler considers IC stability") |
180 DEFINE_int(frame_count, 2, "number of stack frames inspected by the profiler") | 180 DEFINE_int(frame_count, 1, "number of stack frames inspected by the profiler") |
181 DEFINE_bool(self_optimization, false, | 181 DEFINE_bool(self_optimization, false, |
182 "primitive functions trigger their own optimization") | 182 "primitive functions trigger their own optimization") |
183 DEFINE_bool(direct_self_opt, false, | 183 DEFINE_bool(direct_self_opt, false, |
184 "call recompile stub directly when self-optimizing") | 184 "call recompile stub directly when self-optimizing") |
185 DEFINE_bool(retry_self_opt, true, "re-try self-optimization if it failed") | 185 DEFINE_bool(retry_self_opt, false, "re-try self-optimization if it failed") |
186 DEFINE_bool(count_based_interrupts, false, | 186 DEFINE_bool(count_based_interrupts, false, |
187 "trigger profiler ticks based on counting instead of timing") | 187 "trigger profiler ticks based on counting instead of timing") |
188 DEFINE_bool(interrupt_at_exit, false, | 188 DEFINE_bool(interrupt_at_exit, false, |
189 "insert an interrupt check at function exit") | 189 "insert an interrupt check at function exit") |
190 DEFINE_bool(weighted_back_edges, false, | 190 DEFINE_bool(weighted_back_edges, false, |
191 "weight back edges by jump distance for interrupt triggering") | 191 "weight back edges by jump distance for interrupt triggering") |
192 DEFINE_int(interrupt_budget, 10000, | 192 DEFINE_int(interrupt_budget, 5900, |
193 "execution budget before interrupt is triggered") | 193 "execution budget before interrupt is triggered") |
194 DEFINE_int(type_info_threshold, 0, | 194 DEFINE_int(type_info_threshold, 40, |
195 "percentage of ICs that must have type info to allow optimization") | 195 "percentage of ICs that must have type info to allow optimization") |
196 DEFINE_int(self_opt_count, 170, "call count before self-optimization") | 196 DEFINE_int(self_opt_count, 130, "call count before self-optimization") |
197 | 197 |
198 DEFINE_implication(experimental_profiler, watch_ic_patching) | 198 DEFINE_implication(experimental_profiler, watch_ic_patching) |
199 DEFINE_implication(experimental_profiler, self_optimization) | 199 DEFINE_implication(experimental_profiler, self_optimization) |
| 200 // Not implying direct_self_opt here because it seems to be a bad idea. |
| 201 DEFINE_implication(experimental_profiler, retry_self_opt) |
200 DEFINE_implication(experimental_profiler, count_based_interrupts) | 202 DEFINE_implication(experimental_profiler, count_based_interrupts) |
201 DEFINE_implication(experimental_profiler, interrupt_at_exit) | 203 DEFINE_implication(experimental_profiler, interrupt_at_exit) |
202 DEFINE_implication(experimental_profiler, weighted_back_edges) | 204 DEFINE_implication(experimental_profiler, weighted_back_edges) |
203 | 205 |
204 DEFINE_bool(trace_opt_verbose, false, "extra verbose compilation tracing") | 206 DEFINE_bool(trace_opt_verbose, false, "extra verbose compilation tracing") |
205 DEFINE_implication(trace_opt_verbose, trace_opt) | 207 DEFINE_implication(trace_opt_verbose, trace_opt) |
206 | 208 |
207 // assembler-ia32.cc / assembler-arm.cc / assembler-x64.cc | 209 // assembler-ia32.cc / assembler-arm.cc / assembler-x64.cc |
208 DEFINE_bool(debug_code, false, | 210 DEFINE_bool(debug_code, false, |
209 "generate extra code (assertions) for debugging") | 211 "generate extra code (assertions) for debugging") |
(...skipping 401 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
611 #undef DEFINE_bool | 613 #undef DEFINE_bool |
612 #undef DEFINE_int | 614 #undef DEFINE_int |
613 #undef DEFINE_string | 615 #undef DEFINE_string |
614 #undef DEFINE_implication | 616 #undef DEFINE_implication |
615 | 617 |
616 #undef FLAG_MODE_DECLARE | 618 #undef FLAG_MODE_DECLARE |
617 #undef FLAG_MODE_DEFINE | 619 #undef FLAG_MODE_DEFINE |
618 #undef FLAG_MODE_DEFINE_DEFAULTS | 620 #undef FLAG_MODE_DEFINE_DEFAULTS |
619 #undef FLAG_MODE_META | 621 #undef FLAG_MODE_META |
620 #undef FLAG_MODE_DEFINE_IMPLICATIONS | 622 #undef FLAG_MODE_DEFINE_IMPLICATIONS |
OLD | NEW |