Added X86 readport patterns.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24879 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Target/TargetSelectionDAG.td b/lib/Target/TargetSelectionDAG.td
index 5ee107b..338b823 100644
--- a/lib/Target/TargetSelectionDAG.td
+++ b/lib/Target/TargetSelectionDAG.td
@@ -133,6 +133,10 @@
 
 def SDTRet : SDTypeProfile<0, 0, []>; // ret
 
+def SDTReadPort : SDTypeProfile<1, 1, [ // readport
+  SDTCisInt<0>, SDTCisInt<1>
+]>;
+
 def SDTWritePort : SDTypeProfile<0, 2, [ // writeport
   SDTCisInt<0>, SDTCisInt<1>
 ]>;
@@ -254,6 +258,7 @@
 def br         : SDNode<"ISD::BR"         , SDTBr,     [SDNPHasChain]>;
 def ret        : SDNode<"ISD::RET"        , SDTRet,    [SDNPHasChain]>;
 
+def readport   : SDNode<"ISD::READPORT"   , SDTReadPort,  [SDNPHasChain]>;
 def writeport  : SDNode<"ISD::WRITEPORT"  , SDTWritePort, [SDNPHasChain]>;
 
 def load       : SDNode<"ISD::LOAD"       , SDTLoad,  [SDNPHasChain]>;