vex: r3295 - /trunk/priv/guest_arm_toIR.c

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

vex: r3295 - /trunk/priv/guest_arm_toIR.c

svn-2
Author: sewardj
Date: Mon Jan 16 05:14:24 2017
New Revision: 3295

Log:
dis_neon_data_3same: don't silently accept invalid instructions.  Instead,
"return False" for any instruction not accepted by this function.  Also,
add a few switch default backstops.

Modified:
    trunk/priv/guest_arm_toIR.c

Modified: trunk/priv/guest_arm_toIR.c
==============================================================================
--- trunk/priv/guest_arm_toIR.c (original)
+++ trunk/priv/guest_arm_toIR.c Mon Jan 16 05:14:24 2017
@@ -3392,6 +3392,8 @@
                          reg_t, dreg, reg_t, nreg, reg_t, mreg);
                      break;
                   }
+                  default:
+                     vassert(0);
                }
             } else {
                switch(C) {
@@ -3489,6 +3491,8 @@
                          Q ? 'q' : 'd', dreg,
                          Q ? 'q' : 'd', nreg, Q ? 'q' : 'd', mreg);
                      break;
+                  default:
+                     vassert(0);
                }
             }
          }
@@ -4611,6 +4615,8 @@
                DIP("vpadd.i%d %c%u, %c%u, %c%u\n",
                    8 << size, Q ? 'q' : 'd',
                    dreg, Q ? 'q' : 'd', nreg, Q ? 'q' : 'd', mreg);
+            } else {
+               return False;
             }
          }
          break;
@@ -4768,6 +4774,8 @@
                DIP("vacg%c.f32 %c%u, %c%u, %c%u\n", op_bit ? 't' : 'e',
                    Q ? 'q' : 'd', dreg, Q ? 'q' : 'd', nreg,
                    Q ? 'q' : 'd', mreg);
+            } else {
+               return False;
             }
          }
          break;
@@ -4827,6 +4835,8 @@
                   DIP("vrsqrts.f32 %c%u, %c%u, %c%u\n", Q ? 'q' : 'd', dreg,
                       Q ? 'q' : 'd', nreg, Q ? 'q' : 'd', mreg);
                }
+            } else {
+               return False;
             }
          }
          break;


------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today. http://sdm.link/xeonphi
_______________________________________________
Valgrind-developers mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/valgrind-developers