For real this time.
authorJim Blandy <jimb@codesourcery.com>
Wed, 19 Apr 2000 23:19:04 +0000 (23:19 +0000)
committerJim Blandy <jimb@codesourcery.com>
Wed, 19 Apr 2000 23:19:04 +0000 (23:19 +0000)
* i386v-nat.c (i386_insert_nonaligned_watchpoint): Use a
two-dimensional array, instead of faking it with explicit index
arithmetic.

gdb/i386v-nat.c

index 0bf702c368c7c5f9ba9dca9fc69af0dd8aa68c7c..274d59e4d77cc763e4686171bb688f268e45c981 100644 (file)
@@ -229,12 +229,12 @@ i386_insert_nonaligned_watchpoint (pid, waddr, addr, len, rw)
   int size;
   int rv;
 
-  static int size_try_array[16] =
+  static int size_try_array[4][4] =
   {
-    1, 1, 1, 1,                        /* trying size one */
-    2, 1, 2, 1,                        /* trying size two */
-    2, 1, 2, 1,                        /* trying size three */
-    4, 1, 2, 1                 /* trying size four */
+    { 1, 1, 1, 1 },            /* trying size one */
+    { 2, 1, 2, 1 },            /* trying size two */
+    { 2, 1, 2, 1 },            /* trying size three */
+    { 4, 1, 2, 1 }             /* trying size four */
   };
 
   rv = 0;
@@ -242,8 +242,7 @@ i386_insert_nonaligned_watchpoint (pid, waddr, addr, len, rw)
     {
       align = addr % 4;
       /* Four is the maximum length for 386.  */
-      size = (len > 4) ? 3 : len - 1;
-      size = size_try_array[size * 4 + align];
+      size = size_try_array[len > 4 ? 3 : len - 1][align];
 
       rv = i386_insert_aligned_watchpoint (pid, waddr, addr, size, rw);
       if (rv)