#ifndef HostCallReturnValue_h
#define HostCallReturnValue_h
-#include "JSValue.h"
+#include "JSCJSValue.h"
#include "MacroAssemblerCodeRef.h"
#include <wtf/Platform.h>
-// Unfortunately this only works on GCC-like compilers. And it's currently only used
-// by LLInt and DFG, which also are restricted to GCC-like compilers. We should
-// probably fix that at some point.
-#if COMPILER(GCC)
+#if ENABLE(JIT)
#if CALLING_CONVENTION_IS_STDCALL
#define HOST_CALL_RETURN_VALUE_OPTION CDECL
namespace JSC {
-extern "C" EncodedJSValue HOST_CALL_RETURN_VALUE_OPTION getHostCallReturnValue();
+extern "C" EncodedJSValue HOST_CALL_RETURN_VALUE_OPTION getHostCallReturnValue() REFERENCED_FROM_ASM WTF_INTERNAL;
+
+#if COMPILER(GCC)
// This is a public declaration only to convince CLANG not to elide it.
-extern "C" EncodedJSValue HOST_CALL_RETURN_VALUE_OPTION getHostCallReturnValueWithExecState(ExecState*);
+extern "C" EncodedJSValue HOST_CALL_RETURN_VALUE_OPTION getHostCallReturnValueWithExecState(ExecState*) REFERENCED_FROM_ASM WTF_INTERNAL;
inline void initializeHostCallReturnValue()
{
getHostCallReturnValueWithExecState(0);
}
-}
-
#else // COMPILER(GCC)
-namespace JSC {
inline void initializeHostCallReturnValue() { }
-}
#endif // COMPILER(GCC)
-#endif // HostCallReturnValue_h
+} // namespace JSC
+#endif // ENABLE(JIT)
+
+#endif // HostCallReturnValue_h