version 1.69, 2003/09/15 09:49:44 |
version 1.70, 2003/09/15 10:51:45 |
|
|
/* $OpenXM: OpenXM_contrib2/asir2000/engine/nd.c,v 1.68 2003/09/12 15:07:11 noro Exp $ */ |
/* $OpenXM: OpenXM_contrib2/asir2000/engine/nd.c,v 1.69 2003/09/15 09:49:44 noro Exp $ */ |
|
|
#include "ca.h" |
#include "ca.h" |
#include "inline.h" |
#include "inline.h" |
|
|
d = nd_reconstruct(m,1,d); |
d = nd_reconstruct(m,1,d); |
goto again; |
goto again; |
} else if ( nf ) { |
} else if ( nf ) { |
/* overflow does not occur */ |
if ( !nd_sp(0,1,l,&h) || !nd_nf(0,h,nd_ps_trace,!Top,0,&nfq) ) { |
nd_sp(0,1,l,&h); |
NEXT(l) = d; d = l; |
nd_nf(0,h,nd_ps_trace,!Top,0,&nfq); |
d = nd_reconstruct(m,1,d); |
|
goto again; |
|
} |
if ( nfq ) { |
if ( nfq ) { |
/* failure; m|HC(nfq) */ |
/* m|HC(nfq) => failure */ |
if ( !rem(NM(HCQ(nfq)),m) ) return 0; |
if ( !rem(NM(HCQ(nfq)),m) ) return 0; |
|
|
printf("+"); fflush(stdout); |
printf("+"); fflush(stdout); |