summaryrefslogtreecommitdiff
path: root/Source/JavaScriptCore/dfg/DFGLazyJSValue.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/JavaScriptCore/dfg/DFGLazyJSValue.cpp')
-rw-r--r--Source/JavaScriptCore/dfg/DFGLazyJSValue.cpp46
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(");