Index: src/mips64/simulator-mips64.h |
diff --git a/src/mips64/simulator-mips64.h b/src/mips64/simulator-mips64.h |
index 40980ca4f494027c0f13bd87b49ddf4d297d0111..78873ca2ddc40d367a93f957ad2f1b1f5746e3f7 100644 |
--- a/src/mips64/simulator-mips64.h |
+++ b/src/mips64/simulator-mips64.h |
@@ -354,6 +354,12 @@ class Simulator { |
// MSA Data Format |
enum MSADataFormat { MSA_VECT = 0, MSA_BYTE, MSA_HALF, MSA_WORD, MSA_DWORD }; |
+ typedef union { |
+ int8_t b[kMSALanesByte]; |
+ int16_t h[kMSALanesHalf]; |
+ int32_t w[kMSALanesWord]; |
+ int64_t d[kMSALanesDword]; |
+ } msa_reg_t; |
// Read and write memory. |
inline uint32_t ReadBU(int64_t addr); |
@@ -382,6 +388,8 @@ class Simulator { |
void TraceRegWr(int64_t value, TraceType t = DWORD); |
template <typename T> |
void TraceMSARegWr(T* value, TraceType t); |
+ template <typename T> |
+ void TraceMSARegWr(T* value); |
void TraceMemWr(int64_t addr, int64_t value, TraceType t); |
void TraceMemRd(int64_t addr, int64_t value, TraceType t = DWORD); |