Moved pic16 naming functions to correct place.
[oota-llvm.git] / lib / Target / PIC16 / PIC16InstrInfo.h
index 98475dbaa3db497cb2cc9f7be839ef8f9b540963..60b02ab6b47e16bb3a39898e5e17b61a1bb18dfe 100644 (file)
@@ -61,8 +61,25 @@ public:
                             const TargetRegisterClass *DestRC,
                             const TargetRegisterClass *SrcRC) const;
   virtual bool isMoveInstr(const MachineInstr &MI,
-                           unsigned &SrcReg,
-                           unsigned &DestReg) const;
+                           unsigned &SrcReg, unsigned &DstReg,
+                           unsigned &SrcSubIdx, unsigned &DstSubIdx) const;
+
+  static inline bool hasNoMemOperand (const MachineInstr &MI) {
+
+    if (MI.getNumOperands() == 0) return true;
+
+    switch (MI.getOpcode()) {
+    default: return false;  // Beware
+    case PIC16::movlw_lo_1:
+    case PIC16::movlw_hi_1:
+    case PIC16::movlw_lo_2:
+    case PIC16::movlw_hi_2:
+      return true;
+    }
+  }
+       
+   
+    
 
 };