Hi Torbjörn, > -----Original Message----- > From: Torbjorn SVENSSON <torbjorn.svens...@foss.st.com> > Sent: Wednesday, October 5, 2022 10:28 AM > To: Kyrylo Tkachov <kyrylo.tkac...@arm.com> > Cc: Yvan Roux <yvan.r...@foss.st.com> > Subject: Fwd: PING^1 [PATCH] testsuite: 'b' instruction can't do long enough > jumps > > Hi Kyrill, > > I checked with Richard Sandiford if he could review this patch, but he > pointed to you. > Do you think that you can take a look it?
This is ok. I don't think it changes any of the things we want to actually test for in these cases. Thanks, Kyrill > > Thank you! > > Kind regards, > Torbjörn > > > -------- Forwarded Message -------- > Subject: PING^1 [PATCH] testsuite: 'b' instruction can't do long enough > jumps > Date: Wed, 28 Sep 2022 11:17:13 +0200 > From: Torbjorn SVENSSON <torbjorn.svens...@foss.st.com> > To: gcc-patches@gcc.gnu.org > CC: yvan.r...@foss.st.com, r...@cebitec.uni-bielefeld.de, > mikest...@comcast.net, kyrylo.tkac...@arm.com > > Hi, > > Ping: https://gcc.gnu.org/pipermail/gcc-patches/2022- > September/601829.html > > Kind regards, > Torbjörn > > On 2022-09-19 18:30, Torbjörn SVENSSON wrote: > > After moving the testglue in commit 9d503515cee, the jump to exit and > > abort is too far for the 'b' instruction on Cortex-M0. As most of the > > C code would generate a 'bl' instruction instead of a 'b' > > instruction, lets do the same for the inline assembler. > > > > The error seen without this patch: > > > > /tmp/cccCRiCl.o: in function `main': > > stack-protector-1.c:(.text+0x4e): relocation truncated to fit: > R_ARM_THM_JUMP11 against symbol `__wrap_exit' defined in .text section > in gcc_tg.o > > stack-protector-1.c:(.text+0x50): relocation truncated to fit: > R_ARM_THM_JUMP11 against symbol `__wrap_abort' defined in .text > section in gcc_tg.o > > collect2: error: ld returned 1 exit status > > > > gcc/testsuite/ChangeLog: > > > > * gcc/testsuite/gcc.target/arm/stack-protector-1.c: Use 'bl' > > instead of 'b' instruction. > > * gcc/testsuite/gcc.target/arm/stack-protector-3.c: Likewise. > > > > Co-Authored-By: Yvan ROUX <yvan.r...@foss.st.com> > > Signed-off-by: Torbjörn SVENSSON <torbjorn.svens...@foss.st.com> > > --- > > gcc/testsuite/gcc.target/arm/stack-protector-1.c | 4 ++-- > > gcc/testsuite/gcc.target/arm/stack-protector-3.c | 2 +- > > 2 files changed, 3 insertions(+), 3 deletions(-) > > > > diff --git a/gcc/testsuite/gcc.target/arm/stack-protector-1.c > b/gcc/testsuite/gcc.target/arm/stack-protector-1.c > > index 8d28b0a847c..3f0ffc9c3f3 100644 > > --- a/gcc/testsuite/gcc.target/arm/stack-protector-1.c > > +++ b/gcc/testsuite/gcc.target/arm/stack-protector-1.c > > @@ -56,8 +56,8 @@ asm ( > > " ldr r1, [sp, #4]\n" > > CHECK (r1) > > " mov r0, #0\n" > > -" b exit\n" > > +" bl exit\n" > > "1:\n" > > -" b abort\n" > > +" bl abort\n" > > " .size main, .-main" > > ); > > diff --git a/gcc/testsuite/gcc.target/arm/stack-protector-3.c > b/gcc/testsuite/gcc.target/arm/stack-protector-3.c > > index b8f77fa2309..2f710529b8f 100644 > > --- a/gcc/testsuite/gcc.target/arm/stack-protector-3.c > > +++ b/gcc/testsuite/gcc.target/arm/stack-protector-3.c > > @@ -26,7 +26,7 @@ asm ( > > " .type __stack_chk_fail, %function\n" > > "__stack_chk_fail:\n" > > " movs r0, #0\n" > > -" b exit\n" > > +" bl exit\n" > > " .size __stack_chk_fail, .-__stack_chk_fail" > > ); > >