diff options
author | Lorry Tar Creator <lorry-tar-importer@lorry> | 2015-05-20 09:56:07 +0000 |
---|---|---|
committer | Lorry Tar Creator <lorry-tar-importer@lorry> | 2015-05-20 09:56:07 +0000 |
commit | 41386e9cb918eed93b3f13648cbef387e371e451 (patch) | |
tree | a97f9d7bd1d9d091833286085f72da9d83fd0606 /Source/JavaScriptCore/dfg/DFGLazyJSValue.cpp | |
parent | e15dd966d523731101f70ccf768bba12435a0208 (diff) | |
download | WebKitGtk-tarball-41386e9cb918eed93b3f13648cbef387e371e451.tar.gz |
webkitgtk-2.4.9webkitgtk-2.4.9
Diffstat (limited to 'Source/JavaScriptCore/dfg/DFGLazyJSValue.cpp')
-rw-r--r-- | Source/JavaScriptCore/dfg/DFGLazyJSValue.cpp | 46 |
1 files changed, 8 insertions, 38 deletions
diff --git a/Source/JavaScriptCore/dfg/DFGLazyJSValue.cpp b/Source/JavaScriptCore/dfg/DFGLazyJSValue.cpp index 6011490c9..251c9a7c0 100644 --- a/Source/JavaScriptCore/dfg/DFGLazyJSValue.cpp +++ b/Source/JavaScriptCore/dfg/DFGLazyJSValue.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2013, 2014 Apple Inc. All rights reserved. + * Copyright (C) 2013 Apple Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -28,7 +28,7 @@ #if ENABLE(DFG_JIT) -#include "JSCInlines.h" +#include "Operations.h" namespace JSC { namespace DFG { @@ -36,14 +36,14 @@ JSValue LazyJSValue::getValue(VM& vm) const { switch (m_kind) { case KnownValue: - return value()->value(); + return value(); case SingleCharacterString: return jsSingleCharacterString(&vm, u.character); case KnownStringImpl: return jsString(&vm, u.stringImpl); } RELEASE_ASSERT_NOT_REACHED(); - return JSValue(); + return value(); } static TriState equalToSingleCharacter(JSValue value, UChar character) @@ -81,11 +81,11 @@ TriState LazyJSValue::strictEqual(const LazyJSValue& other) const case KnownValue: switch (other.m_kind) { case KnownValue: - return JSValue::pureStrictEqual(value()->value(), other.value()->value()); + return JSValue::pureStrictEqual(value(), other.value()); case SingleCharacterString: - return equalToSingleCharacter(value()->value(), other.character()); + return equalToSingleCharacter(value(), other.character()); case KnownStringImpl: - return equalToStringImpl(value()->value(), other.stringImpl()); + return equalToStringImpl(value(), other.stringImpl()); } break; case SingleCharacterString: @@ -113,41 +113,11 @@ TriState LazyJSValue::strictEqual(const LazyJSValue& other) const return FalseTriState; } -uintptr_t LazyJSValue::switchLookupValue(SwitchKind kind) const -{ - // NB. Not every kind of JSValue will be able to give you a switch lookup - // value, and this method will assert, or do bad things, if you use it - // for a kind of value that can't. - switch (m_kind) { - case KnownValue: - switch (kind) { - case SwitchImm: - return value()->value().asInt32(); - case SwitchCell: - return bitwise_cast<uintptr_t>(value()->value().asCell()); - default: - RELEASE_ASSERT_NOT_REACHED(); - return 0; - } - case SingleCharacterString: - switch (kind) { - case SwitchChar: - return character(); - default: - RELEASE_ASSERT_NOT_REACHED(); - return 0; - } - default: - RELEASE_ASSERT_NOT_REACHED(); - return 0; - } -} - void LazyJSValue::dumpInContext(PrintStream& out, DumpContext* context) const { switch (m_kind) { case KnownValue: - value()->dumpInContext(out, context); + value().dumpInContext(out, context); return; case SingleCharacterString: out.print("Lazy:SingleCharacterString("); |