Load-store optimization: Removed wrong special case.

This fixes opt/loadstore6.c.
fix 'never read' warnings
ldstopt: refactor/cleanup, small improvements

Rework load memory chain walking:
- We keep the pointer as a base + offset representation all the time
- Reuse predict_load code from localopt for more accurate replacement of
  Loads from constant entities
- Support some more cases where load-after-load and load-after-store did
  not use the same mode but where we can easily get the value with some
  arithmetic.
add -Wunreachable-code to QUICKCHECK flags
ldstopt: fix bad test in last commit
Load-store optimization: Ensure that address points to constant memory.
rm_bads: Keep debug info when replacing blocks and phis.
irouts: Add and use foreach_irn_out{,_r}().
iropt: Clean up comments.