Hexagon: Use absolute addressing mode loads/stores for global+offset
[oota-llvm.git] / lib / Target / Hexagon / HexagonVLIWPacketizer.cpp
index fa1a969ea8750d20437a66f334d777ecf578ca9d..aff6b866f563a713b1ac08ede97e30c77656cb95 100644 (file)
 //
 //===----------------------------------------------------------------------===//
 #define DEBUG_TYPE "packets"
+#include "Hexagon.h"
+#include "HexagonMachineFunctionInfo.h"
+#include "HexagonRegisterInfo.h"
+#include "HexagonSubtarget.h"
+#include "HexagonTargetMachine.h"
+#include "llvm/ADT/DenseMap.h"
+#include "llvm/ADT/Statistic.h"
 #include "llvm/CodeGen/DFAPacketizer.h"
-#include "llvm/CodeGen/Passes.h"
+#include "llvm/CodeGen/LatencyPriorityQueue.h"
 #include "llvm/CodeGen/MachineDominators.h"
+#include "llvm/CodeGen/MachineFrameInfo.h"
+#include "llvm/CodeGen/MachineFunctionAnalysis.h"
 #include "llvm/CodeGen/MachineFunctionPass.h"
+#include "llvm/CodeGen/MachineInstrBuilder.h"
 #include "llvm/CodeGen/MachineLoopInfo.h"
+#include "llvm/CodeGen/MachineRegisterInfo.h"
+#include "llvm/CodeGen/Passes.h"
 #include "llvm/CodeGen/ScheduleDAG.h"
 #include "llvm/CodeGen/ScheduleDAGInstrs.h"
-#include "llvm/CodeGen/LatencyPriorityQueue.h"
-#include "llvm/CodeGen/SchedulerRegistry.h"
-#include "llvm/CodeGen/MachineFrameInfo.h"
-#include "llvm/CodeGen/MachineInstrBuilder.h"
-#include "llvm/CodeGen/MachineRegisterInfo.h"
-#include "llvm/CodeGen/MachineFunctionAnalysis.h"
 #include "llvm/CodeGen/ScheduleHazardRecognizer.h"
-#include "llvm/Target/TargetMachine.h"
-#include "llvm/Target/TargetInstrInfo.h"
-#include "llvm/Target/TargetRegisterInfo.h"
-#include "llvm/ADT/DenseMap.h"
-#include "llvm/ADT/Statistic.h"
-#include "llvm/Support/MathExtras.h"
+#include "llvm/CodeGen/SchedulerRegistry.h"
 #include "llvm/MC/MCInstrItineraries.h"
-#include "llvm/Support/Compiler.h"
 #include "llvm/Support/CommandLine.h"
+#include "llvm/Support/Compiler.h"
 #include "llvm/Support/Debug.h"
-#include "Hexagon.h"
-#include "HexagonTargetMachine.h"
-#include "HexagonRegisterInfo.h"
-#include "HexagonSubtarget.h"
-#include "HexagonMachineFunctionInfo.h"
-
+#include "llvm/Support/MathExtras.h"
+#include "llvm/Target/TargetInstrInfo.h"
+#include "llvm/Target/TargetMachine.h"
+#include "llvm/Target/TargetRegisterInfo.h"
 #include <map>
 
 using namespace llvm;
