- 411 名前:デフォルトの名無しさん mailto:sage [2008/08/18(月) 14:04:36 ]
- >>405
X68kのCコンパイラ1.0には「ポインタをゼロ比較すると正常に動作しない」というバグがあった。 原因は、 move.[bwl] addr, dn はゼロフラグ変化するのに、 movea.[wl] addr, an は変化しないのだが、作成者がその仕様をうっかり忘れて、後者でも beq foo などというふうにコーディングしてしまったのが原因なのだが、これって美しいと思うか? (何でアドレスレジスタへの代入ではフラグが変化しないのかの理由もちゃんとあるが、ここでは伏せておく) また、リロケータブルな実行コードを出力したいとき、 move.w d(pc, rn), dn は出来るが、逆は出来ないため直交性と言う観点からは美しくないが、これについてはどう思う? (こっちも理由あるけど同上)
|

|