]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - sim/aarch64/cpustate.c
Fix code to check for illegal element numbers when accessing AArch64 vector registers...
[thirdparty/binutils-gdb.git] / sim / aarch64 / cpustate.c
index 86b1b15cb4b7c3859940c3e5942c837adc820f98..19f485e81eaf60e587d7f5a805a6a05963ee8796 100644 (file)
@@ -345,7 +345,7 @@ aarch64_set_FP_long_double (sim_cpu *cpu, VReg reg, FRegister a)
 #define GET_VEC_ELEMENT(REG, ELEMENT, FIELD)      \
   do                                              \
     {                                             \
-      if (element > ARRAY_SIZE (cpu->fr[0].FIELD)) \
+      if (element >= ARRAY_SIZE (cpu->fr[0].FIELD)) \
        {                                                               \
          TRACE_REGISTER (cpu, \
                          "Internal SIM error: invalid element number: %d ",\
@@ -421,7 +421,7 @@ aarch64_get_vec_double (sim_cpu *cpu, VReg reg, unsigned element)
 #define SET_VEC_ELEMENT(REG, ELEMENT, VAL, FIELD, PRINTER)     \
   do                                                           \
     {                                                          \
-      if (ELEMENT > ARRAY_SIZE (cpu->fr[0].FIELD))                     \
+      if (ELEMENT >= ARRAY_SIZE (cpu->fr[0].FIELD))                    \
        {                                                               \
          TRACE_REGISTER (cpu, \
                          "Internal SIM error: invalid element number: %d ",\