Index: src/assembler.h |
diff --git a/src/assembler.h b/src/assembler.h |
index bced11fec2e287d871a582bef173e62172ba9ac0..42788e62a9a292f48a51a5b9a831f0e1e1c81047 100644 |
--- a/src/assembler.h |
+++ b/src/assembler.h |
@@ -36,6 +36,7 @@ |
#define V8_ASSEMBLER_H_ |
#include "allocation.h" |
+#include "api.h" |
#include "gdb-jit.h" |
#include "runtime.h" |
#include "token.h" |
@@ -59,6 +60,14 @@ class AssemblerBase: public Malloced { |
int jit_cookie_; |
}; |
+static const uint32_t kHoleNanUpper32 = 0x7FFFFFFF; |
+static const uint32_t kHoleNanLower32 = 0xFFFFFFFF; |
+static const uint32_t kCanonicalNonHoleNanUpper32 = 0x7FF10000; |
+static const uint32_t kCanonicalNonHoleNanLower32 = 0xFFFFFFFF; |
+ |
+extern uint64_t kHoleNanInt64; |
+extern uint64_t kCanonicalNonHoleNanInt64; |
+ |
// ----------------------------------------------------------------------------- |
// Common double constants. |
@@ -71,6 +80,8 @@ class DoubleConstant: public AllStatic { |
static const double uint8_max_value; |
static const double negative_infinity; |
static const double nan; |
+ static const double canonical_non_hole_nan; |
+ static const double the_hole_nan; |
}; |
@@ -629,7 +640,8 @@ class ExternalReference BASE_EMBEDDED { |
static ExternalReference address_of_zero(); |
static ExternalReference address_of_uint8_max_value(); |
static ExternalReference address_of_negative_infinity(); |
- static ExternalReference address_of_nan(); |
+ static ExternalReference address_of_canonical_non_hole_nan(); |
+ static ExternalReference address_of_the_hole_nan(); |
static ExternalReference math_sin_double_function(Isolate* isolate); |
static ExternalReference math_cos_double_function(Isolate* isolate); |