Changes that somehow got lost from my last commit.

Review URL: https://codereview.chromium.org//189833006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33444 260f80e4-7a28-3924-810f-c04153c831b5
This commit is contained in:
zra@google.com 2014-03-07 19:37:58 +00:00
parent 4c07af2487
commit 3b815be7a5

View file

@ -18,6 +18,12 @@ namespace dart {
// additionally mock the options needed for the target architecture so that
// they may be altered for testing.
enum ARMVersion {
ARMv6,
ARMv7,
ARMvUnknown,
};
class HostCPUFeatures: public AllStatic {
public:
static void InitOnce();
@ -34,6 +40,10 @@ class HostCPUFeatures: public AllStatic {
DEBUG_ASSERT(initialized_);
return neon_supported_;
}
static ARMVersion arm_version() {
DEBUG_ASSERT(initialized_);
return arm_version_;
}
#if !defined(HOST_ARCH_ARM)
static void set_integer_division_supported(bool supported) {
@ -44,12 +54,17 @@ class HostCPUFeatures: public AllStatic {
DEBUG_ASSERT(initialized_);
neon_supported_ = supported;
}
static void set_arm_version(ARMVersion version) {
DEBUG_ASSERT(initialized_);
arm_version_ = version;
}
#endif // !defined(HOST_ARCH_ARM)
private:
static const char* hardware_;
static bool integer_division_supported_;
static bool neon_supported_;
static ARMVersion arm_version_;
#if defined(DEBUG)
static bool initialized_;
#endif
@ -75,6 +90,9 @@ class TargetCPUFeatures : public AllStatic {
static const char* hardware() {
return HostCPUFeatures::hardware();
}
static ARMVersion arm_version() {
return HostCPUFeatures::arm_version();
}
};
} // namespace dart