| Index: src/machine-type.h
|
| diff --git a/src/machine-type.h b/src/machine-type.h
|
| index fd1d41dcc3a2dd3f8da800c02fd03bcf47c64d64..c61b40cbc381ca9d2837f5f1248161c3f845b0c1 100644
|
| --- a/src/machine-type.h
|
| +++ b/src/machine-type.h
|
| @@ -29,8 +29,11 @@ enum class MachineRepresentation {
|
| kFloat32,
|
| kFloat64,
|
| kSimd128,
|
| + kSimdBool4, // SIMD boolean vector types.
|
| + kSimdBool8,
|
| + kSimdBool16,
|
| kFirstFPRepresentation = kFloat32,
|
| - kLastRepresentation = kSimd128
|
| + kLastRepresentation = kSimdBool16
|
| };
|
|
|
| static_assert(static_cast<int>(MachineRepresentation::kLastRepresentation) <
|
| @@ -127,6 +130,18 @@ class MachineType {
|
| static MachineType Simd128() {
|
| return MachineType(MachineRepresentation::kSimd128, MachineSemantic::kNone);
|
| }
|
| + static MachineType SimdBool4() {
|
| + return MachineType(MachineRepresentation::kSimdBool4,
|
| + MachineSemantic::kNone);
|
| + }
|
| + static MachineType SimdBool8() {
|
| + return MachineType(MachineRepresentation::kSimdBool8,
|
| + MachineSemantic::kNone);
|
| + }
|
| + static MachineType SimdBool16() {
|
| + return MachineType(MachineRepresentation::kSimdBool16,
|
| + MachineSemantic::kNone);
|
| + }
|
| static MachineType Pointer() {
|
| return MachineType(PointerRepresentation(), MachineSemantic::kNone);
|
| }
|
| @@ -173,6 +188,18 @@ class MachineType {
|
| static MachineType RepSimd128() {
|
| return MachineType(MachineRepresentation::kSimd128, MachineSemantic::kNone);
|
| }
|
| + static MachineType RepSimdBool4() {
|
| + return MachineType(MachineRepresentation::kSimdBool4,
|
| + MachineSemantic::kNone);
|
| + }
|
| + static MachineType RepSimdBool8() {
|
| + return MachineType(MachineRepresentation::kSimdBool8,
|
| + MachineSemantic::kNone);
|
| + }
|
| + static MachineType RepSimdBool16() {
|
| + return MachineType(MachineRepresentation::kSimdBool16,
|
| + MachineSemantic::kNone);
|
| + }
|
| static MachineType RepTagged() {
|
| return MachineType(MachineRepresentation::kTagged, MachineSemantic::kNone);
|
| }
|
| @@ -201,6 +228,12 @@ class MachineType {
|
| return MachineType::Float64();
|
| case MachineRepresentation::kSimd128:
|
| return MachineType::Simd128();
|
| + case MachineRepresentation::kSimdBool4:
|
| + return MachineType::SimdBool4();
|
| + case MachineRepresentation::kSimdBool8:
|
| + return MachineType::SimdBool8();
|
| + case MachineRepresentation::kSimdBool16:
|
| + return MachineType::SimdBool16();
|
| case MachineRepresentation::kTagged:
|
| return MachineType::AnyTagged();
|
| case MachineRepresentation::kTaggedSigned:
|
|
|