Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301, USA.
- Contact: cacao@cacaojvm.org
-
- Authors: Christian Thalinger
-
- $Id: md-os.c 7770 2007-04-19 19:39:06Z twisti $
+ $Id: md-os.c 7990 2007-05-30 21:05:20Z twisti $
*/
}
+/* md_critical_section_restart *************************************************
+
+ Search the critical sections tree for a matching section and set
+ the PC to the restart point, if necessary.
+
+*******************************************************************************/
+
#if defined(ENABLE_THREADS)
-void thread_restartcriticalsection(ucontext_t *_uc)
+void md_critical_section_restart(ucontext_t *_uc)
{
mcontext_t _mc;
ppc_thread_state_t *_ss;
- void *critical;
+ u1 *pc;
+ u1 *npc;
_mc = _uc->uc_mcontext;
_ss = &_mc->ss;
- critical = critical_find_restart_point((void *) _ss->srr0);
+ pc = (u1 *) _ss->srr0;
+
+ npc = critical_find_restart_point(pc);
- if (critical)
- _ss->srr0 = (ptrint) critical;
+ if (npc != NULL)
+ _ss->srr0 = (ptrint) npc;
}
#endif