We used to make a distinction between 'float64'/'float32' types and
the 'uint64_t'/'uint32_t' types, requiring special conversion
operations to go between them. We've now dropped this distinction as
unnecessary, and the 'float*' types remain primarily for
documentation purposes when used in places like the function
prototypes of TCG helper functions.
This means that there's no need for a special gdb_get_float32()
function to write a float32 value to the GDB protocol buffer; we can
just use gdb_get_reg32().
Similarly, for reading a value out of the GDB buffer into a float32
we can use ldl_p() and need not use ldfl_p().
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <
20210208113428.7181-2-peter.maydell@linaro.org>
Message-Id: <
20210211122750.22645-11-alex.bennee@linaro.org>
return gdb_get_regl(mem_buf, env->fpscr);
case 25 ... 40:
if (env->fpscr & FPSCR_FR) {
- return gdb_get_float32(mem_buf, env->fregs[n - 9]);
+ return gdb_get_reg32(mem_buf, env->fregs[n - 9]);
}
- return gdb_get_float32(mem_buf, env->fregs[n - 25]);
+ return gdb_get_reg32(mem_buf, env->fregs[n - 25]);
case 41:
return gdb_get_regl(mem_buf, env->ssr);
case 42:
break;
case 25 ... 40:
if (env->fpscr & FPSCR_FR) {
- env->fregs[n - 9] = ldfl_p(mem_buf);
+ env->fregs[n - 9] = ldl_p(mem_buf);
} else {
- env->fregs[n - 25] = ldfl_p(mem_buf);
+ env->fregs[n - 25] = ldl_p(mem_buf);
}
break;
case 41: