@@ -1610,62 +1610,71 @@ PPCRegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II,
1610
1610
// Get the instruction opcode.
1611
1611
unsigned OpC = MI.getOpcode ();
1612
1612
1613
- if ((OpC == PPC::DYNAREAOFFSET || OpC == PPC::DYNAREAOFFSET8)) {
1613
+ switch (OpC) {
1614
+ default :
1615
+ break ;
1616
+ case PPC::DYNAREAOFFSET:
1617
+ case PPC::DYNAREAOFFSET8:
1614
1618
lowerDynamicAreaOffset (II);
1615
1619
// lowerDynamicAreaOffset erases II
1616
1620
return true ;
1621
+ case PPC::DYNALLOC:
1622
+ case PPC::DYNALLOC8: {
1623
+ // Special case for dynamic alloca.
1624
+ if (FPSI && FrameIndex == FPSI) {
1625
+ lowerDynamicAlloc (II); // lowerDynamicAlloc erases II
1626
+ return true ;
1627
+ }
1628
+ break ;
1617
1629
}
1618
-
1619
- // Special case for dynamic alloca.
1620
- if (FPSI && FrameIndex == FPSI &&
1621
- (OpC == PPC::DYNALLOC || OpC == PPC::DYNALLOC8)) {
1622
- lowerDynamicAlloc (II);
1623
- // lowerDynamicAlloc erases II
1624
- return true ;
1625
- }
1626
-
1627
- if (FPSI && FrameIndex == FPSI &&
1628
- (OpC == PPC::PREPARE_PROBED_ALLOCA_64 ||
1629
- OpC == PPC::PREPARE_PROBED_ALLOCA_32 ||
1630
- OpC == PPC::PREPARE_PROBED_ALLOCA_NEGSIZE_SAME_REG_64 ||
1631
- OpC == PPC::PREPARE_PROBED_ALLOCA_NEGSIZE_SAME_REG_32)) {
1632
- lowerPrepareProbedAlloca (II);
1633
- // lowerPrepareProbedAlloca erases II
1634
- return true ;
1630
+ case PPC::PREPARE_PROBED_ALLOCA_64:
1631
+ case PPC::PREPARE_PROBED_ALLOCA_32:
1632
+ case PPC::PREPARE_PROBED_ALLOCA_NEGSIZE_SAME_REG_64:
1633
+ case PPC::PREPARE_PROBED_ALLOCA_NEGSIZE_SAME_REG_32: {
1634
+ if (FPSI && FrameIndex == FPSI) {
1635
+ lowerPrepareProbedAlloca (II); // lowerPrepareProbedAlloca erases II
1636
+ return true ;
1637
+ }
1638
+ break ;
1635
1639
}
1636
-
1637
- // Special case for pseudo-ops SPILL_CR and RESTORE_CR, etc.
1638
- if (OpC == PPC::SPILL_CR) {
1640
+ case PPC::SPILL_CR:
1641
+ // Special case for pseudo-ops SPILL_CR and RESTORE_CR, etc.
1639
1642
lowerCRSpilling (II, FrameIndex);
1640
1643
return true ;
1641
- } else if (OpC == PPC::RESTORE_CR) {
1644
+ case PPC::RESTORE_CR:
1642
1645
lowerCRRestore (II, FrameIndex);
1643
1646
return true ;
1644
- } else if (OpC == PPC::SPILL_CRBIT) {
1647
+ case PPC::SPILL_CRBIT:
1645
1648
lowerCRBitSpilling (II, FrameIndex);
1646
1649
return true ;
1647
- } else if (OpC == PPC::RESTORE_CRBIT) {
1650
+ case PPC::RESTORE_CRBIT:
1648
1651
lowerCRBitRestore (II, FrameIndex);
1649
1652
return true ;
1650
- } else if (OpC == PPC::SPILL_ACC || OpC == PPC::SPILL_UACC) {
1653
+ case PPC::SPILL_ACC:
1654
+ case PPC::SPILL_UACC:
1651
1655
lowerACCSpilling (II, FrameIndex);
1652
1656
return true ;
1653
- } else if (OpC == PPC::RESTORE_ACC || OpC == PPC::RESTORE_UACC) {
1657
+ case PPC::RESTORE_ACC:
1658
+ case PPC::RESTORE_UACC:
1654
1659
lowerACCRestore (II, FrameIndex);
1655
1660
return true ;
1656
- } else if (OpC == PPC::STXVP && DisableAutoPairedVecSt) {
1657
- lowerOctWordSpilling (II, FrameIndex);
1658
- return true ;
1659
- } else if (OpC == PPC::SPILL_WACC) {
1661
+ case PPC::STXVP: {
1662
+ if (DisableAutoPairedVecSt) {
1663
+ lowerOctWordSpilling (II, FrameIndex);
1664
+ return true ;
1665
+ }
1666
+ break ;
1667
+ }
1668
+ case PPC::SPILL_WACC:
1660
1669
lowerWACCSpilling (II, FrameIndex);
1661
1670
return true ;
1662
- } else if (OpC == PPC::RESTORE_WACC) {
1671
+ case PPC::RESTORE_WACC:
1663
1672
lowerWACCRestore (II, FrameIndex);
1664
1673
return true ;
1665
- } else if (OpC == PPC::SPILL_QUADWORD) {
1674
+ case PPC::SPILL_QUADWORD:
1666
1675
lowerQuadwordSpilling (II, FrameIndex);
1667
1676
return true ;
1668
- } else if (OpC == PPC::RESTORE_QUADWORD) {
1677
+ case PPC::RESTORE_QUADWORD:
1669
1678
lowerQuadwordRestore (II, FrameIndex);
1670
1679
return true ;
1671
1680
}
0 commit comments