Skip to content

Commit 03bf331

Browse files
committed
PowerPC
1 parent 3834d99 commit 03bf331

File tree

8 files changed

+131
-785
lines changed

8 files changed

+131
-785
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 & 177 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"
@@ -1681,183 +1682,6 @@ bool PPCTargetLowering::shallExtractConstSplatVectorElementToStore(
16811682
return false;
16821683
}
16831684

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

0 commit comments

Comments
 (0)