Cortex-M3のPC。命令の中で参照されるときは基本的に次の命令の番地ではなく、現在実行している命令の番地+4になっているらしい。
さらにLDR等、いくつかの命令では下位2bitを0にする補正が行われるらしい。
なんか複雑。
原発を撤廃するには、原発がなくても平気という状態にしないといけないね。
2 件 リツイートされました
@s_osafune 分岐での補正はないようでした。レジスタにPC相対アドレスでデータを取ってくるときにワード境界に強制的にアラインメントする仕様みたいです。なにか歴史的な経緯でもあるんでしょうかね。
@lynxeyed_black あ、M0のコードとM3のコードってバイナリコンパチじゃなかったんですね。
※コメント投稿者のブログIDはブログ作成者のみに通知されます