Index: src/arm/constants-arm.h |
diff --git a/src/arm/constants-arm.h b/src/arm/constants-arm.h |
index 0b86f3e149d0f1a56c66e6353777999d6b464812..338ab40bae5fd5ee745d03184eada3c6c9df2fcf 100644 |
--- a/src/arm/constants-arm.h |
+++ b/src/arm/constants-arm.h |
@@ -324,6 +324,8 @@ enum LFlag { |
Short = 0 << 22 // Short load/store coprocessor. |
}; |
+// Neon sizes. |
+enum NeonSize { Neon8 = 0x0, Neon16 = 0x1, Neon32 = 0x2, Neon64 = 0x3 }; |
// NEON data type |
enum NeonDataType { |
@@ -339,6 +341,11 @@ enum NeonDataType { |
inline int NeonU(NeonDataType dt) { return static_cast<int>(dt) >> 2; } |
inline int NeonSz(NeonDataType dt) { return static_cast<int>(dt) & 0x3; } |
+// Convert sizes to data types (U bit is clear). |
+inline NeonDataType NeonSizeToDatatype(NeonSize size) { |
+ return static_cast<NeonDataType>(size); |
+} |
+ |
enum NeonListType { |
nlt_1 = 0x7, |
nlt_2 = 0xA, |
@@ -346,13 +353,6 @@ enum NeonListType { |
nlt_4 = 0x2 |
}; |
-enum NeonSize { |
- Neon8 = 0x0, |
- Neon16 = 0x1, |
- Neon32 = 0x2, |
- Neon64 = 0x3 |
-}; |
- |
// ----------------------------------------------------------------------------- |
// Supervisor Call (svc) specific support. |