%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
// Copyright 2017 the V8 project authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. import { Processor } from "./system-analyzer/processor.mjs"; import { BaseArgumentsProcessor} from "./arguments.mjs"; class ArgumentsProcessor extends BaseArgumentsProcessor { getArgsDispatch() { return { '--range': ['range', 'auto,auto', 'Specify the range limit as [start],[end]'], }; } getDefaultResults() { return { logFileName: 'v8.log', range: 'auto,auto', }; } } const params = ArgumentsProcessor.process(arguments); const processor = new Processor(); await processor.processLogFile(params.logFileName); const typeAccumulator = new Map(); const accumulator = { __proto__: null, LoadGlobalIC: 0, StoreGlobalIC: 0, LoadIC: 0, StoreIC: 0, KeyedLoadIC: 0, KeyedStoreIC: 0, StoreInArrayLiteralIC: 0, } for (const ic of processor.icTimeline.all) { console.log(Object.values(ic)); accumulator[ic.type]++; } console.log("========================================"); for (const key of Object.keys(accumulator)) { console.log(key + ": " + accumulator[key]); }