A modest proposal: get rid of -O0, add a new "-finsert-several-statically-dead-stores-for-each-real-instruction" for anyone who wants its current behavior.