aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2014-04-29 13:39:45 -0700
committerAlon Zakai <alonzakai@gmail.com>2014-04-29 13:40:57 -0700
commit71e46835b826351815b94ca059756eaf65595fae (patch)
tree9ed9446b5e496cc795b76ed71c75f67892befaa1
parentd9c17f85ab661735229876bcd83fa4cff7d66345 (diff)
fix bug where we tried to emit switches in fused multiples, which led to labels on ifs in some cases; fixes #2302
-rw-r--r--src/relooper/Relooper.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/relooper/Relooper.cpp b/src/relooper/Relooper.cpp
index ce9232d9..cd001df9 100644
--- a/src/relooper/Relooper.cpp
+++ b/src/relooper/Relooper.cpp
@@ -17,6 +17,10 @@
typedef std::string ministring;
#endif
+// uncomment these out to get LLVM errs() debugging support
+//#include <llvm/Support/raw_ostream.h>
+//using namespace llvm;
+
template <class T, class U> static bool contains(const T& container, const U& contained) {
return container.count(contained);
}
@@ -202,6 +206,7 @@ void Block::Render(bool InLoop) {
if (Fused) {
PrintDebug("Fusing Multiple to Simple\n");
Parent->Next = Parent->Next->Next;
+ Fused->UseSwitch = false; // TODO: emit switches here
Fused->RenderLoopPrefix();
// When the Multiple has the same number of groups as we have branches,