diff --git a/runtime/platform/globals.h b/runtime/platform/globals.h index 2a2c087212a..3891afce464 100644 --- a/runtime/platform/globals.h +++ b/runtime/platform/globals.h @@ -197,40 +197,15 @@ struct simd128_value_t { #if defined(_M_X64) || defined(__x86_64__) #define HOST_ARCH_X64 1 #define ARCH_IS_64_BIT 1 -#define kFpuRegisterSize 16 -typedef simd128_value_t fpu_register_t; #elif defined(_M_IX86) || defined(__i386__) #define HOST_ARCH_IA32 1 #define ARCH_IS_32_BIT 1 -#define kFpuRegisterSize 16 -typedef simd128_value_t fpu_register_t; #elif defined(__ARMEL__) #define HOST_ARCH_ARM 1 #define ARCH_IS_32_BIT 1 -#define kFpuRegisterSize 16 -// Mark the fact that we have defined simd_value_t. -#define SIMD_VALUE_T_ -typedef struct { - union { - uint32_t u; - float f; - } data_[4]; -} simd_value_t; -typedef simd_value_t fpu_register_t; -#define simd_value_safe_load(addr) (*reinterpret_cast(addr)) -#define simd_value_safe_store(addr, value) \ - do { \ - reinterpret_cast(addr)->data_[0] = value.data_[0]; \ - reinterpret_cast(addr)->data_[1] = value.data_[1]; \ - reinterpret_cast(addr)->data_[2] = value.data_[2]; \ - reinterpret_cast(addr)->data_[3] = value.data_[3]; \ - } while (0) - #elif defined(__aarch64__) #define HOST_ARCH_ARM64 1 #define ARCH_IS_64_BIT 1 -#define kFpuRegisterSize 16 -typedef simd128_value_t fpu_register_t; #else #error Architecture was not detected as supported by Dart. #endif diff --git a/runtime/vm/constants_arm.h b/runtime/vm/constants_arm.h index c774203f6b7..94b214a6948 100644 --- a/runtime/vm/constants_arm.h +++ b/runtime/vm/constants_arm.h @@ -288,6 +288,8 @@ const SRegister STMP DART_USED = EvenSRegisterOf(DTMP); typedef QRegister FpuRegister; const FpuRegister FpuTMP = QTMP; +const int kFpuRegisterSize = 16; +typedef simd128_value_t fpu_register_t; const int kNumberOfFpuRegisters = kNumberOfQRegisters; const FpuRegister kNoFpuRegister = kNoQRegister; diff --git a/runtime/vm/constants_arm64.h b/runtime/vm/constants_arm64.h index 7947a60abb2..9e4213d02c7 100644 --- a/runtime/vm/constants_arm64.h +++ b/runtime/vm/constants_arm64.h @@ -123,6 +123,8 @@ const VRegister VTMP = V31; // Architecture independent aliases. typedef VRegister FpuRegister; const FpuRegister FpuTMP = VTMP; +const int kFpuRegisterSize = 16; +typedef simd128_value_t fpu_register_t; const int kNumberOfFpuRegisters = kNumberOfVRegisters; const FpuRegister kNoFpuRegister = kNoVRegister; diff --git a/runtime/vm/constants_ia32.h b/runtime/vm/constants_ia32.h index 4a49773078d..bac9dd51279 100644 --- a/runtime/vm/constants_ia32.h +++ b/runtime/vm/constants_ia32.h @@ -61,6 +61,8 @@ enum XmmRegister { // Architecture independent aliases. typedef XmmRegister FpuRegister; const FpuRegister FpuTMP = XMM7; +const int kFpuRegisterSize = 16; +typedef simd128_value_t fpu_register_t; const int kNumberOfFpuRegisters = kNumberOfXmmRegisters; const FpuRegister kNoFpuRegister = kNoXmmRegister; diff --git a/runtime/vm/constants_x64.h b/runtime/vm/constants_x64.h index 3e7f3c5a968..2bc94443e18 100644 --- a/runtime/vm/constants_x64.h +++ b/runtime/vm/constants_x64.h @@ -93,6 +93,8 @@ enum XmmRegister { // Architecture independent aliases. typedef XmmRegister FpuRegister; const FpuRegister FpuTMP = XMM15; +const int kFpuRegisterSize = 16; +typedef simd128_value_t fpu_register_t; const int kNumberOfFpuRegisters = kNumberOfXmmRegisters; const FpuRegister kNoFpuRegister = kNoXmmRegister; diff --git a/runtime/vm/simulator_arm.h b/runtime/vm/simulator_arm.h index 8074d5604f3..61beaec88b8 100644 --- a/runtime/vm/simulator_arm.h +++ b/runtime/vm/simulator_arm.h @@ -25,14 +25,12 @@ class Mutex; class SimulatorSetjmpBuffer; class Thread; -#if !defined(SIMD_VALUE_T_) typedef struct { union { uint32_t u; float f; } data_[4]; } simd_value_t; -#endif class Simulator { public: