]> Git Repo - qemu.git/commitdiff
Fix co-processor branch and store ops (Aurelien Jarno)
authorblueswir1 <blueswir1@c046a42c-6fe2-441c-8c8c-71466251a162>
Thu, 5 Apr 2007 18:09:15 +0000 (18:09 +0000)
committerblueswir1 <blueswir1@c046a42c-6fe2-441c-8c8c-71466251a162>
Thu, 5 Apr 2007 18:09:15 +0000 (18:09 +0000)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2603 c046a42c-6fe2-441c-8c8c-71466251a162

target-sparc/translate.c

index 9f2d24962445b042263020f3b474911d1b6c3e00..53a3a674c690fe7d7e5206bf5861d42e91e5baf4 100644 (file)
@@ -1012,6 +1012,11 @@ static void disas_sparc_insn(DisasContext * dc)
                    do_fbranch(dc, target, insn, cc);
                    goto jmp_insn;
                }
+#else
+           case 0x7:           /* CBN+x */
+               {
+                   goto ncp_insn;
+               }
 #endif
            case 0x2:           /* BN+x */
                {
@@ -2444,12 +2449,7 @@ static void disas_sparc_insn(DisasContext * dc)
                case 0x30: /* ldc */
                case 0x31: /* ldcsr */
                case 0x33: /* lddc */
-               case 0x34: /* stc */
-               case 0x35: /* stcsr */
-               case 0x36: /* stdcq */
-               case 0x37: /* stdc */
                    goto ncp_insn;
-                   break;
                     /* avoid warnings */
                     (void) &gen_op_stfa;
                     (void) &gen_op_stdfa;
@@ -2612,8 +2612,8 @@ static void disas_sparc_insn(DisasContext * dc)
                    goto illegal_insn;
                }
            } else if (xop > 0x33 && xop < 0x3f) {
-#ifdef TARGET_SPARC64
                switch (xop) {
+#ifdef TARGET_SPARC64
                case 0x34: /* V9 stfa */
                    gen_op_stfa(insn, 0, 0, 0); // XXX
                    break;
@@ -2628,12 +2628,16 @@ static void disas_sparc_insn(DisasContext * dc)
                    break;
                case 0x36: /* V9 stqfa */
                    goto nfpu_insn;
+#else
+               case 0x34: /* stc */
+               case 0x35: /* stcsr */
+               case 0x36: /* stdcq */
+               case 0x37: /* stdc */
+                   goto ncp_insn;
+#endif
                default:
                    goto illegal_insn;
                }
-#else
-               goto illegal_insn;
-#endif
             }
            else
                goto illegal_insn;
This page took 0.035404 seconds and 4 git commands to generate.