mirror of
https://github.com/TomHarte/CLK.git
synced 2025-02-05 21:32:55 +00:00
Adjust user-mode test.
This commit is contained in:
parent
0e92885ed5
commit
2a36d0fcbc
@ -394,13 +394,12 @@ struct Executor {
|
||||
// the end.
|
||||
const Mode original_mode = registers_.mode();
|
||||
const bool adopt_user_mode =
|
||||
(
|
||||
flags.operation() == BlockDataTransferFlags::Operation::STM &&
|
||||
flags.load_psr()
|
||||
) ||
|
||||
(
|
||||
flags.operation() == BlockDataTransferFlags::Operation::LDM &&
|
||||
!(list & (1 << 15))
|
||||
flags.load_psr() && (
|
||||
flags.operation() == BlockDataTransferFlags::Operation::STM ||
|
||||
(
|
||||
flags.operation() == BlockDataTransferFlags::Operation::LDM &&
|
||||
!(list & (1 << 15))
|
||||
)
|
||||
);
|
||||
if(adopt_user_mode) {
|
||||
registers_.set_mode(Mode::User);
|
||||
|
Loading…
x
Reference in New Issue
Block a user