[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 04/17] target-i386: add x86_cpu_vendor_words2str
From: |
Eduardo Habkost |
Subject: |
Re: [Qemu-devel] [PATCH 04/17] target-i386: add x86_cpu_vendor_words2str() |
Date: |
Fri, 11 Jan 2013 00:28:47 -0200 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
On Fri, Jan 11, 2013 at 03:10:18AM +0100, Igor Mammedov wrote:
> Make for() cycle reusable for the next patch
>
> Signed-off-by: Igor Mammedov <address@hidden>
Reviewed-by: Eduardo Habkost <address@hidden>
Very minor style comment below.
> ---
> v4:
> - rename x86cpu_vendor_words2str() to x86_cpu_vendor_words2str()
> Suggested-By: Andreas Färber <address@hidden>
> v3:
> -replace e[bcd]x arguments naming with vendor[123]
> -fix/swap vendor2 and vendor3 order
> Spotted-By: Eduardo Habkost <address@hidden>
> v2:
> -place x86cpu_vendor_words2str() a bit earlier, before feature
> arrays to avoid compile error when vendor property is converted
> static property.
> ---
> target-i386/cpu.c | 21 ++++++++++++++-------
> 1 files changed, 14 insertions(+), 7 deletions(-)
>
> diff --git a/target-i386/cpu.c b/target-i386/cpu.c
> index c4ff761..64cc88f 100644
> --- a/target-i386/cpu.c
> +++ b/target-i386/cpu.c
> @@ -45,6 +45,18 @@
> #include "hw/apic_internal.h"
> #endif
>
> +static void x86_cpu_vendor_words2str(char *dst, uint32_t vendor1,
> + uint32_t vendor2, uint32_t vendor3)
> +{
> + int i;
> + for (i = 0; i < 4; i++) {
> + dst[i] = vendor1 >> (8 * i);
> + dst[i + 4] = vendor2 >> (8 * i);
> + dst[i + 8] = vendor3 >> (8 * i);
> + }
> + dst[CPUID_VENDOR_SZ] = '\0';
> +}
> +
> /* feature flags taken from "Intel Processor Identification and the CPUID
> * Instruction" and AMD's "CPUID Specification". In cases of disagreement
> * between feature naming conventions, aliases may be added.
> @@ -1213,15 +1225,10 @@ static char *x86_cpuid_get_vendor(Object *obj, Error
> **errp)
> X86CPU *cpu = X86_CPU(obj);
> CPUX86State *env = &cpu->env;
> char *value;
> - int i;
>
> value = (char *)g_malloc(CPUID_VENDOR_SZ + 1);
> - for (i = 0; i < 4; i++) {
> - value[i ] = env->cpuid_vendor1 >> (8 * i);
> - value[i + 4] = env->cpuid_vendor2 >> (8 * i);
> - value[i + 8] = env->cpuid_vendor3 >> (8 * i);
> - }
> - value[CPUID_VENDOR_SZ] = '\0';
> + x86_cpu_vendor_words2str(value, env->cpuid_vendor1, env->cpuid_vendor2,
> + env->cpuid_vendor3);
I would add one extra space, so the argument in the second line are
aligned with the first argument from the previous line.
> return value;
> }
>
> --
> 1.7.1
>
--
Eduardo
[Qemu-devel] [PATCH 06/17] target-i386: remove vendor_override field from CPUX86State, Igor Mammedov, 2013/01/10
Re: [Qemu-devel] [PATCH 06/17] target-i386: remove vendor_override field from CPUX86State, Eduardo Habkost, 2013/01/11