[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 3/4] target-arm: Fix VFP register byte order in GDB
From: |
Fabien Chouteau |
Subject: |
[Qemu-devel] [PATCH 3/4] target-arm: Fix VFP register byte order in GDB remote |
Date: |
Fri, 1 Mar 2013 18:21:46 +0100 |
>From GDB Remote Serial Protocol doc:
"The bytes with the register are transmitted in target byte order."
Signed-off-by: Fabien Chouteau <address@hidden>
---
target-arm/helper.c | 13 ++++++-------
1 file changed, 6 insertions(+), 7 deletions(-)
diff --git a/target-arm/helper.c b/target-arm/helper.c
index e97e1a5..75ee0dc 100644
--- a/target-arm/helper.c
+++ b/target-arm/helper.c
@@ -16,18 +16,17 @@ static int vfp_gdb_get_reg(CPUARMState *env, uint8_t *buf,
int reg)
{
int nregs;
- /* VFP data registers are always little-endian. */
nregs = arm_feature(env, ARM_FEATURE_VFP3) ? 32 : 16;
if (reg < nregs) {
- stfq_le_p(buf, env->vfp.regs[reg]);
+ stfq_p(buf, env->vfp.regs[reg]);
return 8;
}
if (arm_feature(env, ARM_FEATURE_NEON)) {
/* Aliases for Q regs. */
nregs += 16;
if (reg < nregs) {
- stfq_le_p(buf, env->vfp.regs[(reg - 32) * 2]);
- stfq_le_p(buf + 8, env->vfp.regs[(reg - 32) * 2 + 1]);
+ stfq_p(buf, env->vfp.regs[(reg - 32) * 2]);
+ stfq_p(buf + 8, env->vfp.regs[(reg - 32) * 2 + 1]);
return 16;
}
}
@@ -45,14 +44,14 @@ static int vfp_gdb_set_reg(CPUARMState *env, uint8_t *buf,
int reg)
nregs = arm_feature(env, ARM_FEATURE_VFP3) ? 32 : 16;
if (reg < nregs) {
- env->vfp.regs[reg] = ldfq_le_p(buf);
+ env->vfp.regs[reg] = ldfq_p(buf);
return 8;
}
if (arm_feature(env, ARM_FEATURE_NEON)) {
nregs += 16;
if (reg < nregs) {
- env->vfp.regs[(reg - 32) * 2] = ldfq_le_p(buf);
- env->vfp.regs[(reg - 32) * 2 + 1] = ldfq_le_p(buf + 8);
+ env->vfp.regs[(reg - 32) * 2] = ldfq_p(buf);
+ env->vfp.regs[(reg - 32) * 2 + 1] = ldfq_p(buf + 8);
return 16;
}
}
--
1.7.9.5
- [Qemu-devel] [PATCH 1/4] QAPI: Add ARMEB target-type, (continued)
- [Qemu-devel] [PATCH 1/4] QAPI: Add ARMEB target-type, Fabien Chouteau, 2013/03/01
- [Qemu-devel] [PATCH 4/4] target-arm: always set endian bits in big-endian mode, Fabien Chouteau, 2013/03/01
- Re: [Qemu-devel] [PATCH 4/4] target-arm: always set endian bits in big-endian mode, Paul Brook, 2013/03/01
- Re: [Qemu-devel] [PATCH 4/4] target-arm: always set endian bits in big-endian mode, Fabien Chouteau, 2013/03/04
- Re: [Qemu-devel] [PATCH 4/4] target-arm: always set endian bits in big-endian mode, Paul Brook, 2013/03/04
- Re: [Qemu-devel] [PATCH 4/4] target-arm: always set endian bits in big-endian mode, Fabien Chouteau, 2013/03/05
- Re: [Qemu-devel] [PATCH 4/4] target-arm: always set endian bits in big-endian mode, Peter Maydell, 2013/03/05
- Re: [Qemu-devel] [PATCH 4/4] target-arm: always set endian bits in big-endian mode, Fabien Chouteau, 2013/03/05
- Re: [Qemu-devel] [PATCH 4/4] target-arm: always set endian bits in big-endian mode, Peter Maydell, 2013/03/05
- Re: [Qemu-devel] [PATCH 4/4] target-arm: always set endian bits in big-endian mode, Fabien Chouteau, 2013/03/06
[Qemu-devel] [PATCH 3/4] target-arm: Fix VFP register byte order in GDB remote,
Fabien Chouteau <=