diff options
Diffstat (limited to 'deps/v8/src/compiler/arm/instruction-scheduler-arm.cc')
-rw-r--r-- | deps/v8/src/compiler/arm/instruction-scheduler-arm.cc | 206 |
1 files changed, 118 insertions, 88 deletions
diff --git a/deps/v8/src/compiler/arm/instruction-scheduler-arm.cc b/deps/v8/src/compiler/arm/instruction-scheduler-arm.cc index ba2f21943a..e6f3464bb5 100644 --- a/deps/v8/src/compiler/arm/instruction-scheduler-arm.cc +++ b/deps/v8/src/compiler/arm/instruction-scheduler-arm.cc @@ -108,98 +108,126 @@ int InstructionScheduler::GetTargetInstructionFlags( case kArmFloat32Min: case kArmFloat64Min: case kArmFloat64SilenceNaN: - case kArmFloat32x4Splat: - case kArmFloat32x4ExtractLane: - case kArmFloat32x4ReplaceLane: - case kArmFloat32x4FromInt32x4: - case kArmFloat32x4FromUint32x4: - case kArmFloat32x4Abs: - case kArmFloat32x4Neg: - case kArmFloat32x4Add: - case kArmFloat32x4Sub: - case kArmFloat32x4Equal: - case kArmFloat32x4NotEqual: - case kArmInt32x4Splat: - case kArmInt32x4ExtractLane: - case kArmInt32x4ReplaceLane: - case kArmInt32x4FromFloat32x4: - case kArmUint32x4FromFloat32x4: - case kArmInt32x4Neg: - case kArmInt32x4ShiftLeftByScalar: - case kArmInt32x4ShiftRightByScalar: - case kArmInt32x4Add: - case kArmInt32x4Sub: - case kArmInt32x4Mul: - case kArmInt32x4Min: - case kArmInt32x4Max: - case kArmInt32x4Equal: - case kArmInt32x4NotEqual: - case kArmInt32x4GreaterThan: - case kArmInt32x4GreaterThanOrEqual: - case kArmUint32x4ShiftRightByScalar: - case kArmUint32x4Min: - case kArmUint32x4Max: - case kArmUint32x4GreaterThan: - case kArmUint32x4GreaterThanOrEqual: - case kArmInt16x8Splat: - case kArmInt16x8ExtractLane: - case kArmInt16x8ReplaceLane: - case kArmInt16x8Neg: - case kArmInt16x8ShiftLeftByScalar: - case kArmInt16x8ShiftRightByScalar: - case kArmInt16x8Add: - case kArmInt16x8AddSaturate: - case kArmInt16x8Sub: - case kArmInt16x8SubSaturate: - case kArmInt16x8Mul: - case kArmInt16x8Min: - case kArmInt16x8Max: - case kArmInt16x8Equal: - case kArmInt16x8NotEqual: - case kArmInt16x8GreaterThan: - case kArmInt16x8GreaterThanOrEqual: - case kArmUint16x8ShiftRightByScalar: - case kArmUint16x8AddSaturate: - case kArmUint16x8SubSaturate: - case kArmUint16x8Min: - case kArmUint16x8Max: - case kArmUint16x8GreaterThan: - case kArmUint16x8GreaterThanOrEqual: - case kArmInt8x16Splat: - case kArmInt8x16ExtractLane: - case kArmInt8x16ReplaceLane: - case kArmInt8x16Neg: - case kArmInt8x16ShiftLeftByScalar: - case kArmInt8x16ShiftRightByScalar: - case kArmInt8x16Add: - case kArmInt8x16AddSaturate: - case kArmInt8x16Sub: - case kArmInt8x16SubSaturate: - case kArmInt8x16Mul: - case kArmInt8x16Min: - case kArmInt8x16Max: - case kArmInt8x16Equal: - case kArmInt8x16NotEqual: - case kArmInt8x16GreaterThan: - case kArmInt8x16GreaterThanOrEqual: - case kArmUint8x16ShiftRightByScalar: - case kArmUint8x16AddSaturate: - case kArmUint8x16SubSaturate: - case kArmUint8x16Min: - case kArmUint8x16Max: - case kArmUint8x16GreaterThan: - case kArmUint8x16GreaterThanOrEqual: - case kArmSimd128And: - case kArmSimd128Or: - case kArmSimd128Xor: - case kArmSimd128Not: - case kArmSimd32x4Select: - case kArmSimd16x8Select: - case kArmSimd8x16Select: + case kArmF32x4Splat: + case kArmF32x4ExtractLane: + case kArmF32x4ReplaceLane: + case kArmF32x4SConvertI32x4: + case kArmF32x4UConvertI32x4: + case kArmF32x4Abs: + case kArmF32x4Neg: + case kArmF32x4RecipApprox: + case kArmF32x4RecipSqrtApprox: + case kArmF32x4Add: + case kArmF32x4Sub: + case kArmF32x4Mul: + case kArmF32x4Min: + case kArmF32x4Max: + case kArmF32x4RecipRefine: + case kArmF32x4RecipSqrtRefine: + case kArmF32x4Eq: + case kArmF32x4Ne: + case kArmF32x4Lt: + case kArmF32x4Le: + case kArmI32x4Splat: + case kArmI32x4ExtractLane: + case kArmI32x4ReplaceLane: + case kArmI32x4SConvertF32x4: + case kArmI32x4SConvertI16x8Low: + case kArmI32x4SConvertI16x8High: + case kArmI32x4Neg: + case kArmI32x4Shl: + case kArmI32x4ShrS: + case kArmI32x4Add: + case kArmI32x4Sub: + case kArmI32x4Mul: + case kArmI32x4MinS: + case kArmI32x4MaxS: + case kArmI32x4Eq: + case kArmI32x4Ne: + case kArmI32x4LtS: + case kArmI32x4LeS: + case kArmI32x4UConvertF32x4: + case kArmI32x4UConvertI16x8Low: + case kArmI32x4UConvertI16x8High: + case kArmI32x4ShrU: + case kArmI32x4MinU: + case kArmI32x4MaxU: + case kArmI32x4LtU: + case kArmI32x4LeU: + case kArmI16x8Splat: + case kArmI16x8ExtractLane: + case kArmI16x8ReplaceLane: + case kArmI16x8SConvertI8x16Low: + case kArmI16x8SConvertI8x16High: + case kArmI16x8Neg: + case kArmI16x8Shl: + case kArmI16x8ShrS: + case kArmI16x8SConvertI32x4: + case kArmI16x8Add: + case kArmI16x8AddSaturateS: + case kArmI16x8Sub: + case kArmI16x8SubSaturateS: + case kArmI16x8Mul: + case kArmI16x8MinS: + case kArmI16x8MaxS: + case kArmI16x8Eq: + case kArmI16x8Ne: + case kArmI16x8LtS: + case kArmI16x8LeS: + case kArmI16x8UConvertI8x16Low: + case kArmI16x8UConvertI8x16High: + case kArmI16x8ShrU: + case kArmI16x8UConvertI32x4: + case kArmI16x8AddSaturateU: + case kArmI16x8SubSaturateU: + case kArmI16x8MinU: + case kArmI16x8MaxU: + case kArmI16x8LtU: + case kArmI16x8LeU: + case kArmI8x16Splat: + case kArmI8x16ExtractLane: + case kArmI8x16ReplaceLane: + case kArmI8x16Neg: + case kArmI8x16Shl: + case kArmI8x16ShrS: + case kArmI8x16SConvertI16x8: + case kArmI8x16Add: + case kArmI8x16AddSaturateS: + case kArmI8x16Sub: + case kArmI8x16SubSaturateS: + case kArmI8x16Mul: + case kArmI8x16MinS: + case kArmI8x16MaxS: + case kArmI8x16Eq: + case kArmI8x16Ne: + case kArmI8x16LtS: + case kArmI8x16LeS: + case kArmI8x16UConvertI16x8: + case kArmI8x16AddSaturateU: + case kArmI8x16SubSaturateU: + case kArmI8x16ShrU: + case kArmI8x16MinU: + case kArmI8x16MaxU: + case kArmI8x16LtU: + case kArmI8x16LeU: + case kArmS128Zero: + case kArmS128And: + case kArmS128Or: + case kArmS128Xor: + case kArmS128Not: + case kArmS128Select: + case kArmS1x4AnyTrue: + case kArmS1x4AllTrue: + case kArmS1x8AnyTrue: + case kArmS1x8AllTrue: + case kArmS1x16AnyTrue: + case kArmS1x16AllTrue: return kNoOpcodeFlags; case kArmVldrF32: case kArmVldrF64: + case kArmVld1F64: + case kArmVld1S128: case kArmLdrb: case kArmLdrsb: case kArmLdrh: @@ -209,6 +237,8 @@ int InstructionScheduler::GetTargetInstructionFlags( case kArmVstrF32: case kArmVstrF64: + case kArmVst1F64: + case kArmVst1S128: case kArmStrb: case kArmStrh: case kArmStr: |