|
21 | 21 | #include "PPCMachineFunctionInfo.h"
|
22 | 22 | #include "PPCPerfectShuffle.h"
|
23 | 23 | #include "PPCRegisterInfo.h"
|
| 24 | +#include "PPCSelectionDAGInfo.h" |
24 | 25 | #include "PPCSubtarget.h"
|
25 | 26 | #include "PPCTargetMachine.h"
|
26 | 27 | #include "llvm/ADT/APFloat.h"
|
@@ -1688,191 +1689,6 @@ bool PPCTargetLowering::shallExtractConstSplatVectorElementToStore(
|
1688 | 1689 | return false;
|
1689 | 1690 | }
|
1690 | 1691 |
|
1691 |
| -const char *PPCTargetLowering::getTargetNodeName(unsigned Opcode) const { |
1692 |
| - switch ((PPCISD::NodeType)Opcode) { |
1693 |
| - case PPCISD::FIRST_NUMBER: break; |
1694 |
| - case PPCISD::FSEL: return "PPCISD::FSEL"; |
1695 |
| - case PPCISD::XSMAXC: return "PPCISD::XSMAXC"; |
1696 |
| - case PPCISD::XSMINC: return "PPCISD::XSMINC"; |
1697 |
| - case PPCISD::FCFID: return "PPCISD::FCFID"; |
1698 |
| - case PPCISD::FCFIDU: return "PPCISD::FCFIDU"; |
1699 |
| - case PPCISD::FCFIDS: return "PPCISD::FCFIDS"; |
1700 |
| - case PPCISD::FCFIDUS: return "PPCISD::FCFIDUS"; |
1701 |
| - case PPCISD::FCTIDZ: return "PPCISD::FCTIDZ"; |
1702 |
| - case PPCISD::FCTIWZ: return "PPCISD::FCTIWZ"; |
1703 |
| - case PPCISD::FCTIDUZ: return "PPCISD::FCTIDUZ"; |
1704 |
| - case PPCISD::FCTIWUZ: return "PPCISD::FCTIWUZ"; |
1705 |
| - case PPCISD::FRE: return "PPCISD::FRE"; |
1706 |
| - case PPCISD::FRSQRTE: return "PPCISD::FRSQRTE"; |
1707 |
| - case PPCISD::FTSQRT: |
1708 |
| - return "PPCISD::FTSQRT"; |
1709 |
| - case PPCISD::FSQRT: |
1710 |
| - return "PPCISD::FSQRT"; |
1711 |
| - case PPCISD::STFIWX: return "PPCISD::STFIWX"; |
1712 |
| - case PPCISD::VPERM: return "PPCISD::VPERM"; |
1713 |
| - case PPCISD::XXSPLT: return "PPCISD::XXSPLT"; |
1714 |
| - case PPCISD::XXSPLTI_SP_TO_DP: |
1715 |
| - return "PPCISD::XXSPLTI_SP_TO_DP"; |
1716 |
| - case PPCISD::XXSPLTI32DX: |
1717 |
| - return "PPCISD::XXSPLTI32DX"; |
1718 |
| - case PPCISD::VECINSERT: return "PPCISD::VECINSERT"; |
1719 |
| - case PPCISD::XXPERMDI: return "PPCISD::XXPERMDI"; |
1720 |
| - case PPCISD::XXPERM: |
1721 |
| - return "PPCISD::XXPERM"; |
1722 |
| - case PPCISD::VECSHL: return "PPCISD::VECSHL"; |
1723 |
| - case PPCISD::CMPB: return "PPCISD::CMPB"; |
1724 |
| - case PPCISD::Hi: return "PPCISD::Hi"; |
1725 |
| - case PPCISD::Lo: return "PPCISD::Lo"; |
1726 |
| - case PPCISD::TOC_ENTRY: return "PPCISD::TOC_ENTRY"; |
1727 |
| - case PPCISD::ATOMIC_CMP_SWAP_8: return "PPCISD::ATOMIC_CMP_SWAP_8"; |
1728 |
| - case PPCISD::ATOMIC_CMP_SWAP_16: return "PPCISD::ATOMIC_CMP_SWAP_16"; |
1729 |
| - case PPCISD::DYNALLOC: return "PPCISD::DYNALLOC"; |
1730 |
| - case PPCISD::DYNAREAOFFSET: return "PPCISD::DYNAREAOFFSET"; |
1731 |
| - case PPCISD::PROBED_ALLOCA: return "PPCISD::PROBED_ALLOCA"; |
1732 |
| - case PPCISD::GlobalBaseReg: return "PPCISD::GlobalBaseReg"; |
1733 |
| - case PPCISD::SRL: return "PPCISD::SRL"; |
1734 |
| - case PPCISD::SRA: return "PPCISD::SRA"; |
1735 |
| - case PPCISD::SHL: return "PPCISD::SHL"; |
1736 |
| - case PPCISD::SRA_ADDZE: return "PPCISD::SRA_ADDZE"; |
1737 |
| - case PPCISD::CALL: return "PPCISD::CALL"; |
1738 |
| - case PPCISD::CALL_NOP: return "PPCISD::CALL_NOP"; |
1739 |
| - case PPCISD::CALL_NOTOC: return "PPCISD::CALL_NOTOC"; |
1740 |
| - case PPCISD::CALL_RM: |
1741 |
| - return "PPCISD::CALL_RM"; |
1742 |
| - case PPCISD::CALL_NOP_RM: |
1743 |
| - return "PPCISD::CALL_NOP_RM"; |
1744 |
| - case PPCISD::CALL_NOTOC_RM: |
1745 |
| - return "PPCISD::CALL_NOTOC_RM"; |
1746 |
| - case PPCISD::MTCTR: return "PPCISD::MTCTR"; |
1747 |
| - case PPCISD::BCTRL: return "PPCISD::BCTRL"; |
1748 |
| - case PPCISD::BCTRL_LOAD_TOC: return "PPCISD::BCTRL_LOAD_TOC"; |
1749 |
| - case PPCISD::BCTRL_RM: |
1750 |
| - return "PPCISD::BCTRL_RM"; |
1751 |
| - case PPCISD::BCTRL_LOAD_TOC_RM: |
1752 |
| - return "PPCISD::BCTRL_LOAD_TOC_RM"; |
1753 |
| - case PPCISD::RET_GLUE: return "PPCISD::RET_GLUE"; |
1754 |
| - case PPCISD::READ_TIME_BASE: return "PPCISD::READ_TIME_BASE"; |
1755 |
| - case PPCISD::EH_SJLJ_SETJMP: return "PPCISD::EH_SJLJ_SETJMP"; |
1756 |
| - case PPCISD::EH_SJLJ_LONGJMP: return "PPCISD::EH_SJLJ_LONGJMP"; |
1757 |
| - case PPCISD::MFOCRF: return "PPCISD::MFOCRF"; |
1758 |
| - case PPCISD::MFVSR: return "PPCISD::MFVSR"; |
1759 |
| - case PPCISD::MTVSRA: return "PPCISD::MTVSRA"; |
1760 |
| - case PPCISD::MTVSRZ: return "PPCISD::MTVSRZ"; |
1761 |
| - case PPCISD::SINT_VEC_TO_FP: return "PPCISD::SINT_VEC_TO_FP"; |
1762 |
| - case PPCISD::UINT_VEC_TO_FP: return "PPCISD::UINT_VEC_TO_FP"; |
1763 |
| - case PPCISD::SCALAR_TO_VECTOR_PERMUTED: |
1764 |
| - return "PPCISD::SCALAR_TO_VECTOR_PERMUTED"; |
1765 |
| - case PPCISD::ANDI_rec_1_EQ_BIT: |
1766 |
| - return "PPCISD::ANDI_rec_1_EQ_BIT"; |
1767 |
| - case PPCISD::ANDI_rec_1_GT_BIT: |
1768 |
| - return "PPCISD::ANDI_rec_1_GT_BIT"; |
1769 |
| - case PPCISD::VCMP: return "PPCISD::VCMP"; |
1770 |
| - case PPCISD::VCMP_rec: return "PPCISD::VCMP_rec"; |
1771 |
| - case PPCISD::LBRX: return "PPCISD::LBRX"; |
1772 |
| - case PPCISD::STBRX: return "PPCISD::STBRX"; |
1773 |
| - case PPCISD::LFIWAX: return "PPCISD::LFIWAX"; |
1774 |
| - case PPCISD::LFIWZX: return "PPCISD::LFIWZX"; |
1775 |
| - case PPCISD::LXSIZX: return "PPCISD::LXSIZX"; |
1776 |
| - case PPCISD::STXSIX: return "PPCISD::STXSIX"; |
1777 |
| - case PPCISD::VEXTS: return "PPCISD::VEXTS"; |
1778 |
| - case PPCISD::LXVD2X: return "PPCISD::LXVD2X"; |
1779 |
| - case PPCISD::STXVD2X: return "PPCISD::STXVD2X"; |
1780 |
| - case PPCISD::LOAD_VEC_BE: return "PPCISD::LOAD_VEC_BE"; |
1781 |
| - case PPCISD::STORE_VEC_BE: return "PPCISD::STORE_VEC_BE"; |
1782 |
| - case PPCISD::ST_VSR_SCAL_INT: |
1783 |
| - return "PPCISD::ST_VSR_SCAL_INT"; |
1784 |
| - case PPCISD::COND_BRANCH: return "PPCISD::COND_BRANCH"; |
1785 |
| - case PPCISD::BDNZ: return "PPCISD::BDNZ"; |
1786 |
| - case PPCISD::BDZ: return "PPCISD::BDZ"; |
1787 |
| - case PPCISD::MFFS: return "PPCISD::MFFS"; |
1788 |
| - case PPCISD::FADDRTZ: return "PPCISD::FADDRTZ"; |
1789 |
| - case PPCISD::TC_RETURN: return "PPCISD::TC_RETURN"; |
1790 |
| - case PPCISD::CR6SET: return "PPCISD::CR6SET"; |
1791 |
| - case PPCISD::CR6UNSET: return "PPCISD::CR6UNSET"; |
1792 |
| - case PPCISD::PPC32_GOT: return "PPCISD::PPC32_GOT"; |
1793 |
| - case PPCISD::PPC32_PICGOT: return "PPCISD::PPC32_PICGOT"; |
1794 |
| - case PPCISD::ADDIS_GOT_TPREL_HA: return "PPCISD::ADDIS_GOT_TPREL_HA"; |
1795 |
| - case PPCISD::LD_GOT_TPREL_L: return "PPCISD::LD_GOT_TPREL_L"; |
1796 |
| - case PPCISD::ADD_TLS: return "PPCISD::ADD_TLS"; |
1797 |
| - case PPCISD::ADDIS_TLSGD_HA: return "PPCISD::ADDIS_TLSGD_HA"; |
1798 |
| - case PPCISD::ADDI_TLSGD_L: return "PPCISD::ADDI_TLSGD_L"; |
1799 |
| - case PPCISD::GET_TLS_ADDR: return "PPCISD::GET_TLS_ADDR"; |
1800 |
| - case PPCISD::GET_TLS_MOD_AIX: return "PPCISD::GET_TLS_MOD_AIX"; |
1801 |
| - case PPCISD::GET_TPOINTER: return "PPCISD::GET_TPOINTER"; |
1802 |
| - case PPCISD::ADDI_TLSGD_L_ADDR: return "PPCISD::ADDI_TLSGD_L_ADDR"; |
1803 |
| - case PPCISD::TLSGD_AIX: return "PPCISD::TLSGD_AIX"; |
1804 |
| - case PPCISD::TLSLD_AIX: return "PPCISD::TLSLD_AIX"; |
1805 |
| - case PPCISD::ADDIS_TLSLD_HA: return "PPCISD::ADDIS_TLSLD_HA"; |
1806 |
| - case PPCISD::ADDI_TLSLD_L: return "PPCISD::ADDI_TLSLD_L"; |
1807 |
| - case PPCISD::GET_TLSLD_ADDR: return "PPCISD::GET_TLSLD_ADDR"; |
1808 |
| - case PPCISD::ADDI_TLSLD_L_ADDR: return "PPCISD::ADDI_TLSLD_L_ADDR"; |
1809 |
| - case PPCISD::ADDIS_DTPREL_HA: return "PPCISD::ADDIS_DTPREL_HA"; |
1810 |
| - case PPCISD::ADDI_DTPREL_L: return "PPCISD::ADDI_DTPREL_L"; |
1811 |
| - case PPCISD::PADDI_DTPREL: |
1812 |
| - return "PPCISD::PADDI_DTPREL"; |
1813 |
| - case PPCISD::VADD_SPLAT: return "PPCISD::VADD_SPLAT"; |
1814 |
| - case PPCISD::SC: return "PPCISD::SC"; |
1815 |
| - case PPCISD::CLRBHRB: return "PPCISD::CLRBHRB"; |
1816 |
| - case PPCISD::MFBHRBE: return "PPCISD::MFBHRBE"; |
1817 |
| - case PPCISD::RFEBB: return "PPCISD::RFEBB"; |
1818 |
| - case PPCISD::XXSWAPD: return "PPCISD::XXSWAPD"; |
1819 |
| - case PPCISD::SWAP_NO_CHAIN: return "PPCISD::SWAP_NO_CHAIN"; |
1820 |
| - case PPCISD::BUILD_FP128: return "PPCISD::BUILD_FP128"; |
1821 |
| - case PPCISD::BUILD_SPE64: return "PPCISD::BUILD_SPE64"; |
1822 |
| - case PPCISD::EXTRACT_SPE: return "PPCISD::EXTRACT_SPE"; |
1823 |
| - case PPCISD::EXTSWSLI: return "PPCISD::EXTSWSLI"; |
1824 |
| - case PPCISD::LD_VSX_LH: return "PPCISD::LD_VSX_LH"; |
1825 |
| - case PPCISD::FP_EXTEND_HALF: return "PPCISD::FP_EXTEND_HALF"; |
1826 |
| - case PPCISD::MAT_PCREL_ADDR: return "PPCISD::MAT_PCREL_ADDR"; |
1827 |
| - case PPCISD::TLS_DYNAMIC_MAT_PCREL_ADDR: |
1828 |
| - return "PPCISD::TLS_DYNAMIC_MAT_PCREL_ADDR"; |
1829 |
| - case PPCISD::TLS_LOCAL_EXEC_MAT_ADDR: |
1830 |
| - return "PPCISD::TLS_LOCAL_EXEC_MAT_ADDR"; |
1831 |
| - case PPCISD::ACC_BUILD: return "PPCISD::ACC_BUILD"; |
1832 |
| - case PPCISD::PAIR_BUILD: return "PPCISD::PAIR_BUILD"; |
1833 |
| - case PPCISD::EXTRACT_VSX_REG: return "PPCISD::EXTRACT_VSX_REG"; |
1834 |
| - case PPCISD::XXMFACC: return "PPCISD::XXMFACC"; |
1835 |
| - case PPCISD::LD_SPLAT: return "PPCISD::LD_SPLAT"; |
1836 |
| - case PPCISD::ZEXT_LD_SPLAT: return "PPCISD::ZEXT_LD_SPLAT"; |
1837 |
| - case PPCISD::SEXT_LD_SPLAT: return "PPCISD::SEXT_LD_SPLAT"; |
1838 |
| - case PPCISD::FNMSUB: return "PPCISD::FNMSUB"; |
1839 |
| - case PPCISD::STRICT_FADDRTZ: |
1840 |
| - return "PPCISD::STRICT_FADDRTZ"; |
1841 |
| - case PPCISD::STRICT_FCTIDZ: |
1842 |
| - return "PPCISD::STRICT_FCTIDZ"; |
1843 |
| - case PPCISD::STRICT_FCTIWZ: |
1844 |
| - return "PPCISD::STRICT_FCTIWZ"; |
1845 |
| - case PPCISD::STRICT_FCTIDUZ: |
1846 |
| - return "PPCISD::STRICT_FCTIDUZ"; |
1847 |
| - case PPCISD::STRICT_FCTIWUZ: |
1848 |
| - return "PPCISD::STRICT_FCTIWUZ"; |
1849 |
| - case PPCISD::STRICT_FCFID: |
1850 |
| - return "PPCISD::STRICT_FCFID"; |
1851 |
| - case PPCISD::STRICT_FCFIDU: |
1852 |
| - return "PPCISD::STRICT_FCFIDU"; |
1853 |
| - case PPCISD::STRICT_FCFIDS: |
1854 |
| - return "PPCISD::STRICT_FCFIDS"; |
1855 |
| - case PPCISD::STRICT_FCFIDUS: |
1856 |
| - return "PPCISD::STRICT_FCFIDUS"; |
1857 |
| - case PPCISD::LXVRZX: return "PPCISD::LXVRZX"; |
1858 |
| - case PPCISD::STORE_COND: |
1859 |
| - return "PPCISD::STORE_COND"; |
1860 |
| - case PPCISD::SETBC: |
1861 |
| - return "PPCISD::SETBC"; |
1862 |
| - case PPCISD::SETBCR: |
1863 |
| - return "PPCISD::SETBCR"; |
1864 |
| - case PPCISD::ADDC: |
1865 |
| - return "PPCISD::ADDC"; |
1866 |
| - case PPCISD::ADDE: |
1867 |
| - return "PPCISD::ADDE"; |
1868 |
| - case PPCISD::SUBC: |
1869 |
| - return "PPCISD::SUBC"; |
1870 |
| - case PPCISD::SUBE: |
1871 |
| - return "PPCISD::SUBE"; |
1872 |
| - } |
1873 |
| - return nullptr; |
1874 |
| -} |
1875 |
| - |
1876 | 1692 | EVT PPCTargetLowering::getSetCCResultType(const DataLayout &DL, LLVMContext &C,
|
1877 | 1693 | EVT VT) const {
|
1878 | 1694 | if (!VT.isVector())
|
|
0 commit comments