[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 04/21] linux-user/arm: Implement setup_sigtramp
From: |
Alex Bennée |
Subject: |
Re: [PATCH 04/21] linux-user/arm: Implement setup_sigtramp |
Date: |
Wed, 16 Jun 2021 14:49:59 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) |
Alex Bennée <alex.bennee@linaro.org> writes:
> Richard Henderson <richard.henderson@linaro.org> writes:
>
>> ARM is more complicated than the others, in that we also
>> have trampolines for using SA_RESTORER with FDPIC, and
>> we need to create trampolines for both ARM and Thumb modes.
>>
>> Cc: qemu-arm@nongnu.org
>> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
>> ---
>> linux-user/arm/target_signal.h | 2 +
>> linux-user/arm/signal.c | 170 +++++++++++++++++++--------------
>> 2 files changed, 100 insertions(+), 72 deletions(-)
>>
>> +
>> + /* ARM sigframe */
>> + _Static_assert(SIGFRAME_FDPIC_OFS <= 0xfff);
>> + __put_user(0xe59d9000 | SIGFRAME_FDPIC_OFS, &tramp[i++]);
>> + __put_user(0xe8998200, &tramp[i++]);
>
> Erm is this based on your c11 series?
Actually it's merged already so I'm seeing the following on hackbox:
FAILED: libqemu-armeb-linux-user.fa.p/linux-user_arm_signal.c.o
cc -Ilibqemu-armeb-linux-user.fa.p -I. -I../.. -Itarget/arm
-I../../target/arm -I../../linux-user/host/x86_64 -Ilinux-user
-I../../linux-user -Ilinux-user/arm -I../../linux-
user/arm -I../../capstone/include/capstone -Itrace -Iqapi -Iui/shader
-I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include
-fdiagnostics-color=auto -pipe -Wa
ll -Winvalid-pch -Werror -std=gnu99 -O2 -g -isystem
/home/alex.bennee/lsrc/qemu.git/linux-headers -isystem linux-headers -iquote .
-iquote /home/alex.bennee/lsrc/qemu.git -i
quote /home/alex.bennee/lsrc/qemu.git/include -iquote
/home/alex.bennee/lsrc/qemu.git/disas/libvixl -iquote
/home/alex.bennee/lsrc/qemu.git/tcg/i386 -pthread -U_FORTIFY_SOUR
CE -D_FORTIFY_SOURCE=2 -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wundef
-Wwrite-strings -Wmissing-prototype
s -fno-strict-aliasing -fno-common -fwrapv -Wold-style-declaration
-Wold-style-definition -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self
-Wignored-qualifiers -Wemp
ty-body -Wnested-externs -Wendif-labels -Wexpansion-to-defined
-Wimplicit-fallthrough=2 -Wno-missing-include-dirs -Wno-shift-negative-value
-Wno-psabi -fstack-protector-stro
ng -isystem../../linux-headers -isystemlinux-headers -DNEED_CPU_H
'-DCONFIG_TARGET="armeb-linux-user-config-target.h"'
'-DCONFIG_DEVICES="armeb-linux-user-config-devices.h"'
-MD -MQ libqemu-armeb-linux-user.fa.p/linux-user_arm_signal.c.o -MF
libqemu-armeb-linux-user.fa.p/linux-user_arm_signal.c.o.d -o
libqemu-armeb-linux-user.fa.p/linux-user_ar
m_signal.c.o -c ../../linux-user/arm/signal.c
../../linux-user/arm/signal.c: In function ‘setup_sigtramp’:
../../linux-user/arm/signal.c:847:47: error: expected ‘,’ before ‘)’ token
_Static_assert(SIGFRAME_FDPIC_OFS <= 0xfff);
^
../../linux-user/arm/signal.c:852:51: error: expected ‘,’ before ‘)’ token
_Static_assert(SIGFRAME_FDPIC_OFS <= 0xff << 2);
^
../../linux-user/arm/signal.c:853:49: error: expected ‘,’ before ‘)’ token
_Static_assert((SIGFRAME_FDPIC_OFS & 3) == 0);
^
../../linux-user/arm/signal.c:858:50: error: expected ‘,’ before ‘)’ token
_Static_assert(RT_SIGFRAME_FDPIC_OFS <= 0xfff);
^
../../linux-user/arm/signal.c:863:54: error: expected ‘,’ before ‘)’ token
_Static_assert(RT_SIGFRAME_FDPIC_OFS <= 0xff << 2);
^
../../linux-user/arm/signal.c:864:52: error: expected ‘,’ before ‘)’ token
_Static_assert((RT_SIGFRAME_FDPIC_OFS & 3) == 0);
--
Alex Bennée
[PATCH 08/21] linux-user/hppa: Document non-use of setup_sigtramp, Richard Henderson, 2021/06/15