Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(53)

Side by Side Diff: src/compiler/instruction-selector.cc

Issue 2776753004: [wasm] Make Opcode names consistent across architectures, implementations (Closed)
Patch Set: Scalar fix Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 the V8 project authors. All rights reserved. 1 // Copyright 2014 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "src/compiler/instruction-selector.h" 5 #include "src/compiler/instruction-selector.h"
6 6
7 #include <limits> 7 #include <limits>
8 8
9 #include "src/assembler-inl.h" 9 #include "src/assembler-inl.h"
10 #include "src/base/adapters.h" 10 #include "src/base/adapters.h"
(...skipping 1458 matching lines...) Expand 10 before | Expand all | Expand 10 after
1469 return VisitAtomicCompareExchange(node); 1469 return VisitAtomicCompareExchange(node);
1470 } 1470 }
1471 case IrOpcode::kProtectedLoad: { 1471 case IrOpcode::kProtectedLoad: {
1472 LoadRepresentation type = LoadRepresentationOf(node->op()); 1472 LoadRepresentation type = LoadRepresentationOf(node->op());
1473 MarkAsRepresentation(type.representation(), node); 1473 MarkAsRepresentation(type.representation(), node);
1474 return VisitProtectedLoad(node); 1474 return VisitProtectedLoad(node);
1475 } 1475 }
1476 case IrOpcode::kUnsafePointerAdd: 1476 case IrOpcode::kUnsafePointerAdd:
1477 MarkAsRepresentation(MachineType::PointerRepresentation(), node); 1477 MarkAsRepresentation(MachineType::PointerRepresentation(), node);
1478 return VisitUnsafePointerAdd(node); 1478 return VisitUnsafePointerAdd(node);
1479 case IrOpcode::kFloat32x4Splat: 1479 case IrOpcode::kF32x4Splat:
1480 return MarkAsSimd128(node), VisitFloat32x4Splat(node); 1480 return MarkAsSimd128(node), VisitF32x4Splat(node);
1481 case IrOpcode::kFloat32x4ExtractLane: 1481 case IrOpcode::kF32x4ExtractLane:
1482 return MarkAsFloat32(node), VisitFloat32x4ExtractLane(node); 1482 return MarkAsFloat32(node), VisitF32x4ExtractLane(node);
1483 case IrOpcode::kFloat32x4ReplaceLane: 1483 case IrOpcode::kF32x4ReplaceLane:
1484 return MarkAsSimd128(node), VisitFloat32x4ReplaceLane(node); 1484 return MarkAsSimd128(node), VisitF32x4ReplaceLane(node);
1485 case IrOpcode::kFloat32x4FromInt32x4: 1485 case IrOpcode::kF32x4Abs:
1486 return MarkAsSimd128(node), VisitFloat32x4FromInt32x4(node); 1486 return MarkAsSimd128(node), VisitF32x4Abs(node);
1487 case IrOpcode::kFloat32x4FromUint32x4: 1487 case IrOpcode::kF32x4Neg:
1488 return MarkAsSimd128(node), VisitFloat32x4FromUint32x4(node); 1488 return MarkAsSimd128(node), VisitF32x4Neg(node);
1489 case IrOpcode::kFloat32x4Abs: 1489 case IrOpcode::kF32x4RecipApprox:
1490 return MarkAsSimd128(node), VisitFloat32x4Abs(node); 1490 return MarkAsSimd128(node), VisitF32x4RecipApprox(node);
1491 case IrOpcode::kFloat32x4Neg: 1491 case IrOpcode::kF32x4RecipRefine:
1492 return MarkAsSimd128(node), VisitFloat32x4Neg(node); 1492 return MarkAsSimd128(node), VisitF32x4RecipRefine(node);
1493 case IrOpcode::kFloat32x4RecipApprox: 1493 case IrOpcode::kF32x4Add:
1494 return MarkAsSimd128(node), VisitFloat32x4RecipApprox(node); 1494 return MarkAsSimd128(node), VisitF32x4Add(node);
1495 case IrOpcode::kFloat32x4RecipRefine: 1495 case IrOpcode::kF32x4Sub:
1496 return MarkAsSimd128(node), VisitFloat32x4RecipRefine(node); 1496 return MarkAsSimd128(node), VisitF32x4Sub(node);
1497 case IrOpcode::kFloat32x4RecipSqrtApprox: 1497 case IrOpcode::kF32x4Mul:
1498 return MarkAsSimd128(node), VisitFloat32x4RecipSqrtApprox(node); 1498 return MarkAsSimd128(node), VisitF32x4Mul(node);
1499 case IrOpcode::kFloat32x4RecipSqrtRefine: 1499 case IrOpcode::kF32x4Min:
1500 return MarkAsSimd128(node), VisitFloat32x4RecipSqrtRefine(node); 1500 return MarkAsSimd128(node), VisitF32x4Min(node);
1501 case IrOpcode::kFloat32x4Add: 1501 case IrOpcode::kF32x4Max:
1502 return MarkAsSimd128(node), VisitFloat32x4Add(node); 1502 return MarkAsSimd128(node), VisitF32x4Max(node);
1503 case IrOpcode::kFloat32x4Sub: 1503 case IrOpcode::kF32x4RecipSqrtApprox:
1504 return MarkAsSimd128(node), VisitFloat32x4Sub(node); 1504 return MarkAsSimd128(node), VisitF32x4RecipSqrtApprox(node);
1505 case IrOpcode::kFloat32x4Mul: 1505 case IrOpcode::kF32x4RecipSqrtRefine:
1506 return MarkAsSimd128(node), VisitFloat32x4Mul(node); 1506 return MarkAsSimd128(node), VisitF32x4RecipSqrtRefine(node);
1507 case IrOpcode::kFloat32x4Min: 1507 case IrOpcode::kF32x4Eq:
1508 return MarkAsSimd128(node), VisitFloat32x4Min(node); 1508 return MarkAsSimd1x4(node), VisitF32x4Eq(node);
1509 case IrOpcode::kFloat32x4Max: 1509 case IrOpcode::kF32x4Ne:
1510 return MarkAsSimd128(node), VisitFloat32x4Max(node); 1510 return MarkAsSimd1x4(node), VisitF32x4Ne(node);
1511 case IrOpcode::kFloat32x4Equal: 1511 case IrOpcode::kF32x4Lt:
1512 return MarkAsSimd1x4(node), VisitFloat32x4Equal(node); 1512 return MarkAsSimd1x4(node), VisitF32x4Lt(node);
1513 case IrOpcode::kFloat32x4NotEqual: 1513 case IrOpcode::kF32x4Le:
1514 return MarkAsSimd1x4(node), VisitFloat32x4NotEqual(node); 1514 return MarkAsSimd1x4(node), VisitF32x4Le(node);
1515 case IrOpcode::kFloat32x4LessThan: 1515 case IrOpcode::kF32x4SConvertI32x4:
1516 return MarkAsSimd1x4(node), VisitFloat32x4LessThan(node); 1516 return MarkAsSimd128(node), VisitF32x4SConvertI32x4(node);
1517 case IrOpcode::kFloat32x4LessThanOrEqual: 1517 case IrOpcode::kF32x4UConvertI32x4:
1518 return MarkAsSimd1x4(node), VisitFloat32x4LessThanOrEqual(node); 1518 return MarkAsSimd128(node), VisitF32x4UConvertI32x4(node);
1519 case IrOpcode::kInt32x4Splat: 1519 case IrOpcode::kI32x4Splat:
1520 return MarkAsSimd128(node), VisitInt32x4Splat(node); 1520 return MarkAsSimd128(node), VisitI32x4Splat(node);
1521 case IrOpcode::kInt32x4ExtractLane: 1521 case IrOpcode::kI32x4ExtractLane:
1522 return MarkAsWord32(node), VisitInt32x4ExtractLane(node); 1522 return MarkAsWord32(node), VisitI32x4ExtractLane(node);
1523 case IrOpcode::kInt32x4ReplaceLane: 1523 case IrOpcode::kI32x4ReplaceLane:
1524 return MarkAsSimd128(node), VisitInt32x4ReplaceLane(node); 1524 return MarkAsSimd128(node), VisitI32x4ReplaceLane(node);
1525 case IrOpcode::kInt32x4FromFloat32x4: 1525 case IrOpcode::kI32x4Neg:
1526 return MarkAsSimd128(node), VisitInt32x4FromFloat32x4(node); 1526 return MarkAsSimd128(node), VisitI32x4Neg(node);
1527 case IrOpcode::kUint32x4FromFloat32x4: 1527 case IrOpcode::kI32x4Add:
1528 return MarkAsSimd128(node), VisitUint32x4FromFloat32x4(node); 1528 return MarkAsSimd128(node), VisitI32x4Add(node);
1529 case IrOpcode::kInt32x4Neg: 1529 case IrOpcode::kI32x4Sub:
1530 return MarkAsSimd128(node), VisitInt32x4Neg(node); 1530 return MarkAsSimd128(node), VisitI32x4Sub(node);
1531 case IrOpcode::kInt32x4ShiftLeftByScalar: 1531 case IrOpcode::kI32x4Mul:
1532 return MarkAsSimd128(node), VisitInt32x4ShiftLeftByScalar(node); 1532 return MarkAsSimd128(node), VisitI32x4Mul(node);
1533 case IrOpcode::kInt32x4ShiftRightByScalar: 1533 case IrOpcode::kI32x4MinS:
1534 return MarkAsSimd128(node), VisitInt32x4ShiftRightByScalar(node); 1534 return MarkAsSimd128(node), VisitI32x4MinS(node);
1535 case IrOpcode::kInt32x4Add: 1535 case IrOpcode::kI32x4MaxS:
1536 return MarkAsSimd128(node), VisitInt32x4Add(node); 1536 return MarkAsSimd128(node), VisitI32x4MaxS(node);
1537 case IrOpcode::kInt32x4Sub: 1537 case IrOpcode::kI32x4Shl:
1538 return MarkAsSimd128(node), VisitInt32x4Sub(node); 1538 return MarkAsSimd128(node), VisitI32x4Shl(node);
1539 case IrOpcode::kInt32x4Mul: 1539 case IrOpcode::kI32x4ShrS:
1540 return MarkAsSimd128(node), VisitInt32x4Mul(node); 1540 return MarkAsSimd128(node), VisitI32x4ShrS(node);
1541 case IrOpcode::kInt32x4Min: 1541 case IrOpcode::kI32x4Eq:
1542 return MarkAsSimd128(node), VisitInt32x4Min(node); 1542 return MarkAsSimd1x4(node), VisitI32x4Eq(node);
1543 case IrOpcode::kInt32x4Max: 1543 case IrOpcode::kI32x4Ne:
1544 return MarkAsSimd128(node), VisitInt32x4Max(node); 1544 return MarkAsSimd1x4(node), VisitI32x4Ne(node);
1545 case IrOpcode::kInt32x4Equal: 1545 case IrOpcode::kI32x4LtS:
1546 return MarkAsSimd1x4(node), VisitInt32x4Equal(node); 1546 return MarkAsSimd1x4(node), VisitI32x4LtS(node);
1547 case IrOpcode::kInt32x4NotEqual: 1547 case IrOpcode::kI32x4LeS:
1548 return MarkAsSimd1x4(node), VisitInt32x4NotEqual(node); 1548 return MarkAsSimd1x4(node), VisitI32x4LeS(node);
1549 case IrOpcode::kInt32x4LessThan: 1549 case IrOpcode::kI32x4SConvertF32x4:
1550 return MarkAsSimd1x4(node), VisitInt32x4LessThan(node); 1550 return MarkAsSimd128(node), VisitI32x4SConvertF32x4(node);
1551 case IrOpcode::kInt32x4LessThanOrEqual: 1551 case IrOpcode::kI32x4MinU:
1552 return MarkAsSimd1x4(node), VisitInt32x4LessThanOrEqual(node); 1552 return MarkAsSimd128(node), VisitI32x4MinU(node);
1553 case IrOpcode::kUint32x4ShiftRightByScalar: 1553 case IrOpcode::kI32x4MaxU:
1554 return MarkAsSimd128(node), VisitUint32x4ShiftRightByScalar(node); 1554 return MarkAsSimd128(node), VisitI32x4MaxU(node);
1555 case IrOpcode::kUint32x4Min: 1555 case IrOpcode::kI32x4ShrU:
1556 return MarkAsSimd128(node), VisitUint32x4Min(node); 1556 return MarkAsSimd128(node), VisitI32x4ShrU(node);
1557 case IrOpcode::kUint32x4Max: 1557 case IrOpcode::kI32x4LtU:
1558 return MarkAsSimd128(node), VisitUint32x4Max(node); 1558 return MarkAsSimd1x4(node), VisitI32x4LtU(node);
1559 case IrOpcode::kUint32x4LessThan: 1559 case IrOpcode::kI32x4LeU:
1560 return MarkAsSimd1x4(node), VisitUint32x4LessThan(node); 1560 return MarkAsSimd1x4(node), VisitI32x4LeU(node);
1561 case IrOpcode::kUint32x4LessThanOrEqual: 1561 case IrOpcode::kI32x4UConvertF32x4:
1562 return MarkAsSimd1x4(node), VisitUint32x4LessThanOrEqual(node); 1562 return MarkAsSimd128(node), VisitI32x4UConvertF32x4(node);
1563 case IrOpcode::kInt16x8Splat: 1563 case IrOpcode::kI16x8Splat:
1564 return MarkAsSimd128(node), VisitInt16x8Splat(node); 1564 return MarkAsSimd128(node), VisitI16x8Splat(node);
1565 case IrOpcode::kInt16x8ExtractLane: 1565 case IrOpcode::kI16x8ExtractLane:
1566 return MarkAsWord32(node), VisitInt16x8ExtractLane(node); 1566 return MarkAsWord32(node), VisitI16x8ExtractLane(node);
1567 case IrOpcode::kInt16x8ReplaceLane: 1567 case IrOpcode::kI16x8ReplaceLane:
1568 return MarkAsSimd128(node), VisitInt16x8ReplaceLane(node); 1568 return MarkAsSimd128(node), VisitI16x8ReplaceLane(node);
1569 case IrOpcode::kInt16x8Neg: 1569 case IrOpcode::kI16x8Neg:
1570 return MarkAsSimd128(node), VisitInt16x8Neg(node); 1570 return MarkAsSimd128(node), VisitI16x8Neg(node);
1571 case IrOpcode::kInt16x8ShiftLeftByScalar: 1571 case IrOpcode::kI16x8Add:
1572 return MarkAsSimd128(node), VisitInt16x8ShiftLeftByScalar(node); 1572 return MarkAsSimd128(node), VisitI16x8Add(node);
1573 case IrOpcode::kInt16x8ShiftRightByScalar: 1573 case IrOpcode::kI16x8AddSaturate:
1574 return MarkAsSimd128(node), VisitInt16x8ShiftRightByScalar(node); 1574 return MarkAsSimd128(node), VisitI16x8AddSaturate(node);
1575 case IrOpcode::kInt16x8Add: 1575 case IrOpcode::kI16x8Sub:
1576 return MarkAsSimd128(node), VisitInt16x8Add(node); 1576 return MarkAsSimd128(node), VisitI16x8Sub(node);
1577 case IrOpcode::kInt16x8AddSaturate: 1577 case IrOpcode::kI16x8SubSaturate:
1578 return MarkAsSimd128(node), VisitInt16x8AddSaturate(node); 1578 return MarkAsSimd128(node), VisitI16x8SubSaturate(node);
1579 case IrOpcode::kInt16x8Sub: 1579 case IrOpcode::kI16x8Mul:
1580 return MarkAsSimd128(node), VisitInt16x8Sub(node); 1580 return MarkAsSimd128(node), VisitI16x8Mul(node);
1581 case IrOpcode::kInt16x8SubSaturate: 1581 case IrOpcode::kI16x8MinS:
1582 return MarkAsSimd128(node), VisitInt16x8SubSaturate(node); 1582 return MarkAsSimd128(node), VisitI16x8MinS(node);
1583 case IrOpcode::kInt16x8Mul: 1583 case IrOpcode::kI16x8MaxS:
1584 return MarkAsSimd128(node), VisitInt16x8Mul(node); 1584 return MarkAsSimd128(node), VisitI16x8MaxS(node);
1585 case IrOpcode::kInt16x8Min: 1585 case IrOpcode::kI16x8Shl:
1586 return MarkAsSimd128(node), VisitInt16x8Min(node); 1586 return MarkAsSimd128(node), VisitI16x8Shl(node);
1587 case IrOpcode::kInt16x8Max: 1587 case IrOpcode::kI16x8ShrS:
1588 return MarkAsSimd128(node), VisitInt16x8Max(node); 1588 return MarkAsSimd128(node), VisitI16x8ShrS(node);
1589 case IrOpcode::kInt16x8Equal: 1589 case IrOpcode::kI16x8Eq:
1590 return MarkAsSimd1x8(node), VisitInt16x8Equal(node); 1590 return MarkAsSimd1x8(node), VisitI16x8Eq(node);
1591 case IrOpcode::kInt16x8NotEqual: 1591 case IrOpcode::kI16x8Ne:
1592 return MarkAsSimd1x8(node), VisitInt16x8NotEqual(node); 1592 return MarkAsSimd1x8(node), VisitI16x8Ne(node);
1593 case IrOpcode::kInt16x8LessThan: 1593 case IrOpcode::kI16x8LtS:
1594 return MarkAsSimd1x8(node), VisitInt16x8LessThan(node); 1594 return MarkAsSimd1x8(node), VisitI16x8LtS(node);
1595 case IrOpcode::kInt16x8LessThanOrEqual: 1595 case IrOpcode::kI16x8LeS:
1596 return MarkAsSimd1x8(node), VisitInt16x8LessThanOrEqual(node); 1596 return MarkAsSimd1x8(node), VisitI16x8LeS(node);
1597 case IrOpcode::kUint16x8ShiftRightByScalar: 1597 case IrOpcode::kI16x8AddSaturateU:
1598 return MarkAsSimd128(node), VisitUint16x8ShiftRightByScalar(node); 1598 return MarkAsSimd128(node), VisitI16x8AddSaturateU(node);
1599 case IrOpcode::kUint16x8AddSaturate: 1599 case IrOpcode::kI16x8SubSaturateU:
1600 return MarkAsSimd128(node), VisitUint16x8AddSaturate(node); 1600 return MarkAsSimd128(node), VisitI16x8SubSaturateU(node);
1601 case IrOpcode::kUint16x8SubSaturate: 1601 case IrOpcode::kI16x8MinU:
1602 return MarkAsSimd128(node), VisitUint16x8SubSaturate(node); 1602 return MarkAsSimd128(node), VisitI16x8MinU(node);
1603 case IrOpcode::kUint16x8Min: 1603 case IrOpcode::kI16x8MaxU:
1604 return MarkAsSimd128(node), VisitUint16x8Min(node); 1604 return MarkAsSimd128(node), VisitI16x8MaxU(node);
1605 case IrOpcode::kUint16x8Max: 1605 case IrOpcode::kI16x8ShrU:
1606 return MarkAsSimd128(node), VisitUint16x8Max(node); 1606 return MarkAsSimd128(node), VisitI16x8ShrU(node);
1607 case IrOpcode::kUint16x8LessThan: 1607 case IrOpcode::kI16x8LtU:
1608 return MarkAsSimd1x8(node), VisitUint16x8LessThan(node); 1608 return MarkAsSimd1x8(node), VisitI16x8LtU(node);
1609 case IrOpcode::kUint16x8LessThanOrEqual: 1609 case IrOpcode::kI16x8LeU:
1610 return MarkAsSimd1x8(node), VisitUint16x8LessThanOrEqual(node); 1610 return MarkAsSimd1x8(node), VisitI16x8LeU(node);
1611 case IrOpcode::kInt8x16Splat: 1611 case IrOpcode::kI8x16Splat:
1612 return MarkAsSimd128(node), VisitInt8x16Splat(node); 1612 return MarkAsSimd128(node), VisitI8x16Splat(node);
1613 case IrOpcode::kInt8x16ExtractLane: 1613 case IrOpcode::kI8x16ExtractLane:
1614 return MarkAsWord32(node), VisitInt8x16ExtractLane(node); 1614 return MarkAsWord32(node), VisitI8x16ExtractLane(node);
1615 case IrOpcode::kInt8x16ReplaceLane: 1615 case IrOpcode::kI8x16ReplaceLane:
1616 return MarkAsSimd128(node), VisitInt8x16ReplaceLane(node); 1616 return MarkAsSimd128(node), VisitI8x16ReplaceLane(node);
1617 case IrOpcode::kInt8x16Neg: 1617 case IrOpcode::kI8x16Neg:
1618 return MarkAsSimd128(node), VisitInt8x16Neg(node); 1618 return MarkAsSimd128(node), VisitI8x16Neg(node);
1619 case IrOpcode::kInt8x16ShiftLeftByScalar: 1619 case IrOpcode::kI8x16Add:
1620 return MarkAsSimd128(node), VisitInt8x16ShiftLeftByScalar(node); 1620 return MarkAsSimd128(node), VisitI8x16Add(node);
1621 case IrOpcode::kInt8x16ShiftRightByScalar: 1621 case IrOpcode::kI8x16AddSaturate:
1622 return MarkAsSimd128(node), VisitInt8x16ShiftRightByScalar(node); 1622 return MarkAsSimd128(node), VisitI8x16AddSaturate(node);
1623 case IrOpcode::kInt8x16Add: 1623 case IrOpcode::kI8x16Sub:
1624 return MarkAsSimd128(node), VisitInt8x16Add(node); 1624 return MarkAsSimd128(node), VisitI8x16Sub(node);
1625 case IrOpcode::kInt8x16AddSaturate: 1625 case IrOpcode::kI8x16SubSaturate:
1626 return MarkAsSimd128(node), VisitInt8x16AddSaturate(node); 1626 return MarkAsSimd128(node), VisitI8x16SubSaturate(node);
1627 case IrOpcode::kInt8x16Sub: 1627 case IrOpcode::kI8x16Mul:
1628 return MarkAsSimd128(node), VisitInt8x16Sub(node); 1628 return MarkAsSimd128(node), VisitI8x16Mul(node);
1629 case IrOpcode::kInt8x16SubSaturate: 1629 case IrOpcode::kI8x16MinS:
1630 return MarkAsSimd128(node), VisitInt8x16SubSaturate(node); 1630 return MarkAsSimd128(node), VisitI8x16MinS(node);
1631 case IrOpcode::kInt8x16Mul: 1631 case IrOpcode::kI8x16MaxS:
1632 return MarkAsSimd128(node), VisitInt8x16Mul(node); 1632 return MarkAsSimd128(node), VisitI8x16MaxS(node);
1633 case IrOpcode::kInt8x16Min: 1633 case IrOpcode::kI8x16Shl:
1634 return MarkAsSimd128(node), VisitInt8x16Min(node); 1634 return MarkAsSimd128(node), VisitI8x16Shl(node);
1635 case IrOpcode::kInt8x16Max: 1635 case IrOpcode::kI8x16ShrS:
1636 return MarkAsSimd128(node), VisitInt8x16Max(node); 1636 return MarkAsSimd128(node), VisitI8x16ShrS(node);
1637 case IrOpcode::kInt8x16Equal: 1637 case IrOpcode::kI8x16Eq:
1638 return MarkAsSimd1x16(node), VisitInt8x16Equal(node); 1638 return MarkAsSimd1x16(node), VisitI8x16Eq(node);
1639 case IrOpcode::kInt8x16NotEqual: 1639 case IrOpcode::kI8x16Ne:
1640 return MarkAsSimd1x16(node), VisitInt8x16NotEqual(node); 1640 return MarkAsSimd1x16(node), VisitI8x16Ne(node);
1641 case IrOpcode::kInt8x16LessThan: 1641 case IrOpcode::kI8x16LtS:
1642 return MarkAsSimd1x16(node), VisitInt8x16LessThan(node); 1642 return MarkAsSimd1x16(node), VisitI8x16LtS(node);
1643 case IrOpcode::kInt8x16LessThanOrEqual: 1643 case IrOpcode::kI8x16LeS:
1644 return MarkAsSimd1x16(node), VisitInt8x16LessThanOrEqual(node); 1644 return MarkAsSimd1x16(node), VisitI8x16LeS(node);
1645 case IrOpcode::kUint8x16ShiftRightByScalar: 1645 case IrOpcode::kI8x16AddSaturateU:
1646 return MarkAsSimd128(node), VisitUint8x16ShiftRightByScalar(node); 1646 return MarkAsSimd128(node), VisitI8x16AddSaturateU(node);
1647 case IrOpcode::kUint8x16AddSaturate: 1647 case IrOpcode::kI8x16SubSaturateU:
1648 return MarkAsSimd128(node), VisitUint8x16AddSaturate(node); 1648 return MarkAsSimd128(node), VisitI8x16SubSaturateU(node);
1649 case IrOpcode::kUint8x16SubSaturate: 1649 case IrOpcode::kI8x16MinU:
1650 return MarkAsSimd128(node), VisitUint8x16SubSaturate(node); 1650 return MarkAsSimd128(node), VisitI8x16MinU(node);
1651 case IrOpcode::kUint8x16Min: 1651 case IrOpcode::kI8x16MaxU:
1652 return MarkAsSimd128(node), VisitUint8x16Min(node); 1652 return MarkAsSimd128(node), VisitI8x16MaxU(node);
1653 case IrOpcode::kUint8x16Max: 1653 case IrOpcode::kI8x16LtU:
1654 return MarkAsSimd128(node), VisitUint8x16Max(node); 1654 return MarkAsSimd1x16(node), VisitI8x16LtU(node);
1655 case IrOpcode::kUint8x16LessThan: 1655 case IrOpcode::kI8x16LeU:
1656 return MarkAsSimd1x16(node), VisitUint8x16LessThan(node); 1656 return MarkAsSimd1x16(node), VisitI16x8LeU(node);
1657 case IrOpcode::kUint8x16LessThanOrEqual: 1657 case IrOpcode::kI8x16ShrU:
1658 return MarkAsSimd1x16(node), VisitUint16x8LessThanOrEqual(node); 1658 return MarkAsSimd128(node), VisitI8x16ShrU(node);
1659 case IrOpcode::kSimd128Zero: 1659 case IrOpcode::kS128Zero:
1660 return MarkAsSimd128(node), VisitSimd128Zero(node); 1660 return MarkAsSimd128(node), VisitS128Zero(node);
1661 case IrOpcode::kSimd128And: 1661 case IrOpcode::kS128And:
1662 return MarkAsSimd128(node), VisitSimd128And(node); 1662 return MarkAsSimd128(node), VisitS128And(node);
1663 case IrOpcode::kSimd128Or: 1663 case IrOpcode::kS128Or:
1664 return MarkAsSimd128(node), VisitSimd128Or(node); 1664 return MarkAsSimd128(node), VisitS128Or(node);
1665 case IrOpcode::kSimd128Xor: 1665 case IrOpcode::kS128Xor:
1666 return MarkAsSimd128(node), VisitSimd128Xor(node); 1666 return MarkAsSimd128(node), VisitS128Xor(node);
1667 case IrOpcode::kSimd128Not: 1667 case IrOpcode::kS128Not:
1668 return MarkAsSimd128(node), VisitSimd128Not(node); 1668 return MarkAsSimd128(node), VisitS128Not(node);
1669 case IrOpcode::kSimd32x4Select: 1669 case IrOpcode::kS32x4Select:
1670 return MarkAsSimd128(node), VisitSimd32x4Select(node); 1670 return MarkAsSimd128(node), VisitS32x4Select(node);
1671 case IrOpcode::kSimd16x8Select: 1671 case IrOpcode::kS16x8Select:
1672 return MarkAsSimd128(node), VisitSimd16x8Select(node); 1672 return MarkAsSimd128(node), VisitS16x8Select(node);
1673 case IrOpcode::kSimd8x16Select: 1673 case IrOpcode::kS8x16Select:
1674 return MarkAsSimd128(node), VisitSimd8x16Select(node); 1674 return MarkAsSimd128(node), VisitS8x16Select(node);
1675 case IrOpcode::kSimd1x4Zero: 1675 case IrOpcode::kS1x4Zero:
1676 return MarkAsSimd1x4(node), VisitSimd1x4Zero(node); 1676 return MarkAsSimd1x4(node), VisitS1x4Zero(node);
1677 case IrOpcode::kSimd1x4And: 1677 case IrOpcode::kS1x4And:
1678 return MarkAsSimd1x4(node), VisitSimd1x4And(node); 1678 return MarkAsSimd1x4(node), VisitS1x4And(node);
1679 case IrOpcode::kSimd1x4Or: 1679 case IrOpcode::kS1x4Or:
1680 return MarkAsSimd1x4(node), VisitSimd1x4Or(node); 1680 return MarkAsSimd1x4(node), VisitS1x4Or(node);
1681 case IrOpcode::kSimd1x4Xor: 1681 case IrOpcode::kS1x4Xor:
1682 return MarkAsSimd1x4(node), VisitSimd1x4Xor(node); 1682 return MarkAsSimd1x4(node), VisitS1x4Xor(node);
1683 case IrOpcode::kSimd1x4Not: 1683 case IrOpcode::kS1x4Not:
1684 return MarkAsSimd1x4(node), VisitSimd1x4Not(node); 1684 return MarkAsSimd1x4(node), VisitS1x4Not(node);
1685 case IrOpcode::kSimd1x4AnyTrue: 1685 case IrOpcode::kS1x4AnyTrue:
1686 return MarkAsWord32(node), VisitSimd1x4AnyTrue(node); 1686 return MarkAsWord32(node), VisitS1x4AnyTrue(node);
1687 case IrOpcode::kSimd1x4AllTrue: 1687 case IrOpcode::kS1x4AllTrue:
1688 return MarkAsWord32(node), VisitSimd1x4AllTrue(node); 1688 return MarkAsWord32(node), VisitS1x4AllTrue(node);
1689 case IrOpcode::kSimd1x8Zero: 1689 case IrOpcode::kS1x8Zero:
1690 return MarkAsSimd1x8(node), VisitSimd1x8Zero(node); 1690 return MarkAsSimd1x8(node), VisitS1x8Zero(node);
1691 case IrOpcode::kSimd1x8And: 1691 case IrOpcode::kS1x8And:
1692 return MarkAsSimd1x8(node), VisitSimd1x8And(node); 1692 return MarkAsSimd1x8(node), VisitS1x8And(node);
1693 case IrOpcode::kSimd1x8Or: 1693 case IrOpcode::kS1x8Or:
1694 return MarkAsSimd1x8(node), VisitSimd1x8Or(node); 1694 return MarkAsSimd1x8(node), VisitS1x8Or(node);
1695 case IrOpcode::kSimd1x8Xor: 1695 case IrOpcode::kS1x8Xor:
1696 return MarkAsSimd1x8(node), VisitSimd1x8Xor(node); 1696 return MarkAsSimd1x8(node), VisitS1x8Xor(node);
1697 case IrOpcode::kSimd1x8Not: 1697 case IrOpcode::kS1x8Not:
1698 return MarkAsSimd1x8(node), VisitSimd1x8Not(node); 1698 return MarkAsSimd1x8(node), VisitS1x8Not(node);
1699 case IrOpcode::kSimd1x8AnyTrue: 1699 case IrOpcode::kS1x8AnyTrue:
1700 return MarkAsWord32(node), VisitSimd1x8AnyTrue(node); 1700 return MarkAsWord32(node), VisitS1x8AnyTrue(node);
1701 case IrOpcode::kSimd1x8AllTrue: 1701 case IrOpcode::kS1x8AllTrue:
1702 return MarkAsWord32(node), VisitSimd1x8AllTrue(node); 1702 return MarkAsWord32(node), VisitS1x8AllTrue(node);
1703 case IrOpcode::kSimd1x16Zero: 1703 case IrOpcode::kS1x16Zero:
1704 return MarkAsSimd1x16(node), VisitSimd1x16Zero(node); 1704 return MarkAsSimd1x16(node), VisitS1x16Zero(node);
1705 case IrOpcode::kSimd1x16And: 1705 case IrOpcode::kS1x16And:
1706 return MarkAsSimd1x16(node), VisitSimd1x16And(node); 1706 return MarkAsSimd1x16(node), VisitS1x16And(node);
1707 case IrOpcode::kSimd1x16Or: 1707 case IrOpcode::kS1x16Or:
1708 return MarkAsSimd1x16(node), VisitSimd1x16Or(node); 1708 return MarkAsSimd1x16(node), VisitS1x16Or(node);
1709 case IrOpcode::kSimd1x16Xor: 1709 case IrOpcode::kS1x16Xor:
1710 return MarkAsSimd1x16(node), VisitSimd1x16Xor(node); 1710 return MarkAsSimd1x16(node), VisitS1x16Xor(node);
1711 case IrOpcode::kSimd1x16Not: 1711 case IrOpcode::kS1x16Not:
1712 return MarkAsSimd1x16(node), VisitSimd1x16Not(node); 1712 return MarkAsSimd1x16(node), VisitS1x16Not(node);
1713 case IrOpcode::kSimd1x16AnyTrue: 1713 case IrOpcode::kS1x16AnyTrue:
1714 return MarkAsWord32(node), VisitSimd1x16AnyTrue(node); 1714 return MarkAsWord32(node), VisitS1x16AnyTrue(node);
1715 case IrOpcode::kSimd1x16AllTrue: 1715 case IrOpcode::kS1x16AllTrue:
1716 return MarkAsWord32(node), VisitSimd1x16AllTrue(node); 1716 return MarkAsWord32(node), VisitS1x16AllTrue(node);
1717 default: 1717 default:
1718 V8_Fatal(__FILE__, __LINE__, "Unexpected operator #%d:%s @ node #%d", 1718 V8_Fatal(__FILE__, __LINE__, "Unexpected operator #%d:%s @ node #%d",
1719 node->opcode(), node->op()->mnemonic(), node->id()); 1719 node->opcode(), node->op()->mnemonic(), node->id());
1720 break; 1720 break;
1721 } 1721 }
1722 } 1722 }
1723 1723
1724 void InstructionSelector::VisitLoadStackPointer(Node* node) { 1724 void InstructionSelector::VisitLoadStackPointer(Node* node) {
1725 OperandGenerator g(this); 1725 OperandGenerator g(this);
1726 Emit(kArchStackPointer, g.DefineAsRegister(node)); 1726 Emit(kArchStackPointer, g.DefineAsRegister(node));
(...skipping 308 matching lines...) Expand 10 before | Expand all | Expand 10 after
2035 2035
2036 void InstructionSelector::VisitInt32PairMul(Node* node) { UNIMPLEMENTED(); } 2036 void InstructionSelector::VisitInt32PairMul(Node* node) { UNIMPLEMENTED(); }
2037 2037
2038 void InstructionSelector::VisitWord32PairShl(Node* node) { UNIMPLEMENTED(); } 2038 void InstructionSelector::VisitWord32PairShl(Node* node) { UNIMPLEMENTED(); }
2039 2039
2040 void InstructionSelector::VisitWord32PairShr(Node* node) { UNIMPLEMENTED(); } 2040 void InstructionSelector::VisitWord32PairShr(Node* node) { UNIMPLEMENTED(); }
2041 2041
2042 void InstructionSelector::VisitWord32PairSar(Node* node) { UNIMPLEMENTED(); } 2042 void InstructionSelector::VisitWord32PairSar(Node* node) { UNIMPLEMENTED(); }
2043 #endif // V8_TARGET_ARCH_64_BIT 2043 #endif // V8_TARGET_ARCH_64_BIT
2044 2044
2045 #if !V8_TARGET_ARCH_ARM
2046 void InstructionSelector::VisitF32x4Splat(Node* node) { UNIMPLEMENTED(); }
2047
2048 void InstructionSelector::VisitF32x4ExtractLane(Node* node) { UNIMPLEMENTED(); }
2049
2050 void InstructionSelector::VisitF32x4ReplaceLane(Node* node) { UNIMPLEMENTED(); }
2051
2052 void InstructionSelector::VisitF32x4SConvertI32x4(Node* node) {
2053 UNIMPLEMENTED();
2054 }
2055
2056 void InstructionSelector::VisitF32x4UConvertI32x4(Node* node) {
2057 UNIMPLEMENTED();
2058 }
2059
2060 void InstructionSelector::VisitF32x4Abs(Node* node) { UNIMPLEMENTED(); }
2061
2062 void InstructionSelector::VisitF32x4Neg(Node* node) { UNIMPLEMENTED(); }
2063
2064 void InstructionSelector::VisitF32x4RecipSqrtApprox(Node* node) {
2065 UNIMPLEMENTED();
2066 }
2067
2068 void InstructionSelector::VisitF32x4RecipSqrtRefine(Node* node) {
2069 UNIMPLEMENTED();
2070 }
2071
2072 void InstructionSelector::VisitF32x4Add(Node* node) { UNIMPLEMENTED(); }
2073
2074 void InstructionSelector::VisitF32x4Sub(Node* node) { UNIMPLEMENTED(); }
2075
2076 void InstructionSelector::VisitF32x4Mul(Node* node) { UNIMPLEMENTED(); }
2077
2078 void InstructionSelector::VisitF32x4Max(Node* node) { UNIMPLEMENTED(); }
2079
2080 void InstructionSelector::VisitF32x4Min(Node* node) { UNIMPLEMENTED(); }
2081
2082 void InstructionSelector::VisitF32x4RecipApprox(Node* node) { UNIMPLEMENTED(); }
2083
2084 void InstructionSelector::VisitF32x4RecipRefine(Node* node) { UNIMPLEMENTED(); }
2085
2086 void InstructionSelector::VisitF32x4Eq(Node* node) { UNIMPLEMENTED(); }
2087
2088 void InstructionSelector::VisitF32x4Ne(Node* node) { UNIMPLEMENTED(); }
2089
2090 void InstructionSelector::VisitF32x4Lt(Node* node) { UNIMPLEMENTED(); }
2091
2092 void InstructionSelector::VisitF32x4Le(Node* node) { UNIMPLEMENTED(); }
2093
2094 void InstructionSelector::VisitI32x4SConvertF32x4(Node* node) {
2095 UNIMPLEMENTED();
2096 }
2097
2098 void InstructionSelector::VisitI32x4UConvertF32x4(Node* node) {
2099 UNIMPLEMENTED();
2100 }
2101 #endif // V8_TARGET_ARCH_ARM
2102
2045 #if !V8_TARGET_ARCH_X64 && !V8_TARGET_ARCH_ARM && !V8_TARGET_ARCH_IA32 2103 #if !V8_TARGET_ARCH_X64 && !V8_TARGET_ARCH_ARM && !V8_TARGET_ARCH_IA32
2046 void InstructionSelector::VisitInt32x4Splat(Node* node) { UNIMPLEMENTED(); } 2104 void InstructionSelector::VisitI32x4Splat(Node* node) { UNIMPLEMENTED(); }
2047 2105
2048 void InstructionSelector::VisitInt32x4ExtractLane(Node* node) { 2106 void InstructionSelector::VisitI32x4ExtractLane(Node* node) { UNIMPLEMENTED(); }
2049 UNIMPLEMENTED(); 2107
2050 } 2108 void InstructionSelector::VisitI32x4ReplaceLane(Node* node) { UNIMPLEMENTED(); }
2051 2109
2052 void InstructionSelector::VisitInt32x4ReplaceLane(Node* node) { 2110 void InstructionSelector::VisitI32x4Add(Node* node) { UNIMPLEMENTED(); }
2053 UNIMPLEMENTED(); 2111
2054 } 2112 void InstructionSelector::VisitI32x4Sub(Node* node) { UNIMPLEMENTED(); }
2055
2056 void InstructionSelector::VisitInt32x4Add(Node* node) { UNIMPLEMENTED(); }
2057
2058 void InstructionSelector::VisitInt32x4Sub(Node* node) { UNIMPLEMENTED(); }
2059 #endif // !V8_TARGET_ARCH_X64 && !V8_TARGET_ARCH_ARM && !V8_TARGET_ARCH_IA32 2113 #endif // !V8_TARGET_ARCH_X64 && !V8_TARGET_ARCH_ARM && !V8_TARGET_ARCH_IA32
2060 2114
2061 #if !V8_TARGET_ARCH_X64 && !V8_TARGET_ARCH_ARM 2115 #if !V8_TARGET_ARCH_X64 && !V8_TARGET_ARCH_ARM
2062 void InstructionSelector::VisitInt32x4Mul(Node* node) { UNIMPLEMENTED(); } 2116 void InstructionSelector::VisitI32x4Mul(Node* node) { UNIMPLEMENTED(); }
2063 2117
2064 void InstructionSelector::VisitInt32x4Max(Node* node) { UNIMPLEMENTED(); } 2118 void InstructionSelector::VisitI32x4MaxS(Node* node) { UNIMPLEMENTED(); }
2065 2119
2066 void InstructionSelector::VisitInt32x4Min(Node* node) { UNIMPLEMENTED(); } 2120 void InstructionSelector::VisitI32x4MinS(Node* node) { UNIMPLEMENTED(); }
2067 2121
2068 void InstructionSelector::VisitInt32x4Equal(Node* node) { UNIMPLEMENTED(); } 2122 void InstructionSelector::VisitI32x4Shl(Node* node) { UNIMPLEMENTED(); }
2069 2123
2070 void InstructionSelector::VisitInt32x4NotEqual(Node* node) { UNIMPLEMENTED(); } 2124 void InstructionSelector::VisitI32x4ShrS(Node* node) { UNIMPLEMENTED(); }
2071 2125
2072 void InstructionSelector::VisitInt32x4ShiftLeftByScalar(Node* node) { 2126 void InstructionSelector::VisitI32x4Eq(Node* node) { UNIMPLEMENTED(); }
2073 UNIMPLEMENTED(); 2127
2074 } 2128 void InstructionSelector::VisitI32x4Ne(Node* node) { UNIMPLEMENTED(); }
2075 2129
2076 void InstructionSelector::VisitInt32x4ShiftRightByScalar(Node* node) { 2130 void InstructionSelector::VisitI32x4MinU(Node* node) { UNIMPLEMENTED(); }
2077 UNIMPLEMENTED(); 2131
2078 } 2132 void InstructionSelector::VisitI32x4MaxU(Node* node) { UNIMPLEMENTED(); }
2079 2133
2080 void InstructionSelector::VisitUint32x4ShiftRightByScalar(Node* node) { 2134 void InstructionSelector::VisitI32x4ShrU(Node* node) { UNIMPLEMENTED(); }
2081 UNIMPLEMENTED();
2082 }
2083
2084 void InstructionSelector::VisitUint32x4Max(Node* node) { UNIMPLEMENTED(); }
2085
2086 void InstructionSelector::VisitUint32x4Min(Node* node) { UNIMPLEMENTED(); }
2087
2088 void InstructionSelector::VisitSimd128Zero(Node* node) { UNIMPLEMENTED(); }
2089
2090 void InstructionSelector::VisitSimd1x4Zero(Node* node) { UNIMPLEMENTED(); }
2091
2092 void InstructionSelector::VisitSimd1x8Zero(Node* node) { UNIMPLEMENTED(); }
2093
2094 void InstructionSelector::VisitSimd1x16Zero(Node* node) { UNIMPLEMENTED(); }
2095 #endif // !V8_TARGET_ARCH_X64 && !V8_TARGET_ARCH_ARM 2135 #endif // !V8_TARGET_ARCH_X64 && !V8_TARGET_ARCH_ARM
2096 2136
2097 #if !V8_TARGET_ARCH_ARM 2137 #if !V8_TARGET_ARCH_ARM
2098 void InstructionSelector::VisitFloat32x4Splat(Node* node) { UNIMPLEMENTED(); } 2138 void InstructionSelector::VisitI32x4Neg(Node* node) { UNIMPLEMENTED(); }
2099 2139
2100 void InstructionSelector::VisitFloat32x4ExtractLane(Node* node) { 2140 void InstructionSelector::VisitI32x4LtS(Node* node) { UNIMPLEMENTED(); }
2101 UNIMPLEMENTED(); 2141
2102 } 2142 void InstructionSelector::VisitI32x4LeS(Node* node) { UNIMPLEMENTED(); }
2103 2143
2104 void InstructionSelector::VisitFloat32x4ReplaceLane(Node* node) { 2144 void InstructionSelector::VisitI32x4LtU(Node* node) { UNIMPLEMENTED(); }
2105 UNIMPLEMENTED(); 2145
2106 } 2146 void InstructionSelector::VisitI32x4LeU(Node* node) { UNIMPLEMENTED(); }
2107 2147
2108 void InstructionSelector::VisitFloat32x4FromInt32x4(Node* node) { 2148 void InstructionSelector::VisitI16x8Splat(Node* node) { UNIMPLEMENTED(); }
2109 UNIMPLEMENTED(); 2149
2110 } 2150 void InstructionSelector::VisitI16x8ExtractLane(Node* node) { UNIMPLEMENTED(); }
2111 2151
2112 void InstructionSelector::VisitFloat32x4FromUint32x4(Node* node) { 2152 void InstructionSelector::VisitI16x8ReplaceLane(Node* node) { UNIMPLEMENTED(); }
2113 UNIMPLEMENTED(); 2153
2114 } 2154 void InstructionSelector::VisitI16x8Neg(Node* node) { UNIMPLEMENTED(); }
2115 2155
2116 void InstructionSelector::VisitFloat32x4Abs(Node* node) { UNIMPLEMENTED(); } 2156 void InstructionSelector::VisitI16x8Add(Node* node) { UNIMPLEMENTED(); }
2117 2157
2118 void InstructionSelector::VisitFloat32x4Neg(Node* node) { UNIMPLEMENTED(); } 2158 void InstructionSelector::VisitI16x8AddSaturate(Node* node) { UNIMPLEMENTED(); }
2119 2159
2120 void InstructionSelector::VisitFloat32x4RecipApprox(Node* node) { 2160 void InstructionSelector::VisitI16x8Sub(Node* node) { UNIMPLEMENTED(); }
2121 UNIMPLEMENTED(); 2161
2122 } 2162 void InstructionSelector::VisitI16x8SubSaturate(Node* node) { UNIMPLEMENTED(); }
2123 2163
2124 void InstructionSelector::VisitFloat32x4RecipRefine(Node* node) { 2164 void InstructionSelector::VisitI16x8Mul(Node* node) { UNIMPLEMENTED(); }
2125 UNIMPLEMENTED(); 2165
2126 } 2166 void InstructionSelector::VisitI16x8MinS(Node* node) { UNIMPLEMENTED(); }
2127 2167
2128 void InstructionSelector::VisitFloat32x4RecipSqrtApprox(Node* node) { 2168 void InstructionSelector::VisitI16x8MaxS(Node* node) { UNIMPLEMENTED(); }
2129 UNIMPLEMENTED(); 2169
2130 } 2170 void InstructionSelector::VisitI16x8Shl(Node* node) { UNIMPLEMENTED(); }
2131 2171
2132 void InstructionSelector::VisitFloat32x4RecipSqrtRefine(Node* node) { 2172 void InstructionSelector::VisitI16x8ShrS(Node* node) { UNIMPLEMENTED(); }
2133 UNIMPLEMENTED(); 2173
2134 } 2174 void InstructionSelector::VisitI16x8Eq(Node* node) { UNIMPLEMENTED(); }
2135 2175
2136 void InstructionSelector::VisitFloat32x4Add(Node* node) { UNIMPLEMENTED(); } 2176 void InstructionSelector::VisitI16x8Ne(Node* node) { UNIMPLEMENTED(); }
2137 2177
2138 void InstructionSelector::VisitFloat32x4Sub(Node* node) { UNIMPLEMENTED(); } 2178 void InstructionSelector::VisitI16x8LtS(Node* node) { UNIMPLEMENTED(); }
2139 2179
2140 void InstructionSelector::VisitFloat32x4Mul(Node* node) { UNIMPLEMENTED(); } 2180 void InstructionSelector::VisitI16x8LeS(Node* node) { UNIMPLEMENTED(); }
2141 2181
2142 void InstructionSelector::VisitFloat32x4Max(Node* node) { UNIMPLEMENTED(); } 2182 void InstructionSelector::VisitI16x8AddSaturateU(Node* node) {
2143 2183 UNIMPLEMENTED();
2144 void InstructionSelector::VisitFloat32x4Min(Node* node) { UNIMPLEMENTED(); } 2184 }
2145 2185
2146 void InstructionSelector::VisitFloat32x4Equal(Node* node) { UNIMPLEMENTED(); } 2186 void InstructionSelector::VisitI16x8SubSaturateU(Node* node) {
2147 2187 UNIMPLEMENTED();
2148 void InstructionSelector::VisitFloat32x4NotEqual(Node* node) { 2188 }
2149 UNIMPLEMENTED(); 2189
2150 } 2190 void InstructionSelector::VisitI16x8MinU(Node* node) { UNIMPLEMENTED(); }
2151 2191
2152 void InstructionSelector::VisitFloat32x4LessThan(Node* node) { 2192 void InstructionSelector::VisitI16x8MaxU(Node* node) { UNIMPLEMENTED(); }
2153 UNIMPLEMENTED(); 2193
2154 } 2194 void InstructionSelector::VisitI16x8ShrU(Node* node) { UNIMPLEMENTED(); }
2155 2195
2156 void InstructionSelector::VisitFloat32x4LessThanOrEqual(Node* node) { 2196 void InstructionSelector::VisitI16x8LtU(Node* node) { UNIMPLEMENTED(); }
2157 UNIMPLEMENTED(); 2197
2158 } 2198 void InstructionSelector::VisitI16x8LeU(Node* node) { UNIMPLEMENTED(); }
2159 2199
2160 void InstructionSelector::VisitInt32x4FromFloat32x4(Node* node) { 2200 void InstructionSelector::VisitI8x16Splat(Node* node) { UNIMPLEMENTED(); }
2161 UNIMPLEMENTED(); 2201
2162 } 2202 void InstructionSelector::VisitI8x16ExtractLane(Node* node) { UNIMPLEMENTED(); }
2163 2203
2164 void InstructionSelector::VisitUint32x4FromFloat32x4(Node* node) { 2204 void InstructionSelector::VisitI8x16ReplaceLane(Node* node) { UNIMPLEMENTED(); }
2165 UNIMPLEMENTED(); 2205
2166 } 2206 void InstructionSelector::VisitI8x16Neg(Node* node) { UNIMPLEMENTED(); }
2167 2207
2168 void InstructionSelector::VisitInt32x4Neg(Node* node) { UNIMPLEMENTED(); } 2208 void InstructionSelector::VisitI8x16Add(Node* node) { UNIMPLEMENTED(); }
2169 2209
2170 void InstructionSelector::VisitInt32x4LessThan(Node* node) { UNIMPLEMENTED(); } 2210 void InstructionSelector::VisitI8x16AddSaturate(Node* node) { UNIMPLEMENTED(); }
2171 2211
2172 void InstructionSelector::VisitInt32x4LessThanOrEqual(Node* node) { 2212 void InstructionSelector::VisitI8x16Sub(Node* node) { UNIMPLEMENTED(); }
2173 UNIMPLEMENTED(); 2213
2174 } 2214 void InstructionSelector::VisitI8x16SubSaturate(Node* node) { UNIMPLEMENTED(); }
2175 2215
2176 void InstructionSelector::VisitUint32x4LessThan(Node* node) { UNIMPLEMENTED(); } 2216 void InstructionSelector::VisitI8x16Mul(Node* node) { UNIMPLEMENTED(); }
2177 2217
2178 void InstructionSelector::VisitUint32x4LessThanOrEqual(Node* node) { 2218 void InstructionSelector::VisitI8x16MinS(Node* node) { UNIMPLEMENTED(); }
2179 UNIMPLEMENTED(); 2219
2180 } 2220 void InstructionSelector::VisitI8x16MaxS(Node* node) { UNIMPLEMENTED(); }
2181 2221
2182 void InstructionSelector::VisitInt16x8Splat(Node* node) { UNIMPLEMENTED(); } 2222 void InstructionSelector::VisitI8x16Shl(Node* node) { UNIMPLEMENTED(); }
2183 2223
2184 void InstructionSelector::VisitInt16x8ExtractLane(Node* node) { 2224 void InstructionSelector::VisitI8x16ShrS(Node* node) { UNIMPLEMENTED(); }
2185 UNIMPLEMENTED(); 2225
2186 } 2226 void InstructionSelector::VisitI8x16Eq(Node* node) { UNIMPLEMENTED(); }
2187 2227
2188 void InstructionSelector::VisitInt16x8ReplaceLane(Node* node) { 2228 void InstructionSelector::VisitI8x16Ne(Node* node) { UNIMPLEMENTED(); }
2189 UNIMPLEMENTED(); 2229
2190 } 2230 void InstructionSelector::VisitI8x16LtS(Node* node) { UNIMPLEMENTED(); }
2191 2231
2192 void InstructionSelector::VisitInt16x8Neg(Node* node) { UNIMPLEMENTED(); } 2232 void InstructionSelector::VisitI8x16LeS(Node* node) { UNIMPLEMENTED(); }
2193 2233
2194 void InstructionSelector::VisitInt16x8ShiftLeftByScalar(Node* node) { 2234 void InstructionSelector::VisitI8x16AddSaturateU(Node* node) {
2195 UNIMPLEMENTED(); 2235 UNIMPLEMENTED();
2196 } 2236 }
2197 2237
2198 void InstructionSelector::VisitInt16x8ShiftRightByScalar(Node* node) { 2238 void InstructionSelector::VisitI8x16SubSaturateU(Node* node) {
2199 UNIMPLEMENTED(); 2239 UNIMPLEMENTED();
2200 } 2240 }
2201 2241
2202 void InstructionSelector::VisitInt16x8Add(Node* node) { UNIMPLEMENTED(); } 2242 void InstructionSelector::VisitI8x16MinU(Node* node) { UNIMPLEMENTED(); }
2203 2243
2204 void InstructionSelector::VisitInt16x8AddSaturate(Node* node) { 2244 void InstructionSelector::VisitI8x16MaxU(Node* node) { UNIMPLEMENTED(); }
2205 UNIMPLEMENTED(); 2245
2206 } 2246 void InstructionSelector::VisitI8x16ShrU(Node* node) { UNIMPLEMENTED(); }
2207 2247
2208 void InstructionSelector::VisitInt16x8Sub(Node* node) { UNIMPLEMENTED(); } 2248 void InstructionSelector::VisitI8x16LtU(Node* node) { UNIMPLEMENTED(); }
2209 2249
2210 void InstructionSelector::VisitInt16x8SubSaturate(Node* node) { 2250 void InstructionSelector::VisitI8x16LeU(Node* node) { UNIMPLEMENTED(); }
2211 UNIMPLEMENTED(); 2251
2212 } 2252 void InstructionSelector::VisitS128And(Node* node) { UNIMPLEMENTED(); }
2213 2253
2214 void InstructionSelector::VisitInt16x8Mul(Node* node) { UNIMPLEMENTED(); } 2254 void InstructionSelector::VisitS128Or(Node* node) { UNIMPLEMENTED(); }
2215 2255
2216 void InstructionSelector::VisitInt16x8Max(Node* node) { UNIMPLEMENTED(); } 2256 void InstructionSelector::VisitS128Xor(Node* node) { UNIMPLEMENTED(); }
2217 2257
2218 void InstructionSelector::VisitInt16x8Min(Node* node) { UNIMPLEMENTED(); } 2258 void InstructionSelector::VisitS128Not(Node* node) { UNIMPLEMENTED(); }
2219
2220 void InstructionSelector::VisitInt16x8Equal(Node* node) { UNIMPLEMENTED(); }
2221
2222 void InstructionSelector::VisitInt16x8NotEqual(Node* node) { UNIMPLEMENTED(); }
2223
2224 void InstructionSelector::VisitInt16x8LessThan(Node* node) { UNIMPLEMENTED(); }
2225
2226 void InstructionSelector::VisitInt16x8LessThanOrEqual(Node* node) {
2227 UNIMPLEMENTED();
2228 }
2229
2230 void InstructionSelector::VisitUint16x8ShiftRightByScalar(Node* node) {
2231 UNIMPLEMENTED();
2232 }
2233
2234 void InstructionSelector::VisitUint16x8AddSaturate(Node* node) {
2235 UNIMPLEMENTED();
2236 }
2237
2238 void InstructionSelector::VisitUint16x8SubSaturate(Node* node) {
2239 UNIMPLEMENTED();
2240 }
2241
2242 void InstructionSelector::VisitUint16x8Max(Node* node) { UNIMPLEMENTED(); }
2243
2244 void InstructionSelector::VisitUint16x8Min(Node* node) { UNIMPLEMENTED(); }
2245
2246 void InstructionSelector::VisitUint16x8LessThan(Node* node) { UNIMPLEMENTED(); }
2247
2248 void InstructionSelector::VisitUint16x8LessThanOrEqual(Node* node) {
2249 UNIMPLEMENTED();
2250 }
2251
2252 void InstructionSelector::VisitInt8x16Splat(Node* node) { UNIMPLEMENTED(); }
2253
2254 void InstructionSelector::VisitInt8x16ExtractLane(Node* node) {
2255 UNIMPLEMENTED();
2256 }
2257
2258 void InstructionSelector::VisitInt8x16ReplaceLane(Node* node) {
2259 UNIMPLEMENTED();
2260 }
2261
2262 void InstructionSelector::VisitInt8x16Neg(Node* node) { UNIMPLEMENTED(); }
2263
2264 void InstructionSelector::VisitInt8x16ShiftLeftByScalar(Node* node) {
2265 UNIMPLEMENTED();
2266 }
2267
2268 void InstructionSelector::VisitInt8x16ShiftRightByScalar(Node* node) {
2269 UNIMPLEMENTED();
2270 }
2271
2272 void InstructionSelector::VisitInt8x16Add(Node* node) { UNIMPLEMENTED(); }
2273
2274 void InstructionSelector::VisitInt8x16AddSaturate(Node* node) {
2275 UNIMPLEMENTED();
2276 }
2277
2278 void InstructionSelector::VisitInt8x16Sub(Node* node) { UNIMPLEMENTED(); }
2279
2280 void InstructionSelector::VisitInt8x16SubSaturate(Node* node) {
2281 UNIMPLEMENTED();
2282 }
2283
2284 void InstructionSelector::VisitInt8x16Mul(Node* node) { UNIMPLEMENTED(); }
2285
2286 void InstructionSelector::VisitInt8x16Max(Node* node) { UNIMPLEMENTED(); }
2287
2288 void InstructionSelector::VisitInt8x16Min(Node* node) { UNIMPLEMENTED(); }
2289
2290 void InstructionSelector::VisitInt8x16Equal(Node* node) { UNIMPLEMENTED(); }
2291
2292 void InstructionSelector::VisitInt8x16NotEqual(Node* node) { UNIMPLEMENTED(); }
2293
2294 void InstructionSelector::VisitInt8x16LessThan(Node* node) { UNIMPLEMENTED(); }
2295
2296 void InstructionSelector::VisitInt8x16LessThanOrEqual(Node* node) {
2297 UNIMPLEMENTED();
2298 }
2299
2300 void InstructionSelector::VisitUint8x16ShiftRightByScalar(Node* node) {
2301 UNIMPLEMENTED();
2302 }
2303
2304 void InstructionSelector::VisitUint8x16AddSaturate(Node* node) {
2305 UNIMPLEMENTED();
2306 }
2307
2308 void InstructionSelector::VisitUint8x16SubSaturate(Node* node) {
2309 UNIMPLEMENTED();
2310 }
2311
2312 void InstructionSelector::VisitUint8x16Max(Node* node) { UNIMPLEMENTED(); }
2313
2314 void InstructionSelector::VisitUint8x16Min(Node* node) { UNIMPLEMENTED(); }
2315
2316 void InstructionSelector::VisitUint8x16LessThan(Node* node) { UNIMPLEMENTED(); }
2317
2318 void InstructionSelector::VisitUint8x16LessThanOrEqual(Node* node) {
2319 UNIMPLEMENTED();
2320 }
2321
2322 void InstructionSelector::VisitSimd128And(Node* node) { UNIMPLEMENTED(); }
2323
2324 void InstructionSelector::VisitSimd128Or(Node* node) { UNIMPLEMENTED(); }
2325
2326 void InstructionSelector::VisitSimd128Xor(Node* node) { UNIMPLEMENTED(); }
2327
2328 void InstructionSelector::VisitSimd128Not(Node* node) { UNIMPLEMENTED(); }
2329 #endif // !V8_TARGET_ARCH_ARM 2259 #endif // !V8_TARGET_ARCH_ARM
2330 2260
2331 #if !V8_TARGET_ARCH_X64 && !V8_TARGET_ARCH_ARM 2261 #if !V8_TARGET_ARCH_X64 && !V8_TARGET_ARCH_ARM
2332 void InstructionSelector::VisitSimd32x4Select(Node* node) { UNIMPLEMENTED(); } 2262 void InstructionSelector::VisitS128Zero(Node* node) { UNIMPLEMENTED(); }
2263
2264 void InstructionSelector::VisitS1x4Zero(Node* node) { UNIMPLEMENTED(); }
2265
2266 void InstructionSelector::VisitS1x8Zero(Node* node) { UNIMPLEMENTED(); }
2267
2268 void InstructionSelector::VisitS1x16Zero(Node* node) { UNIMPLEMENTED(); }
2269
2270 void InstructionSelector::VisitS32x4Select(Node* node) { UNIMPLEMENTED(); }
2333 #endif // !V8_TARGET_ARCH_X64 && !V8_TARGET_ARCH_ARM 2271 #endif // !V8_TARGET_ARCH_X64 && !V8_TARGET_ARCH_ARM
2334 2272
2335 #if !V8_TARGET_ARCH_ARM 2273 #if !V8_TARGET_ARCH_ARM
2336 void InstructionSelector::VisitSimd16x8Select(Node* node) { UNIMPLEMENTED(); } 2274 void InstructionSelector::VisitS16x8Select(Node* node) { UNIMPLEMENTED(); }
2337 2275
2338 void InstructionSelector::VisitSimd8x16Select(Node* node) { UNIMPLEMENTED(); } 2276 void InstructionSelector::VisitS8x16Select(Node* node) { UNIMPLEMENTED(); }
2339 2277
2340 void InstructionSelector::VisitSimd1x4And(Node* node) { UNIMPLEMENTED(); } 2278 void InstructionSelector::VisitS1x4And(Node* node) { UNIMPLEMENTED(); }
2341 2279
2342 void InstructionSelector::VisitSimd1x4Or(Node* node) { UNIMPLEMENTED(); } 2280 void InstructionSelector::VisitS1x4Or(Node* node) { UNIMPLEMENTED(); }
2343 2281
2344 void InstructionSelector::VisitSimd1x4Xor(Node* node) { UNIMPLEMENTED(); } 2282 void InstructionSelector::VisitS1x4Xor(Node* node) { UNIMPLEMENTED(); }
2345 2283
2346 void InstructionSelector::VisitSimd1x4Not(Node* node) { UNIMPLEMENTED(); } 2284 void InstructionSelector::VisitS1x4Not(Node* node) { UNIMPLEMENTED(); }
2347 2285
2348 void InstructionSelector::VisitSimd1x4AnyTrue(Node* node) { UNIMPLEMENTED(); } 2286 void InstructionSelector::VisitS1x4AnyTrue(Node* node) { UNIMPLEMENTED(); }
2349 2287
2350 void InstructionSelector::VisitSimd1x4AllTrue(Node* node) { UNIMPLEMENTED(); } 2288 void InstructionSelector::VisitS1x4AllTrue(Node* node) { UNIMPLEMENTED(); }
2351 2289
2352 void InstructionSelector::VisitSimd1x8And(Node* node) { UNIMPLEMENTED(); } 2290 void InstructionSelector::VisitS1x8And(Node* node) { UNIMPLEMENTED(); }
2353 2291
2354 void InstructionSelector::VisitSimd1x8Or(Node* node) { UNIMPLEMENTED(); } 2292 void InstructionSelector::VisitS1x8Or(Node* node) { UNIMPLEMENTED(); }
2355 2293
2356 void InstructionSelector::VisitSimd1x8Xor(Node* node) { UNIMPLEMENTED(); } 2294 void InstructionSelector::VisitS1x8Xor(Node* node) { UNIMPLEMENTED(); }
2357 2295
2358 void InstructionSelector::VisitSimd1x8Not(Node* node) { UNIMPLEMENTED(); } 2296 void InstructionSelector::VisitS1x8Not(Node* node) { UNIMPLEMENTED(); }
2359 2297
2360 void InstructionSelector::VisitSimd1x8AnyTrue(Node* node) { UNIMPLEMENTED(); } 2298 void InstructionSelector::VisitS1x8AnyTrue(Node* node) { UNIMPLEMENTED(); }
2361 2299
2362 void InstructionSelector::VisitSimd1x8AllTrue(Node* node) { UNIMPLEMENTED(); } 2300 void InstructionSelector::VisitS1x8AllTrue(Node* node) { UNIMPLEMENTED(); }
2363 2301
2364 void InstructionSelector::VisitSimd1x16And(Node* node) { UNIMPLEMENTED(); } 2302 void InstructionSelector::VisitS1x16And(Node* node) { UNIMPLEMENTED(); }
2365 2303
2366 void InstructionSelector::VisitSimd1x16Or(Node* node) { UNIMPLEMENTED(); } 2304 void InstructionSelector::VisitS1x16Or(Node* node) { UNIMPLEMENTED(); }
2367 2305
2368 void InstructionSelector::VisitSimd1x16Xor(Node* node) { UNIMPLEMENTED(); } 2306 void InstructionSelector::VisitS1x16Xor(Node* node) { UNIMPLEMENTED(); }
2369 2307
2370 void InstructionSelector::VisitSimd1x16Not(Node* node) { UNIMPLEMENTED(); } 2308 void InstructionSelector::VisitS1x16Not(Node* node) { UNIMPLEMENTED(); }
2371 2309
2372 void InstructionSelector::VisitSimd1x16AnyTrue(Node* node) { UNIMPLEMENTED(); } 2310 void InstructionSelector::VisitS1x16AnyTrue(Node* node) { UNIMPLEMENTED(); }
2373 2311
2374 void InstructionSelector::VisitSimd1x16AllTrue(Node* node) { UNIMPLEMENTED(); } 2312 void InstructionSelector::VisitS1x16AllTrue(Node* node) { UNIMPLEMENTED(); }
2375 #endif // !V8_TARGET_ARCH_ARM 2313 #endif // !V8_TARGET_ARCH_ARM
2376 2314
2377 void InstructionSelector::VisitFinishRegion(Node* node) { EmitIdentity(node); } 2315 void InstructionSelector::VisitFinishRegion(Node* node) { EmitIdentity(node); }
2378 2316
2379 void InstructionSelector::VisitParameter(Node* node) { 2317 void InstructionSelector::VisitParameter(Node* node) {
2380 OperandGenerator g(this); 2318 OperandGenerator g(this);
2381 int index = ParameterIndexOf(node->op()); 2319 int index = ParameterIndexOf(node->op());
2382 InstructionOperand op = 2320 InstructionOperand op =
2383 linkage()->ParameterHasSecondaryLocation(index) 2321 linkage()->ParameterHasSecondaryLocation(index)
2384 ? g.DefineAsDualLocation( 2322 ? g.DefineAsDualLocation(
(...skipping 359 matching lines...) Expand 10 before | Expand all | Expand 10 after
2744 return new (instruction_zone()) FrameStateDescriptor( 2682 return new (instruction_zone()) FrameStateDescriptor(
2745 instruction_zone(), state_info.type(), state_info.bailout_id(), 2683 instruction_zone(), state_info.type(), state_info.bailout_id(),
2746 state_info.state_combine(), parameters, locals, stack, 2684 state_info.state_combine(), parameters, locals, stack,
2747 state_info.shared_info(), outer_state); 2685 state_info.shared_info(), outer_state);
2748 } 2686 }
2749 2687
2750 2688
2751 } // namespace compiler 2689 } // namespace compiler
2752 } // namespace internal 2690 } // namespace internal
2753 } // namespace v8 2691 } // namespace v8
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698