@@ -242,8 +241,9 @@ static bool IsIndirectCall(MachineInstr* MI) {
 // reservation fail.
 void HexagonPacketizerList::reserveResourcesForConstExt(MachineInstr* MI) {
   const HexagonInstrInfo *QII = (const HexagonInstrInfo *) TII;
-  MachineInstr *PseudoMI = MI->getParent()->getParent()->CreateMachineInstr(
-                                  QII->get(Hexagon::IMMEXT), MI->getDebugLoc());
+  MachineFunction *MF = MI->getParent()->getParent();
+  MachineInstr *PseudoMI = MF->CreateMachineInstr(QII->get(Hexagon::IMMEXT_i),
+                                                  MI->getDebugLoc());
 
   if (ResourceTracker->canReserveResources(PseudoMI)) {
     ResourceTracker->reserveResources(PseudoMI);
@@ -257,10 +257,10 @@ void HexagonPacketizerList::reserveResourcesForConstExt(MachineInstr* MI) {
 
 bool HexagonPacketizerList::canReserveResourcesForConstExt(MachineInstr *MI) {
   const HexagonInstrInfo *QII = (const HexagonInstrInfo *) TII;
-  assert((QII->isExtended(MI) || QII->isConstExtended(MI)) &&
+  assert(QII->isExtended(MI) &&
          "Should only be called for constant extended instructions");
   MachineFunction *MF = MI->getParent()->getParent();
-  MachineInstr *PseudoMI = MF->CreateMachineInstr(QII->get(Hexagon::IMMEXT),
+  MachineInstr *PseudoMI = MF->CreateMachineInstr(QII->get(Hexagon::IMMEXT_i),
                                                   MI->getDebugLoc());
   bool CanReserve = ResourceTracker->canReserveResources(PseudoMI);
   MF->DeleteMachineInstr(PseudoMI);
@@ -271,8 +271,9 @@ bool HexagonPacketizerList::canReserveResourcesForConstExt(MachineInstr *MI) {
 // true, otherwise, return false.
 bool HexagonPacketizerList::tryAllocateResourcesForConstExt(MachineInstr* MI) {
   const HexagonInstrInfo *QII = (const HexagonInstrInfo *) TII;
-  MachineInstr *PseudoMI = MI->getParent()->getParent()->CreateMachineInstr(
-                                  QII->get(Hexagon::IMMEXT), MI->getDebugLoc());
+  MachineFunction *MF = MI->getParent()->getParent();
+  MachineInstr *PseudoMI = MF->CreateMachineInstr(QII->get(Hexagon::IMMEXT_i),
+                                                  MI->getDebugLoc());
 
   if (ResourceTracker->canReserveResources(PseudoMI)) {
     ResourceTracker->reserveResources(PseudoMI);
@@ -375,7 +376,6 @@ bool HexagonPacketizerList::IsNewifyStore (MachineInstr* MI) {
     case Hexagon::STrib_indexed:
     case Hexagon::STrib_indexed_shl_V4:
     case Hexagon::STrib_shl_V4:
-    case Hexagon::STrib_GP_V4:
     case Hexagon::STb_GP_V4:
     case Hexagon::POST_STbri:
     case Hexagon::STrib_cPt:
@@ -394,31 +394,16 @@ bool HexagonPacketizerList::IsNewifyStore (MachineInstr* MI) {
     case Hexagon::POST_STbri_cdnPt_V4:
     case Hexagon::POST_STbri_cNotPt:
     case Hexagon::POST_STbri_cdnNotPt_V4:
-    case Hexagon::STrib_abs_V4:
-    case Hexagon::STrib_abs_cPt_V4:
-    case Hexagon::STrib_abs_cdnPt_V4:
-    case Hexagon::STrib_abs_cNotPt_V4:
-    case Hexagon::STrib_abs_cdnNotPt_V4:
-    case Hexagon::STrib_imm_abs_V4:
-    case Hexagon::STrib_imm_abs_cPt_V4:
-    case Hexagon::STrib_imm_abs_cdnPt_V4:
-    case Hexagon::STrib_imm_abs_cNotPt_V4:
-    case Hexagon::STrib_imm_abs_cdnNotPt_V4:
     case Hexagon::STb_GP_cPt_V4:
     case Hexagon::STb_GP_cNotPt_V4:
     case Hexagon::STb_GP_cdnPt_V4:
     case Hexagon::STb_GP_cdnNotPt_V4:
-    case Hexagon::STrib_GP_cPt_V4:
-    case Hexagon::STrib_GP_cNotPt_V4:
-    case Hexagon::STrib_GP_cdnPt_V4:
-    case Hexagon::STrib_GP_cdnNotPt_V4:
 
     // store halfword
     case Hexagon::STrih:
     case Hexagon::STrih_indexed:
     case Hexagon::STrih_indexed_shl_V4:
     case Hexagon::STrih_shl_V4:
-    case Hexagon::STrih_GP_V4:
     case Hexagon::STh_GP_V4:
     case Hexagon::POST_SThri:
     case Hexagon::STrih_cPt:
@@ -437,31 +422,16 @@ bool HexagonPacketizerList::IsNewifyStore (MachineInstr* MI) {
     case Hexagon::POST_SThri_cdnPt_V4:
     case Hexagon::POST_SThri_cNotPt:
     case Hexagon::POST_SThri_cdnNotPt_V4:
-    case Hexagon::STrih_abs_V4:
-    case Hexagon::STrih_abs_cPt_V4:
-    case Hexagon::STrih_abs_cdnPt_V4:
-    case Hexagon::STrih_abs_cNotPt_V4:
-    case Hexagon::STrih_abs_cdnNotPt_V4:
-    case Hexagon::STrih_imm_abs_V4:
-    case Hexagon::STrih_imm_abs_cPt_V4:
-    case Hexagon::STrih_imm_abs_cdnPt_V4:
-    case Hexagon::STrih_imm_abs_cNotPt_V4:
-    case Hexagon::STrih_imm_abs_cdnNotPt_V4:
     case Hexagon::STh_GP_cPt_V4:
     case Hexagon::STh_GP_cNotPt_V4:
     case Hexagon::STh_GP_cdnPt_V4:
     case Hexagon::STh_GP_cdnNotPt_V4:
-    case Hexagon::STrih_GP_cPt_V4:
-    case Hexagon::STrih_GP_cNotPt_V4:
-    case Hexagon::STrih_GP_cdnPt_V4:
-    case Hexagon::STrih_GP_cdnNotPt_V4:
 
     // store word
     case Hexagon::STriw:
     case Hexagon::STriw_indexed:
     case Hexagon::STriw_indexed_shl_V4:
     case Hexagon::STriw_shl_V4:
-    case Hexagon::STriw_GP_V4:
     case Hexagon::STw_GP_V4:
     case Hexagon::POST_STwri:
     case Hexagon::STriw_cPt:
@@ -480,24 +450,10 @@ bool HexagonPacketizerList::IsNewifyStore (MachineInstr* MI) {
     case Hexagon::POST_STwri_cdnPt_V4:
     case Hexagon::POST_STwri_cNotPt:
     case Hexagon::POST_STwri_cdnNotPt_V4:
-    case Hexagon::STriw_abs_V4:
-    case Hexagon::STriw_abs_cPt_V4:
-    case Hexagon::STriw_abs_cdnPt_V4:
-    case Hexagon::STriw_abs_cNotPt_V4:
-    case Hexagon::STriw_abs_cdnNotPt_V4:
-    case Hexagon::STriw_imm_abs_V4:
-    case Hexagon::STriw_imm_abs_cPt_V4:
-    case Hexagon::STriw_imm_abs_cdnPt_V4:
-    case Hexagon::STriw_imm_abs_cNotPt_V4:
-    case Hexagon::STriw_imm_abs_cdnNotPt_V4:
     case Hexagon::STw_GP_cPt_V4:
     case Hexagon::STw_GP_cNotPt_V4:
     case Hexagon::STw_GP_cdnPt_V4:
     case Hexagon::STw_GP_cdnNotPt_V4:
-    case Hexagon::STriw_GP_cPt_V4:
-    case Hexagon::STriw_GP_cNotPt_V4:
-    case Hexagon::STriw_GP_cdnPt_V4:
-    case Hexagon::STriw_GP_cdnNotPt_V4:
         return QRI->Subtarget.hasV4TOps();
   }
   return false;
@@ -537,9 +493,6 @@ static int GetDotNewOp(const int opc) {
   case Hexagon::STrib_shl_V4:
     return Hexagon::STrib_shl_nv_V4;
 
-  case Hexagon::STrib_GP_V4:
-    return Hexagon::STrib_GP_nv_V4;
-
   case Hexagon::STb_GP_V4:
     return Hexagon::STb_GP_nv_V4;
 
@@ -606,18 +559,6 @@ static int GetDotNewOp(const int opc) {
   case Hexagon::STb_GP_cdnNotPt_V4:
     return Hexagon::STb_GP_cdnNotPt_nv_V4;
 
-  case Hexagon::STrib_GP_cPt_V4:
-    return Hexagon::STrib_GP_cPt_nv_V4;
-
-  case Hexagon::STrib_GP_cNotPt_V4:
-    return Hexagon::STrib_GP_cNotPt_nv_V4;
-
-  case Hexagon::STrib_GP_cdnPt_V4:
-    return Hexagon::STrib_GP_cdnPt_nv_V4;
-
-  case Hexagon::STrib_GP_cdnNotPt_V4:
-    return Hexagon::STrib_GP_cdnNotPt_nv_V4;
-
   // store new value halfword
   case Hexagon::STrih:
     return Hexagon::STrih_nv_V4;
@@ -631,9 +572,6 @@ static int GetDotNewOp(const int opc) {
   case Hexagon::STrih_shl_V4:
     return Hexagon::STrih_shl_nv_V4;
 
-  case Hexagon::STrih_GP_V4:
-    return Hexagon::STrih_GP_nv_V4;
-
   case Hexagon::STh_GP_V4:
     return Hexagon::STh_GP_nv_V4;
 
@@ -700,18 +638,6 @@ static int GetDotNewOp(const int opc) {
   case Hexagon::STh_GP_cdnNotPt_V4:
     return Hexagon::STh_GP_cdnNotPt_nv_V4;
 
-  case Hexagon::STrih_GP_cPt_V4:
-    return Hexagon::STrih_GP_cPt_nv_V4;
-
-  case Hexagon::STrih_GP_cNotPt_V4:
-    return Hexagon::STrih_GP_cNotPt_nv_V4;
-
-  case Hexagon::STrih_GP_cdnPt_V4:
-    return Hexagon::STrih_GP_cdnPt_nv_V4;
-
-  case Hexagon::STrih_GP_cdnNotPt_V4:
-    return Hexagon::STrih_GP_cdnNotPt_nv_V4;
-
   // store new value word
   case Hexagon::STriw:
     return Hexagon::STriw_nv_V4;
@@ -725,9 +651,6 @@ static int GetDotNewOp(const int opc) {
   case Hexagon::STriw_shl_V4:
     return Hexagon::STriw_shl_nv_V4;
 
-  case Hexagon::STriw_GP_V4:
-    return Hexagon::STriw_GP_nv_V4;
-
   case Hexagon::STw_GP_V4:
     return Hexagon::STw_GP_nv_V4;
 
@@ -782,98 +705,6 @@ static int GetDotNewOp(const int opc) {
   case Hexagon::POST_STwri_cdnNotPt_V4:
     return Hexagon::POST_STwri_cdnNotPt_nv_V4;
 
-// Absolute addressing mode -- global address
-  case Hexagon::STrib_abs_V4:
-    return Hexagon::STrib_abs_nv_V4;
-
-  case Hexagon::STrib_abs_cPt_V4:
-    return Hexagon::STrib_abs_cPt_nv_V4;
-
-  case Hexagon::STrib_abs_cdnPt_V4:
-    return Hexagon::STrib_abs_cdnPt_nv_V4;
-
-  case Hexagon::STrib_abs_cNotPt_V4:
-    return Hexagon::STrib_abs_cNotPt_nv_V4;
-
-  case Hexagon::STrib_abs_cdnNotPt_V4:
-    return Hexagon::STrib_abs_cdnNotPt_nv_V4;
-
-  case Hexagon::STrih_abs_V4:
-    return Hexagon::STrih_abs_nv_V4;
-
-  case Hexagon::STrih_abs_cPt_V4:
-    return Hexagon::STrih_abs_cPt_nv_V4;
-
-  case Hexagon::STrih_abs_cdnPt_V4:
-    return Hexagon::STrih_abs_cdnPt_nv_V4;
-
-  case Hexagon::STrih_abs_cNotPt_V4:
-    return Hexagon::STrih_abs_cNotPt_nv_V4;
-
-  case Hexagon::STrih_abs_cdnNotPt_V4:
-    return Hexagon::STrih_abs_cdnNotPt_nv_V4;
-
-  case Hexagon::STriw_abs_V4:
-    return Hexagon::STriw_abs_nv_V4;
-
-  case Hexagon::STriw_abs_cPt_V4:
-    return Hexagon::STriw_abs_cPt_nv_V4;
-
-  case Hexagon::STriw_abs_cdnPt_V4:
-    return Hexagon::STriw_abs_cdnPt_nv_V4;
-
-  case Hexagon::STriw_abs_cNotPt_V4:
-    return Hexagon::STriw_abs_cNotPt_nv_V4;
-
-  case Hexagon::STriw_abs_cdnNotPt_V4:
-    return Hexagon::STriw_abs_cdnNotPt_nv_V4;
-
-// Absolute addressing mode -- immediate value
-  case Hexagon::STrib_imm_abs_V4:
-    return Hexagon::STrib_imm_abs_nv_V4;
-
-  case Hexagon::STrib_imm_abs_cPt_V4:
-    return Hexagon::STrib_imm_abs_cPt_nv_V4;
-
-  case Hexagon::STrib_imm_abs_cdnPt_V4:
-    return Hexagon::STrib_imm_abs_cdnPt_nv_V4;
-
-  case Hexagon::STrib_imm_abs_cNotPt_V4:
-    return Hexagon::STrib_imm_abs_cNotPt_nv_V4;
-
-  case Hexagon::STrib_imm_abs_cdnNotPt_V4:
-    return Hexagon::STrib_imm_abs_cdnNotPt_nv_V4;
-
-  case Hexagon::STrih_imm_abs_V4:
-    return Hexagon::STrih_imm_abs_nv_V4;
-
-  case Hexagon::STrih_imm_abs_cPt_V4:
-    return Hexagon::STrih_imm_abs_cPt_nv_V4;
-
-  case Hexagon::STrih_imm_abs_cdnPt_V4:
-    return Hexagon::STrih_imm_abs_cdnPt_nv_V4;
-
-  case Hexagon::STrih_imm_abs_cNotPt_V4:
-    return Hexagon::STrih_imm_abs_cNotPt_nv_V4;
-
-  case Hexagon::STrih_imm_abs_cdnNotPt_V4:
-    return Hexagon::STrih_imm_abs_cdnNotPt_nv_V4;
-
-  case Hexagon::STriw_imm_abs_V4:
-    return Hexagon::STriw_imm_abs_nv_V4;
-
-  case Hexagon::STriw_imm_abs_cPt_V4:
-    return Hexagon::STriw_imm_abs_cPt_nv_V4;
-
-  case Hexagon::STriw_imm_abs_cdnPt_V4:
-    return Hexagon::STriw_imm_abs_cdnPt_nv_V4;
-
-  case Hexagon::STriw_imm_abs_cNotPt_V4:
-    return Hexagon::STriw_imm_abs_cNotPt_nv_V4;
-
-  case Hexagon::STriw_imm_abs_cdnNotPt_V4:
-    return Hexagon::STriw_imm_abs_cdnNotPt_nv_V4;
-
   case Hexagon::STw_GP_cPt_V4:
     return Hexagon::STw_GP_cPt_nv_V4;
 
@@ -886,17 +717,6 @@ static int GetDotNewOp(const int opc) {
   case Hexagon::STw_GP_cdnNotPt_V4:
     return Hexagon::STw_GP_cdnNotPt_nv_V4;
 
-  case Hexagon::STriw_GP_cPt_V4:
-    return Hexagon::STriw_GP_cPt_nv_V4;
-
-  case Hexagon::STriw_GP_cNotPt_V4:
-    return Hexagon::STriw_GP_cNotPt_nv_V4;
-
-  case Hexagon::STriw_GP_cdnPt_V4:
-    return Hexagon::STriw_GP_cdnPt_nv_V4;
-
-  case Hexagon::STriw_GP_cdnNotPt_V4:
-    return Hexagon::STriw_GP_cdnNotPt_nv_V4;
   }
 }
 
@@ -942,12 +762,6 @@ static int GetDotNewPredOp(const int opc) {
   case Hexagon::STb_GP_cNotPt_V4 :
     return Hexagon::STb_GP_cdnNotPt_V4;
 
-  case Hexagon::STrib_GP_cPt_V4 :
-    return Hexagon::STrib_GP_cdnPt_V4;
-
-  case Hexagon::STrib_GP_cNotPt_V4 :
-    return Hexagon::STrib_GP_cdnNotPt_V4;
-
   // Store doubleword conditionally
   case Hexagon::STrid_cPt :
     return Hexagon::STrid_cdnPt_V4;
@@ -979,12 +793,6 @@ static int GetDotNewPredOp(const int opc) {
   case Hexagon::STd_GP_cNotPt_V4 :
     return Hexagon::STd_GP_cdnNotPt_V4;
 
-  case Hexagon::STrid_GP_cPt_V4 :
-    return Hexagon::STrid_GP_cdnPt_V4;
-
-  case Hexagon::STrid_GP_cNotPt_V4 :
-    return Hexagon::STrid_GP_cdnNotPt_V4;
-
   // Store halfword conditionally
   case Hexagon::STrih_cPt :
     return Hexagon::STrih_cdnPt_V4;
@@ -1022,12 +830,6 @@ static int GetDotNewPredOp(const int opc) {
   case Hexagon::STh_GP_cNotPt_V4 :
     return Hexagon::STh_GP_cdnNotPt_V4;
 
-  case Hexagon::STrih_GP_cPt_V4 :
-    return Hexagon::STrih_GP_cdnPt_V4;
-
-  case Hexagon::STrih_GP_cNotPt_V4 :
-    return Hexagon::STrih_GP_cdnNotPt_V4;
-
   // Store word conditionally
   case Hexagon::STriw_cPt :
     return Hexagon::STriw_cdnPt_V4;
@@ -1065,12 +867,6 @@ static int GetDotNewPredOp(const int opc) {
   case Hexagon::STw_GP_cNotPt_V4 :
     return Hexagon::STw_GP_cdnNotPt_V4;
 
-  case Hexagon::STriw_GP_cPt_V4 :
-    return Hexagon::STriw_GP_cdnPt_V4;
-
-  case Hexagon::STriw_GP_cNotPt_V4 :
-    return Hexagon::STriw_GP_cdnNotPt_V4;
-
   // Condtional Jumps
   case Hexagon::JMP_c:
     return Hexagon::JMP_cdnPt;
@@ -1213,72 +1009,36 @@ static int GetDotNewPredOp(const int opc) {
 
   // V4 indexed+scaled load
 
-  case Hexagon::LDrid_indexed_cPt_V4 :
-    return Hexagon::LDrid_indexed_cdnPt_V4;
-
-  case Hexagon::LDrid_indexed_cNotPt_V4 :
-    return Hexagon::LDrid_indexed_cdnNotPt_V4;
-
   case Hexagon::LDrid_indexed_shl_cPt_V4 :
     return Hexagon::LDrid_indexed_shl_cdnPt_V4;
 
   case Hexagon::LDrid_indexed_shl_cNotPt_V4 :
     return Hexagon::LDrid_indexed_shl_cdnNotPt_V4;
 
-  case Hexagon::LDrib_indexed_cPt_V4 :
-    return Hexagon::LDrib_indexed_cdnPt_V4;
-
-  case Hexagon::LDrib_indexed_cNotPt_V4 :
-    return Hexagon::LDrib_indexed_cdnNotPt_V4;
-
   case Hexagon::LDrib_indexed_shl_cPt_V4 :
     return Hexagon::LDrib_indexed_shl_cdnPt_V4;
 
   case Hexagon::LDrib_indexed_shl_cNotPt_V4 :
     return Hexagon::LDrib_indexed_shl_cdnNotPt_V4;
 
-  case Hexagon::LDriub_indexed_cPt_V4 :
-    return Hexagon::LDriub_indexed_cdnPt_V4;
-
-  case Hexagon::LDriub_indexed_cNotPt_V4 :
-    return Hexagon::LDriub_indexed_cdnNotPt_V4;
-
   case Hexagon::LDriub_indexed_shl_cPt_V4 :
     return Hexagon::LDriub_indexed_shl_cdnPt_V4;
 
   case Hexagon::LDriub_indexed_shl_cNotPt_V4 :
     return Hexagon::LDriub_indexed_shl_cdnNotPt_V4;
 
-  case Hexagon::LDrih_indexed_cPt_V4 :
-    return Hexagon::LDrih_indexed_cdnPt_V4;
-
-  case Hexagon::LDrih_indexed_cNotPt_V4 :
-    return Hexagon::LDrih_indexed_cdnNotPt_V4;
-
   case Hexagon::LDrih_indexed_shl_cPt_V4 :
     return Hexagon::LDrih_indexed_shl_cdnPt_V4;
 
   case Hexagon::LDrih_indexed_shl_cNotPt_V4 :
     return Hexagon::LDrih_indexed_shl_cdnNotPt_V4;
 
-  case Hexagon::LDriuh_indexed_cPt_V4 :
-    return Hexagon::LDriuh_indexed_cdnPt_V4;
-
-  case Hexagon::LDriuh_indexed_cNotPt_V4 :
-    return Hexagon::LDriuh_indexed_cdnNotPt_V4;
-
   case Hexagon::LDriuh_indexed_shl_cPt_V4 :
     return Hexagon::LDriuh_indexed_shl_cdnPt_V4;
 
   case Hexagon::LDriuh_indexed_shl_cNotPt_V4 :
     return Hexagon::LDriuh_indexed_shl_cdnNotPt_V4;
 
-  case Hexagon::LDriw_indexed_cPt_V4 :
-    return Hexagon::LDriw_indexed_cdnPt_V4;
-
-  case Hexagon::LDriw_indexed_cNotPt_V4 :
-    return Hexagon::LDriw_indexed_cdnNotPt_V4;
-
   case Hexagon::LDriw_indexed_shl_cPt_V4 :
     return Hexagon::LDriw_indexed_shl_cdnPt_V4;
 
@@ -1323,42 +1083,6 @@ static int GetDotNewPredOp(const int opc) {
   case Hexagon::LDw_GP_cNotPt_V4:
     return Hexagon::LDw_GP_cdnNotPt_V4;
 
-  case Hexagon::LDrid_GP_cPt_V4:
-    return Hexagon::LDrid_GP_cdnPt_V4;
-
-  case Hexagon::LDrid_GP_cNotPt_V4:
-    return Hexagon::LDrid_GP_cdnNotPt_V4;
-
-  case Hexagon::LDrib_GP_cPt_V4:
-    return Hexagon::LDrib_GP_cdnPt_V4;
-
-  case Hexagon::LDrib_GP_cNotPt_V4:
-    return Hexagon::LDrib_GP_cdnNotPt_V4;
-
-  case Hexagon::LDriub_GP_cPt_V4:
-    return Hexagon::LDriub_GP_cdnPt_V4;
-
-  case Hexagon::LDriub_GP_cNotPt_V4:
-    return Hexagon::LDriub_GP_cdnNotPt_V4;
-
-  case Hexagon::LDrih_GP_cPt_V4:
-    return Hexagon::LDrih_GP_cdnPt_V4;
-
-  case Hexagon::LDrih_GP_cNotPt_V4:
-    return Hexagon::LDrih_GP_cdnNotPt_V4;
-
-  case Hexagon::LDriuh_GP_cPt_V4:
-    return Hexagon::LDriuh_GP_cdnPt_V4;
-
-  case Hexagon::LDriuh_GP_cNotPt_V4:
-    return Hexagon::LDriuh_GP_cdnNotPt_V4;
-
-  case Hexagon::LDriw_GP_cPt_V4:
-    return Hexagon::LDriw_GP_cdnPt_V4;
-
-  case Hexagon::LDriw_GP_cNotPt_V4:
-    return Hexagon::LDriw_GP_cdnNotPt_V4;
-
   // Conditional store new-value byte
   case Hexagon::STrib_cPt_nv_V4 :
     return Hexagon::STrib_cdnPt_nv_V4;
@@ -1386,12 +1110,6 @@ static int GetDotNewPredOp(const int opc) {
   case Hexagon::STb_GP_cNotPt_nv_V4 :
     return Hexagon::STb_GP_cdnNotPt_nv_V4;
 
-  case Hexagon::STrib_GP_cPt_nv_V4 :
-    return Hexagon::STrib_GP_cdnPt_nv_V4;
-
-  case Hexagon::STrib_GP_cNotPt_nv_V4 :
-    return Hexagon::STrib_GP_cdnNotPt_nv_V4;
-
   // Conditional store new-value halfword
   case Hexagon::STrih_cPt_nv_V4 :
     return Hexagon::STrih_cdnPt_nv_V4;
@@ -1419,12 +1137,6 @@ static int GetDotNewPredOp(const int opc) {
   case Hexagon::STh_GP_cNotPt_nv_V4 :
     return Hexagon::STh_GP_cdnNotPt_nv_V4;
 
-  case Hexagon::STrih_GP_cPt_nv_V4 :
-    return Hexagon::STrih_GP_cdnPt_nv_V4;
-
-  case Hexagon::STrih_GP_cNotPt_nv_V4 :
-    return Hexagon::STrih_GP_cdnNotPt_nv_V4;
-
   // Conditional store new-value word
   case Hexagon::STriw_cPt_nv_V4 :
     return  Hexagon::STriw_cdnPt_nv_V4;
@@ -1452,12 +1164,6 @@ static int GetDotNewPredOp(const int opc) {
   case Hexagon::STw_GP_cNotPt_nv_V4 :
     return Hexagon::STw_GP_cdnNotPt_nv_V4;
 
-  case Hexagon::STriw_GP_cPt_nv_V4 :
-    return Hexagon::STriw_GP_cdnPt_nv_V4;
-
-  case Hexagon::STriw_GP_cNotPt_nv_V4 :
-    return Hexagon::STriw_GP_cdnNotPt_nv_V4;
-
   // Conditional add
   case Hexagon::ADD_ri_cPt :
     return Hexagon::ADD_ri_cdnPt;
@@ -1526,103 +1232,6 @@ static int GetDotNewPredOp(const int opc) {
     return Hexagon::ZXTH_cdnPt_V4;
   case Hexagon::ZXTH_cNotPt_V4 :
     return Hexagon::ZXTH_cdnNotPt_V4;
-
-  // Load Absolute Addressing.
-  case Hexagon::LDrib_abs_cPt_V4 :
-    return Hexagon::LDrib_abs_cdnPt_V4;
-  case Hexagon::LDrib_abs_cNotPt_V4 :
-    return Hexagon::LDrib_abs_cdnNotPt_V4;
-
-  case Hexagon::LDriub_abs_cPt_V4 :
-    return Hexagon::LDriub_abs_cdnPt_V4;
-  case Hexagon::LDriub_abs_cNotPt_V4 :
-    return Hexagon::LDriub_abs_cdnNotPt_V4;
-
-  case Hexagon::LDrih_abs_cPt_V4 :
-    return Hexagon::LDrih_abs_cdnPt_V4;
-  case Hexagon::LDrih_abs_cNotPt_V4 :
-    return Hexagon::LDrih_abs_cdnNotPt_V4;
-
-  case Hexagon::LDriuh_abs_cPt_V4 :
-    return Hexagon::LDriuh_abs_cdnPt_V4;
-  case Hexagon::LDriuh_abs_cNotPt_V4 :
-    return Hexagon::LDriuh_abs_cdnNotPt_V4;
-
-  case Hexagon::LDriw_abs_cPt_V4 :
-    return Hexagon::LDriw_abs_cdnPt_V4;
-  case Hexagon::LDriw_abs_cNotPt_V4 :
-    return Hexagon::LDriw_abs_cdnNotPt_V4;
-
-  case Hexagon::LDrid_abs_cPt_V4 :
-    return Hexagon::LDrid_abs_cdnPt_V4;
-  case Hexagon::LDrid_abs_cNotPt_V4 :
-    return Hexagon::LDrid_abs_cdnNotPt_V4;
-
-  case Hexagon::LDrib_imm_abs_cPt_V4:
-    return Hexagon::LDrib_imm_abs_cdnPt_V4;
-  case Hexagon::LDrib_imm_abs_cNotPt_V4:
-    return Hexagon::LDrib_imm_abs_cdnNotPt_V4;
-
-  case Hexagon::LDriub_imm_abs_cPt_V4:
-    return Hexagon::LDriub_imm_abs_cdnPt_V4;
-  case Hexagon::LDriub_imm_abs_cNotPt_V4:
-    return Hexagon::LDriub_imm_abs_cdnNotPt_V4;
-
-  case Hexagon::LDrih_imm_abs_cPt_V4:
-    return Hexagon::LDrih_imm_abs_cdnPt_V4;
-  case Hexagon::LDrih_imm_abs_cNotPt_V4:
-    return Hexagon::LDrih_imm_abs_cdnNotPt_V4;
-
-  case Hexagon::LDriuh_imm_abs_cPt_V4:
-    return Hexagon::LDriuh_imm_abs_cdnPt_V4;
-  case Hexagon::LDriuh_imm_abs_cNotPt_V4:
-    return Hexagon::LDriuh_imm_abs_cdnNotPt_V4;
-
-  case Hexagon::LDriw_imm_abs_cPt_V4:
-    return Hexagon::LDriw_imm_abs_cdnPt_V4;
-  case Hexagon::LDriw_imm_abs_cNotPt_V4:
-    return Hexagon::LDriw_imm_abs_cdnNotPt_V4;
-
-  // Store Absolute Addressing.
-  case Hexagon::STrib_abs_cPt_V4 :
-    return Hexagon::STrib_abs_cdnPt_V4;
-  case Hexagon::STrib_abs_cNotPt_V4 :
-    return Hexagon::STrib_abs_cdnNotPt_V4;
-
-  case Hexagon::STrih_abs_cPt_V4 :
-    return Hexagon::STrih_abs_cdnPt_V4;
-  case Hexagon::STrih_abs_cNotPt_V4 :
-    return Hexagon::STrih_abs_cdnNotPt_V4;
-
-  case Hexagon::STriw_abs_cPt_V4 :
-    return Hexagon::STriw_abs_cdnPt_V4;
-  case Hexagon::STriw_abs_cNotPt_V4 :
-    return Hexagon::STriw_abs_cdnNotPt_V4;
-
-  case Hexagon::STrid_abs_cPt_V4 :
-    return Hexagon::STrid_abs_cdnPt_V4;
-  case Hexagon::STrid_abs_cNotPt_V4 :
-    return Hexagon::STrid_abs_cdnNotPt_V4;
-
-  case Hexagon::STrib_imm_abs_cPt_V4:
-    return Hexagon::STrib_imm_abs_cdnPt_V4;
-  case Hexagon::STrib_imm_abs_cNotPt_V4:
-    return Hexagon::STrib_imm_abs_cdnNotPt_V4;
-
-  case Hexagon::STrih_imm_abs_cPt_V4:
-    return Hexagon::STrih_imm_abs_cdnPt_V4;
-  case Hexagon::STrih_imm_abs_cNotPt_V4:
-    return Hexagon::STrih_imm_abs_cdnNotPt_V4;
-
-  case Hexagon::STriw_imm_abs_cPt_V4:
-    return Hexagon::STriw_imm_abs_cdnPt_V4;
-  case Hexagon::STriw_imm_abs_cNotPt_V4:
-    return Hexagon::STriw_imm_abs_cdnNotPt_V4;
-
-  case Hexagon::TFRI_cPt_V4:
-    return Hexagon::TFRI_cdnPt_V4;
-  case Hexagon::TFRI_cNotPt_V4:
-    return Hexagon::TFRI_cdnNotPt_V4;
   }
 }
 
@@ -1650,6 +1259,7 @@ bool HexagonPacketizerList::isCondInst (MachineInstr* MI) {
   return false;
 }
 
+
 // Promote an instructiont to its .new form.
 // At this time, we have already made a call to CanPromoteToDotNew
 // and made sure that it can *indeed* be promoted.
@@ -1840,72 +1450,36 @@ static int GetDotOldOp(const int opc) {
 
   // V4 indexed+scaled Load
 
-  case Hexagon::LDrid_indexed_cdnPt_V4 :
-    return Hexagon::LDrid_indexed_cPt_V4;
-
-  case Hexagon::LDrid_indexed_cdnNotPt_V4 :
-    return Hexagon::LDrid_indexed_cNotPt_V4;
-
   case Hexagon::LDrid_indexed_shl_cdnPt_V4 :
     return Hexagon::LDrid_indexed_shl_cPt_V4;
 
   case Hexagon::LDrid_indexed_shl_cdnNotPt_V4 :
     return Hexagon::LDrid_indexed_shl_cNotPt_V4;
 
-  case Hexagon::LDrib_indexed_cdnPt_V4 :
-    return Hexagon::LDrib_indexed_cPt_V4;
-
-  case Hexagon::LDrib_indexed_cdnNotPt_V4 :
-    return Hexagon::LDrib_indexed_cNotPt_V4;
-
   case Hexagon::LDrib_indexed_shl_cdnPt_V4 :
     return Hexagon::LDrib_indexed_shl_cPt_V4;
 
   case Hexagon::LDrib_indexed_shl_cdnNotPt_V4 :
     return Hexagon::LDrib_indexed_shl_cNotPt_V4;
 
-  case Hexagon::LDriub_indexed_cdnPt_V4 :
-    return Hexagon::LDriub_indexed_cPt_V4;
-
-  case Hexagon::LDriub_indexed_cdnNotPt_V4 :
-    return Hexagon::LDriub_indexed_cNotPt_V4;
-
   case Hexagon::LDriub_indexed_shl_cdnPt_V4 :
     return Hexagon::LDriub_indexed_shl_cPt_V4;
 
   case Hexagon::LDriub_indexed_shl_cdnNotPt_V4 :
     return Hexagon::LDriub_indexed_shl_cNotPt_V4;
 
-  case Hexagon::LDrih_indexed_cdnPt_V4 :
-    return Hexagon::LDrih_indexed_cPt_V4;
-
-  case Hexagon::LDrih_indexed_cdnNotPt_V4 :
-    return Hexagon::LDrih_indexed_cNotPt_V4;
-
   case Hexagon::LDrih_indexed_shl_cdnPt_V4 :
     return Hexagon::LDrih_indexed_shl_cPt_V4;
 
   case Hexagon::LDrih_indexed_shl_cdnNotPt_V4 :
     return Hexagon::LDrih_indexed_shl_cNotPt_V4;
 
-  case Hexagon::LDriuh_indexed_cdnPt_V4 :
-    return Hexagon::LDriuh_indexed_cPt_V4;
-
-  case Hexagon::LDriuh_indexed_cdnNotPt_V4 :
-    return Hexagon::LDriuh_indexed_cNotPt_V4;
-
   case Hexagon::LDriuh_indexed_shl_cdnPt_V4 :
     return Hexagon::LDriuh_indexed_shl_cPt_V4;
 
   case Hexagon::LDriuh_indexed_shl_cdnNotPt_V4 :
     return Hexagon::LDriuh_indexed_shl_cNotPt_V4;
 
-  case Hexagon::LDriw_indexed_cdnPt_V4 :
-    return Hexagon::LDriw_indexed_cPt_V4;
-
-  case Hexagon::LDriw_indexed_cdnNotPt_V4 :
-    return Hexagon::LDriw_indexed_cNotPt_V4;
-
   case Hexagon::LDriw_indexed_shl_cdnPt_V4 :
     return Hexagon::LDriw_indexed_shl_cPt_V4;
 
@@ -1950,42 +1524,6 @@ static int GetDotOldOp(const int opc) {
   case Hexagon::LDw_GP_cdnNotPt_V4:
     return Hexagon::LDw_GP_cNotPt_V4;
 
-  case Hexagon::LDrid_GP_cdnPt_V4:
-    return Hexagon::LDrid_GP_cPt_V4;
-
-  case Hexagon::LDrid_GP_cdnNotPt_V4:
-    return Hexagon::LDrid_GP_cNotPt_V4;
-
-  case Hexagon::LDrib_GP_cdnPt_V4:
-    return Hexagon::LDrib_GP_cPt_V4;
-
-  case Hexagon::LDrib_GP_cdnNotPt_V4:
-    return Hexagon::LDrib_GP_cNotPt_V4;
-
-  case Hexagon::LDriub_GP_cdnPt_V4:
-    return Hexagon::LDriub_GP_cPt_V4;
-
-  case Hexagon::LDriub_GP_cdnNotPt_V4:
-    return Hexagon::LDriub_GP_cNotPt_V4;
-
-  case Hexagon::LDrih_GP_cdnPt_V4:
-    return Hexagon::LDrih_GP_cPt_V4;
-
-  case Hexagon::LDrih_GP_cdnNotPt_V4:
-    return Hexagon::LDrih_GP_cNotPt_V4;
-
-  case Hexagon::LDriuh_GP_cdnPt_V4:
-    return Hexagon::LDriuh_GP_cPt_V4;
-
-  case Hexagon::LDriuh_GP_cdnNotPt_V4:
-    return Hexagon::LDriuh_GP_cNotPt_V4;
-
-  case Hexagon::LDriw_GP_cdnPt_V4:
-    return Hexagon::LDriw_GP_cPt_V4;
-
-  case Hexagon::LDriw_GP_cdnNotPt_V4:
-    return Hexagon::LDriw_GP_cNotPt_V4;
-
   // Conditional add
 
   case Hexagon::ADD_ri_cdnPt :
@@ -2119,16 +1657,6 @@ static int GetDotOldOp(const int opc) {
   case Hexagon::STb_GP_cNotPt_nv_V4:
     return Hexagon::STb_GP_cNotPt_V4;
 
-  case Hexagon::STrib_GP_cdnPt_nv_V4:
-  case Hexagon::STrib_GP_cdnPt_V4:
-  case Hexagon::STrib_GP_cPt_nv_V4:
-    return Hexagon::STrib_GP_cPt_V4;
-
-  case Hexagon::STrib_GP_cdnNotPt_nv_V4:
-  case Hexagon::STrib_GP_cdnNotPt_V4:
-  case Hexagon::STrib_GP_cNotPt_nv_V4:
-    return Hexagon::STrib_GP_cNotPt_V4;
-
   // Store new-value byte - unconditional
   case Hexagon::STrib_nv_V4:
     return Hexagon::STrib;
@@ -2142,9 +1670,6 @@ static int GetDotOldOp(const int opc) {
   case Hexagon::STrib_shl_nv_V4:
     return Hexagon::STrib_shl_V4;
 
-  case Hexagon::STrib_GP_nv_V4:
-    return Hexagon::STrib_GP_V4;
-
   case Hexagon::STb_GP_nv_V4:
     return Hexagon::STb_GP_V4;
 
@@ -2208,16 +1733,6 @@ static int GetDotOldOp(const int opc) {
   case Hexagon::STh_GP_cNotPt_nv_V4:
     return Hexagon::STh_GP_cNotPt_V4;
 
-  case Hexagon::STrih_GP_cdnPt_nv_V4:
-  case Hexagon::STrih_GP_cdnPt_V4:
-  case Hexagon::STrih_GP_cPt_nv_V4:
-    return Hexagon::STrih_GP_cPt_V4;
-
-  case Hexagon::STrih_GP_cdnNotPt_nv_V4:
-  case Hexagon::STrih_GP_cdnNotPt_V4:
-  case Hexagon::STrih_GP_cNotPt_nv_V4:
-    return Hexagon::STrih_GP_cNotPt_V4;
-
   // Store new-value halfword - unconditional
 
   case Hexagon::STrih_nv_V4:
@@ -2232,9 +1747,6 @@ static int GetDotOldOp(const int opc) {
   case Hexagon::STrih_shl_nv_V4:
     return Hexagon::STrih_shl_V4;
 
-  case Hexagon::STrih_GP_nv_V4:
-    return Hexagon::STrih_GP_V4;
-
   case Hexagon::STh_GP_nv_V4:
     return Hexagon::STh_GP_V4;
 
@@ -2299,16 +1811,6 @@ static int GetDotOldOp(const int opc) {
   case Hexagon::STw_GP_cNotPt_nv_V4:
     return Hexagon::STw_GP_cNotPt_V4;
 
-  case Hexagon::STriw_GP_cdnPt_nv_V4:
-  case Hexagon::STriw_GP_cdnPt_V4:
-  case Hexagon::STriw_GP_cPt_nv_V4:
-    return Hexagon::STriw_GP_cPt_V4;
-
-  case Hexagon::STriw_GP_cdnNotPt_nv_V4:
-  case Hexagon::STriw_GP_cdnNotPt_V4:
-  case Hexagon::STriw_GP_cNotPt_nv_V4:
-    return Hexagon::STriw_GP_cNotPt_V4;
-
   // Store new-value word - unconditional
 
   case Hexagon::STriw_nv_V4:
@@ -2323,9 +1825,6 @@ static int GetDotOldOp(const int opc) {
   case Hexagon::STriw_shl_nv_V4:
     return Hexagon::STriw_shl_V4;
 
-  case Hexagon::STriw_GP_nv_V4:
-    return Hexagon::STriw_GP_V4;
-
   case Hexagon::STw_GP_nv_V4:
     return Hexagon::STw_GP_V4;
 
@@ -2358,170 +1857,12 @@ static int GetDotOldOp(const int opc) {
   case Hexagon::POST_STdri_cdnNotPt_V4 :
     return Hexagon::POST_STdri_cNotPt;
 
-// Absolute addressing mode - global address
-  case Hexagon::STrib_abs_nv_V4:
-    return Hexagon::STrib_abs_V4;
-
-  case Hexagon::STrib_abs_cdnPt_V4:
-  case Hexagon::STrib_abs_cPt_nv_V4:
-  case Hexagon::STrib_abs_cdnPt_nv_V4:
-    return Hexagon::STrib_abs_cPt_V4;
-
-  case Hexagon::STrib_abs_cdnNotPt_V4:
-  case Hexagon::STrib_abs_cNotPt_nv_V4:
-  case Hexagon::STrib_abs_cdnNotPt_nv_V4:
-    return Hexagon::STrib_abs_cNotPt_V4;
-
-  case Hexagon::STrih_abs_nv_V4:
-    return Hexagon::STrih_abs_V4;
-
-  case Hexagon::STrih_abs_cdnPt_V4:
-  case Hexagon::STrih_abs_cPt_nv_V4:
-  case Hexagon::STrih_abs_cdnPt_nv_V4:
-    return Hexagon::STrih_abs_cPt_V4;
-
-  case Hexagon::STrih_abs_cdnNotPt_V4:
-  case Hexagon::STrih_abs_cNotPt_nv_V4:
-  case Hexagon::STrih_abs_cdnNotPt_nv_V4:
-    return Hexagon::STrih_abs_cNotPt_V4;
-
-  case Hexagon::STriw_abs_nv_V4:
-    return Hexagon::STriw_abs_V4;
-
-  case Hexagon::STriw_abs_cdnPt_V4:
-  case Hexagon::STriw_abs_cPt_nv_V4:
-  case Hexagon::STriw_abs_cdnPt_nv_V4:
-    return Hexagon::STriw_abs_cPt_V4;
-
-  case Hexagon::STriw_abs_cdnNotPt_V4:
-  case Hexagon::STriw_abs_cNotPt_nv_V4:
-  case Hexagon::STriw_abs_cdnNotPt_nv_V4:
-    return Hexagon::STriw_abs_cNotPt_V4;
-
-  case Hexagon::STrid_abs_cdnPt_V4:
-    return Hexagon::STrid_abs_cPt_V4;
-
-  case Hexagon::STrid_abs_cdnNotPt_V4:
-    return Hexagon::STrid_abs_cNotPt_V4;
-
-// Absolute addressing mode - immediate values
-  case Hexagon::STrib_imm_abs_nv_V4:
-    return Hexagon::STrib_imm_abs_V4;
-
-  case Hexagon::STrib_imm_abs_cdnPt_V4:
-  case Hexagon::STrib_imm_abs_cPt_nv_V4:
-  case Hexagon::STrib_imm_abs_cdnPt_nv_V4:
-    return Hexagon::STrib_imm_abs_cPt_V4;
-
-  case Hexagon::STrib_imm_abs_cdnNotPt_V4:
-  case Hexagon::STrib_imm_abs_cNotPt_nv_V4:
-  case Hexagon::STrib_imm_abs_cdnNotPt_nv_V4:
-    return Hexagon::STrib_imm_abs_cNotPt_V4;
-
-  case Hexagon::STrih_imm_abs_nv_V4:
-    return Hexagon::STrih_imm_abs_V4;
-
-  case Hexagon::STrih_imm_abs_cdnPt_V4:
-  case Hexagon::STrih_imm_abs_cPt_nv_V4:
-  case Hexagon::STrih_imm_abs_cdnPt_nv_V4:
-    return Hexagon::STrih_imm_abs_cPt_V4;
-
-  case Hexagon::STrih_imm_abs_cdnNotPt_V4:
-  case Hexagon::STrih_imm_abs_cNotPt_nv_V4:
-  case Hexagon::STrih_imm_abs_cdnNotPt_nv_V4:
-    return Hexagon::STrih_imm_abs_cNotPt_V4;
-
-  case Hexagon::STriw_imm_abs_nv_V4:
-    return Hexagon::STriw_imm_abs_V4;
-
-  case Hexagon::STriw_imm_abs_cdnPt_V4:
-  case Hexagon::STriw_imm_abs_cPt_nv_V4:
-  case Hexagon::STriw_imm_abs_cdnPt_nv_V4:
-    return Hexagon::STriw_imm_abs_cPt_V4;
-
-  case Hexagon::STriw_imm_abs_cdnNotPt_V4:
-  case Hexagon::STriw_imm_abs_cNotPt_nv_V4:
-  case Hexagon::STriw_imm_abs_cdnNotPt_nv_V4:
-    return Hexagon::STriw_imm_abs_cNotPt_V4;
-
-  // Load - absolute set addressing
-  case Hexagon::LDrib_abs_cdnPt_V4:
-    return Hexagon::LDrib_abs_cPt_V4;
-
-  case Hexagon::LDrib_abs_cdnNotPt_V4:
-    return Hexagon::LDrib_abs_cNotPt_V4;
-
-  case Hexagon::LDriub_abs_cdnPt_V4:
-    return Hexagon::LDriub_abs_cPt_V4;
-
-  case Hexagon::LDriub_abs_cdnNotPt_V4:
-    return Hexagon::LDriub_abs_cNotPt_V4;
-
-  case Hexagon::LDrih_abs_cdnPt_V4:
-    return Hexagon::LDrih_abs_cPt_V4;
-
-  case Hexagon::LDrih_abs_cdnNotPt_V4:
-    return Hexagon::LDrih_abs_cNotPt_V4;
-
-  case Hexagon::LDriuh_abs_cdnPt_V4:
-    return Hexagon::LDriuh_abs_cPt_V4;
-
-  case Hexagon::LDriuh_abs_cdnNotPt_V4:
-    return Hexagon::LDriuh_abs_cNotPt_V4;
-
-  case Hexagon::LDriw_abs_cdnPt_V4:
-    return Hexagon::LDriw_abs_cPt_V4;
-
-  case Hexagon::LDriw_abs_cdnNotPt_V4:
-    return Hexagon::LDriw_abs_cNotPt_V4;
-
-  case Hexagon::LDrid_abs_cdnPt_V4:
-    return Hexagon::LDrid_abs_cPt_V4;
-
-  case Hexagon::LDrid_abs_cdnNotPt_V4:
-    return Hexagon::LDrid_abs_cNotPt_V4;
-
-   case Hexagon::LDrib_imm_abs_cdnPt_V4:
-    return Hexagon::LDrib_imm_abs_cPt_V4;
-
-  case Hexagon::LDrib_imm_abs_cdnNotPt_V4:
-    return Hexagon::LDrib_imm_abs_cNotPt_V4;
-
-  case Hexagon::LDriub_imm_abs_cdnPt_V4:
-    return Hexagon::LDriub_imm_abs_cPt_V4;
-
-  case Hexagon::LDriub_imm_abs_cdnNotPt_V4:
-    return Hexagon::LDriub_imm_abs_cNotPt_V4;
-
-  case Hexagon::LDrih_imm_abs_cdnPt_V4:
-    return Hexagon::LDrih_imm_abs_cPt_V4;
-
-  case Hexagon::LDrih_imm_abs_cdnNotPt_V4:
-    return Hexagon::LDrih_imm_abs_cNotPt_V4;
-
-  case Hexagon::LDriuh_imm_abs_cdnPt_V4:
-    return Hexagon::LDriuh_imm_abs_cPt_V4;
-
-  case Hexagon::LDriuh_imm_abs_cdnNotPt_V4:
-    return Hexagon::LDriuh_imm_abs_cNotPt_V4;
-
-  case Hexagon::LDriw_imm_abs_cdnPt_V4:
-    return Hexagon::LDriw_imm_abs_cPt_V4;
-
-  case Hexagon::LDriw_imm_abs_cdnNotPt_V4:
-    return Hexagon::LDriw_imm_abs_cNotPt_V4;
-
   case Hexagon::STd_GP_cdnPt_V4 :
     return Hexagon::STd_GP_cPt_V4;
 
   case Hexagon::STd_GP_cdnNotPt_V4 :
     return Hexagon::STd_GP_cNotPt_V4;
 
-  case Hexagon::STrid_GP_cdnPt_V4 :
-    return Hexagon::STrid_GP_cPt_V4;
-
-  case Hexagon::STrid_GP_cdnNotPt_V4 :
-    return Hexagon::STrid_GP_cNotPt_V4;
   }
 }
 
@@ -2619,28 +1960,16 @@ static bool GetPredicateSense(MachineInstr* MI,
   case Hexagon::LDriub_indexed_cdnPt :
   case Hexagon::POST_LDriub_cPt :
   case Hexagon::POST_LDriub_cdnPt_V4 :
-  case Hexagon::LDrid_indexed_cPt_V4 :
-  case Hexagon::LDrid_indexed_cdnPt_V4 :
   case Hexagon::LDrid_indexed_shl_cPt_V4 :
   case Hexagon::LDrid_indexed_shl_cdnPt_V4 :
-  case Hexagon::LDrib_indexed_cPt_V4 :
-  case Hexagon::LDrib_indexed_cdnPt_V4 :
   case Hexagon::LDrib_indexed_shl_cPt_V4 :
   case Hexagon::LDrib_indexed_shl_cdnPt_V4 :
-  case Hexagon::LDriub_indexed_cPt_V4 :
-  case Hexagon::LDriub_indexed_cdnPt_V4 :
   case Hexagon::LDriub_indexed_shl_cPt_V4 :
   case Hexagon::LDriub_indexed_shl_cdnPt_V4 :
-  case Hexagon::LDrih_indexed_cPt_V4 :
-  case Hexagon::LDrih_indexed_cdnPt_V4 :
   case Hexagon::LDrih_indexed_shl_cPt_V4 :
   case Hexagon::LDrih_indexed_shl_cdnPt_V4 :
-  case Hexagon::LDriuh_indexed_cPt_V4 :
-  case Hexagon::LDriuh_indexed_cdnPt_V4 :
   case Hexagon::LDriuh_indexed_shl_cPt_V4 :
   case Hexagon::LDriuh_indexed_shl_cdnPt_V4 :
-  case Hexagon::LDriw_indexed_cPt_V4 :
-  case Hexagon::LDriw_indexed_cdnPt_V4 :
   case Hexagon::LDriw_indexed_shl_cPt_V4 :
   case Hexagon::LDriw_indexed_shl_cdnPt_V4 :
   case Hexagon::ADD_ri_cPt :
@@ -2669,82 +1998,22 @@ static bool GetPredicateSense(MachineInstr* MI,
   case Hexagon::ZXTB_cdnPt_V4 :
   case Hexagon::ZXTH_cPt_V4 :
   case Hexagon::ZXTH_cdnPt_V4 :
-
-  case Hexagon::LDrib_abs_cPt_V4 :
-  case Hexagon::LDrib_abs_cdnPt_V4:
-  case Hexagon::LDriub_abs_cPt_V4 :
-  case Hexagon::LDriub_abs_cdnPt_V4:
-  case Hexagon::LDrih_abs_cPt_V4 :
-  case Hexagon::LDrih_abs_cdnPt_V4:
-  case Hexagon::LDriuh_abs_cPt_V4 :
-  case Hexagon::LDriuh_abs_cdnPt_V4:
-  case Hexagon::LDriw_abs_cPt_V4 :
-  case Hexagon::LDriw_abs_cdnPt_V4:
-  case Hexagon::LDrid_abs_cPt_V4 :
-  case Hexagon::LDrid_abs_cdnPt_V4:
-
-  case Hexagon::LDrib_imm_abs_cPt_V4 :
-  case Hexagon::LDrib_imm_abs_cdnPt_V4:
-  case Hexagon::LDriub_imm_abs_cPt_V4 :
-  case Hexagon::LDriub_imm_abs_cdnPt_V4:
-  case Hexagon::LDrih_imm_abs_cPt_V4 :
-  case Hexagon::LDrih_imm_abs_cdnPt_V4:
-  case Hexagon::LDriuh_imm_abs_cPt_V4 :
-  case Hexagon::LDriuh_imm_abs_cdnPt_V4:
-  case Hexagon::LDriw_imm_abs_cPt_V4 :
-  case Hexagon::LDriw_imm_abs_cdnPt_V4:
-
-  case Hexagon::STrib_abs_cPt_V4:
-  case Hexagon::STrib_abs_cdnPt_V4:
-  case Hexagon::STrih_abs_cPt_V4:
-  case Hexagon::STrih_abs_cdnPt_V4:
-  case Hexagon::STriw_abs_cPt_V4:
-  case Hexagon::STriw_abs_cdnPt_V4:
-  case Hexagon::STrid_abs_cPt_V4:
-  case Hexagon::STrid_abs_cdnPt_V4:
-  case Hexagon::STrib_imm_abs_cPt_V4:
-  case Hexagon::STrib_imm_abs_cdnPt_V4:
-  case Hexagon::STrih_imm_abs_cPt_V4:
-  case Hexagon::STrih_imm_abs_cdnPt_V4:
-  case Hexagon::STriw_imm_abs_cPt_V4:
-  case Hexagon::STriw_imm_abs_cdnPt_V4:
-
-  case Hexagon::LDrid_GP_cPt_V4 :
-  case Hexagon::LDrib_GP_cPt_V4 :
-  case Hexagon::LDriub_GP_cPt_V4 :
-  case Hexagon::LDrih_GP_cPt_V4 :
-  case Hexagon::LDriuh_GP_cPt_V4 :
-  case Hexagon::LDriw_GP_cPt_V4 :
   case Hexagon::LDd_GP_cPt_V4 :
   case Hexagon::LDb_GP_cPt_V4 :
   case Hexagon::LDub_GP_cPt_V4 :
   case Hexagon::LDh_GP_cPt_V4 :
   case Hexagon::LDuh_GP_cPt_V4 :
   case Hexagon::LDw_GP_cPt_V4 :
-  case Hexagon::STrid_GP_cPt_V4 :
-  case Hexagon::STrib_GP_cPt_V4 :
-  case Hexagon::STrih_GP_cPt_V4 :
-  case Hexagon::STriw_GP_cPt_V4 :
   case Hexagon::STd_GP_cPt_V4 :
   case Hexagon::STb_GP_cPt_V4 :
   case Hexagon::STh_GP_cPt_V4 :
   case Hexagon::STw_GP_cPt_V4 :
-  case Hexagon::LDrid_GP_cdnPt_V4 :
-  case Hexagon::LDrib_GP_cdnPt_V4 :
-  case Hexagon::LDriub_GP_cdnPt_V4 :
-  case Hexagon::LDrih_GP_cdnPt_V4 :
-  case Hexagon::LDriuh_GP_cdnPt_V4 :
-  case Hexagon::LDriw_GP_cdnPt_V4 :
   case Hexagon::LDd_GP_cdnPt_V4 :
   case Hexagon::LDb_GP_cdnPt_V4 :
   case Hexagon::LDub_GP_cdnPt_V4 :
   case Hexagon::LDh_GP_cdnPt_V4 :
   case Hexagon::LDuh_GP_cdnPt_V4 :
   case Hexagon::LDw_GP_cdnPt_V4 :
-  case Hexagon::STrid_GP_cdnPt_V4 :
-  case Hexagon::STrib_GP_cdnPt_V4 :
-  case Hexagon::STrih_GP_cdnPt_V4 :
-  case Hexagon::STriw_GP_cdnPt_V4 :
   case Hexagon::STd_GP_cdnPt_V4 :
   case Hexagon::STb_GP_cdnPt_V4 :
   case Hexagon::STh_GP_cdnPt_V4 :
@@ -2830,28 +2099,16 @@ static bool GetPredicateSense(MachineInstr* MI,
   case Hexagon::LDriub_indexed_cdnNotPt :
   case Hexagon::POST_LDriub_cNotPt :
   case Hexagon::POST_LDriub_cdnNotPt_V4 :
-  case Hexagon::LDrid_indexed_cNotPt_V4 :
-  case Hexagon::LDrid_indexed_cdnNotPt_V4 :
   case Hexagon::LDrid_indexed_shl_cNotPt_V4 :
   case Hexagon::LDrid_indexed_shl_cdnNotPt_V4 :
-  case Hexagon::LDrib_indexed_cNotPt_V4 :
-  case Hexagon::LDrib_indexed_cdnNotPt_V4 :
   case Hexagon::LDrib_indexed_shl_cNotPt_V4 :
   case Hexagon::LDrib_indexed_shl_cdnNotPt_V4 :
-  case Hexagon::LDriub_indexed_cNotPt_V4 :
-  case Hexagon::LDriub_indexed_cdnNotPt_V4 :
   case Hexagon::LDriub_indexed_shl_cNotPt_V4 :
   case Hexagon::LDriub_indexed_shl_cdnNotPt_V4 :
-  case Hexagon::LDrih_indexed_cNotPt_V4 :
-  case Hexagon::LDrih_indexed_cdnNotPt_V4 :
   case Hexagon::LDrih_indexed_shl_cNotPt_V4 :
   case Hexagon::LDrih_indexed_shl_cdnNotPt_V4 :
-  case Hexagon::LDriuh_indexed_cNotPt_V4 :
-  case Hexagon::LDriuh_indexed_cdnNotPt_V4 :
   case Hexagon::LDriuh_indexed_shl_cNotPt_V4 :
   case Hexagon::LDriuh_indexed_shl_cdnNotPt_V4 :
-  case Hexagon::LDriw_indexed_cNotPt_V4 :
-  case Hexagon::LDriw_indexed_cdnNotPt_V4 :
   case Hexagon::LDriw_indexed_shl_cNotPt_V4 :
   case Hexagon::LDriw_indexed_shl_cdnNotPt_V4 :
   case Hexagon::ADD_ri_cNotPt :
@@ -2881,81 +2138,22 @@ static bool GetPredicateSense(MachineInstr* MI,
   case Hexagon::ZXTH_cNotPt_V4 :
   case Hexagon::ZXTH_cdnNotPt_V4 :
 
-  case Hexagon::LDrib_abs_cNotPt_V4:
-  case Hexagon::LDrib_abs_cdnNotPt_V4:
-  case Hexagon::LDriub_abs_cNotPt_V4 :
-  case Hexagon::LDriub_abs_cdnNotPt_V4:
-  case Hexagon::LDrih_abs_cNotPt_V4 :
-  case Hexagon::LDrih_abs_cdnNotPt_V4:
-  case Hexagon::LDriuh_abs_cNotPt_V4 :
-  case Hexagon::LDriuh_abs_cdnNotPt_V4:
-  case Hexagon::LDriw_abs_cNotPt_V4 :
-  case Hexagon::LDriw_abs_cdnNotPt_V4:
-  case Hexagon::LDrid_abs_cNotPt_V4 :
-  case Hexagon::LDrid_abs_cdnNotPt_V4:
-
-  case Hexagon::LDrib_imm_abs_cNotPt_V4:
-  case Hexagon::LDrib_imm_abs_cdnNotPt_V4:
-  case Hexagon::LDriub_imm_abs_cNotPt_V4 :
-  case Hexagon::LDriub_imm_abs_cdnNotPt_V4:
-  case Hexagon::LDrih_imm_abs_cNotPt_V4 :
-  case Hexagon::LDrih_imm_abs_cdnNotPt_V4:
-  case Hexagon::LDriuh_imm_abs_cNotPt_V4 :
-  case Hexagon::LDriuh_imm_abs_cdnNotPt_V4:
-  case Hexagon::LDriw_imm_abs_cNotPt_V4 :
-  case Hexagon::LDriw_imm_abs_cdnNotPt_V4:
-
-  case Hexagon::STrib_abs_cNotPt_V4:
-  case Hexagon::STrib_abs_cdnNotPt_V4:
-  case Hexagon::STrih_abs_cNotPt_V4:
-  case Hexagon::STrih_abs_cdnNotPt_V4:
-  case Hexagon::STriw_abs_cNotPt_V4:
-  case Hexagon::STriw_abs_cdnNotPt_V4:
-  case Hexagon::STrid_abs_cNotPt_V4:
-  case Hexagon::STrid_abs_cdnNotPt_V4:
-  case Hexagon::STrib_imm_abs_cNotPt_V4:
-  case Hexagon::STrib_imm_abs_cdnNotPt_V4:
-  case Hexagon::STrih_imm_abs_cNotPt_V4:
-  case Hexagon::STrih_imm_abs_cdnNotPt_V4:
-  case Hexagon::STriw_imm_abs_cNotPt_V4:
-  case Hexagon::STriw_imm_abs_cdnNotPt_V4:
-
-  case Hexagon::LDrid_GP_cNotPt_V4 :
-  case Hexagon::LDrib_GP_cNotPt_V4 :
-  case Hexagon::LDriub_GP_cNotPt_V4 :
-  case Hexagon::LDrih_GP_cNotPt_V4 :
-  case Hexagon::LDriuh_GP_cNotPt_V4 :
-  case Hexagon::LDriw_GP_cNotPt_V4 :
   case Hexagon::LDd_GP_cNotPt_V4 :
   case Hexagon::LDb_GP_cNotPt_V4 :
   case Hexagon::LDub_GP_cNotPt_V4 :
   case Hexagon::LDh_GP_cNotPt_V4 :
   case Hexagon::LDuh_GP_cNotPt_V4 :
   case Hexagon::LDw_GP_cNotPt_V4 :
-  case Hexagon::STrid_GP_cNotPt_V4 :
-  case Hexagon::STrib_GP_cNotPt_V4 :
-  case Hexagon::STrih_GP_cNotPt_V4 :
-  case Hexagon::STriw_GP_cNotPt_V4 :
   case Hexagon::STd_GP_cNotPt_V4 :
   case Hexagon::STb_GP_cNotPt_V4 :
   case Hexagon::STh_GP_cNotPt_V4 :
   case Hexagon::STw_GP_cNotPt_V4 :
-  case Hexagon::LDrid_GP_cdnNotPt_V4 :
-  case Hexagon::LDrib_GP_cdnNotPt_V4 :
-  case Hexagon::LDriub_GP_cdnNotPt_V4 :
-  case Hexagon::LDrih_GP_cdnNotPt_V4 :
-  case Hexagon::LDriuh_GP_cdnNotPt_V4 :
-  case Hexagon::LDriw_GP_cdnNotPt_V4 :
   case Hexagon::LDd_GP_cdnNotPt_V4 :
   case Hexagon::LDb_GP_cdnNotPt_V4 :
   case Hexagon::LDub_GP_cdnNotPt_V4 :
   case Hexagon::LDh_GP_cdnNotPt_V4 :
   case Hexagon::LDuh_GP_cdnNotPt_V4 :
   case Hexagon::LDw_GP_cdnNotPt_V4 :
-  case Hexagon::STrid_GP_cdnNotPt_V4 :
-  case Hexagon::STrib_GP_cdnNotPt_V4 :
-  case Hexagon::STrih_GP_cdnNotPt_V4 :
-  case Hexagon::STriw_GP_cdnNotPt_V4 :
   case Hexagon::STd_GP_cdnNotPt_V4 :
   case Hexagon::STb_GP_cdnNotPt_V4 :
   case Hexagon::STh_GP_cdnNotPt_V4 :
@@ -3012,28 +2210,16 @@ bool HexagonPacketizerList::isDotNewInst(MachineInstr* MI) {
   case Hexagon::POST_LDriub_cdnPt_V4 :
   case Hexagon::POST_LDriub_cdnNotPt_V4 :
 
-  case Hexagon::LDrid_indexed_cdnPt_V4 :
-  case Hexagon::LDrid_indexed_cdnNotPt_V4 :
   case Hexagon::LDrid_indexed_shl_cdnPt_V4 :
   case Hexagon::LDrid_indexed_shl_cdnNotPt_V4 :
-  case Hexagon::LDrib_indexed_cdnPt_V4 :
-  case Hexagon::LDrib_indexed_cdnNotPt_V4 :
   case Hexagon::LDrib_indexed_shl_cdnPt_V4 :
   case Hexagon::LDrib_indexed_shl_cdnNotPt_V4 :
-  case Hexagon::LDriub_indexed_cdnPt_V4 :
-  case Hexagon::LDriub_indexed_cdnNotPt_V4 :
   case Hexagon::LDriub_indexed_shl_cdnPt_V4 :
   case Hexagon::LDriub_indexed_shl_cdnNotPt_V4 :
-  case Hexagon::LDrih_indexed_cdnPt_V4 :
-  case Hexagon::LDrih_indexed_cdnNotPt_V4 :
   case Hexagon::LDrih_indexed_shl_cdnPt_V4 :
   case Hexagon::LDrih_indexed_shl_cdnNotPt_V4 :
-  case Hexagon::LDriuh_indexed_cdnPt_V4 :
-  case Hexagon::LDriuh_indexed_cdnNotPt_V4 :
   case Hexagon::LDriuh_indexed_shl_cdnPt_V4 :
   case Hexagon::LDriuh_indexed_shl_cdnNotPt_V4 :
-  case Hexagon::LDriw_indexed_cdnPt_V4 :
-  case Hexagon::LDriw_indexed_cdnNotPt_V4 :
   case Hexagon::LDriw_indexed_shl_cdnPt_V4 :
   case Hexagon::LDriw_indexed_shl_cdnNotPt_V4 :
 
@@ -3129,27 +2315,7 @@ bool HexagonPacketizerList::isDotNewInst(MachineInstr* MI) {
   case Hexagon::LDuh_GP_cdnNotPt_V4:
   case Hexagon::LDw_GP_cdnPt_V4:
   case Hexagon::LDw_GP_cdnNotPt_V4:
-  case Hexagon::LDrid_GP_cdnPt_V4:
-  case Hexagon::LDrid_GP_cdnNotPt_V4:
-  case Hexagon::LDrib_GP_cdnPt_V4:
-  case Hexagon::LDrib_GP_cdnNotPt_V4:
-  case Hexagon::LDriub_GP_cdnPt_V4:
-  case Hexagon::LDriub_GP_cdnNotPt_V4:
-  case Hexagon::LDrih_GP_cdnPt_V4:
-  case Hexagon::LDrih_GP_cdnNotPt_V4:
-  case Hexagon::LDriuh_GP_cdnPt_V4:
-  case Hexagon::LDriuh_GP_cdnNotPt_V4:
-  case Hexagon::LDriw_GP_cdnPt_V4:
-  case Hexagon::LDriw_GP_cdnNotPt_V4:
-
-  case Hexagon::STrid_GP_cdnPt_V4:
-  case Hexagon::STrid_GP_cdnNotPt_V4:
-  case Hexagon::STrib_GP_cdnPt_V4:
-  case Hexagon::STrib_GP_cdnNotPt_V4:
-  case Hexagon::STrih_GP_cdnPt_V4:
-  case Hexagon::STrih_GP_cdnNotPt_V4:
-  case Hexagon::STriw_GP_cdnPt_V4:
-  case Hexagon::STriw_GP_cdnNotPt_V4:
+
   case Hexagon::STd_GP_cdnPt_V4:
   case Hexagon::STd_GP_cdnNotPt_V4:
   case Hexagon::STb_GP_cdnPt_V4:
@@ -3295,9 +2461,9 @@ bool HexagonPacketizerList::CanPromoteToNewValueStore( MachineInstr *MI,
 
     // Check to make sure that they both will have their predicates
     // evaluate identically
-    unsigned predRegNumSrc;
-    unsigned predRegNumDst;
-    const TargetRegisterClass* predRegClass;
+    unsigned predRegNumSrc = 0;
+    unsigned predRegNumDst = 0;
+    const TargetRegisterClass* predRegClass = NULL;
 
     // Get predicate register used in the source instruction
     for(unsigned opNum = 0; opNum < PacketMI->getNumOperands(); opNum++) {
@@ -3924,8 +3090,8 @@ bool HexagonPacketizerList::isLegalToPacketizeTogether(SUnit *SUI, SUnit *SUJ) {
       // 1. Two loads unless they are volatile.
       // 2. Two stores in V4 unless they are volatile.
       else if ((DepType == SDep::Order) &&
-               !I->hasVolatileMemoryRef() &&
-               !J->hasVolatileMemoryRef()) {
+               !I->hasOrderedMemoryRef() &&
+               !J->hasOrderedMemoryRef()) {
         if (QRI->Subtarget.hasV4TOps() &&
             // hexagonv4 allows dual store.
             MCIDI.mayStore() && MCIDJ.mayStore()) {
@@ -3953,7 +3119,6 @@ bool HexagonPacketizerList::isLegalToPacketizeTogether(SUnit *SUI, SUnit *SUJ) {
                && QRI->Subtarget.hasV4TOps()
                && J->getOpcode() == Hexagon::ALLOCFRAME
                && (I->getOpcode() == Hexagon::STrid
-                   || I->getOpcode() == Hexagon::STriw_indexed
                    || I->getOpcode() == Hexagon::STriw
                    || I->getOpcode() == Hexagon::STrib)
                && I->getOperand(0).getReg() == QRI->getStackRegister()
@@ -4031,7 +3196,7 @@ HexagonPacketizerList::addToPacket(MachineInstr *MI) {
       MachineInstr *nvjMI = MII;
       assert(ResourceTracker->canReserveResources(MI));
       ResourceTracker->reserveResources(MI);
-      if ((QII->isExtended(MI) || QII->isConstExtended(MI)) &&
+      if (QII->isExtended(MI) &&
           !tryAllocateResourcesForConstExt(MI)) {
         endPacket(MBB, MI);
         ResourceTracker->reserveResources(MI);
@@ -4067,7 +3232,7 @@ HexagonPacketizerList::addToPacket(MachineInstr *MI) {
       CurrentPacketMIs.push_back(MI);
       CurrentPacketMIs.push_back(nvjMI);
     } else {
-      if (   (QII->isExtended(MI) || QII->isConstExtended(MI))
+      if (   QII->isExtended(MI)
           && (   !tryAllocateResourcesForConstExt(MI)
               || !ResourceTracker->canReserveResources(MI)))
       {