From 6882a04fb36642862b11efe514251d32070c3d65 Mon Sep 17 00:00:00 2001 From: Konstantin Tokarev Date: Thu, 25 Aug 2016 19:20:41 +0300 Subject: Imported QtWebKit TP3 (git b57bc6801f1876c3220d5a4bfea33d620d477443) Change-Id: I3b1d8a2808782c9f34d50240000e20cb38d3680f Reviewed-by: Konstantin Tokarev --- Source/JavaScriptCore/bytecode/ExitKind.cpp | 57 ++++++++++++++++++----------- 1 file changed, 35 insertions(+), 22 deletions(-) (limited to 'Source/JavaScriptCore/bytecode/ExitKind.cpp') diff --git a/Source/JavaScriptCore/bytecode/ExitKind.cpp b/Source/JavaScriptCore/bytecode/ExitKind.cpp index a8d904585..84ff57b59 100644 --- a/Source/JavaScriptCore/bytecode/ExitKind.cpp +++ b/Source/JavaScriptCore/bytecode/ExitKind.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2012, 2013 Apple Inc. All rights reserved. + * Copyright (C) 2012-2015 Apple Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -38,60 +38,73 @@ const char* exitKindToString(ExitKind kind) return "Unset"; case BadType: return "BadType"; - case BadFunction: - return "BadFunction"; + case BadCell: + return "BadCell"; + case BadIdent: + return "BadIdent"; case BadExecutable: return "BadExecutable"; case BadCache: return "BadCache"; - case BadWeakConstantCache: - return "BadWeakConstantCache"; + case BadConstantCache: + return "BadConstantCache"; case BadIndexingType: return "BadIndexingType"; + case BadTypeInfoFlags: + return "BadTypeInfoFlags"; case Overflow: return "Overflow"; case NegativeZero: return "NegativeZero"; + case Int52Overflow: + return "Int52Overflow"; case StoreToHole: return "StoreToHole"; case LoadFromHole: return "LoadFromHole"; case OutOfBounds: return "OutOfBounds"; - case StoreToHoleOrOutOfBounds: - return "StoreToHoleOrOutOfBounds"; case InadequateCoverage: return "InadequateCoverage"; case ArgumentsEscaped: return "ArgumentsEscaped"; + case ExoticObjectMode: + return "ExoticObjectMode"; case NotStringObject: return "NotStringObject"; + case VarargsOverflow: + return "VarargsOverflow"; + case TDZFailure: + return "TDZFailure"; case Uncountable: return "Uncountable"; - case UncountableWatchpoint: - return "UncountableWatchpoint"; - default: - RELEASE_ASSERT_NOT_REACHED(); - return "Unknown"; + case UncountableInvalidation: + return "UncountableInvalidation"; + case WatchdogTimerFired: + return "WatchdogTimerFired"; + case DebuggerEvent: + return "DebuggerEvent"; + case ExceptionCheck: + return "ExceptionCheck"; + case GenericUnwind: + return "GenericUnwind"; } + RELEASE_ASSERT_NOT_REACHED(); + return "Unknown"; } -bool exitKindIsCountable(ExitKind kind) +bool exitKindMayJettison(ExitKind kind) { switch (kind) { - case ExitKindUnset: - RELEASE_ASSERT_NOT_REACHED(); - case BadType: - case Uncountable: - case UncountableWatchpoint: - case LoadFromHole: // Already counted directly by the baseline JIT. - case StoreToHole: // Already counted directly by the baseline JIT. - case OutOfBounds: // Already counted directly by the baseline JIT. - case StoreToHoleOrOutOfBounds: // Already counted directly by the baseline JIT. + case ExceptionCheck: + case GenericUnwind: return false; default: return true; } + + RELEASE_ASSERT_NOT_REACHED(); + return false; } } // namespace JSC -- cgit v1.2.1