| Index: src/assembler.cc
|
| diff --git a/src/assembler.cc b/src/assembler.cc
|
| index 8b18836dfc96b370e21a810578a65c3e8bccb51e..bc12b9c7c7dee63eb47253363e48d3bf90cf6144 100644
|
| --- a/src/assembler.cc
|
| +++ b/src/assembler.cc
|
| @@ -210,6 +210,26 @@ CpuFeatureScope::~CpuFeatureScope() {
|
|
|
|
|
| // -----------------------------------------------------------------------------
|
| +// Implementation of PlatformFeatureScope
|
| +
|
| +PlatformFeatureScope::PlatformFeatureScope(CpuFeature f)
|
| + : old_supported_(CpuFeatures::supported_),
|
| + old_found_by_runtime_probing_only_(
|
| + CpuFeatures::found_by_runtime_probing_only_) {
|
| + uint64_t mask = static_cast<uint64_t>(1) << f;
|
| + CpuFeatures::supported_ |= mask;
|
| + CpuFeatures::found_by_runtime_probing_only_ &= ~mask;
|
| +}
|
| +
|
| +
|
| +PlatformFeatureScope::~PlatformFeatureScope() {
|
| + CpuFeatures::supported_ = old_supported_;
|
| + CpuFeatures::found_by_runtime_probing_only_ =
|
| + old_found_by_runtime_probing_only_;
|
| +}
|
| +
|
| +
|
| +// -----------------------------------------------------------------------------
|
| // Implementation of Label
|
|
|
| int Label::pos() const {
|
|
|