[llvm] r218476 - Add SDAG TableGen definitions for BR_CC
Hal Finkel
hfinkel at anl.gov
Thu Sep 25 16:34:18 PDT 2014
Author: hfinkel
Date: Thu Sep 25 18:34:18 2014
New Revision: 218476
URL: http://llvm.org/viewvc/llvm-project?rev=218476&view=rev
Log:
Add SDAG TableGen definitions for BR_CC
Add SelectionDAG TableGen definitions for BR_CC so that targets can instruction-select
BR_CC using TableGen pattern matching.
Patch by deadal nix.
Modified:
llvm/trunk/include/llvm/Target/TargetSelectionDAG.td
Modified: llvm/trunk/include/llvm/Target/TargetSelectionDAG.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Target/TargetSelectionDAG.td?rev=218476&r1=218475&r2=218476&view=diff
==============================================================================
--- llvm/trunk/include/llvm/Target/TargetSelectionDAG.td (original)
+++ llvm/trunk/include/llvm/Target/TargetSelectionDAG.td Thu Sep 25 18:34:18 2014
@@ -162,6 +162,10 @@ def SDTBr : SDTypeProfile<0, 1, [
SDTCisVT<0, OtherVT>
]>;
+def SDTBrCC : SDTypeProfile<0, 4, [ // brcc
+ SDTCisVT<0, OtherVT>, SDTCisSameAs<1, 2>, SDTCisVT<3, OtherVT>
+]>;
+
def SDTBrcond : SDTypeProfile<0, 2, [ // brcond
SDTCisInt<0>, SDTCisVT<1, OtherVT>
]>;
@@ -400,6 +404,7 @@ def select : SDNode<"ISD::SELECT"
def vselect : SDNode<"ISD::VSELECT" , SDTVSelect>;
def selectcc : SDNode<"ISD::SELECT_CC" , SDTSelectCC>;
+def brcc : SDNode<"ISD::BR_CC" , SDTBrCC, [SDNPHasChain]>;
def brcond : SDNode<"ISD::BRCOND" , SDTBrcond, [SDNPHasChain]>;
def brind : SDNode<"ISD::BRIND" , SDTBrind, [SDNPHasChain]>;
def br : SDNode<"ISD::BR" , SDTBr, [SDNPHasChain]>;
More information about the llvm-commits
mailing list