@@ -433,14 +433,20 @@ class WildcardList:
433433 available, so we just return a wildcard list and assume the caller knows
434434 what they want to run"""
435435
436+ def __init__ (self , benchmarks = None ):
437+ self .benchmarks = benchmarks
438+
436439 def __contains__ (self , x ):
437440 return True
438441
439442 def __iter__ (self ):
440- mx .abort (
441- "Cannot iterate over benchmark names in foreign benchmark suites. "
442- + "Leave off the benchmark name part to run all, or name the benchmarks yourself."
443- )
443+ if not benchmarks :
444+ mx .abort (
445+ "Cannot iterate over benchmark names in foreign benchmark suites. "
446+ + "Leave off the benchmark name part to run all, or name the benchmarks yourself."
447+ )
448+ else :
449+ return iter (benchmarks )
444450
445451
446452class PySuite (mx_benchmark .TemporaryWorkdirMixin , mx_benchmark .VmBenchmarkSuite ):
@@ -472,7 +478,7 @@ def subgroup(self):
472478 return "graalpython"
473479
474480 def benchmarkList (self , bmSuiteArgs ):
475- return WildcardList ()
481+ return WildcardList (DEFAULT_PYPERFORMANCE_BENCHMARKS )
476482
477483 def rules (self , output , benchmarks , bmSuiteArgs ):
478484 return [PyPerfJsonRule (output , self .name ())]
@@ -536,7 +542,7 @@ def subgroup(self):
536542 return "graalpython"
537543
538544 def benchmarkList (self , bmSuiteArgs ):
539- return WildcardList ()
545+ return WildcardList (DEFAULT_PYPY_BENCHMARKS )
540546
541547 def rules (self , output , benchmarks , bmSuiteArgs ):
542548 return [PyPyJsonRule (output , self .name ())]
@@ -619,7 +625,7 @@ def subgroup(self):
619625 return "graalpython"
620626
621627 def benchmarkList (self , bmSuiteArgs ):
622- return WildcardList ()
628+ return WildcardList (DEFAULT_NUMPY_BENCHMARKS )
623629
624630 def rules (self , output , benchmarks , bmSuiteArgs ):
625631 return [AsvJsonRule (output , self .name ())]
0 commit comments