Message ID | 20250127115426.51355-4-philmd@linaro.org |
---|---|
State | New |
Headers | show |
Series | disas: Have CPUClass::disas_set_info() callback set the endianness | expand |
On 27/01/2025 12.54, Philippe Mathieu-Daudé wrote: > Have the CPUClass::disas_set_info() callback set the > disassemble_info::endian field. > > Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> > --- > target/arm/cpu.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/target/arm/cpu.c b/target/arm/cpu.c > index f9fdf708653..9de8c799c77 100644 > --- a/target/arm/cpu.c > +++ b/target/arm/cpu.c > @@ -1220,6 +1220,8 @@ static void arm_disas_set_info(CPUState *cpu, disassemble_info *info) > #else > info->endian = BFD_ENDIAN_BIG; > #endif > + } else { > + info->endian = BFD_ENDIAN_LITTLE; > } I'd maybe rather go with something like this: info->endian = BFD_ENDIAN_LITTLE; #if TARGET_BIG_ENDIAN if (bswap_code(sctlr_b)) { info->endian = BFD_ENDIAN_LITTLE; } #endif What do you think? Thomas
diff --git a/target/arm/cpu.c b/target/arm/cpu.c index f9fdf708653..9de8c799c77 100644 --- a/target/arm/cpu.c +++ b/target/arm/cpu.c @@ -1220,6 +1220,8 @@ static void arm_disas_set_info(CPUState *cpu, disassemble_info *info) #else info->endian = BFD_ENDIAN_BIG; #endif + } else { + info->endian = BFD_ENDIAN_LITTLE; } info->flags &= ~INSN_ARM_BE32; #ifndef CONFIG_USER_ONLY
Have the CPUClass::disas_set_info() callback set the disassemble_info::endian field. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> --- target/arm/cpu.c | 2 ++ 1 file changed, 2 insertions(+)