| { |
| "owners": ["jarin@chromium.org", "mvstanston@chromium.org"], |
| "name": "JSTests", |
| "run_count": 3, |
| "run_count_arm": 1, |
| "run_count_arm64": 1, |
| "timeout": 120, |
| "units": "score", |
| "total": true, |
| "resources": ["base.js"], |
| "tests": [ |
| { |
| "name": "Proxies", |
| "path": ["Proxies"], |
| "main": "run.js", |
| "resources": ["proxies.js"], |
| "results_regexp": "^%s\\-Proxies\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "GetStringWithoutTrap"}, |
| {"name": "GetStringWithTrap"}, |
| {"name": "GetIndexWithoutTrap"}, |
| {"name": "GetIndexWithTrap"}, |
| {"name": "GetSymbolWithoutTrap"}, |
| {"name": "GetSymbolWithTrap"}, |
| {"name": "HasStringWithoutTrap"}, |
| {"name": "HasStringWithTrap"}, |
| {"name": "HasSymbolWithoutTrap"}, |
| {"name": "HasSymbolWithTrap"}, |
| {"name": "SetStringWithoutTrap"}, |
| {"name": "SetStringWithTrap"}, |
| {"name": "SetIndexWithoutTrap"}, |
| {"name": "SetIndexWithTrap"}, |
| {"name": "SetSymbolWithoutTrap"}, |
| {"name": "SetSymbolWithTrap"}, |
| {"name": "HasInIdiom"} |
| ] |
| }, |
| { |
| "name": "AsyncAwait", |
| "path": ["AsyncAwait"], |
| "main": "run.js", |
| "resources": [ |
| "native.js", |
| "baseline-babel-es2017.js", |
| "baseline-naive-promises.js" |
| ], |
| "flags": ["--allow-natives-syntax"], |
| "results_regexp": "^%s\\-AsyncAwait\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "BaselineES2017"}, |
| {"name": "BaselineNaivePromises"}, |
| {"name": "Native"} |
| ] |
| }, |
| { |
| "name": "Generators", |
| "path": ["Generators"], |
| "main": "run.js", |
| "resources": ["generators.js"], |
| "results_regexp": "^Generators\\-Generators\\(Score\\): (.+)$" |
| }, |
| { |
| "name": "ArrayLiteralInitialSpread", |
| "path": ["ArrayLiteralInitialSpread"], |
| "main": "run.js", |
| "resources": [], |
| "results_regexp": "^%s\\-ArrayLiteralInitialSpread\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "Spread-Small"}, |
| {"name": "ForLength-Small"}, |
| {"name": "ForLengthEmpty-Small"}, |
| {"name": "Slice-Small"}, |
| {"name": "Slice0-Small"}, |
| {"name": "ConcatReceive-Small"}, |
| {"name": "ConcatArg-Small"}, |
| {"name": "ForOfPush-Small"}, |
| {"name": "MapId-Small"}, |
| {"name": "Spread-Large"}, |
| {"name": "ForLength-Large"}, |
| {"name": "ForLengthEmpty-Large"}, |
| {"name": "Slice-Large"}, |
| {"name": "Slice0-Large"}, |
| {"name": "ConcatReceive-Large"}, |
| {"name": "ConcatArg-Large"}, |
| {"name": "ForOfPush-Large"}, |
| {"name": "MapId-Large"}, |
| {"name": "Spread-SmallHoley"}, |
| {"name": "ForLength-SmallHoley"}, |
| {"name": "ForLengthEmpty-SmallHoley"}, |
| {"name": "Slice-SmallHoley"}, |
| {"name": "Slice0-SmallHoley"}, |
| {"name": "ConcatReceive-SmallHoley"}, |
| {"name": "ConcatArg-SmallHoley"}, |
| {"name": "ForOfPush-SmallHoley"}, |
| {"name": "MapId-SmallHoley"}, |
| {"name": "Spread-LargeHoley"}, |
| {"name": "ForLength-LargeHoley"}, |
| {"name": "ForLengthEmpty-LargeHoley"}, |
| {"name": "Slice-LargeHoley"}, |
| {"name": "Slice0-LargeHoley"}, |
| {"name": "ConcatReceive-LargeHoley"}, |
| {"name": "ConcatArg-LargeHoley"}, |
| {"name": "ForOfPush-LargeHoley"}, |
| {"name": "MapId-LargeHoley"} |
| ] |
| }, |
| { |
| "name": "ArrayLiteralSpread", |
| "path": ["ArrayLiteralSpread"], |
| "main": "run.js", |
| "resources": [], |
| "results_regexp": "^%s\\-ArrayLiteralSpread\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "Babel"}, |
| {"name": "ForOfPush"}, |
| {"name": "ForOfSet"}, |
| {"name": "Spread"} |
| ] |
| }, |
| { |
| "name": "SpreadCallsGeneral", |
| "path": ["SpreadCallsGeneral"], |
| "main": "run.js", |
| "resources": [], |
| "results_regexp": "^%s\\-SpreadCallsGeneral\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "ApplySpreadLiteral"}, |
| {"name": "SpreadCall"}, |
| {"name": "SpreadCallSpreadLiteral"} |
| ] |
| }, |
| { |
| "name": "RestParameters", |
| "path": ["RestParameters"], |
| "main": "run.js", |
| "resources": ["rest.js"], |
| "units": "score", |
| "results_regexp": "^%s\\-RestParameters\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "Basic1"}, |
| {"name": "ReturnArgsBabel"}, |
| {"name": "ReturnArgsNative"} |
| ] |
| }, |
| { |
| "name": "SpreadCalls", |
| "path": ["SpreadCalls"], |
| "main": "run.js", |
| "resources": ["spreadcalls.js"], |
| "units": "score", |
| "results_regexp": "^%s\\-SpreadCalls\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "Call"}, |
| {"name": "CallMethod"}, |
| {"name": "CallNew"} |
| ] |
| }, |
| { |
| "name": "Classes", |
| "path": ["Classes"], |
| "main": "run.js", |
| "resources": [ |
| "super.js", |
| "default-constructor.js", |
| "leaf-constructors.js"], |
| "results_regexp": "^%s\\-Classes\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "Super"}, |
| {"name": "DefaultConstructor"}, |
| {"name": "LeafConstructors"} |
| ] |
| }, |
| { |
| "name": "Closures", |
| "path": ["Closures"], |
| "main": "run.js", |
| "resources": ["closures.js"], |
| "flags": [], |
| "results_regexp": "^%s\\-Closures\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "Closures"} |
| ] |
| }, |
| { |
| "name": "ClosuresMarkForTierUp", |
| "path": ["Closures"], |
| "main": "run.js", |
| "resources": ["closures.js"], |
| "flags": ["--mark_shared_functions_for_tier_up"], |
| "results_regexp": "^%s\\-Closures\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "Closures"} |
| ] |
| }, |
| { |
| "name": "ManyClosures", |
| "path": ["ManyClosures"], |
| "main": "run.js", |
| "resources": ["create-many-closures.js"], |
| "flags": [ "--allow-natives-syntax", "--expose-gc" ], |
| "results_regexp": "^%s\\-ManyClosures\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "ManyClosures"} |
| ] |
| }, |
| { |
| "name": "Collections", |
| "path": ["Collections"], |
| "main": "run.js", |
| "resources": [ |
| "common.js", |
| "map.js", |
| "run.js", |
| "set.js", |
| "weakmap.js", |
| "weakset.js" |
| ], |
| "results_regexp": "^%s\\-Collections\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "Map-Smi"}, |
| {"name": "Map-String"}, |
| {"name": "Map-Object"}, |
| {"name": "Map-Object-Set-Get-Large"}, |
| {"name": "Map-Double"}, |
| {"name": "Map-Iteration"}, |
| {"name": "Map-Iterator"}, |
| {"name": "Set-Smi"}, |
| {"name": "Set-String"}, |
| {"name": "Set-Object"}, |
| {"name": "Set-Double"}, |
| {"name": "Set-Iteration"}, |
| {"name": "Set-Iterator"}, |
| {"name": "WeakMap"}, |
| {"name": "WeakMap-Constructor"}, |
| {"name": "WeakSet"}, |
| {"name": "WeakSet-Constructor"} |
| ] |
| }, |
| { |
| "name": "Iterators", |
| "path": ["Iterators"], |
| "main": "run.js", |
| "resources": ["forof.js"], |
| "results_regexp": "^%s\\-Iterators\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "ForOf"} |
| ] |
| }, |
| { |
| "name": "Strings", |
| "path": ["Strings"], |
| "run_count": 1, |
| "timeout": 240, |
| "timeout_arm": 420, |
| "units": "score", |
| "tests": [ |
| { |
| "name": "StringFunctions", |
| "main": "run.js", |
| "resources": [ "harmony-string.js" ], |
| "test_flags": [ "harmony-string" ], |
| "results_regexp": "^%s\\-Strings\\(Score\\): (.+)$", |
| "run_count": 1, |
| "tests": [ |
| {"name": "StringRepeat"}, |
| {"name": "StringStartsWith"}, |
| {"name": "StringEndsWith"}, |
| {"name": "StringIncludes"}, |
| {"name": "StringFromCodePoint"}, |
| {"name": "StringCodePointAt"}, |
| {"name": "StringCodePointAtSum"} |
| ] |
| }, |
| { |
| "name": "StringIndexOf", |
| "main": "run.js", |
| "resources": [ "string-indexof.js" ], |
| "test_flags": [ "string-indexof" ], |
| "results_regexp": "^%s\\-Strings\\(Score\\): (.+)$", |
| "run_count": 1, |
| "tests": [ |
| {"name": "StringIndexOfConstant"}, |
| {"name": "StringIndexOfNonConstant"} |
| ] |
| }, |
| { |
| "name": "StringSplit", |
| "main": "run.js", |
| "resources": [ "string-split.js" ], |
| "test_flags": [ "string-split" ], |
| "results_regexp": "^%s\\-Strings\\(Score\\): (.+)$", |
| "run_count": 1, |
| "tests": [ |
| {"name": "ShortSubjectEmptySeparator"}, |
| {"name": "LongSubjectEmptySeparator"}, |
| {"name": "ShortTwoBytesSubjectEmptySeparator"}, |
| {"name": "LongTwoBytesSubjectEmptySeparator"}, |
| {"name": "ShortSubject"}, |
| {"name": "LongSubject"}, |
| {"name": "ShortTwoBytesSubject"}, |
| {"name": "LongTwoBytesSubject"} |
| ] |
| }, |
| { |
| "name": "StringAt", |
| "main": "run.js", |
| "resources": [ "string-stringat.js" ], |
| "test_flags": [ "string-stringat" ], |
| "results_regexp": "^%s\\-Strings\\(Score\\): (.+)$", |
| "run_count": 1, |
| "tests": [ |
| {"name": "StringCharCodeAtConstant"}, |
| {"name": "StringCharCodeAtNonConstant"}, |
| {"name": "StringCharCodeAtConstantInbounds"}, |
| {"name": "StringCharCodeAtNonConstantInbounds"}, |
| {"name": "StringCodePointAtConstant"}, |
| {"name": "StringCodePointAtNonConstant"}, |
| {"name": "StringCodePointAtConstantInbounds"}, |
| {"name": "StringCodePointAtNonConstantInbounds"} |
| ] |
| }, |
| { |
| "name": "StringAtComparison", |
| "main": "run.js", |
| "resources": [ "string-stringat-comp.js" ], |
| "test_flags": [ "string-stringat-comp" ], |
| "results_regexp": "^%s\\-Strings\\(Score\\): (.+)$", |
| "run_count": 1, |
| "tests": [ |
| {"name": "charCodeAt_const"}, |
| {"name": "charCodeAt_both"}, |
| {"name": "charAt_const"}, |
| {"name": "charAt_never"}, |
| {"name": "charAt_both"}, |
| {"name": "stringIndex_const"} |
| ] |
| }, |
| { |
| "name": "StringMatchAll", |
| "main": "run.js", |
| "resources": [ "string-matchall.js" ], |
| "flags": [ |
| "--harmony-string-matchall" |
| ], |
| "test_flags": [ "string-matchall" ], |
| "results_regexp": "^%s\\-Strings\\(Score\\): (.+)$", |
| "run_count": 1, |
| "tests": [ |
| {"name": "StringMatchAllBuiltinRegExpIteratorCreation"}, |
| {"name": "StringMatchAllBuiltinStringIteratorCreation"}, |
| {"name": "StringMatchAllBuiltinString"}, |
| {"name": "StringMatchAllManualString"}, |
| {"name": "StringMatchAllBuiltinRegExp"}, |
| {"name": "StringMatchAllManualRegExp"}, |
| {"name": "StringMatchAllBuiltinZeroWidth"}, |
| {"name": "StringMatchAllBuiltinZeroWidthUnicode"} |
| ] |
| }, |
| { |
| "name": "StringStartsEndsWithComparison", |
| "main": "run.js", |
| "resources": [ "string-startsendswith-comp.js" ], |
| "test_flags": [ "string-startsendswith-comp" ], |
| "results_regexp": "^%s\\-Strings\\(Score\\): (.+)$", |
| "run_count": 1, |
| "tests": [ |
| {"name": "startsWith"}, |
| {"name": "startsIndex"}, |
| {"name": "endsWith"}, |
| {"name": "endsIndex"} |
| ] |
| }, |
| { |
| "name": "StringSubstring", |
| "main": "run.js", |
| "resources": [ "string-substring.js" ], |
| "test_flags": [ "string-substring" ], |
| "results_regexp": "^%s\\-Strings\\(Score\\): (.+)$", |
| "run_count": 1, |
| "tests": [ |
| {"name": "StringDropFirstSlice"}, |
| {"name": "StringDropFirstSubstr"}, |
| {"name": "StringDropFirstSubstring"}, |
| {"name": "StringTakeFirstSlice"}, |
| {"name": "StringTakeFirstSubstr"}, |
| {"name": "StringTakeFirstSubstring"}, |
| {"name": "StringDropLastSlice"}, |
| {"name": "StringDropLastSubstr"}, |
| {"name": "StringDropLastSubstring"}, |
| {"name": "StringTakeLastSlice"}, |
| {"name": "StringTakeLastSubstr"}, |
| {"name": "StringTakeLastSubstring"}, |
| {"name": "StringDropFirstSlice"}, |
| {"name": "StringDropFirstSubstr"}, |
| {"name": "StringDropFirstSubstring"} |
| ] |
| } |
| ] |
| }, |
| { |
| "name": "StringIterators", |
| "path": ["StringIterators"], |
| "main": "run.js", |
| "resources": ["string-iterator.js"], |
| "results_regexp": "^%s\\-StringIterators\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "Spread_OneByteShort"}, |
| {"name": "Spread_TwoByteShort"}, |
| {"name": "Spread_WithSurrogatePairsShort"}, |
| {"name": "ForOf_OneByteShort"}, |
| {"name": "ForOf_TwoByteShort"}, |
| {"name": "ForOf_WithSurrogatePairsShort"}, |
| {"name": "ForOf_OneByteLong"}, |
| {"name": "ForOf_TwoByteLong"}, |
| {"name": "ForOf_WithSurrogatePairsLong"} |
| ] |
| }, |
| { |
| "name": "Templates", |
| "path": ["Templates"], |
| "main": "run.js", |
| "resources": ["templates.js"], |
| "units": "score", |
| "results_regexp": "^%s\\-Templates\\(Score\\): (.+)$", |
| "total": true, |
| "tests": [ |
| {"name": "Untagged"}, |
| {"name": "LargeUntagged"}, |
| {"name": "Tagged"} |
| ] |
| }, |
| { |
| "name": "Object", |
| "path": ["Object"], |
| "main": "run.js", |
| "flags": ["--harmony"], |
| "resources": [ |
| "assign.js", |
| "create.js", |
| "entries.js", |
| "values.js" |
| ], |
| "results_regexp": "^%s\\-Object\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "Assign"}, |
| {"name": "Create"}, |
| {"name": "Entries"}, |
| {"name": "EntriesMegamorphic"}, |
| {"name": "Values"}, |
| {"name": "ValuesMegamorphic"} |
| ] |
| }, |
| { |
| "name": "ObjectLiteralSpread", |
| "path": ["ObjectLiteralSpread"], |
| "main": "run.js", |
| "resources": [], |
| "results_regexp": "^%s\\-ObjectLiteralSpread\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "Babel"}, |
| {"name": "BabelAndOverwrite"}, |
| {"name": "ObjectAssign"}, |
| {"name": "ObjectAssignAndOverwrite"}, |
| {"name": "ObjectSpread"}, |
| {"name": "ObjectSpreadAndOverwrite"} |
| ] |
| }, |
| { |
| "name": "Scope", |
| "path": ["Scope"], |
| "main": "run.js", |
| "resources": ["with.js"], |
| "results_regexp": "^%s\\-Scope\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "With"} |
| ] |
| }, |
| { |
| "name": "Exceptions", |
| "path": ["Exceptions"], |
| "main": "run.js", |
| "resources": ["try-catch.js"], |
| "results_regexp": "^%s\\-Exceptions\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "Try-Catch"} |
| ] |
| }, |
| { |
| "name": "Keys", |
| "path": ["Keys"], |
| "main": "run.js", |
| "resources": ["keys.js"], |
| "results_regexp": "^%s\\-Keys\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "Object.keys()"}, |
| {"name": "for-in"}, |
| {"name": "for-in hasOwnProperty()"}, |
| {"name": "for (i < Object.keys().length)"}, |
| {"name": "Object.keys().forEach()"}, |
| {"name": "for (i < array.length)"}, |
| {"name": "for (i < length)"} |
| ] |
| }, |
| { |
| "name": "PropertyQueries", |
| "path": ["PropertyQueries"], |
| "main": "run.js", |
| "resources": ["property-queries.js"], |
| "results_regexp": "^%s\\-PropertyQueries\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "in--INTERN-prop"}, |
| {"name": "in--DEINTERN-prop"}, |
| {"name": "in--NE-INTERN-prop"}, |
| {"name": "in--NE-DEINTERN-prop"}, |
| {"name": "in--el"}, |
| {"name": "in--el-str"}, |
| {"name": "in--NE-el"}, |
| {"name": "Object.hasOwnProperty--INTERN-prop"}, |
| {"name": "Object.hasOwnProperty--DEINTERN-prop"}, |
| {"name": "Object.hasOwnProperty--NE-INTERN-prop"}, |
| {"name": "Object.hasOwnProperty--NE-DEINTERN-prop"}, |
| {"name": "Object.hasOwnProperty--el"}, |
| {"name": "Object.hasOwnProperty--el-str"}, |
| {"name": "Object.hasOwnProperty--NE-el"} |
| ] |
| }, |
| { |
| "name": "DataView", |
| "path": ["DataView"], |
| "main": "run.js", |
| "resources": ["dataviewtest.js"], |
| "results_regexp": "^DataView\\-%s\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "DataViewTest-DataView-BigEndian"}, |
| {"name": "DataViewTest-DataView-LittleEndian"}, |
| {"name": "DataViewTest-DataView-Floats"}, |
| {"name": "DataViewTest-TypedArray-BigEndian"}, |
| {"name": "DataViewTest-TypedArray-LittleEndian"}, |
| {"name": "DataViewTest-TypedArray-Floats"} |
| ] |
| }, |
| { |
| "name": "TypedArrays", |
| "path": ["TypedArrays"], |
| "results_regexp": "^TypedArrays\\-%s\\(Score\\): (.+)$", |
| "tests": [ |
| { |
| "name": "CopyWithin", |
| "main": "run.js", |
| "resources": ["copywithin.js"], |
| "test_flags": ["copywithin"] |
| }, |
| { |
| "name": "Constructor", |
| "main": "run.js", |
| "resources": ["constructor.js"], |
| "test_flags": ["constructor"] |
| }, |
| { |
| "name": "ConstructWithBuffer", |
| "main": "run.js", |
| "resources": ["construct-buffer.js"], |
| "test_flags": ["construct-buffer"] |
| }, |
| { |
| "name": "ConstructArrayLike", |
| "main": "run.js", |
| "resources": ["construct-arraylike.js"], |
| "test_flags": ["construct-arraylike"] |
| }, |
| { |
| "name": "ConstructByTypedArray", |
| "main": "run.js", |
| "resources": ["construct-typedarray.js"], |
| "test_flags": ["construct-typedarray"] |
| }, |
| { |
| "name": "ConstructBySameTypedArray", |
| "main": "run.js", |
| "resources": ["construct-same-typedarray.js"], |
| "test_flags": ["construct-same-typedarray"] |
| }, |
| { |
| "name": "ConstructAllTypedArrays", |
| "main": "run.js", |
| "resources": ["construct-all-typedarrays.js"], |
| "test_flags": ["construct-all-typedarrays"] |
| }, |
| { |
| "name": "SetFromArrayLike", |
| "main": "run.js", |
| "resources": ["set-from-arraylike.js"], |
| "test_flags": ["set-from-arraylike"] |
| }, |
| { |
| "name": "SetFromDifferentType", |
| "main": "run.js", |
| "resources": ["set-from-different-type.js"], |
| "test_flags": ["set-from-different-type"] |
| }, |
| { |
| "name": "SetFromSameType", |
| "main": "run.js", |
| "resources": ["set-from-same-type.js"], |
| "test_flags": ["set-from-same-type"] |
| }, |
| { |
| "name": "SliceNoSpecies", |
| "main": "run.js", |
| "resources": ["slice-nospecies.js"], |
| "test_flags": ["slice-nospecies"] |
| }, |
| { |
| "name": "SortIntTypes", |
| "main": "run.js", |
| "resources": ["sort.js", "sort-int.js"], |
| "test_flags": ["sort-int"] |
| }, |
| { |
| "name": "SortBigIntTypes", |
| "main": "run.js", |
| "resources": ["sort.js", "sort-bigint.js"], |
| "test_flags": ["sort-bigint"] |
| }, |
| { |
| "name": "SortFloatTypes", |
| "main": "run.js", |
| "resources": ["sort.js", "sort-float.js"], |
| "test_flags": ["sort-float"] |
| }, |
| { |
| "name": "SortCustomCompareFnIntTypes", |
| "main": "run.js", |
| "resources": ["sort.js", "sort-cmpfn-int.js"], |
| "test_flags": ["sort-cmpfn-int"] |
| }, |
| { |
| "name": "SortCustomCompareFnBigIntTypes", |
| "main": "run.js", |
| "resources": ["sort.js", "sort-cmpfn-bigint.js"], |
| "test_flags": ["sort-cmpfn-bigint"] |
| }, |
| { |
| "name": "SortCustomCompareFnFloatTypes", |
| "main": "run.js", |
| "resources": ["sort.js", "sort-cmpfn-float.js"], |
| "test_flags": ["sort-cmpfn-float"] |
| }, |
| { |
| "name": "SubarrayNoSpecies", |
| "main": "run.js", |
| "resources": ["subarray-nospecies.js"], |
| "test_flags": ["subarray-nospecies"] |
| } |
| ] |
| }, |
| { |
| "name": "Array", |
| "path": ["Array"], |
| "main": "run.js", |
| "resources": [ |
| "filter.js", "map.js", "every.js", "join.js", "some.js", |
| "reduce.js", "reduce-right.js", "to-string.js", "find.js", |
| "find-index.js", "from.js", "of.js", "for-each.js", "slice.js" |
| ], |
| "flags": [ |
| "--allow-natives-syntax" |
| ], |
| "results_regexp": "^%s\\-Array\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "NaiveForEachReplacement"}, |
| {"name": "DoubleForEach"}, |
| {"name": "SmiForEach"}, |
| {"name": "FastForEach"}, |
| {"name": "GenericForEach"}, |
| {"name": "OptFastForEach"}, |
| {"name": "OptUnreliableForEach"}, |
| {"name": "NaiveFilterReplacement"}, |
| {"name": "DoubleFilter"}, |
| {"name": "SmiFilter"}, |
| {"name": "FastFilter"}, |
| {"name": "GenericFilter"}, |
| {"name": "OptFastFilter"}, |
| {"name": "OptUnreliableFilter"}, |
| {"name": "NaiveMapReplacement"}, |
| {"name": "DoubleMap"}, |
| {"name": "SmiMap"}, |
| {"name": "FastMap"}, |
| {"name": "GenericMap"}, |
| {"name": "OptFastMap"}, |
| {"name": "OptUnreliableMap"}, |
| {"name": "DoubleEvery"}, |
| {"name": "SmiEvery"}, |
| {"name": "FastEvery"}, |
| {"name": "OptFastEvery"}, |
| {"name": "OptUnreliableEvery"}, |
| {"name": "SmiJoin"}, |
| {"name": "StringJoin"}, |
| {"name": "SparseSmiJoin"}, |
| {"name": "SparseStringJoin"}, |
| {"name": "DoubleSome"}, |
| {"name": "SmiSome"}, |
| {"name": "FastSome"}, |
| {"name": "OptFastSome"}, |
| {"name": "OptUnreliableSome"}, |
| {"name": "DoubleReduce"}, |
| {"name": "SmiReduce"}, |
| {"name": "FastReduce"}, |
| {"name": "OptFastReduce"}, |
| {"name": "OptUnreliableReduce"}, |
| {"name": "DoubleReduceRight"}, |
| {"name": "SmiReduceRight"}, |
| {"name": "FastReduceRight"}, |
| {"name": "OptFastReduceRight"}, |
| {"name": "OptUnreliableReduceRight"}, |
| {"name": "SmiToString"}, |
| {"name": "StringToString"}, |
| {"name": "SparseSmiToString"}, |
| {"name": "SparseStringToString"}, |
| {"name": "NaiveFindReplacement"}, |
| {"name": "DoubleFind"}, |
| {"name": "SmiFind"}, |
| {"name": "FastFind"}, |
| {"name": "GenericFind"}, |
| {"name": "OptFastFind"}, |
| {"name": "OptUnreliableFind"}, |
| {"name": "NaiveFindIndexReplacement"}, |
| {"name": "DoubleFindIndex"}, |
| {"name": "SmiFindIndex"}, |
| {"name": "FastFindIndex"}, |
| {"name": "GenericFindIndex"}, |
| {"name": "OptFastFindIndex"}, |
| {"name": "OptUnreliableFindIndex"}, |
| {"name": "EmptyArrayOf"}, |
| {"name": "SmallSmiArrayOf"}, |
| {"name": "LargeSmiArrayOf"}, |
| {"name": "SmallTransplantedArrayOf"}, |
| {"name": "SmallDoubleArrayOf"}, |
| {"name": "SmallStringArrayOf"}, |
| {"name": "SmallMixedArrayOf"}, |
| {"name": "SmiFrom"}, |
| {"name": "SmallSmiFrom"}, |
| {"name": "SmiNoMapFrom"}, |
| {"name": "SmiNoIteratorFrom"}, |
| {"name": "TransplantedFrom"}, |
| {"name": "DoubleFrom"}, |
| {"name": "StringFrom"}, |
| {"name": "StringNoMapFrom"}, |
| {"name": "MixedFrom"}, |
| {"name": "Array.slice(500)"}, |
| {"name": "Array.slice(500,999)"}, |
| {"name": "Array.slice(-500)"}, |
| {"name": "Array.slice(200,700)"}, |
| {"name": "Array.slice(200,-300)"}, |
| {"name": "Array.slice(4,1)"}, |
| {"name": "Array.slice(500,999)-dict"}, |
| {"name": "Array.slice(200,700)-dict"}, |
| {"name": "Array.slice(200,-300)-dict"}, |
| {"name": "Array.slice(4,1)-dict"}, |
| {"name": "SmiCopyWithin"}, |
| {"name": "StringCopyWithin"}, |
| {"name": "SparseSmiCopyWithin"}, |
| {"name": "SparseStringCopyWithin"} |
| ] |
| }, |
| { |
| "name": "ArraySort", |
| "path": ["ArraySort"], |
| "main": "run.js", |
| "resources": ["sort-base.js", "sort.js"], |
| "test_flags": ["sort"], |
| "results_regexp": "^%s\\-ArraySort\\(Score\\): (.+)$", |
| "flags": [ |
| "--allow-natives-syntax" |
| ], |
| "tests": [ |
| {"name": "PackedSmi"}, |
| {"name": "PackedDouble"}, |
| {"name": "PackedElement"}, |
| {"name": "HoleySmi"}, |
| {"name": "HoleyDouble"}, |
| {"name": "HoleyElement"}, |
| {"name": "Dictionary"} |
| ] |
| }, |
| { |
| "name": "ArraySortCompareFns", |
| "path": ["ArraySort"], |
| "main": "run.js", |
| "resources": ["sort-base.js", "sort-cmpfn.js"], |
| "test_flags": ["sort-cmpfn"], |
| "results_regexp": "^%s\\-ArraySort\\(Score\\): (.+)$", |
| "flags": [ |
| "--allow-natives-syntax" |
| ], |
| "tests": [ |
| {"name": "PackedSmi"}, |
| {"name": "PackedDouble"}, |
| {"name": "PackedElement"}, |
| {"name": "HoleySmi"}, |
| {"name": "HoleyDouble"}, |
| {"name": "HoleyElement"}, |
| {"name": "Dictionary"} |
| ] |
| }, |
| { |
| "name": "ArraySortCompareFnKindChange", |
| "path": ["ArraySort"], |
| "main": "run.js", |
| "resources": ["sort-base.js", "sort-cmpfn-kindchange.js"], |
| "test_flags": ["sort-cmpfn-kindchange"], |
| "results_regexp": "^%s\\-ArraySort\\(Score\\): (.+)$", |
| "flags": [ |
| "--allow-natives-syntax" |
| ], |
| "tests": [ |
| {"name": "PackedSmiToPackedDouble"}, |
| {"name": "HoleySmiToHoleyDouble"}, |
| {"name": "PackedDoubleToHoleyDouble"}, |
| {"name": "PackedElementToDictionary"}, |
| {"name": "HoleyElementToDictionary"} |
| ] |
| }, |
| { |
| "name": "ArraySortPreSorted", |
| "path": ["ArraySort"], |
| "main": "run.js", |
| "resources": ["sort-base.js", "sort-presorted.js"], |
| "test_flags": ["sort-presorted"], |
| "results_regexp": "^%s\\-ArraySort\\(Score\\): (.+)$", |
| "flags": [ |
| "--allow-natives-syntax" |
| ], |
| "tests": [ |
| {"name": "Random"}, |
| {"name": "Up"}, |
| {"name": "Down"}, |
| {"name": "Saw1000"}, |
| {"name": "Saw500"}, |
| {"name": "Saw200"}, |
| {"name": "Saw200Symmetric"}, |
| {"name": "Saw200Down"}, |
| {"name": "UpDown"}, |
| {"name": "UpUp"}, |
| {"name": "DownDown"}, |
| {"name": "DownUp"} |
| ] |
| }, |
| { |
| "name": "ArraySortMegamorphic", |
| "path": ["ArraySort"], |
| "main": "run.js", |
| "resources": ["sort-base.js", "sort-megamorphic.js"], |
| "test_flags": ["sort-megamorphic"], |
| "results_regexp": "^%s\\-ArraySort\\(Score\\): (.+)$", |
| "flags": [ |
| "--allow-natives-syntax" |
| ], |
| "tests": [ |
| {"name": "Base"}, |
| {"name": "MultipleCompareFns"} |
| ] |
| }, |
| { |
| "name": "ArraySortDifferentLengths", |
| "path": ["ArraySort"], |
| "main": "run.js", |
| "resources": ["sort-base.js", "sort-lengths.js"], |
| "test_flags": ["sort-lengths"], |
| "results_regexp": "^%s\\-ArraySort\\(Score\\): (.+)$", |
| "flags": [ |
| "--allow-natives-syntax" |
| ], |
| "tests": [ |
| {"name": "Random10"}, |
| {"name": "Sorted10"}, |
| {"name": "Random100"}, |
| {"name": "Sorted100"}, |
| {"name": "Random1000"}, |
| {"name": "Sorted1000"}, |
| {"name": "Random10000"}, |
| {"name": "Sorted10000"}, |
| {"name": "Random100000"}, |
| {"name": "Sorted100000"} |
| ] |
| }, |
| { |
| "name": "ForLoops", |
| "path": ["ForLoops"], |
| "main": "run.js", |
| "resources": [ |
| "for_loop.js" |
| ], |
| "results_regexp": "^%s\\-ForLoop\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "Let-Standard"}, |
| {"name": "Var-Standard"} |
| ] |
| }, |
| { |
| "name": "Modules", |
| "path": ["Modules"], |
| "main": "run.js", |
| "resources": ["basic-export.js", "basic-import.js", "basic-namespace.js", "value.js"], |
| "flags": [ |
| "--allow-natives-syntax", |
| "--harmony-dynamic-import" |
| ], |
| "results_regexp": "^%s\\-Modules\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "BasicExport"}, |
| {"name": "BasicImport"}, |
| {"name": "BasicNamespace"} |
| ] |
| }, |
| { |
| "name": "BytecodeHandlers", |
| "path": ["BytecodeHandlers"], |
| "flags": [ "--no-opt" ], |
| "tests": [ |
| { |
| "name": "Compare", |
| "main": "run.js", |
| "resources": [ "compare.js" ], |
| "test_flags": [ "compare" ], |
| "results_regexp": "^%s\\-BytecodeHandler\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "Smi-StrictEquals-True"}, |
| {"name": "Smi-StrictEquals-False"}, |
| {"name": "Number-StrictEquals-True"}, |
| {"name": "Number-StrictEquals-False"}, |
| {"name": "String-StrictEquals-True"}, |
| {"name": "String-StrictEquals-False"}, |
| {"name": "SmiString-StrictEquals"}, |
| {"name": "Smi-Equals-True"}, |
| {"name": "Smi-Equals-False"}, |
| {"name": "Number-Equals-True"}, |
| {"name": "Number-Equals-False"}, |
| {"name": "String-Equals-True"}, |
| {"name": "String-Equals-False"}, |
| {"name": "ObjectNull-Equals"}, |
| {"name": "SmiString-Equals"}, |
| {"name": "Smi-RelationalCompare"}, |
| {"name": "Number-RelationalCompare"}, |
| {"name": "String-RelationalCompare"}, |
| {"name": "SmiString-RelationalCompare"} |
| ] |
| }, |
| { |
| "name": "StringConcat", |
| "main": "run.js", |
| "resources": [ "string-concat.js" ], |
| "test_flags": [ "string-concat" ], |
| "results_regexp": "^%s\\-BytecodeHandler\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "ShortString-StringConcat-2"}, |
| {"name": "ShortString-StringConcat-3"}, |
| {"name": "ShortString-StringConcat-5"}, |
| {"name": "ShortString-StringConcat-10"}, |
| {"name": "LongString-StringConcat-2"}, |
| {"name": "LongString-StringConcat-3"}, |
| {"name": "LongString-StringConcat-5"}, |
| {"name": "LongString-StringConcat-10"}, |
| {"name": "NumberString-StringConcat-2"}, |
| {"name": "NumberString-StringConcat-3"}, |
| {"name": "NumberString-StringConcat-5"}, |
| {"name": "NumberString-StringConcat-10"} |
| ] |
| }, |
| { |
| "name": "Arithmetic", |
| "main": "run.js", |
| "resources": [ "arithmetic.js" ], |
| "test_flags": [ "arithmetic" ], |
| "results_regexp": "^%s\\-BytecodeHandler\\(Score\\): (.+)$", |
| "timeout": 240, |
| "tests": [ |
| {"name": "Smi-Add"}, |
| {"name": "Number-Add"}, |
| {"name": "Number-Oddball-Add"}, |
| {"name": "String-Add"}, |
| {"name": "Object-Add"}, |
| {"name": "Number-String-Add"}, |
| {"name": "Smi-Sub"}, |
| {"name": "Number-Sub"}, |
| {"name": "Number-Oddball-Sub"}, |
| {"name": "Object-Sub"}, |
| {"name": "Smi-Mul"}, |
| {"name": "Number-Mul"}, |
| {"name": "Number-Oddball-Mul"}, |
| {"name": "Object-Mul"}, |
| {"name": "Smi-Div"}, |
| {"name": "Number-Div"}, |
| {"name": "Number-Oddball-Div"}, |
| {"name": "Object-Div"}, |
| {"name": "Smi-Mod"}, |
| {"name": "Number-Mod"}, |
| {"name": "Number-Oddball-Mod"}, |
| {"name": "Object-Mod"}, |
| {"name": "Smi-Constant-Add"}, |
| {"name": "Smi-Constant-Sub"}, |
| {"name": "Smi-Constant-Mul"}, |
| {"name": "Smi-Constant-Div"}, |
| {"name": "Smi-Constant-Mod"}, |
| {"name": "Smi-Increment"}, |
| {"name": "Number-Increment"}, |
| {"name": "Smi-Decrement"}, |
| {"name": "Number-Decrement"} |
| ] |
| }, |
| { |
| "name": "Bitwise", |
| "main": "run.js", |
| "resources": [ "bitwise.js" ], |
| "test_flags": [ "bitwise" ], |
| "results_regexp": "^%s\\-BytecodeHandler\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "Smi-Or"}, |
| {"name": "Number-Or"}, |
| {"name": "Smi-Xor"}, |
| {"name": "Number-Xor"}, |
| {"name": "Smi-And"}, |
| {"name": "Number-And"}, |
| {"name": "Smi-Constant-Or"}, |
| {"name": "Smi-Constant-Xor"}, |
| {"name": "Smi-Constant-And"}, |
| {"name": "Smi-ShiftLeft"}, |
| {"name": "Number-ShiftLeft"}, |
| {"name": "Smi-ShiftRight"}, |
| {"name": "Number-ShiftRight"}, |
| {"name": "Smi-ShiftRightLogical"}, |
| {"name": "Number-ShiftRightLogical"}, |
| {"name": "Smi-Constant-ShiftLeft"}, |
| {"name": "Smi-Constant-ShiftRight"}, |
| {"name": "Smi-Constant-ShiftRightLogical"} |
| ] |
| } |
| ] |
| }, |
| { |
| "name": "ExpressionDepth", |
| "path": ["ExpressionDepth"], |
| "main": "run.js", |
| "flags": [ "--no-opt" ], |
| "results_regexp": "^%s\\-ExpressionDepth\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "Or-Value"}, |
| {"name": "Or-Test"}, |
| {"name": "And-Value"}, |
| {"name": "And-Test"}, |
| {"name": "Comma-Value"}, |
| {"name": "Comma-Test"}, |
| {"name": "Equals-Value"}, |
| {"name": "Equals-Test"}, |
| {"name": "StrictEquals-Value"}, |
| {"name": "StrictEquals-Test"}, |
| {"name": "GreaterThan-Value"}, |
| {"name": "GreaterThan-Test"}, |
| {"name": "Add"}, |
| {"name": "Sub"}, |
| {"name": "StringConcat"}, |
| {"name": "BitwiseOr"} |
| ] |
| }, |
| { |
| "name": "Inspector", |
| "path": ["Inspector"], |
| "main": "run.js", |
| "resources": [ "debugger.js", "runtime.js" ], |
| "flags": ["--enable-inspector","--allow-natives-syntax"], |
| "results_regexp": "^%s\\-Inspector\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "Debugger.paused"}, |
| {"name": "Runtime.evaluate(String16Cstor)"}, |
| {"name": "Debugger.getPossibleBreakpoints"}, |
| {"name": "AsyncStacksInstrumentation"} |
| ] |
| }, |
| { |
| "name": "Parsing", |
| "path": ["Parsing"], |
| "main": "run.js", |
| "flags": ["--no-compilation-cache", "--allow-natives-syntax"], |
| "resources": [ "comments.js"], |
| "results_regexp": "^%s\\-Parsing\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "OneLineComment"}, |
| {"name": "OneLineComments"}, |
| {"name": "MultiLineComment"} |
| ] |
| }, |
| { |
| "name": "Numbers", |
| "path": ["Numbers"], |
| "main": "run.js", |
| "flags": ["--allow-natives-syntax"], |
| "resources": [ "toNumber.js"], |
| "results_regexp": "^%s\\-Numbers\\(Score\\): (.+)$", |
| "tests": [ |
| {"name": "Constructor"}, |
| {"name": "UnaryPlus"}, |
| {"name": "ParseFloat"} |
| ] |
| } |
| ] |
| } |