changeset 790:a26d87f93c65

i64 bitfiled
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sun, 21 Nov 2010 23:03:37 +0900
parents 9b1558a9151b
children 75e30aea08cd
files mc-code-i64.c mc-codegen.c mc-codegen.h mc-parse.c test/bitfield.c
diffstat 5 files changed, 233 insertions(+), 213 deletions(-) [+]
line wrap: on
line diff
--- a/mc-code-i64.c	Sun Nov 21 17:28:49 2010 +0900
+++ b/mc-code-i64.c	Sun Nov 21 23:03:37 2010 +0900
@@ -4891,7 +4891,7 @@
     int sign=0,bitsz=1; 
     int align=4,l=0;
     *pbitpos = cadr(caddr(type));
-    *pbitsize = caddr(caddr(type));
+    int bitsize = *pbitsize = caddr(caddr(type));
 
     switch(cadr(type)) { 
     case INT:		sign=1; bitsz=32; align=4;break; 
@@ -4900,8 +4900,8 @@
     case UCHAR: 		bitsz= 8; align=1;break; 
     case SHORT:         sign=1; bitsz=16; align=2;break; 
     case USHORT:        sign=1; bitsz=16; align=2;break; 
-    case LONGLONG:      sign=1; bitsz=64; align=4;l=1; break; 
-    case ULONGLONG:            	bitsz=64; align=4;l=1; break; 
+    case LONGLONG:      sign=1; bitsz=64; align=bitsize>32?8:4;l=1; break; 
+    case ULONGLONG:            	bitsz=64; align=bitsize>32?8:4;l=1; break; 
     default: error(-1);
     }
     *psign = sign;
@@ -5003,37 +5003,37 @@
 /* bit field replacement */
 
 static void
-make_mask_and_or(int mask,int reg)
+make_mask_and_or(int mask,int reg, int dest)
 {
 printf("## mask 0x%08x ~0x%08x\n",mask,~mask);
 	printf("\tpushq %s\n",register_name(reg,0));
 	/* make and-mask  */
 	oprtc(BOR,reg,list2(CONST,~mask));
 	/* do conjunction  */
-	printf("\tandl %s,%s\n",register_name(reg,SIZE_OF_INT),register_name(ireg,SIZE_OF_INT));
+	printf("\tandl %s,%s\n",register_name(reg,SIZE_OF_INT),register_name(dest,SIZE_OF_INT));
 	/* make or-mask  */
 	printf("\tpopq %s\n",register_name(reg,0));
 	oprtc(BAND,reg,list2(CONST,mask));
 	/* do disjunction  */
-	printf("\torl %s,%s\n",register_name(reg,SIZE_OF_INT),register_name(ireg,SIZE_OF_INT));
-	printf("\txchg %s,%s\n",register_name(reg,SIZE_OF_INT),register_name(ireg,SIZE_OF_INT));
+	printf("\torl %s,%s\n",register_name(reg,SIZE_OF_INT),register_name(dest,SIZE_OF_INT));
+	printf("\txchg %s,%s\n",register_name(reg,SIZE_OF_INT),register_name(dest,SIZE_OF_INT));
 }
 
 static void
-make_mask_and_or_l(long mask,int reg)
+make_mask_and_or_l(long mask,int reg, int dest)
 {
         printf("## mask 0x%08lx ~0x%08lx\n",mask,~mask);
 	printf("\tpushq %s\n",register_name(reg,0));
 	/* make and-mask  */
-	loprtc(BOR,reg,llist2(CONST,~mask));
+	loprtc(BOR,reg,llist2(LCONST,~mask));
 	/* do conjunction  */
-	printf("\tandq %s,%s\n",register_name(reg,0),register_name(ireg,0));
+	printf("\tandq %s,%s\n",register_name(reg,0),register_name(dest,0));
 	/* make or-mask  */
 	printf("\tpopq %s\n",register_name(reg,0));
-	oprtc(BAND,reg,list2(CONST,mask));
+	loprtc(BAND,reg,llist2(LCONST,mask));
 	/* do disjunction  */
-	printf("\torq %s,%s\n",register_name(reg,0),register_name(ireg,0));
-	printf("\txchgq %s,%s\n",register_name(reg,0),register_name(ireg,0));
+	printf("\torq %s,%s\n",register_name(reg,0),register_name(dest,0));
+	printf("\txchgq %s,%s\n",register_name(reg,0),register_name(dest,0));
 }
 
 extern void
