Fix eliminating stores to pointer arguments.

If a store address has no definition, it must be a pointer argument.
Unlike stores to alloca's, these are not dead.

Change-Id: I66e50b14ffea1cfc61fc756b5545ab8ae28b4bf8
Reviewed-on: https://swiftshader-review.googlesource.com/8573
Tested-by: Nicolas Capens <capn@google.com>
Reviewed-by: Alexis Hétu <sugoi@google.com>
Reviewed-by: Nicolas Capens <capn@google.com>
diff --git a/src/Reactor/Optimizer.cpp b/src/Reactor/Optimizer.cpp
index 75b225e..fa12a92 100644
--- a/src/Reactor/Optimizer.cpp
+++ b/src/Reactor/Optimizer.cpp
@@ -454,7 +454,7 @@
 			{
 				Ice::Inst *def = definition[address];
 
-				if(!def || llvm::isa<Ice::InstAlloca>(def))
+				if(def && llvm::isa<Ice::InstAlloca>(def))
 				{
 					return uses[address].size() == 1;   // Dead if this store is the only use
 				}