]> git.proxmox.com Git - qemu.git/commitdiff
Silently ignore CRIS cache flushes, instead of aborting due to unknown insn.
authoredgar_igl <edgar_igl@c046a42c-6fe2-441c-8c8c-71466251a162>
Mon, 25 Feb 2008 09:58:22 +0000 (09:58 +0000)
committeredgar_igl <edgar_igl@c046a42c-6fe2-441c-8c8c-71466251a162>
Mon, 25 Feb 2008 09:58:22 +0000 (09:58 +0000)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3990 c046a42c-6fe2-441c-8c8c-71466251a162

target-cris/crisv32-decode.h
target-cris/translate.c

index 5d30dcc4be8c3f33f01e0100f8d78c8e248fbc9b..3a515c4a05352cea4457997bc88235d17d4c984e 100644 (file)
 #define DEC_BASC_IM  {B8(11101111), B8(11111111)}
 #define DEC_MOVEM_MR {B8(10111011), B8(10111111)}
 #define DEC_MOVEM_RM {B8(10111111), B8(10111111)}
+
+#define DEC_FTAG_FIDX_D_M {B8(10101011), B8(11111111)}
+#define DEC_FTAG_FIDX_I_M {B8(11010011), B8(11111111)}
index 3a5e5eb1ba2c47b50f82ef98e34c1138b642c7d3..d8cfda555961106d541a9bcc7fcf58cdb88b6769 100644 (file)
@@ -2123,6 +2123,18 @@ static unsigned int dec_rfe_etc(DisasContext *dc)
        return 2;
 }
 
+static unsigned int dec_ftag_fidx_d_m(DisasContext *dc)
+{
+       /* Ignore D-cache flushes.  */
+       return 2;
+}
+
+static unsigned int dec_ftag_fidx_i_m(DisasContext *dc)
+{
+       /* Ignore I-cache flushes.  */
+       return 2;
+}
+
 static unsigned int dec_null(DisasContext *dc)
 {
        printf ("unknown insn pc=%x opc=%x op1=%x op2=%x\n",
@@ -2213,8 +2225,8 @@ struct decoder_info {
        {DEC_NEG_R, dec_neg_r},
        {DEC_MOVE_R, dec_move_r},
 
-       /* ftag_fidx_i_m.  */
-       /* ftag_fidx_d_m.  */
+       {DEC_FTAG_FIDX_I_M, dec_ftag_fidx_i_m},
+       {DEC_FTAG_FIDX_D_M, dec_ftag_fidx_d_m},
 
        {DEC_MULS_R, dec_muls_r},
        {DEC_MULU_R, dec_mulu_r},