op_helper.c (8c1ecb590497b0349c550607db923972b37f6963) op_helper.c (29a0af618ddd21f55df5753c3e16b0625f534b3c)
1/*
2 * M68K helper routines
3 *
4 * Copyright (c) 2007 CodeSourcery
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either

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

776 l = helper_atomic_cmpxchgq_be_mmu(env, a2, c, u, oi, ra);
777#endif
778 l2 = l >> 32;
779 l1 = l;
780 } else
781#endif
782 {
783 /* Tell the main loop we need to serialize this insn. */
1/*
2 * M68K helper routines
3 *
4 * Copyright (c) 2007 CodeSourcery
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either

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

776 l = helper_atomic_cmpxchgq_be_mmu(env, a2, c, u, oi, ra);
777#endif
778 l2 = l >> 32;
779 l1 = l;
780 } else
781#endif
782 {
783 /* Tell the main loop we need to serialize this insn. */
784 cpu_loop_exit_atomic(ENV_GET_CPU(env), ra);
784 cpu_loop_exit_atomic(env_cpu(env), ra);
785 }
786 } else {
787 /* We're executing in a serial context -- no need to be atomic. */
788 l1 = cpu_ldl_data_ra(env, a1, ra);
789 l2 = cpu_ldl_data_ra(env, a2, ra);
790 if (l1 == c1 && l2 == c2) {
791 cpu_stl_data_ra(env, a1, u1, ra);
792 cpu_stl_data_ra(env, a2, u2, ra);

--- 292 unchanged lines hidden ---
785 }
786 } else {
787 /* We're executing in a serial context -- no need to be atomic. */
788 l1 = cpu_ldl_data_ra(env, a1, ra);
789 l2 = cpu_ldl_data_ra(env, a2, ra);
790 if (l1 == c1 && l2 == c2) {
791 cpu_stl_data_ra(env, a1, u1, ra);
792 cpu_stl_data_ra(env, a2, u2, ra);

--- 292 unchanged lines hidden ---