なんだってJavaの最適化能力はこう貧弱なんだろうなあ。
例えば代入の伝播。
A=B=C=D=0 と A=0 B=0 C=0 D=0 は意図する所は同じだが、
コードサイズは格段に左の方が小さくなる。
こうしなければならなかった積極的な理由って何だ!

乗除算が絡むと、どの瞬間(桁あふれ等の)例外が発生したか
捕まえるために、1+2*3/4-5*6/7+8-9なんて計算は全然
片付けてくれない。

笑わせてくれるよなあ。