OLD | NEW |
1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
2 # Copyright 2014 the V8 project authors. All rights reserved. | 2 # Copyright 2014 the V8 project authors. All rights reserved. |
3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
5 | 5 |
6 import itertools | 6 import itertools |
7 import js2c | 7 import js2c |
8 import multiprocessing | 8 import multiprocessing |
9 import optparse | 9 import optparse |
10 import os | 10 import os |
(...skipping 29 matching lines...) Expand all Loading... |
40 # functions they define are so trivial that it's unclear how much benefit | 40 # functions they define are so trivial that it's unclear how much benefit |
41 # that would provide: | 41 # that would provide: |
42 # ELEMENTS_KIND_CHECK_RUNTIME_FUNCTION | 42 # ELEMENTS_KIND_CHECK_RUNTIME_FUNCTION |
43 # FIXED_TYPED_ARRAYS_CHECK_RUNTIME_FUNCTION | 43 # FIXED_TYPED_ARRAYS_CHECK_RUNTIME_FUNCTION |
44 # TYPED_ARRAYS_CHECK_RUNTIME_FUNCTION | 44 # TYPED_ARRAYS_CHECK_RUNTIME_FUNCTION |
45 | 45 |
46 # Counts of functions in each detection state. These are used to assert | 46 # Counts of functions in each detection state. These are used to assert |
47 # that the parser doesn't bit-rot. Change the values as needed when you add, | 47 # that the parser doesn't bit-rot. Change the values as needed when you add, |
48 # remove or change runtime functions, but make sure we don't lose our ability | 48 # remove or change runtime functions, but make sure we don't lose our ability |
49 # to parse them! | 49 # to parse them! |
50 EXPECTED_FUNCTION_COUNT = 431 | 50 EXPECTED_FUNCTION_COUNT = 434 |
51 EXPECTED_FUZZABLE_COUNT = 332 | 51 EXPECTED_FUZZABLE_COUNT = 333 |
52 EXPECTED_CCTEST_COUNT = 7 | 52 EXPECTED_CCTEST_COUNT = 7 |
53 EXPECTED_UNKNOWN_COUNT = 17 | 53 EXPECTED_UNKNOWN_COUNT = 17 |
54 EXPECTED_BUILTINS_COUNT = 806 | 54 EXPECTED_BUILTINS_COUNT = 806 |
55 | 55 |
56 | 56 |
57 # Don't call these at all. | 57 # Don't call these at all. |
58 BLACKLISTED = [ | 58 BLACKLISTED = [ |
59 "Abort", # Kills the process. | 59 "Abort", # Kills the process. |
60 "AbortJS", # Kills the process. | 60 "AbortJS", # Kills the process. |
61 "CompileForOnStackReplacement", # Riddled with DCHECK. | 61 "CompileForOnStackReplacement", # Riddled with DCHECK. |
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
167 | 167 |
168 # Eval | 168 # Eval |
169 "ResolvePossiblyDirectEval", | 169 "ResolvePossiblyDirectEval", |
170 | 170 |
171 # Maths | 171 # Maths |
172 "MathPowSlow", | 172 "MathPowSlow", |
173 "MathPowRT", | 173 "MathPowRT", |
174 | 174 |
175 # Internal | 175 # Internal |
176 "InternalSetPrototype", | 176 "InternalSetPrototype", |
| 177 |
| 178 # Classes |
| 179 "ThrowUnsupportedSuperError", |
| 180 "ThrowNonMethodError", |
177 ] | 181 ] |
178 | 182 |
179 | 183 |
180 # These will always throw. | 184 # These will always throw. |
181 THROWS = [ | 185 THROWS = [ |
182 "CheckExecutionState", # Needs to hit a break point. | 186 "CheckExecutionState", # Needs to hit a break point. |
183 "CheckIsBootstrapping", # Needs to be bootstrapping. | 187 "CheckIsBootstrapping", # Needs to be bootstrapping. |
184 "DebugEvaluate", # Needs to hit a break point. | 188 "DebugEvaluate", # Needs to hit a break point. |
185 "DebugEvaluateGlobal", # Needs to hit a break point. | 189 "DebugEvaluateGlobal", # Needs to hit a break point. |
186 "DebugIndexedInterceptorElementValue", # Needs an indexed interceptor. | 190 "DebugIndexedInterceptorElementValue", # Needs an indexed interceptor. |
(...skipping 1219 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1406 for i in range(len(processes)): | 1410 for i in range(len(processes)): |
1407 processes[i].join() | 1411 processes[i].join() |
1408 except KeyboardInterrupt: | 1412 except KeyboardInterrupt: |
1409 stop_running.set() | 1413 stop_running.set() |
1410 for i in range(len(processes)): | 1414 for i in range(len(processes)): |
1411 processes[i].join() | 1415 processes[i].join() |
1412 return 0 | 1416 return 0 |
1413 | 1417 |
1414 if __name__ == "__main__": | 1418 if __name__ == "__main__": |
1415 sys.exit(Main()) | 1419 sys.exit(Main()) |
OLD | NEW |