SCCS-vsn: old/pcc/ccom.tahoe/order.c 1.8
-static char sccsid[] = "@(#)order.c 1.7 (Berkeley) %G%";
+static char sccsid[] = "@(#)order.c 1.8 (Berkeley) %G%";
#endif
# include "pass2.h"
#endif
# include "pass2.h"
register NODE *pasg;
register int align;
register int size;
register NODE *pasg;
register int align;
register int size;
/* generate code for the arguments */
/* generate code for the arguments */
/* make it look beautiful... */
p->in.op = UNARY MUL;
canon( p ); /* turn it into an oreg */
/* make it look beautiful... */
p->in.op = UNARY MUL;
canon( p ); /* turn it into an oreg */
- if( p->in.op != OREG ){
+ for( count = 0; p->in.op != OREG && count < 10; ++count ){
offstar( p->in.left );
canon( p );
offstar( p->in.left );
canon( p );
- if( p->in.op != OREG ){
- offstar( p->in.left );
- canon( p );
- if( p->in.op != OREG ) cerror( "stuck starg" );
- }
+ if( p->in.op != OREG ) cerror( "stuck starg" );