diff mc-code-ia32.c @ 353:41ed77cb9c67 nametbl-done

name table reogranization, extendable cheap done.
author kono
date Sat, 03 Jul 2004 13:53:37 +0900
parents e77b3a7002ad
children 6188f66c0c0b
line wrap: on
line diff
--- a/mc-code-ia32.c	Sat Jul 03 02:13:11 2004 +0900
+++ b/mc-code-ia32.c	Sat Jul 03 13:53:37 2004 +0900
@@ -507,6 +507,7 @@
         /* process in reverse order */
         n = (NMTBL*)caddr(args);
         type = n->ty;
+printf("#  %s %d %d\n",n->nm,n->dsp,n->ty);
         if (scalar(type)) {
             if ((reg = get_input_register_var(reg_var,n,is_code0))) {
                 n->sc = REGISTER;
@@ -780,6 +781,41 @@
     regv[creg]=1;
 }
 
+extern void
+code_i2c(int reg)
+{
+    use_int(reg);
+    use_data_reg(reg,1);
+    printf("\t%s %s,%s\n",cload(1,1),
+	register_name(reg,1),register_name(reg,0));
+}
+
+extern void
+code_i2s(int reg)
+{
+    use_int(reg);
+    use_data_reg(reg,1);
+    printf("\t%s %s,%s\n",cload(1,SIZE_OF_SHORT),
+	register_name(reg,2),register_name(reg,0));
+}
+
+extern void
+code_u2uc(int reg)
+{   
+    use_int(reg);
+    use_data_reg(reg,1);
+    printf("\t%s %s,%s\n",cload(0,1),
+	register_name(reg,1),register_name(reg,0));
+}
+
+extern void
+code_u2us(int reg)
+{   
+    use_int(reg);
+    use_data_reg(reg,1);
+    printf("\t%s %s,%s\n",cload(0,SIZE_OF_SHORT),
+	register_name(reg,2),register_name(reg,0));
+}
 
 void
 code_crlvar(int e2,int reg,int sign,int sz) {