exc_helper.c (44423107e7b5731ef40c5c8632a5bad8b49d0838) exc_helper.c (d73415a315471ac0b127ed3fad45c8ec5d711de1)
1/*
2 * Copyright (c) 2011 - 2019, Max Filippov, Open Source and Linux Lab.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.

--- 114 unchanged lines hidden (view full) ---

123{
124 qemu_mutex_lock_iothread();
125 check_interrupts(env);
126 qemu_mutex_unlock_iothread();
127}
128
129void HELPER(intset)(CPUXtensaState *env, uint32_t v)
130{
1/*
2 * Copyright (c) 2011 - 2019, Max Filippov, Open Source and Linux Lab.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.

--- 114 unchanged lines hidden (view full) ---

123{
124 qemu_mutex_lock_iothread();
125 check_interrupts(env);
126 qemu_mutex_unlock_iothread();
127}
128
129void HELPER(intset)(CPUXtensaState *env, uint32_t v)
130{
131 atomic_or(&env->sregs[INTSET],
131 qatomic_or(&env->sregs[INTSET],
132 v & env->config->inttype_mask[INTTYPE_SOFTWARE]);
133}
134
135static void intclear(CPUXtensaState *env, uint32_t v)
136{
132 v & env->config->inttype_mask[INTTYPE_SOFTWARE]);
133}
134
135static void intclear(CPUXtensaState *env, uint32_t v)
136{
137 atomic_and(&env->sregs[INTSET], ~v);
137 qatomic_and(&env->sregs[INTSET], ~v);
138}
139
140void HELPER(intclear)(CPUXtensaState *env, uint32_t v)
141{
142 intclear(env, v & (env->config->inttype_mask[INTTYPE_SOFTWARE] |
143 env->config->inttype_mask[INTTYPE_EDGE]));
144}
145

--- 132 unchanged lines hidden ---
138}
139
140void HELPER(intclear)(CPUXtensaState *env, uint32_t v)
141{
142 intclear(env, v & (env->config->inttype_mask[INTTYPE_SOFTWARE] |
143 env->config->inttype_mask[INTTYPE_EDGE]));
144}
145

--- 132 unchanged lines hidden ---