104
105 for (T block : loop.getBlocks()) {
106 assert block.getId() >= loop.getHeader().getId();
107
108 Loop<?> blockLoop = block.getLoop();
109 while (blockLoop != loop) {
110 assert blockLoop != null;
111 blockLoop = blockLoop.getParent();
112 }
113
114 if (!(block.isLoopHeader() && block.getLoop() == loop)) {
115 for (T pred : block.getPredecessors()) {
116 if (!loop.getBlocks().contains(pred)) {
117 assert false : "Loop " + loop + " does not contain " + pred;
118 return false;
119 }
120 }
121 }
122 }
123
124 for (T block : loop.getExits()) {
125 assert block.getId() >= loop.getHeader().getId();
126
127 Loop<?> blockLoop = block.getLoop();
128 while (blockLoop != null) {
129 blockLoop = blockLoop.getParent();
130 assert blockLoop != loop;
131 }
132 }
133 }
134 }
135
136 return true;
137 }
138 }
|
104
105 for (T block : loop.getBlocks()) {
106 assert block.getId() >= loop.getHeader().getId();
107
108 Loop<?> blockLoop = block.getLoop();
109 while (blockLoop != loop) {
110 assert blockLoop != null;
111 blockLoop = blockLoop.getParent();
112 }
113
114 if (!(block.isLoopHeader() && block.getLoop() == loop)) {
115 for (T pred : block.getPredecessors()) {
116 if (!loop.getBlocks().contains(pred)) {
117 assert false : "Loop " + loop + " does not contain " + pred;
118 return false;
119 }
120 }
121 }
122 }
123
124 for (T block : loop.getLoopExits()) {
125 assert block.getId() >= loop.getHeader().getId();
126
127 Loop<?> blockLoop = block.getLoop();
128 while (blockLoop != null) {
129 blockLoop = blockLoop.getParent();
130 assert blockLoop != loop;
131 }
132 }
133 }
134 }
135
136 return true;
137 }
138 }
|