From c49326e942d7cc21f78fe187020dce73befdd935 Mon Sep 17 00:00:00 2001 From: Konstantin Tokarev Date: Tue, 4 Jun 2019 22:44:55 +0300 Subject: Import WebKit commit 5ccca3a720f7c2251c4ac8b28f25bd73524081f0 Change-Id: Idfb37cd43929536d4c67d1fa5d8cb598e9c0ad7e Reviewed-by: Konstantin Tokarev --- Source/JavaScriptCore/bytecode/Opcode.cpp | 16 ++++++++++++++-- Source/JavaScriptCore/bytecode/Opcode.h | 13 ------------- 2 files changed, 14 insertions(+), 15 deletions(-) (limited to 'Source/JavaScriptCore/bytecode') diff --git a/Source/JavaScriptCore/bytecode/Opcode.cpp b/Source/JavaScriptCore/bytecode/Opcode.cpp index 0d16dfc2f..25e857d76 100644 --- a/Source/JavaScriptCore/bytecode/Opcode.cpp +++ b/Source/JavaScriptCore/bytecode/Opcode.cpp @@ -49,6 +49,18 @@ const char* const opcodeNames[] = { #if ENABLE(OPCODE_STATS) +inline const char* padOpcodeName(OpcodeID op, unsigned width) +{ + auto padding = " "; + auto paddingLength = strlen(padding); + auto opcodeNameLength = strlen(opcodeNames[op]); + if (opcodeNameLength >= width) + return ""; + if (paddingLength + opcodeNameLength < width) + return padding; + return &padding[paddingLength + opcodeNameLength - width]; +} + long long OpcodeStats::opcodeCounts[numOpcodeIDs]; long long OpcodeStats::opcodePairCounts[numOpcodeIDs][numOpcodeIDs]; int OpcodeStats::lastOpcode = -1; @@ -80,9 +92,9 @@ static int compareOpcodeIndices(const void* left, const void* right) static int compareOpcodePairIndices(const void* left, const void* right) { - std::pair leftPair = *(pair*) left; + std::pair leftPair = *(std::pair*) left; long long leftValue = OpcodeStats::opcodePairCounts[leftPair.first][leftPair.second]; - std::pair rightPair = *(pair*) right; + std::pair rightPair = *(std::pair*) right; long long rightValue = OpcodeStats::opcodePairCounts[rightPair.first][rightPair.second]; if (leftValue < rightValue) diff --git a/Source/JavaScriptCore/bytecode/Opcode.h b/Source/JavaScriptCore/bytecode/Opcode.h index ee667c84f..21665c5f7 100644 --- a/Source/JavaScriptCore/bytecode/Opcode.h +++ b/Source/JavaScriptCore/bytecode/Opcode.h @@ -85,21 +85,8 @@ typedef void* Opcode; typedef OpcodeID Opcode; #endif -#define PADDING_STRING " " -#define PADDING_STRING_LENGTH static_cast(strlen(PADDING_STRING)) - extern const char* const opcodeNames[]; -inline const char* padOpcodeName(OpcodeID op, unsigned width) -{ - unsigned pad = width - strlen(opcodeNames[op]); - pad = std::min(pad, PADDING_STRING_LENGTH); - return PADDING_STRING + PADDING_STRING_LENGTH - pad; -} - -#undef PADDING_STRING_LENGTH -#undef PADDING_STRING - #if ENABLE(OPCODE_STATS) struct OpcodeStats { -- cgit v1.2.1