From c454d72dc336a195c8584e4d706b359a605a1f70 Mon Sep 17 00:00:00 2001
From: clc5q <clc5q@git.zephyr-software.com>
Date: Wed, 22 Jul 2015 18:38:49 +0000
Subject: [PATCH] Solve Raytheon crash by eliminating old USEs after stack
 address normalization.

Former-commit-id: 456b095e76fd0ea3cdfbba43b6eafa991e7125b5
---
 src/base/SMPInstr.cpp | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/base/SMPInstr.cpp b/src/base/SMPInstr.cpp
index fd261421..805b594c 100644
--- a/src/base/SMPInstr.cpp
+++ b/src/base/SMPInstr.cpp
@@ -4718,12 +4718,16 @@ bool SMPInstr::MDNormalizeStackOps(bool UseFP, STARS_sval_t FPDelta, bool Recomp
 		// Now go through the USE worklist and change stack operands to normalized stack operands.
 		for (WorkIter = UseWorkList.begin(); WorkIter != UseWorkList.end(); ++WorkIter) {
 			UseIter = WorkIter->first;
+#if 0
 			if (!Recomputing) { // Just replace UseOp at UseIter with normalized op if not recomputing
 				UseIter = this->Uses.SetOp(UseIter, WorkIter->second);
 			}
 			else { // Keep both old and new forms of UseOp in the Use set if recomputing
 				this->AddUse(WorkIter->second, UseIter->GetType(), UseIter->GetSSANum());
 			}
+#else
+			UseIter = this->Uses.SetOp(UseIter, WorkIter->second);
+#endif
 		}
 		// Normalize STARSOpndTypePtr private data member USEs.
 		if (Recomputing) {
-- 
GitLab