Chromium Code Reviews| Index: src/elements-kind.h |
| diff --git a/src/elements-kind.h b/src/elements-kind.h |
| index 51a690272f7f122848c3c30538bf9dadbceab7b5..45830c38512ecb5e051e7912f62f9ab504468bdc 100644 |
| --- a/src/elements-kind.h |
| +++ b/src/elements-kind.h |
| @@ -63,13 +63,26 @@ enum ElementsKind { |
| EXTERNAL_DOUBLE_ELEMENTS, |
| EXTERNAL_PIXEL_ELEMENTS, |
| + // Fixed typed arrays |
| + UINT8_ELEMENTS, |
| + INT8_ELEMENTS, |
| + UINT16_ELEMENTS, |
| + INT16_ELEMENTS, |
| + UINT32_ELEMENTS, |
| + INT32_ELEMENTS, |
| + FLOAT32_ELEMENTS, |
| + FLOAT64_ELEMENTS, |
| + UINT8_CLAMPED_ELEMENTS, |
| + |
| // Derived constants from ElementsKind |
| FIRST_ELEMENTS_KIND = FAST_SMI_ELEMENTS, |
| - LAST_ELEMENTS_KIND = EXTERNAL_PIXEL_ELEMENTS, |
| + LAST_ELEMENTS_KIND = UINT8_CLAMPED_ELEMENTS, |
| FIRST_FAST_ELEMENTS_KIND = FAST_SMI_ELEMENTS, |
| LAST_FAST_ELEMENTS_KIND = FAST_HOLEY_DOUBLE_ELEMENTS, |
| FIRST_EXTERNAL_ARRAY_ELEMENTS_KIND = EXTERNAL_BYTE_ELEMENTS, |
| LAST_EXTERNAL_ARRAY_ELEMENTS_KIND = EXTERNAL_PIXEL_ELEMENTS, |
| + FIRST_FIXED_TYPED_ARRAY_ELEMENTS_KIND = UINT8_ELEMENTS, |
| + LAST_FIXED_TYPED_ARRAY_ELEMENTS_KIND = UINT8_CLAMPED_ELEMENTS, |
| TERMINAL_FAST_ELEMENTS_KIND = FAST_HOLEY_ELEMENTS |
| }; |
| @@ -103,6 +116,12 @@ inline bool IsExternalArrayElementsKind(ElementsKind kind) { |
| } |
| +inline bool IsFixedTypedArrayElementsKind(ElementsKind kind) { |
| + return kind >= FIRST_FIXED_TYPED_ARRAY_ELEMENTS_KIND && |
| + kind <= LAST_FIXED_TYPED_ARRAY_ELEMENTS_KIND; |
| +} |
| + |
| + |
| inline bool IsFastElementsKind(ElementsKind kind) { |
| ASSERT(FIRST_FAST_ELEMENTS_KIND == 0); |
| return kind <= FAST_HOLEY_DOUBLE_ELEMENTS; |
| @@ -121,9 +140,15 @@ inline bool IsExternalFloatOrDoubleElementsKind(ElementsKind kind) { |
| } |
| +inline bool IsFixedFloatOrDoubleElementsKind(ElementsKind kind) { |
| + return kind == FLOAT32_ELEMENTS || kind == FLOAT64_ELEMENTS; |
| +} |
| + |
| + |
| inline bool IsDoubleOrFloatElementsKind(ElementsKind kind) { |
| return IsFastDoubleElementsKind(kind) || |
| - IsExternalFloatOrDoubleElementsKind(kind); |
| + IsExternalFloatOrDoubleElementsKind(kind) || |
| + IsFixedFloatOrDoubleElementsKind(kind); |
|
Toon Verwaest
2013/12/23 10:40:32
What about just renaming this to IsFixedFloatEleme
Dmitry Lomov (no reviews)
2014/01/07 15:48:43
Done.
|
| } |