Not generate redundant self-assignment statement