Eliminate unused allocas.
Bug swiftshader:27
Change-Id: If085323dc6cc4325c6ff55c1021e98db94a75302
Reviewed-on: https://swiftshader-review.googlesource.com/8228
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/SubzeroReactor.cpp b/src/Reactor/SubzeroReactor.cpp
index da66206..aacec93 100644
--- a/src/Reactor/SubzeroReactor.cpp
+++ b/src/Reactor/SubzeroReactor.cpp
@@ -17,6 +17,8 @@
#include "Reactor.hpp"
#include "Routine.hpp"
+#include "Optimizer.hpp"
+
#include "src/IceTypes.h"
#include "src/IceCfg.h"
#include "src/IceELFStreamer.h"
@@ -422,6 +424,8 @@
std::string asciiName(wideName.begin(), wideName.end());
::function->setFunctionName(Ice::GlobalString::createWithString(::context, asciiName));
+ optimize();
+
::function->translate();
assert(!::function->hasError());
@@ -449,6 +453,7 @@
void Nucleus::optimize()
{
+ sw::optimize(::function);
}
Value *Nucleus::allocateStackVariable(Type *t, int arraySize)