Chromium Code Reviews| Index: runtime/vm/cpu_ia32.h |
| =================================================================== |
| --- runtime/vm/cpu_ia32.h (revision 0) |
| +++ runtime/vm/cpu_ia32.h (revision 0) |
| @@ -0,0 +1,38 @@ |
| +// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| +// for details. All rights reserved. Use of this source code is governed by a |
| +// BSD-style license that can be found in the LICENSE file. |
| + |
| +#ifndef VM_CPU_IA32_H_ |
| +#define VM_CPU_IA32_H_ |
| + |
| +#include "vm/allocation.h" |
| + |
| +namespace dart { |
| + |
| +class CPUFeatures : public AllStatic { |
| + public: |
| + static void InitOnce(); |
| + // x64 always has at least SSE2. |
| + static bool sse2_supported(); |
| + static bool sse4_1_supported(); |
| + static bool double_truncate_round_supported() { return sse4_1_supported(); } |
| + static char* hardware(); |
| + |
| + private: |
| + static const uint64_t kSSE2BitMask = static_cast<uint64_t>(1) << 26; |
|
Cutch
2014/01/02 19:39:19
Should this be here or inside the .cc file?
|
| + static const uint64_t kSSE4_1BitMask = static_cast<uint64_t>(1) << 51; |
| + |
| + static bool sse2_supported_; |
| + static bool sse4_1_supported_; |
| + |
| +#define HARDWARE_LEN 64 |
|
Cutch
2014/01/02 19:39:19
This #define and hardware_ is repeated in all file
|
| + static char hardware_[HARDWARE_LEN]; |
| + |
| +#if defined(DEBUG) |
| + static bool initialized_; |
| +#endif |
| +}; |
| + |
| +} // namespace dart |
| + |
| +#endif // VM_CPU_IA32_H_ |