Let the block walker enter endless loops only at kept blocks, not Phis.
authorChristoph Mallon <christoph.mallon@gmx.de>
Thu, 14 Apr 2011 09:26:00 +0000 (11:26 +0200)
committerChristoph Mallon <christoph.mallon@gmx.de>
Thu, 14 Apr 2011 09:26:00 +0000 (11:26 +0200)
commitde44dce7a640b85547f31b46ac4cebea929c3272
tree03eeb8d2c4ef711c6f4f66cd9a75d990d9dd7de4
parent2ba0d75357dc87479522d0db5b6e4ba6de5c9585
Let the block walker enter endless loops only at kept blocks, not Phis.

- This is sufficient, because every endless loop must have one kept block.
- This also prevents that the if-conversion enters endless loops at strange points.
  This lead to exchanging a block, which is currently being recursed, so when later returning to the exchanged block (which now is an Id-node) in the walker stuff blew up.
ir/ir/irgwalk.c