Closed yamam closed 3 years ago
op_exec_prepare()でffが0b11の場合、addrpから4バイト読み込む処理がありますが、addrpが4バイトアライメントになっていない場合、アライメントエラーが発生するCPUもあります(x86、x64は問題ありません)。 PCが4の倍数でない場合に発生します。
addr = cpu->reg.pc + 4U; err = bus_get_pointer(cpu->core_id, addr, (uint8**)&addrp); case 0b11: cpu->reg.r[30] = (*((uint32*)addrp));
こちらは,rh850版のathrillですね.
本issueは,以下で管理させていただきます.
https://github.com/toppers/athrill-target-rh850f1x/issues/33
athrillとしては,クローズします.
op_exec_prepare()でffが0b11の場合、addrpから4バイト読み込む処理がありますが、addrpが4バイトアライメントになっていない場合、アライメントエラーが発生するCPUもあります(x86、x64は問題ありません)。 PCが4の倍数でない場合に発生します。