aboutsummaryrefslogtreecommitdiff
path: root/gdb/i386v-nat.c
diff options
context:
space:
mode:
authorJim Blandy <jimb@codesourcery.com>2000-04-19 23:19:04 +0000
committerJim Blandy <jimb@codesourcery.com>2000-04-19 23:19:04 +0000
commitceef0e305434894e6bc68cd55b48658a85df5d37 (patch)
tree2841199ddf4e099c404901a13e74005455644b76 /gdb/i386v-nat.c
parent4e32685259347bae0453b62a1418395d7771ec25 (diff)
downloadgdb-ceef0e305434894e6bc68cd55b48658a85df5d37.zip
gdb-ceef0e305434894e6bc68cd55b48658a85df5d37.tar.gz
gdb-ceef0e305434894e6bc68cd55b48658a85df5d37.tar.bz2
For real this time.
* i386v-nat.c (i386_insert_nonaligned_watchpoint): Use a two-dimensional array, instead of faking it with explicit index arithmetic.
Diffstat (limited to 'gdb/i386v-nat.c')
-rw-r--r--gdb/i386v-nat.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/gdb/i386v-nat.c b/gdb/i386v-nat.c
index 0bf702c..274d59e 100644
--- a/gdb/i386v-nat.c
+++ b/gdb/i386v-nat.c
@@ -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)