| /* | 
 |  * code to keep track of registers | 
 |  */ | 
 |  | 
 | #include "defs.h" | 
 | #include "fns.h" | 
 |  | 
 | /* | 
 |  * print the registers | 
 |  */ | 
 | void | 
 | printregs(int c) | 
 | { | 
 | 	Regdesc *rp; | 
 | 	int i; | 
 | 	ulong u; | 
 |  | 
 | 	if(correg == nil){ | 
 | 		dprint("registers not mapped\n"); | 
 | 		return; | 
 | 	} | 
 |  | 
 | 	for (i = 1, rp = mach->reglist; rp->name; rp++, i++) { | 
 | 		if ((rp->flags & RFLT)) { | 
 | 			if (c != 'R') | 
 | 				continue; | 
 | 			if (rp->format == '8' || rp->format == '3') | 
 | 				continue; | 
 | 		} | 
 | 		rget(correg, rp->name, &u); | 
 | 		if(rp->format == 'Y') | 
 | 			dprint("%-8s %-20#llux", rp->name, (uvlong)u); | 
 | 		else | 
 | 			dprint("%-8s %-12#lux", rp->name, (ulong)u); | 
 | 		if ((i % 3) == 0) { | 
 | 			dprint("\n"); | 
 | 			i = 0; | 
 | 		} | 
 | 	} | 
 | 	if (i != 1) | 
 | 		dprint("\n"); | 
 | 	dprint ("%s\n", mach->exc(cormap, correg)); | 
 | 	printpc(); | 
 | } |