[resend, this time with proper cc's] On 03/09/2018 02:20 PM, Michael Clark wrote:
Cc: Palmer Dabbelt <[email protected]> Cc: Peter Maydell <[email protected]> Signed-off-by: Michael Clark <[email protected]> --- target/riscv/cpu.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)diff --git a/target/riscv/cpu.c b/target/riscv/cpu.c index 4851890..f0d6d1d 100644 --- a/target/riscv/cpu.c +++ b/target/riscv/cpu.c @@ -391,7 +391,7 @@ static const TypeInfo riscv_cpu_type_info = { char *riscv_isa_string(RISCVCPU *cpu) { int i; - size_t maxlen = 5 + ctz32(cpu->env.misa); + size_t maxlen = 5 + __builtin_popcountll(cpu->env.misa); char *isa_string = g_new0(char, maxlen); snprintf(isa_string, maxlen, "rv%d", TARGET_LONG_BITS); for (i = 0; i < sizeof(riscv_exts); i++) {
I'd rather you used ctpop64() from host-utils.h, so we have a centralized place to change things just once in case we have to tweak the use of __builtin_popcount when targetting a different compiler.
-- Eric Blake, Principal Software Engineer Red Hat, Inc. +1-919-301-3266 Virtualization: qemu.org | libvirt.org
