Skip to content

Commit cfefe47

Browse files
committed
PowerPC
1 parent ab8b267 commit cfefe47

File tree

8 files changed

+131
-799
lines changed

8 files changed

+131
-799
lines changed

llvm/lib/Target/PowerPC/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ tablegen(LLVM PPCGenFastISel.inc -gen-fast-isel)
1111
tablegen(LLVM PPCGenInstrInfo.inc -gen-instr-info)
1212
tablegen(LLVM PPCGenMCCodeEmitter.inc -gen-emitter)
1313
tablegen(LLVM PPCGenRegisterInfo.inc -gen-register-info)
14+
tablegen(LLVM PPCGenSDNodeInfo.inc -gen-sd-node-info)
1415
tablegen(LLVM PPCGenSubtargetInfo.inc -gen-subtarget)
1516
tablegen(LLVM PPCGenExegesis.inc -gen-exegesis)
1617
tablegen(LLVM PPCGenRegisterBank.inc -gen-register-bank)

llvm/lib/Target/PowerPC/PPCFastISel.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
#include "PPCCallingConv.h"
1818
#include "PPCISelLowering.h"
1919
#include "PPCMachineFunctionInfo.h"
20+
#include "PPCSelectionDAGInfo.h"
2021
#include "PPCSubtarget.h"
2122
#include "llvm/CodeGen/CallingConvLower.h"
2223
#include "llvm/CodeGen/FastISel.h"

llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
#include "PPC.h"
1717
#include "PPCISelLowering.h"
1818
#include "PPCMachineFunctionInfo.h"
19+
#include "PPCSelectionDAGInfo.h"
1920
#include "PPCSubtarget.h"
2021
#include "PPCTargetMachine.h"
2122
#include "llvm/ADT/APInt.h"

llvm/lib/Target/PowerPC/PPCISelLowering.cpp

Lines changed: 1 addition & 185 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
#include "PPCMachineFunctionInfo.h"
2222
#include "PPCPerfectShuffle.h"
2323
#include "PPCRegisterInfo.h"
24+
#include "PPCSelectionDAGInfo.h"
2425
#include "PPCSubtarget.h"
2526
#include "PPCTargetMachine.h"
2627
#include "llvm/ADT/APFloat.h"
@@ -1688,191 +1689,6 @@ bool PPCTargetLowering::shallExtractConstSplatVectorElementToStore(
16881689
return false;
16891690
}
16901691

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-
18761692
EVT PPCTargetLowering::getSetCCResultType(const DataLayout &DL, LLVMContext &C,
18771693
EVT VT) const {
18781694
if (!VT.isVector())

0 commit comments

Comments
 (0)