@@ -5048,23 +5048,24 @@
 // printf("## %d: bitpos=%d bitsize=%d bitsz=%d\n",lineno,bitpos,bitsize,bitsz);
     if (l) {
 #if LONGLONG_CODE
-	use_int(adr);
+	// use_int(adr);
 	use_longlong(value);
 	/* shift left */
 	if (bitpos) 
 	    loprtc(LLSHIFT,value,list2(CONST,bitpos));
 	/* make and-mask */
 	printf("\tpushq %s\n",register_name(adr,0)); 
-	printf("\t%s %d(%s),%s\n",cload(sign,size),4,register_name(adr,0),
+	printf("\t%s (%s),%s\n",cload(sign,size),register_name(adr,0),
 		    register_name(adr,regu(sign,size,0)));
-	mask = make_mask(64-bitpos-bitsize,63-bitpos);
-	make_mask_and_or_l(mask,value);
+	mask = make_mask_64(64-bitpos-bitsize,63-bitpos);
+	make_mask_and_or_l(mask,value, adr);
+	set_lreg(value,0);
 	printf("\tpopq %s\n",register_name(adr,0));
 	printf("\t%s %s,(%s)\n",move(0),
                register_name(value,0), register_name(adr,0));
 #endif
     } else {
-	use_int(adr);
+	// use_int(adr);
 	use_int(value);
 	printf("\tpushq %s\n",register_name(adr,0));
 	printf("\t%s %d(%s),%s\n",cload(sign,size),0,register_name(adr,0),
@@ -5074,7 +5075,8 @@
 	    oprtc(LSHIFT,value,list2(CONST,bitpos));
 	/* make and-mask */
 	mask = make_mask(32-bitpos-bitsize,31-bitpos);
-	make_mask_and_or(mask,value);
+	make_mask_and_or(mask,value, adr);
+	set_ireg(value,0);
 	printf("\tpopq %s\n",register_name(adr,0));
         code_assign(adr,size==4?0:size,value);
     }
@@ -5147,11 +5149,12 @@
 	lc = lcadr(value);
 	lc <<= bitpos;
 	
-	printf("\t%s %d(%s),%s\n",cload(sign,size),4,register_name(adr,regu(sign,size,0)),
+	printf("\t%s (%s),%s\n",cload(sign,size),register_name(adr,regu(sign,size,0)),
 		    register_name(lvalue,0));
 	/* make and-mask upper */
-	mask = make_mask(64-bitpos-bitsize,63-bitpos);
+	mask = make_mask_64(64-bitpos-bitsize,63-bitpos);
 	make_mask_and_or_const(mask,lvalue,lc);
+	set_lreg(lvalue,0);
 	printf("\t%s %s,(%s)\n",move(0),register_name(lvalue,0),
 		    register_name(adr,0));
 	free_register(lvalue);
@@ -5166,6 +5169,7 @@
 	/* make and-mask */
 	mask = make_mask(32-bitpos-bitsize,31-bitpos);
 	make_mask_and_or_const(mask,lvalue,c);
+	set_ireg(lvalue,0);
         code_assign(adr,size,lvalue);
 	free_register(lvalue);
     }
--- a/mc-codegen.c	Sun Nov 21 17:28:49 2010 +0900
+++ b/mc-codegen.c	Sun Nov 21 23:03:37 2010 +0900
@@ -5529,8 +5529,23 @@
     make bit mask
       MSB 1 2 3 4 .... 29 30 31 LSB
  */
+extern unsigned 
+make_mask(int from,int to)
+{
+    unsigned mask = 0;
+    unsigned bit = 1;
+    int i;
+    if (from<0||from>31) error(-1);
+    for (i=31;from<=i;i--,bit<<=1) {
+        if (i<=to) {
+            mask |= bit;
+        }
+    }
+    return mask;
+}
+
 extern unsigned long long
-make_mask(int from,int to)
+make_mask_64(int from,int to)
 {
     unsigned long long mask = 0;
     unsigned long long bit = 1;
--- a/mc-codegen.h	Sun Nov 21 17:28:49 2010 +0900
+++ b/mc-codegen.h	Sun Nov 21 23:03:37 2010 +0900
@@ -135,7 +135,8 @@
 extern int is_function(NMTBL *fnptr);
 extern int is_inline(NMTBL *fnptr);
 extern int scalar(int t);
-extern unsigned long long make_mask(int from,int to);
+extern unsigned make_mask(int from,int to);
+extern unsigned long long make_mask_64(int from,int to);
 extern void free_register_var(int reg_arg_list);
 
 extern void init_ptr_cache();
--- a/mc-parse.c	Sun Nov 21 17:28:49 2010 +0900
+++ b/mc-parse.c	Sun Nov 21 23:03:37 2010 +0900
@@ -1116,14 +1116,14 @@
             t = UNSIGNED;         // unsigend int
             getsym(0);
 	} else if (sym==CHAR) { getsym(0); t = UCHAR; }
-	else if (sym==SHORT) { 
+	else if (sym==SHORT) {    // unsigend short
 	    t = USHORT; 
 	    if(getsym(0)==INT) getsym(0);
-	} else if (sym==LONG) {
+	} else if (sym==LONG) {      // unsigned long
 	    getsym(0); 
             t = lp64?ULONGLONG:UNSIGNED;
-	    if(sym==LONG) {
-		if(getsym(0)==INT) getsym(0);
+	    if(sym==LONG) {          // unsigned long long
+		if(getsym(0)==INT) getsym(0);  // unsigend long long int
 		t=ULONGLONG;
 	    } else if(sym==INT) {    // unsigend long int
 		getsym(0);
--- a/test/bitfield.c	Sun Nov 21 17:28:49 2010 +0900
+++ b/test/bitfield.c	Sun Nov 21 23:03:37 2010 +0900
@@ -75,123 +75,123 @@
       g.u[0]=0;
       g.u[1]=0;
        
-printf("#0077:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0077:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. v = 1;
-printf("#0079:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0079:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. vsid = 0xffffff;
-printf("#0081:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0081:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. h = 1;
-printf("#0083:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0083:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. api = 3;
-printf("#0085:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0085:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. rpn = 3;
-printf("#0087:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0087:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
 
         g.pte. r = 1;
-printf("#0090:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0090:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. c = 1;
-printf("#0092:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0092:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. w = 1;
-printf("#0094:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0094:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. i = 1;
-printf("#0096:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0096:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. m = 1;
-printf("#0098:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0098:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. g = 1;
-printf("#0100:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0100:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. pp = 3;
-printf("#0102:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0102:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
 
       g.u[0]=-1;
       g.u[1]=-1;
 
-printf("#0107:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0107:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. v = 0;
-printf("#0109:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0109:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. vsid = 0;
-printf("#0111:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0111:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. h = 0;
-printf("#0113:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0113:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. api = 0;
-printf("#0115:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0115:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. rpn = 0;
-printf("#0117:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0117:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
 
         g.pte. r = 0;
-printf("#0120:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0120:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. c = 0;
-printf("#0122:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0122:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. w = 0;
-printf("#0124:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0124:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. i = 0;
-printf("#0126:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0126:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. m = 0;
-printf("#0128:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0128:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. g = 0;
-printf("#0130:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0130:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. pp = 0;
-printf("#0132:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0132:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
 
       g.u[0]=-1;
       g.u[1]=-1;
 
-printf("#0137:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0137:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. v = 0;
-printf("#0139:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0139:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. vsid = 0x555555;
-printf("#0141:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0141:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. h = 0;
-printf("#0143:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0143:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. api = 0x15;
-printf("#0145:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0145:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. rpn = 0x55555;
-printf("#0147:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0147:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
 
         g.pte. r = 1;
-printf("#0150:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0150:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. c = 1;
-printf("#0152:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0152:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. w = 1;
-printf("#0154:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0154:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. i = 1;
-printf("#0156:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0156:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. m = 1;
-printf("#0158:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0158:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. g = 1;
-printf("#0160:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0160:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. pp = 3;
-printf("#0162:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0162:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
 
       g.u[0]=-1;
       g.u[1]=-1;
 
 for(i=0;i<0x200;i++) {
-printf("#0168:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0168:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. v = i;
-printf("#0170:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0170:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. vsid = i;
-printf("#0172:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0172:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. h = i;
-printf("#0174:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0174:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. api = i;
-printf("#0176:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0176:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. rpn = i;
-printf("#0178:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0178:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
 
         g.pte. r = i;
-printf("#0181:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0181:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. c = i;
-printf("#0183:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0183:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. w = i;
-printf("#0185:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0185:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. i = i;
-printf("#0187:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0187:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. m = i;
-printf("#0189:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0189:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. g = i;
-printf("#0191:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0191:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.pte. pp = i;
-printf("#0193:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0193:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
 }
 
       g = a;
@@ -214,123 +214,123 @@
       g.u[0]=0;
       g.u[1]=0;
        
-printf("#0216:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0216:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. v = 1;
-printf("#0218:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0218:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. vsid = 0xffffff;
-printf("#0220:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0220:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. h = 1;
-printf("#0222:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0222:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. api = 1;
-printf("#0224:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0224:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. rpn = 1;
-printf("#0226:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0226:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
 
         g.sg. r = 1;
-printf("#0229:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0229:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. c = 1;
-printf("#0231:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0231:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. w = 1;
-printf("#0233:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0233:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. i = 1;
-printf("#0235:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0235:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. m = 1;
-printf("#0237:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0237:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. g = 1;
-printf("#0239:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0239:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. pp = 0x3;
-printf("#0241:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0241:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
 
       g.u[0]=-1;
       g.u[1]=-1;
 
-printf("#0246:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0246:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. v = 0;
-printf("#0248:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0248:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. vsid = 0;
-printf("#0250:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0250:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. h = 0;
-printf("#0252:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0252:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. api = 0;
-printf("#0254:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0254:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. rpn = 0;
-printf("#0256:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0256:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
 
         g.sg. r = 0;
-printf("#0259:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0259:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. c = 0;
-printf("#0261:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0261:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. w = 0;
-printf("#0263:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0263:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. i = 0;
-printf("#0265:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0265:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. m = 0;
-printf("#0267:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0267:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. g = 0;
-printf("#0269:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0269:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. pp = 0;
-printf("#0271:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0271:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
 
       g.u[0]=-1;
       g.u[1]=-1;
 
-printf("#0276:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0276:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. v = 0;
-printf("#0278:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0278:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. vsid = 0;
-printf("#0280:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0280:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. h = 0;
-printf("#0282:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0282:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. api = 0;
-printf("#0284:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0284:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. rpn = 0;
-printf("#0286:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0286:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
 
         g.sg. r = 0;
-printf("#0289:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0289:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. c = 0;
-printf("#0291:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0291:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. w = 0;
-printf("#0293:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0293:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. i = 0;
-printf("#0295:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0295:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. m = 0;
-printf("#0297:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0297:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. g = 0;
-printf("#0299:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0299:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. pp = 3;
-printf("#0301:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0301:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
 
       g.u[0]=-1;
       g.u[1]=-1;
 
 for(i=-0x100;i<0x100;i++) {
-printf("#0307:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0307:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. v = i;
-printf("#0309:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0309:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. vsid = i;
-printf("#0311:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0311:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. h = i;
-printf("#0313:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0313:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. api = i;
-printf("#0315:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0315:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. rpn = i;
-printf("#0317:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0317:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
 
         g.sg. r = i;
-printf("#0320:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0320:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. c = i;
-printf("#0322:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0322:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. w = i;
-printf("#0324:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0324:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. i = i;
-printf("#0326:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0326:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. m = i;
-printf("#0328:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0328:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. g = i;
-printf("#0330:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0330:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
         g.sg. pp = i;
-printf("#0332:% 3d:  0x%08lx%08lx\n",i++,g.u[0],g.u[1]);
+printf("#0332:% 3d:  0x%16lx%16lx\n",i++,g.u[0],g.u[1]);
 }
 
 // printf("#0335:size of %d\n",sizeof(g.sg.pp));    no size of for bit-field
@@ -494,9 +494,9 @@
    int a[8];
    struct {
         char a:4;
-	long long v:33;
-	long long w:33;
-	long long x:33;
+	unsigned long long v:33;
+	unsigned long long w:33;
+	unsigned long long x:33;
    } b;
 } ll1;
 
@@ -504,9 +504,9 @@
    int a[8];
    struct {
         char a:4;
-	long long v:48;
-	long long w:48;
-	long long x:48;
+	unsigned long long v:48;
+	unsigned long long w:48;
+	unsigned long long x:48;
    } b;
 } ll0;
 
@@ -557,21 +557,21 @@
 
      ll1.b.v = 0x123456defLL;
      printf("#0558:m5c-01:%llx\n",ll1.b.v);
-     printf("#0559:m5c-02:%08x %08x %08x %08x %08x %08x %08x %08x\n",
+     printf("#0559:m5c-02:%16x %16x %16x %16x %16x %16x %16x %16x\n",
 	ll1.a[0],ll1.a[1],ll1.a[2],ll1.a[3],
 	ll1.a[4],ll1.a[5],ll1.a[6],ll1.a[7]
       );
      ll1.b.v = 0;
      printf("#0564:m5c-01:%llx\n",
 	 ll1.b.w = 0x123456defLL);
-     printf("#0566:m5c-02:%08x %08x %08x %08x %08x %08x %08x %08x\n",
+     printf("#0566:m5c-02:%16x %16x %16x %16x %16x %16x %16x %16x\n",
 	ll1.a[0],ll1.a[1],ll1.a[2],ll1.a[3],
 	ll1.a[4],ll1.a[5],ll1.a[6],ll1.a[7]
       );
      ll1.b.w = 0;
      printf("#0571:m5c-01:%llx\n",
 	 ll1.b.x = -0x12456defLL);
-     printf("#0573:m5c-02:%08x %08x %08x %08x %08x %08x %08x %08x\n",
+     printf("#0573:m5c-02:%16x %16x %16x %16x %16x %16x %16x %16x\n",
 	ll1.a[0],ll1.a[1],ll1.a[2],ll1.a[3],
 	ll1.a[4],ll1.a[5],ll1.a[6],ll1.a[7]
       );
@@ -580,21 +580,21 @@
      printf("#0579:m5c-01:%llx\n",
 	 ll0.b.v = 0x123457cdefLL);
      printf("#0581:m5c-01:%llx\n",ll0.b.v);
-     printf("#0582:m5c-02:%08x %08x %08x %08x %08x %08x %08x %08x\n",
+     printf("#0582:m5c-02:%16x %16x %16x %16x %16x %16x %16x %16x\n",
 	ll0.a[0],ll0.a[1],ll0.a[2],ll0.a[3],
 	ll0.a[4],ll0.a[5],ll0.a[6],ll0.a[7]
       );
      ll0.b.v = 0;
      printf("#0587:m5c-01:%llx\n",
 	 ll0.b.w = 0x1234abcdefLL);
-     printf("#0589:m5c-02:%08x %08x %08x %08x %08x %08x %08x %08x\n",
+     printf("#0589:m5c-02:%16x %16x %16x %16x %16x %16x %16x %16x\n",
 	ll0.a[0],ll0.a[1],ll0.a[2],ll0.a[3],
 	ll0.a[4],ll0.a[5],ll0.a[6],ll0.a[7]
       );
      ll0.b.w = 0;
      printf("#0594:m5c-01:%llx\n",
 	 ll0.b.x = 0x1234abcdefLL);
-     printf("#0596:m5c-02:%08x %08x %08x %08x %08x %08x %08x %08x\n",
+     printf("#0596:m5c-02:%16x %16x %16x %16x %16x %16x %16x %16x\n",
 	ll0.a[0],ll0.a[1],ll0.a[2],ll0.a[3],
 	ll0.a[4],ll0.a[5],ll0.a[6],ll0.a[7]
       );
@@ -603,21 +603,21 @@
      printf("#0602:m5c-01:%llx\n",
 	 ll.b.v = 0x12389abcdefLL);
      printf("#0604:m5c-1:%llx\n",ll.b.v);
-     printf("#0605:m5c-2:%08x %08x %08x %08x %08x %08x %08x %08x\n",
+     printf("#0605:m5c-2:%16x %16x %16x %16x %16x %16x %16x %16x\n",
 	ll.a[0],ll.a[1],ll.a[2],ll.a[3],
 	ll.a[4],ll.a[5],ll.a[6],ll.a[7]
       );
      ll.b.v = 0;
      printf("#0610:m5c-01:%llx\n",
 	 ll.b.w = 0x12389abcdefLL);
-     printf("#0612:m5c-2:%08x %08x %08x %08x %08x %08x %08x %08x\n",
+     printf("#0612:m5c-2:%16x %16x %16x %16x %16x %16x %16x %16x\n",
 	ll.a[0],ll.a[1],ll.a[2],ll.a[3],
 	ll.a[4],ll.a[5],ll.a[6],ll.a[7]
       );
      ll.b.w = 0;
      printf("#0617:m5c-01:%llx\n",
 	 ll.b.x = 0x12389abcdefLL);
-     printf("#0619:m5c-2:%08x %08x %08x %08x %08x %08x %08x %08x\n",
+     printf("#0619:m5c-2:%16x %16x %16x %16x %16x %16x %16x %16x\n",
 	ll.a[0],ll.a[1],ll.a[2],ll.a[3],
 	ll.a[4],ll.a[5],ll.a[6],ll.a[7]
       );
@@ -626,68 +626,68 @@
      printf("#0625:m5c-char a:1; char b:4; char c:7; char d:4; char e:4; char f:4;\n");
      cc.a = 0;
      cc.b.a = -1;
-     printf("#0628:m5c-a:%08x\n",cc.a);
+     printf("#0628:m5c-a:%16x\n",cc.a);
      cc.b.b = -1;
-     printf("#0630:m5c-b:%08x\n",cc.a);
+     printf("#0630:m5c-b:%16x\n",cc.a);
      cc.b.c = -1;
-     printf("#0632:m5c-c:%08x\n",cc.a);
+     printf("#0632:m5c-c:%16x\n",cc.a);
      cc.b.d = -1;
-     printf("#0634:m5c-d:%08x\n",cc.a);
+     printf("#0634:m5c-d:%16x\n",cc.a);
      cc.b.e = -1;
-     printf("#0636:m5c-e:%08x\n",cc.a);
+     printf("#0636:m5c-e:%16x\n",cc.a);
      cc.b.f = -1;
-     printf("#0638:m5c-f:%08x\n",cc.a);
+     printf("#0638:m5c-f:%16x\n",cc.a);
      printf("#0639:m5c-3:%d %d\n",cc.b.c,cc.b.d);
      cc.a = -1;
-     printf("#0641:m5c-f:%08x\n",cc.a);
+     printf("#0641:m5c-f:%16x\n",cc.a);
      cc.b.a = 0;
-     printf("#0643:m5c-a:%08x\n",cc.a);
+     printf("#0643:m5c-a:%16x\n",cc.a);
      cc.b.b = 0;
-     printf("#0645:m5c-b:%08x\n",cc.a);
+     printf("#0645:m5c-b:%16x\n",cc.a);
      cc.b.c = 0;
-     printf("#0647:m5c-c:%08x\n",cc.a);
+     printf("#0647:m5c-c:%16x\n",cc.a);
      cc.b.d = 0;
-     printf("#0649:m5c-d:%08x\n",cc.a);
+     printf("#0649:m5c-d:%16x\n",cc.a);
      cc.b.e = 0;
-     printf("#0651:m5c-e:%08x\n",cc.a);
+     printf("#0651:m5c-e:%16x\n",cc.a);
      cc.b.f = 0;
-     printf("#0653:m5c-f:%08x\n",cc.a);
+     printf("#0653:m5c-f:%16x\n",cc.a);
      printf("#0654:m5c-3:%d %d\n",cc.b.c,cc.b.d);
      cc.a = 0;
-     printf("#0656:m5c-f:%08x\n",cc.a);
+     printf("#0656:m5c-f:%16x\n",cc.a);
      cc.b.a = 1;
-     printf("#0658:m5c-a:%08x\n",cc.a);
+     printf("#0658:m5c-a:%16x\n",cc.a);
      cc.b.b = 1;
-     printf("#0660:m5c-b:%08x\n",cc.a);
+     printf("#0660:m5c-b:%16x\n",cc.a);
      cc.b.c = 1;
-     printf("#0662:m5c-c:%08x\n",cc.a);
+     printf("#0662:m5c-c:%16x\n",cc.a);
      cc.b.d = 1;
-     printf("#0664:m5c-d:%08x\n",cc.a);
+     printf("#0664:m5c-d:%16x\n",cc.a);
      cc.b.e = 1;
-     printf("#0666:m5c-e:%08x\n",cc.a);
+     printf("#0666:m5c-e:%16x\n",cc.a);
      cc.b.f = 1;
-     printf("#0668:m5c-f:%08x\n",cc.a);
+     printf("#0668:m5c-f:%16x\n",cc.a);
      printf("#0669:m5c-3:%d %d\n",cc.b.c,cc.b.d);
      cc.a = -1;
-     printf("#0671:m5c-f:%08x\n",cc.a);
+     printf("#0671:m5c-f:%16x\n",cc.a);
      cc.b.a = 1;
-     printf("#0673:m5c-a:%08x\n",cc.a);
+     printf("#0673:m5c-a:%16x\n",cc.a);
      cc.b.b = 1;
-     printf("#0675:m5c-b:%08x\n",cc.a);
+     printf("#0675:m5c-b:%16x\n",cc.a);
      cc.b.c = 1;
-     printf("#0677:m5c-c:%08x\n",cc.a);
+     printf("#0677:m5c-c:%16x\n",cc.a);
      cc.b.d = 1;
-     printf("#0679:m5c-d:%08x\n",cc.a);
+     printf("#0679:m5c-d:%16x\n",cc.a);
      cc.b.e = 1;
-     printf("#0681:m5c-e:%08x\n",cc.a);
+     printf("#0681:m5c-e:%16x\n",cc.a);
      cc.b.f = 1;
-     printf("#0683:m5c-f:%08x\n",cc.a);
+     printf("#0683:m5c-f:%16x\n",cc.a);
      printf("#0684:m5c-3:%d %d\n",cc.b.c,cc.b.d);
 
      ii.b.a = -1;
-     printf("#0687:m5c-6:%08x\n",ii.a);
+     printf("#0687:m5c-6:%16x\n",ii.a);
      ii.b.d = -1;
-     printf("#0689:m5c-6:%08x\n",ii.a);
+     printf("#0689:m5c-6:%16x\n",ii.a);
      printf("#0690:m5c-5:%d %d\n",ii.b.a,ii.b.d);
 }
 
@@ -699,19 +699,19 @@
 
      ll1.b.v = m1;
      printf("#0700:01:%llx\n",ll1.b.v);
-     printf("#0701:02:%08x %08x %08x %08x %08x %08x %08x %08x\n",
+     printf("#0701:02:%16x %16x %16x %16x %16x %16x %16x %16x\n",
 	ll1.a[0],ll1.a[1],ll1.a[2],ll1.a[3],
 	ll1.a[4],ll1.a[5],ll1.a[6],ll1.a[7]
       );
      ll1.b.v = zero;
      ll1.b.w = m1;
-     printf("#0707:02:%08x %08x %08x %08x %08x %08x %08x %08x\n",
+     printf("#0707:02:%16x %16x %16x %16x %16x %16x %16x %16x\n",
 	ll1.a[0],ll1.a[1],ll1.a[2],ll1.a[3],
 	ll1.a[4],ll1.a[5],ll1.a[6],ll1.a[7]
       );
      ll1.b.w = zero;
      ll1.b.x = m1;
-     printf("#0713:02:%08x %08x %08x %08x %08x %08x %08x %08x\n",
+     printf("#0713:02:%16x %16x %16x %16x %16x %16x %16x %16x\n",
 	ll1.a[0],ll1.a[1],ll1.a[2],ll1.a[3],
 	ll1.a[4],ll1.a[5],ll1.a[6],ll1.a[7]
       );
@@ -719,19 +719,19 @@
 
      ll0.b.v = m1;
      printf("#0720:01:%llx\n",ll0.b.v);
-     printf("#0721:02:%08x %08x %08x %08x %08x %08x %08x %08x\n",
+     printf("#0721:02:%16x %16x %16x %16x %16x %16x %16x %16x\n",
 	ll0.a[0],ll0.a[1],ll0.a[2],ll0.a[3],
 	ll0.a[4],ll0.a[5],ll0.a[6],ll0.a[7]
       );
      ll0.b.v = zero;
      ll0.b.w = m1;
-     printf("#0727:02:%08x %08x %08x %08x %08x %08x %08x %08x\n",
+     printf("#0727:02:%16x %16x %16x %16x %16x %16x %16x %16x\n",
 	ll0.a[0],ll0.a[1],ll0.a[2],ll0.a[3],
 	ll0.a[4],ll0.a[5],ll0.a[6],ll0.a[7]
       );
      ll0.b.w = zero;
      ll0.b.x = m1;
-     printf("#0733:02:%08x %08x %08x %08x %08x %08x %08x %08x\n",
+     printf("#0733:02:%16x %16x %16x %16x %16x %16x %16x %16x\n",
 	ll0.a[0],ll0.a[1],ll0.a[2],ll0.a[3],
 	ll0.a[4],ll0.a[5],ll0.a[6],ll0.a[7]
       );
@@ -739,19 +739,19 @@
 
      ll.b.v = m1;
      printf("#0740:1:%llx\n",ll.b.v);
-     printf("#0741:2:%08x %08x %08x %08x %08x %08x %08x %08x\n",
+     printf("#0741:2:%16x %16x %16x %16x %16x %16x %16x %16x\n",
 	ll.a[0],ll.a[1],ll.a[2],ll.a[3],
 	ll.a[4],ll.a[5],ll.a[6],ll.a[7]
       );
      ll.b.v = zero;
      ll.b.w = m1;
-     printf("#0747:2:%08x %08x %08x %08x %08x %08x %08x %08x\n",
+     printf("#0747:2:%16x %16x %16x %16x %16x %16x %16x %16x\n",
 	ll.a[0],ll.a[1],ll.a[2],ll.a[3],
 	ll.a[4],ll.a[5],ll.a[6],ll.a[7]
       );
      ll.b.w = zero;
      ll.b.x = m1;
-     printf("#0753:2:%08x %08x %08x %08x %08x %08x %08x %08x\n",
+     printf("#0753:2:%16x %16x %16x %16x %16x %16x %16x %16x\n",
 	ll.a[0],ll.a[1],ll.a[2],ll.a[3],
 	ll.a[4],ll.a[5],ll.a[6],ll.a[7]
       );
@@ -760,68 +760,68 @@
      cc.a = zero;
      printf("#0760:char a:1; char b:4; char c:7; char d:4; char e:4; char f:4;\n");
      cc.b.a = m1;
-     printf("#0762:a:%08x\n",cc.a);
+     printf("#0762:a:%16x\n",cc.a);
      cc.b.b = m1;
-     printf("#0764:b:%08x\n",cc.a);
+     printf("#0764:b:%16x\n",cc.a);
      cc.b.c = m1;
-     printf("#0766:c:%08x\n",cc.a);
+     printf("#0766:c:%16x\n",cc.a);
      cc.b.d = m1;
-     printf("#0768:d:%08x\n",cc.a);
+     printf("#0768:d:%16x\n",cc.a);
      cc.b.e = m1;
-     printf("#0770:e:%08x\n",cc.a);
+     printf("#0770:e:%16x\n",cc.a);
      cc.b.f = m1;
-     printf("#0772:f:%08x\n",cc.a);
+     printf("#0772:f:%16x\n",cc.a);
      printf("#0773:3:%d %d\n",cc.b.c,cc.b.d);
      cc.a = m1;
-     printf("#0775:f:%08x\n",cc.a);
+     printf("#0775:f:%16x\n",cc.a);
      cc.b.a = zero;
-     printf("#0777:a:%08x\n",cc.a);
+     printf("#0777:a:%16x\n",cc.a);
      cc.b.b = zero;
-     printf("#0779:b:%08x\n",cc.a);
+     printf("#0779:b:%16x\n",cc.a);
      cc.b.c = zero;
-     printf("#0781:c:%08x\n",cc.a);
+     printf("#0781:c:%16x\n",cc.a);
      cc.b.d = zero;
-     printf("#0783:d:%08x\n",cc.a);
+     printf("#0783:d:%16x\n",cc.a);
      cc.b.e = zero;
-     printf("#0785:e:%08x\n",cc.a);
+     printf("#0785:e:%16x\n",cc.a);
      cc.b.f = zero;
-     printf("#0787:f:%08x\n",cc.a);
+     printf("#0787:f:%16x\n",cc.a);
      printf("#0788:3:%d %d\n",cc.b.c,cc.b.d);
      cc.a = zero;
-     printf("#0790:f:%08x\n",cc.a);
+     printf("#0790:f:%16x\n",cc.a);
      cc.b.a = p1;
-     printf("#0792:a:%08x\n",cc.a);
+     printf("#0792:a:%16x\n",cc.a);
      cc.b.b = p1;
-     printf("#0794:b:%08x\n",cc.a);
+     printf("#0794:b:%16x\n",cc.a);
      cc.b.c = p1;
-     printf("#0796:c:%08x\n",cc.a);
+     printf("#0796:c:%16x\n",cc.a);
      cc.b.d = p1;
-     printf("#0798:d:%08x\n",cc.a);
+     printf("#0798:d:%16x\n",cc.a);
      cc.b.e = p1;
-     printf("#0800:e:%08x\n",cc.a);
+     printf("#0800:e:%16x\n",cc.a);
      cc.b.f = p1;
-     printf("#0802:f:%08x\n",cc.a);
+     printf("#0802:f:%16x\n",cc.a);
      printf("#0803:3:%d %d\n",cc.b.c,cc.b.d);
      cc.a = m1;
-     printf("#0805:f:%08x\n",cc.a);
+     printf("#0805:f:%16x\n",cc.a);
      cc.b.a = p1;
-     printf("#0807:a:%08x\n",cc.a);
+     printf("#0807:a:%16x\n",cc.a);
      cc.b.b = p1;
-     printf("#0809:b:%08x\n",cc.a);
+     printf("#0809:b:%16x\n",cc.a);
      cc.b.c = p1;
-     printf("#0811:c:%08x\n",cc.a);
+     printf("#0811:c:%16x\n",cc.a);
      cc.b.d = p1;
-     printf("#0813:d:%08x\n",cc.a);
+     printf("#0813:d:%16x\n",cc.a);
      cc.b.e = p1;
-     printf("#0815:e:%08x\n",cc.a);
+     printf("#0815:e:%16x\n",cc.a);
      cc.b.f = p1;
-     printf("#0817:f:%08x\n",cc.a);
+     printf("#0817:f:%16x\n",cc.a);
      printf("#0818:3:%d %d\n",cc.b.c,cc.b.d);
 
      ii.b.a = m1;
-     printf("#0821:6:%08x\n",ii.a);
+     printf("#0821:6:%16x\n",ii.a);
      ii.b.d = m1;
-     printf("#0823:6:%08x\n",ii.a);
+     printf("#0823:6:%16x\n",ii.a);
      printf("#0824:5:%d %d\n",ii.b.a,ii.b.d);
 }