diff options
author | Simon Hausmann <simon.hausmann@nokia.com> | 2012-05-07 11:21:11 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@nokia.com> | 2012-05-07 11:21:11 +0200 |
commit | 2cf6c8816a73e0132bd8fa3b509d62d7c51b6e47 (patch) | |
tree | 988e8c5b116dd0466244ae2fe5af8ee9be926d76 /Source/JavaScriptCore/llint/LLIntSlowPaths.h | |
parent | dd91e772430dc294e3bf478c119ef8d43c0a3358 (diff) | |
download | qtwebkit-2cf6c8816a73e0132bd8fa3b509d62d7c51b6e47.tar.gz |
Imported WebKit commit 7e538425aa020340619e927792f3d895061fb54b (http://svn.webkit.org/repository/webkit/trunk@116286)
Diffstat (limited to 'Source/JavaScriptCore/llint/LLIntSlowPaths.h')
-rw-r--r-- | Source/JavaScriptCore/llint/LLIntSlowPaths.h | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/Source/JavaScriptCore/llint/LLIntSlowPaths.h b/Source/JavaScriptCore/llint/LLIntSlowPaths.h index 334070a07..a91cf797e 100644 --- a/Source/JavaScriptCore/llint/LLIntSlowPaths.h +++ b/Source/JavaScriptCore/llint/LLIntSlowPaths.h @@ -39,20 +39,20 @@ struct Instruction; namespace LLInt { #if USE(JSVALUE64) +// According to C++ rules, a type used for the return signature of function with C linkage (i.e. +// 'extern "C"') needs to be POD; hence putting any constructors into it could cause either compiler +// warnings, or worse, a change in the ABI used to return these types. struct SlowPathReturnType { void* a; void* b; - - SlowPathReturnType(void* a, void* b) - : a(a) - , b(b) - { - } }; inline SlowPathReturnType encodeResult(void* a, void* b) { - return SlowPathReturnType(a, b); + SlowPathReturnType result; + result.a = a; + result.b = b; + return result; } #else typedef int64_t SlowPathReturnType; @@ -132,10 +132,6 @@ LLINT_SLOW_PATH_DECL(slow_path_bitxor); LLINT_SLOW_PATH_DECL(slow_path_check_has_instance); LLINT_SLOW_PATH_DECL(slow_path_instanceof); LLINT_SLOW_PATH_DECL(slow_path_typeof); -LLINT_SLOW_PATH_DECL(slow_path_is_undefined); -LLINT_SLOW_PATH_DECL(slow_path_is_boolean); -LLINT_SLOW_PATH_DECL(slow_path_is_number); -LLINT_SLOW_PATH_DECL(slow_path_is_string); LLINT_SLOW_PATH_DECL(slow_path_is_object); LLINT_SLOW_PATH_DECL(slow_path_is_function); LLINT_SLOW_PATH_DECL(slow_path_in); |