GMP_TAKE2_RET2(quotRemIntegerzh_fast, mpz_tdiv_qr)
GMP_TAKE2_RET2(divModIntegerzh_fast, mpz_fdiv_qr)
GMP_TAKE2_RET2(quotRemIntegerzh_fast, mpz_tdiv_qr)
GMP_TAKE2_RET2(divModIntegerzh_fast, mpz_fdiv_qr)
/* No further putMVars, MVar is now empty */
StgMVar_value(mvar) = stg_END_TSO_QUEUE_closure;
/* No further putMVars, MVar is now empty */
StgMVar_value(mvar) = stg_END_TSO_QUEUE_closure;
foreign "C" unlockClosure(mvar "ptr", stg_EMPTY_MVAR_info);
#else
SET_INFO(mvar,stg_EMPTY_MVAR_info);
foreign "C" unlockClosure(mvar "ptr", stg_EMPTY_MVAR_info);
#else
SET_INFO(mvar,stg_EMPTY_MVAR_info);
foreign "C" unlockClosure(mvar "ptr", stg_EMPTY_MVAR_info);
#endif
/* HACK: we need a pointer to pass back,
foreign "C" unlockClosure(mvar "ptr", stg_EMPTY_MVAR_info);
#endif
/* HACK: we need a pointer to pass back,
if (StgMVar_head(mvar) == stg_END_TSO_QUEUE_closure) {
StgMVar_tail(mvar) = stg_END_TSO_QUEUE_closure;
}
if (StgMVar_head(mvar) == stg_END_TSO_QUEUE_closure) {
StgMVar_tail(mvar) = stg_END_TSO_QUEUE_closure;
}
{
/* No further putMVars, MVar is now empty */
StgMVar_value(mvar) = stg_END_TSO_QUEUE_closure;
{
/* No further putMVars, MVar is now empty */
StgMVar_value(mvar) = stg_END_TSO_QUEUE_closure;
foreign "C" unlockClosure(mvar "ptr", stg_EMPTY_MVAR_info);
#else
SET_INFO(mvar,stg_EMPTY_MVAR_info);
foreign "C" unlockClosure(mvar "ptr", stg_EMPTY_MVAR_info);
#else
SET_INFO(mvar,stg_EMPTY_MVAR_info);
/* No further takes, the MVar is now full. */
StgMVar_value(mvar) = R2;
/* No further takes, the MVar is now full. */
StgMVar_value(mvar) = R2;
foreign "C" unlockClosure(mvar "ptr", stg_FULL_MVAR_info);
#else
SET_INFO(mvar,stg_FULL_MVAR_info);
foreign "C" unlockClosure(mvar "ptr", stg_FULL_MVAR_info);
#else
SET_INFO(mvar,stg_FULL_MVAR_info);
/* No further takes, the MVar is now full. */
StgMVar_value(mvar) = R2;
/* No further takes, the MVar is now full. */
StgMVar_value(mvar) = R2;
foreign "C" unlockClosure(mvar "ptr", stg_FULL_MVAR_info);
#else
SET_INFO(mvar,stg_FULL_MVAR_info);
foreign "C" unlockClosure(mvar "ptr", stg_FULL_MVAR_info);
#else
SET_INFO(mvar,stg_FULL_MVAR_info);