aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2014-04-16 14:15:15 -0700
committerAlon Zakai <alonzakai@gmail.com>2014-04-16 14:15:15 -0700
commit8036eb04feba4bebb5c1e500a8eda5ebafcc947d (patch)
treef0ea21491b99b43b654380f396fddbe285c751ae
parent0f8f1e94e02ead602699c816794d238e642ec1ca (diff)
remove unneeded relooper code
-rw-r--r--src/relooper/Relooper.cpp15
1 files changed, 1 insertions, 14 deletions
diff --git a/src/relooper/Relooper.cpp b/src/relooper/Relooper.cpp
index c396e990..06ee0aa3 100644
--- a/src/relooper/Relooper.cpp
+++ b/src/relooper/Relooper.cpp
@@ -332,21 +332,8 @@ void MultipleShape::RenderLoopPostfix() {
void MultipleShape::Render(bool InLoop) {
RenderLoopPrefix();
- // We know that blocks with the same Id were split from the same source, so their contents are identical and they are logically the same, so re-merge them here
- typedef std::map<int, Shape*> IdShapeMap;
- IdShapeMap IdMap;
- for (IdShapeMap::iterator iter = InnerMap.begin(); iter != InnerMap.end(); iter++) {
- int Id = iter->first;
- IdShapeMap::iterator Test = IdMap.find(Id);
- if (Test != IdMap.end()) {
- assert(Shape::IsSimple(iter->second) && Shape::IsSimple(Test->second)); // we can only merge simple blocks, something horrible has gone wrong if we see anything else
- continue;
- }
- IdMap[iter->first] = iter->second;
- }
-
bool First = true;
- for (IdShapeMap::iterator iter = IdMap.begin(); iter != IdMap.end(); iter++) {
+ for (IdShapeMap::iterator iter = InnerMap.begin(); iter != InnerMap.end(); iter++) {
if (AsmJS) {
PrintIndented("%sif ((label|0) == %d) {\n", First ? "" : "else ", iter->first);
} else {