[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 07/17] x86: improve SSE table type safety
From: |
Blue Swirl |
Subject: |
Re: [Qemu-devel] [PATCH 07/17] x86: improve SSE table type safety |
Date: |
Tue, 3 Jul 2012 19:00:39 +0000 |
On Mon, Jul 2, 2012 at 8:53 AM, Markus Armbruster <address@hidden> wrote:
> Blue Swirl <address@hidden> writes:
>
>> SSE function tables could easily be corrupted because of use
>> of void pointers.
>>
>> Introduce function pointer types and helper variables in order
>> to improve type safety.
>>
>> Split sse_op_table3 according to types used.
>>
>> Signed-off-by: Blue Swirl <address@hidden>
>
> Clean build on master (commit 71ea2e01):
You have enabled TCG debug, without that it compiles. This should be
fixed with Stefan's patch.
>
> [...]
> CC i386-softmmu/target-i386/translate.o
> /home/armbru/work/qemu/target-i386/translate.c: In function ‘gen_sse’:
> /home/armbru/work/qemu/target-i386/translate.c:3571:27: warning: assignment
> from incompatible pointer type [enabled by default]
> /home/armbru/work/qemu/target-i386/translate.c:3573:17: error: incompatible
> type for argument 2 of ‘sse_fn_pl’
> /home/armbru/work/qemu/target-i386/translate.c:3573:17: note: expected
> ‘TCGv_i64’ but argument is of type ‘TCGv_i32’
> /home/armbru/work/qemu/target-i386/translate.c:3633:28: warning: assignment
> from incompatible pointer type [enabled by default]
> /home/armbru/work/qemu/target-i386/translate.c:3636:17: error: incompatible
> type for argument 1 of ‘sse_fn_l_p’
> /home/armbru/work/qemu/target-i386/translate.c:3636:17: note: expected
> ‘TCGv_i64’ but argument is of type ‘TCGv_i32’
> make[1]: *** [target-i386/translate.o] Error 1
> [...]
> CC x86_64-softmmu/target-i386/translate.o
> /home/armbru/work/qemu/target-i386/translate.c:2953:5: warning:
> initialization from incompatible pointer type [enabled by default]
> /home/armbru/work/qemu/target-i386/translate.c:2953:5: warning: (near
> initialization for ‘sse_op_table3a[2]’) [enabled by default]
> /home/armbru/work/qemu/target-i386/translate.c:2954:5: warning:
> initialization from incompatible pointer type [enabled by default]
> /home/armbru/work/qemu/target-i386/translate.c:2954:5: warning: (near
> initialization for ‘sse_op_table3a[3]’) [enabled by default]
> /home/armbru/work/qemu/target-i386/translate.c:2960:5: warning:
> initialization from incompatible pointer type [enabled by default]
> /home/armbru/work/qemu/target-i386/translate.c:2960:5: warning: (near
> initialization for ‘sse_op_table3b[2]’) [enabled by default]
> /home/armbru/work/qemu/target-i386/translate.c:2961:5: warning:
> initialization from incompatible pointer type [enabled by default]
> /home/armbru/work/qemu/target-i386/translate.c:2961:5: warning: (near
> initialization for ‘sse_op_table3b[3]’) [enabled by default]
> /home/armbru/work/qemu/target-i386/translate.c:2965:5: warning:
> initialization from incompatible pointer type [enabled by default]
> /home/armbru/work/qemu/target-i386/translate.c:2965:5: warning: (near
> initialization for ‘sse_op_table3b[6]’) [enabled by default]
> /home/armbru/work/qemu/target-i386/translate.c:2966:5: warning:
> initialization from incompatible pointer type [enabled by default]
> /home/armbru/work/qemu/target-i386/translate.c:2966:5: warning: (near
> initialization for ‘sse_op_table3b[7]’) [enabled by default]
> /home/armbru/work/qemu/target-i386/translate.c: In function ‘gen_sse’:
> /home/armbru/work/qemu/target-i386/translate.c:3571:27: warning: assignment
> from incompatible pointer type [enabled by default]
> /home/armbru/work/qemu/target-i386/translate.c:3633:28: warning: assignment
> from incompatible pointer type [enabled by default]
>
> Reverting commit c4baa050 makes it compile.