On 2026-03-02 12:14, Richard Earnshaw (foss) wrote:
On 02/03/2026 10:59, Torbjorn SVENSSON wrote:
On 2026-03-02 11:46, Richard Earnshaw (foss) wrote:
On 02/03/2026 10:42, Richard Biener wrote:
On Mon, 2 Mar 2026, Torbjörn SVENSSON wrote:
Ok for trunk?
OK.
Wait!
How is this failing for you? I'm not seeing that happen in my results.
The entire test output is here:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124320#c0
I'm not seeing those errors on my thumb(1) runs.
Executing on host: /work/rearnsha/scratch/nightly/arm/master/gcc/xgcc
-B/work/rearnsha/scratch/nightly/arm/master/gcc/ -mthumb
-fdiagnostics-plain-output -O2 -flto -flto-partition=1to1 -c -isystem
/work/rearnsha/scratch/nightly/arm/master/arm-eabi/thumb/newlib/targ-include
-isystem /home/rearnsha/gnusrc/nightly/gcc-cross/master/newlib/libc/include -o
c_lto_toplevel-extended-asm-1_0.o
/home/rearnsha/gnusrc/nightly/gcc-cross/master/gcc/testsuite/gcc.dg/lto/toplevel-extended-asm-1_0.c
(timeout = 300)
spawn -ignore SIGHUP /work/rearnsha/scratch/nightly/arm/master/gcc/xgcc
-B/work/rearnsha/scratch/nightly/arm/master/gcc/ -mthumb
-fdiagnostics-plain-output -O2 -flto -flto-partition=1to1 -c -isystem
/work/rearnsha/scratch/nightly/arm/master/arm-eabi/thumb/newlib/targ-include
-isystem /home/rearnsha/gnusrc/nightly/gcc-cross/master/newlib/libc/include -o
c_lto_toplevel-extended-asm-1_0.o
/home/rearnsha/gnusrc/nightly/gcc-cross/master/gcc/testsuite/gcc.dg/lto/toplevel-extended-asm-1_0.c
PASS: gcc.dg/lto/toplevel-extended-asm-1 c_lto_toplevel-extended-asm-1_0.o
assemble, -O2 -flto -flto-partition=1to1
Executing on host: /work/rearnsha/scratch/nightly/arm/master/gcc/xgcc
-B/work/rearnsha/scratch/nightly/arm/master/gcc/ -mthumb
-fdiagnostics-plain-output -O2 -flto -flto-partition=1to1 -c -isystem
/work/rearnsha/scratch/nightly/arm/master/arm-eabi/thumb/newlib/targ-include
-isystem /home/rearnsha/gnusrc/nightly/gcc-cross/master/newlib/libc/include -o
c_lto_toplevel-extended-asm-1_1.o
/home/rearnsha/gnusrc/nightly/gcc-cross/master/gcc/testsuite/gcc.dg/lto/toplevel-extended-asm-1_1.c
(timeout = 300)
spawn -ignore SIGHUP /work/rearnsha/scratch/nightly/arm/master/gcc/xgcc
-B/work/rearnsha/scratch/nightly/arm/master/gcc/ -mthumb
-fdiagnostics-plain-output -O2 -flto -flto-partition=1to1 -c -isystem
/work/rearnsha/scratch/nightly/arm/master/arm-eabi/thumb/newlib/targ-include
-isystem /home/rearnsha/gnusrc/nightly/gcc-cross/master/newlib/libc/include -o
c_lto_toplevel-extended-asm-1_1.o
/home/rearnsha/gnusrc/nightly/gcc-cross/master/gcc/testsuite/gcc.dg/lto/toplevel-extended-asm-1_1.c
PASS: gcc.dg/lto/toplevel-extended-asm-1 c_lto_toplevel-extended-asm-1_1.o
assemble, -O2 -flto -flto-partition=1to1
Executing on host: /work/rearnsha/scratch/nightly/arm/master/gcc/xgcc
-B/work/rearnsha/scratch/nightly/arm/master/gcc/ c_lto_toplevel-extended-asm-1_0.o
c_lto_toplevel-extended-asm-1_1.o -mthumb -dumpbase ""
-fdiagnostics-plain-output -O2 -flto -flto-partition=1to1 -isystem
/work/rearnsha/scratch/nightly/arm/master/arm-eabi/thumb/newlib/targ-include -isystem
/home/rearnsha/gnusrc/nightly/gcc-cross/master/newlib/libc/include
-B/work/rearnsha/scratch/nightly/arm/master/arm-eabi/thumb/libgloss/arm/
-L/work/rearnsha/scratch/nightly/arm/master/arm-eabi/thumb/libgloss/arm
-L/home/rearnsha/gnusrc/nightly/gcc-cross/master/libgloss/arm
-L/work/rearnsha/scratch/nightly/arm/master/ld
-B/work/rearnsha/scratch/nightly/arm/master/arm-eabi/thumb/newlib/
-L/work/rearnsha/scratch/nightly/arm/master/arm-eabi/thumb/newlib --specs=sync-none.specs
-Wl,-wrap,exit -Wl,-wrap,_exit -Wl,-wrap,main -Wl,-wrap,abort -Wl,gcc_tg.o -o
gcc-dg-lto-toplevel-extended-asm-1-01.exe (timeout = 300)
spawn -ignore SIGHUP /work/rearnsha/scratch/nightly/arm/master/gcc/xgcc
-B/work/rearnsha/scratch/nightly/arm/master/gcc/
c_lto_toplevel-extended-asm-1_0.o c_lto_toplevel-extended-asm-1_1.o -mthumb
-dumpbase -fdiagnostics-plain-output -O2 -flto -flto-partition=1to1 -isystem
/work/rearnsha/scratch/nightly/arm/master/arm-eabi/thumb/newlib/targ-include
-isystem /home/rearnsha/gnusrc/nightly/gcc-cross/master/newlib/libc/include
-B/work/rearnsha/scratch/nightly/arm/master/arm-eabi/thumb/libgloss/arm/
-L/work/rearnsha/scratch/nightly/arm/master/arm-eabi/thumb/libgloss/arm
-L/home/rearnsha/gnusrc/nightly/gcc-cross/master/libgloss/arm
-L/work/rearnsha/scratch/nightly/arm/master/ld
-B/work/rearnsha/scratch/nightly/arm/master/arm-eabi/thumb/newlib/
-L/work/rearnsha/scratch/nightly/arm/master/arm-eabi/thumb/newlib
--specs=sync-none.specs -Wl,-wrap,exit -Wl,-wrap,_exit -Wl,-wrap,main
-Wl,-wrap,abort -Wl,gcc_tg.o -o gcc-dg-lto-toplevel-extended-asm-1-01.exe
lto-wrapper: warning: using serial compilation of 2 LTRANS jobs
lto-wrapper: note: see the '-flto' option documentation for more information
PASS: gcc.dg/lto/toplevel-extended-asm-1
c_lto_toplevel-extended-asm-1_0.o-c_lto_toplevel-extended-asm-1_1.o link, -O2
-flto -flto-partition=1to1
So the question is why are we seeing different behaviours here?
I suppose your toolchain is uing -march=armv4t internally when you do not
define an arch and this architecture supports both -marm, -mthumb and a mix of
them.
Maybe my expression is not completly correct. Maybe it should be like this?
/* { dg-skip-if "inline assembler not compatible" { { arm_thumb1 || arm_thumb2 }
&& { ! arm_arm_ok } } } */
While writing this reply, I saw that you asked for what version of binutils I'm
using and it's 2.45.1.
Kind regards,
Torbjörn
R.
Kind regards,
Torbjörn
R.
--
The inline assembler in the test case is incompatible with -mthumb for
arm-none-eabi toolchains.
gcc/testsuite/ChangeLog:
PR testsuite/124320
* gcc.dg/lto/toplevel-extended-asm-1_0.c: Skip test for thumb
mode.
Signed-off-by: Torbjörn SVENSSON <[email protected]>
---
gcc/testsuite/gcc.dg/lto/toplevel-extended-asm-1_0.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/gcc/testsuite/gcc.dg/lto/toplevel-extended-asm-1_0.c
b/gcc/testsuite/gcc.dg/lto/toplevel-extended-asm-1_0.c
index 341d95ae0d5..8988a06c0a7 100644
--- a/gcc/testsuite/gcc.dg/lto/toplevel-extended-asm-1_0.c
+++ b/gcc/testsuite/gcc.dg/lto/toplevel-extended-asm-1_0.c
@@ -1,4 +1,5 @@
/* { dg-lto-do link } */
+/* { dg-skip-if "inline assembler not compatible" { arm_thumb1 || arm_thumb2 }
} */
/* { dg-lto-options {{-O2 -flto -flto-partition=1to1} } } */
void asm_fn();