diff options
Diffstat (limited to 'deps/v8/src/compiler/machine-operator.h')
-rw-r--r-- | deps/v8/src/compiler/machine-operator.h | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/deps/v8/src/compiler/machine-operator.h b/deps/v8/src/compiler/machine-operator.h index a34360a375..25b053ea66 100644 --- a/deps/v8/src/compiler/machine-operator.h +++ b/deps/v8/src/compiler/machine-operator.h @@ -6,10 +6,10 @@ #define V8_COMPILER_MACHINE_OPERATOR_H_ #include "src/base/compiler-specific.h" +#include "src/base/enum-set.h" #include "src/base/flags.h" #include "src/globals.h" #include "src/machine-type.h" -#include "src/utils.h" #include "src/zone/zone.h" namespace v8 { @@ -172,8 +172,8 @@ class V8_EXPORT_PRIVATE MachineOperatorBuilder final return AlignmentRequirements(kNoSupport); } static AlignmentRequirements SomeUnalignedAccessUnsupported( - EnumSet<MachineRepresentation> unalignedLoadUnsupportedTypes, - EnumSet<MachineRepresentation> unalignedStoreUnsupportedTypes) { + base::EnumSet<MachineRepresentation> unalignedLoadUnsupportedTypes, + base::EnumSet<MachineRepresentation> unalignedStoreUnsupportedTypes) { return AlignmentRequirements(kSomeSupport, unalignedLoadUnsupportedTypes, unalignedStoreUnsupportedTypes); } @@ -181,15 +181,15 @@ class V8_EXPORT_PRIVATE MachineOperatorBuilder final private: explicit AlignmentRequirements( AlignmentRequirements::UnalignedAccessSupport unalignedAccessSupport, - EnumSet<MachineRepresentation> unalignedLoadUnsupportedTypes = - EnumSet<MachineRepresentation>(), - EnumSet<MachineRepresentation> unalignedStoreUnsupportedTypes = - EnumSet<MachineRepresentation>()) + base::EnumSet<MachineRepresentation> unalignedLoadUnsupportedTypes = + base::EnumSet<MachineRepresentation>(), + base::EnumSet<MachineRepresentation> unalignedStoreUnsupportedTypes = + base::EnumSet<MachineRepresentation>()) : unalignedSupport_(unalignedAccessSupport), unalignedLoadUnsupportedTypes_(unalignedLoadUnsupportedTypes), unalignedStoreUnsupportedTypes_(unalignedStoreUnsupportedTypes) {} - bool IsUnalignedSupported(EnumSet<MachineRepresentation> unsupported, + bool IsUnalignedSupported(base::EnumSet<MachineRepresentation> unsupported, MachineRepresentation rep) const { // All accesses of bytes in memory are aligned. DCHECK_NE(MachineRepresentation::kWord8, rep); @@ -199,14 +199,14 @@ class V8_EXPORT_PRIVATE MachineOperatorBuilder final case kNoSupport: return false; case kSomeSupport: - return !unsupported.Contains(rep); + return !unsupported.contains(rep); } UNREACHABLE(); } const AlignmentRequirements::UnalignedAccessSupport unalignedSupport_; - const EnumSet<MachineRepresentation> unalignedLoadUnsupportedTypes_; - const EnumSet<MachineRepresentation> unalignedStoreUnsupportedTypes_; + const base::EnumSet<MachineRepresentation> unalignedLoadUnsupportedTypes_; + const base::EnumSet<MachineRepresentation> unalignedStoreUnsupportedTypes_; }; explicit MachineOperatorBuilder( @@ -322,6 +322,7 @@ class V8_EXPORT_PRIVATE MachineOperatorBuilder final const Operator* ChangeFloat64ToInt64(); const Operator* ChangeFloat64ToUint32(); // narrowing const Operator* ChangeFloat64ToUint64(); + const Operator* TruncateFloat64ToInt64(); const Operator* TruncateFloat64ToUint32(); const Operator* TruncateFloat32ToInt32(); const Operator* TruncateFloat32ToUint32(); |