| Index: src/code-stub-assembler.h
|
| diff --git a/src/code-stub-assembler.h b/src/code-stub-assembler.h
|
| index 5f42d2920eab6b905604a5f8e8469559405b82cf..42efc506d3f20cc34f4c65ef3d311f34f14ac65c 100644
|
| --- a/src/code-stub-assembler.h
|
| +++ b/src/code-stub-assembler.h
|
| @@ -25,6 +25,19 @@ enum class UnicodeEncoding {
|
| UTF32, // full UTF32 code unit / Unicode codepoint
|
| };
|
|
|
| +#define HEAP_CONSTANT_LIST(V) \
|
| + V(BooleanMap, BooleanMap) \
|
| + V(empty_string, EmptyString) \
|
| + V(FixedArrayMap, FixedArrayMap) \
|
| + V(FixedCOWArrayMap, FixedCOWArrayMap) \
|
| + V(FixedDoubleArrayMap, FixedDoubleArrayMap) \
|
| + V(HeapNumberMap, HeapNumberMap) \
|
| + V(MinusZeroValue, MinusZero) \
|
| + V(NanValue, Nan) \
|
| + V(NullValue, Null) \
|
| + V(TheHoleValue, TheHole) \
|
| + V(UndefinedValue, Undefined)
|
| +
|
| // Provides JavaScript-specific "macro-assembler" functionality on top of the
|
| // CodeAssembler. By factoring the JavaScript-isms out of the CodeAssembler,
|
| // it's possible to add JavaScript-specific useful CodeAssembler "macros"
|
| @@ -76,18 +89,16 @@ class CodeStubAssembler : public compiler::CodeAssembler {
|
| return value;
|
| }
|
|
|
| - compiler::Node* BooleanMapConstant();
|
| - compiler::Node* EmptyStringConstant();
|
| - compiler::Node* FixedArrayMapConstant();
|
| - compiler::Node* FixedCowArrayMapConstant();
|
| - compiler::Node* FixedDoubleArrayMapConstant();
|
| - compiler::Node* HeapNumberMapConstant();
|
| compiler::Node* NoContextConstant();
|
| - compiler::Node* NanConstant();
|
| - compiler::Node* NullConstant();
|
| - compiler::Node* MinusZeroConstant();
|
| - compiler::Node* UndefinedConstant();
|
| - compiler::Node* TheHoleConstant();
|
| +#define HEAP_CONSTANT_ACCESSOR(rootName, name) compiler::Node* name##Constant();
|
| + HEAP_CONSTANT_LIST(HEAP_CONSTANT_ACCESSOR)
|
| +#undef HEAP_CONSTANT_ACCESSOR
|
| +
|
| +#define HEAP_CONSTANT_TEST(rootName, name) \
|
| + compiler::Node* Is##name(compiler::Node* value);
|
| + HEAP_CONSTANT_LIST(HEAP_CONSTANT_TEST)
|
| +#undef HEAP_CONSTANT_TEST
|
| +
|
| compiler::Node* HashSeed();
|
| compiler::Node* StaleRegisterConstant();
|
|
|
|
|