qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [RFC v11 22/55] target/arm: move sve_zcr_len_for_el to common_cpu


From: Richard Henderson
Subject: Re: [RFC v11 22/55] target/arm: move sve_zcr_len_for_el to common_cpu
Date: Wed, 24 Mar 2021 16:03:34 -0600
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.7.1

On 3/23/21 9:46 AM, Claudio Fontana wrote:
it is required by arch-dump.c and cpu.c, so apparently
we need this for KVM too

Signed-off-by: Claudio Fontana <cfontana@suse.de>


Reviewed-by: Richard Henderson <richard.henderson@linaro.org>


+/*
+ * these are AARCH64-only, but due to the chain of dependencies,
+ * between HELPER prototypes, hflags, cpreg definitions and functions in
+ * tcg/ etc, it becomes incredibly messy to add what should be here:
+ *
+ * #ifdef TARGET_AARCH64
+ */
+
+static uint32_t sve_zcr_get_valid_len(ARMCPU *cpu, uint32_t start_len)
+{
+    uint32_t end_len;
+
+    end_len = start_len &= 0xf;
+    if (!test_bit(start_len, cpu->sve_vq_map)) {
+        end_len = find_last_bit(cpu->sve_vq_map, start_len);
+        assert(end_len < start_len);
+    }
+    return end_len;
+}

I guess you could

#ifdef TARGET_AARCH64
    ...
#else
    g_assert_not_reached();
#endif

Dunno if it's worth it or not, since they're small.


r~



reply via email to

[Prev in Thread] Current Thread [Next in Thread]