diff options
Diffstat (limited to 'target/xtensa')
-rw-r--r-- | target/xtensa/exc_helper.c | 4 | ||||
-rw-r--r-- | target/xtensa/op_helper.c | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/target/xtensa/exc_helper.c b/target/xtensa/exc_helper.c index 58a64e6d62..2f032bc053 100644 --- a/target/xtensa/exc_helper.c +++ b/target/xtensa/exc_helper.c @@ -128,13 +128,13 @@ void HELPER(check_interrupts)(CPUXtensaState *env) void HELPER(intset)(CPUXtensaState *env, uint32_t v) { - atomic_or(&env->sregs[INTSET], + qatomic_or(&env->sregs[INTSET], v & env->config->inttype_mask[INTTYPE_SOFTWARE]); } static void intclear(CPUXtensaState *env, uint32_t v) { - atomic_and(&env->sregs[INTSET], ~v); + qatomic_and(&env->sregs[INTSET], ~v); } void HELPER(intclear)(CPUXtensaState *env, uint32_t v) diff --git a/target/xtensa/op_helper.c b/target/xtensa/op_helper.c index 09f4962d00..143476849f 100644 --- a/target/xtensa/op_helper.c +++ b/target/xtensa/op_helper.c @@ -62,7 +62,7 @@ void HELPER(update_ccompare)(CPUXtensaState *env, uint32_t i) { uint64_t dcc; - atomic_and(&env->sregs[INTSET], + qatomic_and(&env->sregs[INTSET], ~(1u << env->config->timerint[i])); HELPER(update_ccount)(env); dcc = (uint64_t)(env->sregs[CCOMPARE + i] - env->sregs[CCOUNT] - 1) + 1; |