* Mass-building defconfigs: many fail with assembler errors
@ 2022-12-12 21:51 Jan-Benedict Glaw
2022-12-13 0:26 ` Segher Boessenkool
2022-12-13 3:49 ` Michael Ellerman
0 siblings, 2 replies; 14+ messages in thread
From: Jan-Benedict Glaw @ 2022-12-12 21:51 UTC (permalink / raw)
To: linuxppc-dev
[-- Attachment #1: Type: text/plain, Size: 62565 bytes --]
Hi!
Is anybody else routinely building current Binutils + GCC, to try to
build all the Linux defconfigs? For PPC, a good number of those fail,
and I probably don't understand PPC well enough to propose patches. Or
did I pick wrongly targeted toolchains? Most of the time, my suspicion
is that we're not giving the correct -m<cpu> flags in
./arch/powerpc/boot/? (My setup for doing test builds is fairly automated, I
can easily throw in patches for testing.)
64-bit.config
powerpc64-linux-gcc -Wp,-MD,arch/powerpc/boot/.opal-calls.o.d -D__ASSEMBLY__ -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -O2 -msoft-float -mno-altivec -mno-vsx -pipe -fomit-frame-pointer -fno-builtin -fPIC -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -m32 -mcpu=powerpc -isystem /var/lib/laminar/run/linux-powerpc-64-bit.config/12/toolchain/bin/../lib/gcc/powerpc64-linux/13.0.0/include -mbig-endian -nostdinc -c -o arch/powerpc/boot/opal-calls.o arch/powerpc/boot/opal-calls.S
arch/powerpc/boot/opal-calls.S: Assembler messages:
arch/powerpc/boot/opal-calls.S:20: Error: unrecognized opcode: `ld'
arch/powerpc/boot/opal-calls.S:21: Error: unrecognized opcode: `ld'
arch/powerpc/boot/opal-calls.S:32: Error: unrecognized opcode: `std'
arch/powerpc/boot/opal-calls.S:49: Error: unrecognized opcode: `ld'
arch/powerpc/boot/opal-calls.S:50: Error: unrecognized opcode: `ld'
arch/powerpc/boot/opal-calls.S:52: Error: unrecognized opcode: `hrfid'
arch/powerpc/boot/opal-calls.S:55: Error: unrecognized opcode: `tdi'
arch/powerpc/boot/opal-calls.S:58: Error: unrecognized opcode: `ld'
make[1]: *** [arch/powerpc/boot/Makefile:232: arch/powerpc/boot/opal-calls.o] Error 1
make: *** [arch/powerpc/Makefile:247: zImage] Error 2
==> Why "-m32 -mcpu=powerpc"? Binutils/GCC are for --target=powerpc64-linux
85xx-64bit.config
powerpc64-linux-gcc -Wp,-MMD,arch/powerpc/kernel/vdso/.gettimeofday-64.o.d -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -D__KERNEL__ -I ./arch/powerpc -DHAVE_AS_ATHIGH=1 -fmacro-prefix-map=./= -D__ASSEMBLY__ -fno-PIE -m64 -Wl,-a64 -mabi=elfv1 -Wa,-me500 -Wa,-me500mc -mabi=elfv1 -mbig-endian -Wl,-soname=linux-vdso64.so.1 -D__VDSO64__ -s -c -o arch/powerpc/kernel/vdso/gettimeofday-64.o arch/powerpc/kernel/vdso/gettimeofday.S
arch/powerpc/kernel/vdso/gettimeofday.S: Assembler messages:
arch/powerpc/kernel/vdso/gettimeofday.S:72: Error: unrecognized opcode: `stdu'
arch/powerpc/kernel/vdso/gettimeofday.S:72: Error: unrecognized opcode: `stdu'
arch/powerpc/kernel/vdso/gettimeofday.S:72: Error: unrecognized opcode: `std'
arch/powerpc/kernel/vdso/gettimeofday.S:72: Error: unrecognized opcode: `std'
arch/powerpc/kernel/vdso/gettimeofday.S:72: Error: unrecognized opcode: `ld'
arch/powerpc/kernel/vdso/gettimeofday.S:72: Error: unrecognized opcode: `ld'
arch/powerpc/kernel/vdso/gettimeofday.S:82: Error: unrecognized opcode: `stdu'
arch/powerpc/kernel/vdso/gettimeofday.S:82: Error: unrecognized opcode: `stdu'
arch/powerpc/kernel/vdso/gettimeofday.S:82: Error: unrecognized opcode: `std'
arch/powerpc/kernel/vdso/gettimeofday.S:82: Error: unrecognized opcode: `std'
arch/powerpc/kernel/vdso/gettimeofday.S:82: Error: unrecognized opcode: `ld'
arch/powerpc/kernel/vdso/gettimeofday.S:82: Error: unrecognized opcode: `ld'
arch/powerpc/kernel/vdso/gettimeofday.S:104: Error: unrecognized opcode: `stdu'
arch/powerpc/kernel/vdso/gettimeofday.S:104: Error: unrecognized opcode: `stdu'
arch/powerpc/kernel/vdso/gettimeofday.S:104: Error: unrecognized opcode: `std'
arch/powerpc/kernel/vdso/gettimeofday.S:104: Error: unrecognized opcode: `std'
arch/powerpc/kernel/vdso/gettimeofday.S:104: Error: unrecognized opcode: `ld'
arch/powerpc/kernel/vdso/gettimeofday.S:104: Error: unrecognized opcode: `ld'
arch/powerpc/kernel/vdso/gettimeofday.S:115: Error: unrecognized opcode: `stdu'
arch/powerpc/kernel/vdso/gettimeofday.S:115: Error: unrecognized opcode: `stdu'
arch/powerpc/kernel/vdso/gettimeofday.S:115: Error: unrecognized opcode: `std'
arch/powerpc/kernel/vdso/gettimeofday.S:115: Error: unrecognized opcode: `std'
arch/powerpc/kernel/vdso/gettimeofday.S:115: Error: unrecognized opcode: `ld'
arch/powerpc/kernel/vdso/gettimeofday.S:115: Error: unrecognized opcode: `ld'
make[1]: *** [arch/powerpc/kernel/vdso/Makefile:76: arch/powerpc/kernel/vdso/gettimeofday-64.o] Error 1
make: *** [arch/powerpc/Makefile:387: vdso_prepare] Error 2
85xx-hw.config
powerpc-linux-gcc -Wp,-MMD,arch/powerpc/kernel/.epapr_hcalls.o.d -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -D__KERNEL__ -I ./arch/powerpc -fmacro-prefix-map=./= -D__ASSEMBLY__ -fno-PIE -m32 -Wl,-a32 -mcpu=powerpc -mbig-endian -c -o arch/powerpc/kernel/epapr_hcalls.o arch/powerpc/kernel/epapr_hcalls.S
arch/powerpc/kernel/epapr_hcalls.S: Assembler messages:
arch/powerpc/kernel/epapr_hcalls.S:24: Error: unrecognized opcode: `wrteei'
make[3]: *** [scripts/Makefile.build:382: arch/powerpc/kernel/epapr_hcalls.o] Error 1
make[2]: *** [scripts/Makefile.build:500: arch/powerpc/kernel] Error 2
make[1]: *** [scripts/Makefile.build:500: arch/powerpc] Error 2
make: *** [Makefile:1992: .] Error 2
asp8347_defconfig
powerpc-linux-gcc -Wp,-MMD,arch/powerpc/kernel/.pmc.o.d -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -include ./include/linux/compiler_types.h -D__KERNEL__ -I ./arch/powerpc -fmacro-prefix-map=./= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu11 -mbig-endian -m32 -msoft-float -pipe -ffixed-r2 -mmultiple -mno-readonly-in-sdata -mcpu=powerpc -mno-prefixed -mno-pcrel -mno-altivec -mno-vsx -mno-mma -fno-asynchronous-unwind-tables -mno-string -mbig-endian -mstack-protector-guard=tls -mstack-protector-guard-reg=r2 -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 -fno-allow-store-data-races -Wframe-larger-than=1024 -fstack-protector-strong -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -fomit-frame-pointer -ftrivial-auto-var-init=zero -fno-stack-clash-protection -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-truncation -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -mstack-protector-guard-offset=544 -Werror -DKBUILD_MODFILE='"arch/powerpc/kernel/pmc"' -DKBUILD_BASENAME='"pmc"' -DKBUILD_MODNAME='"pmc"' -D__KBUILD_MODNAME=kmod_pmc -c -o arch/powerpc/kernel/pmc.o arch/powerpc/kernel/pmc.c
{standard input}: Assembler messages:
{standard input}:26: Error: unrecognized opcode: `mfpmr'
{standard input}:32: Error: unrecognized opcode: `mtpmr'
make[3]: *** [scripts/Makefile.build:250: arch/powerpc/kernel/pmc.o] Error 1
make[2]: *** [scripts/Makefile.build:500: arch/powerpc/kernel] Error 2
make[1]: *** [scripts/Makefile.build:500: arch/powerpc] Error 2
make: *** [Makefile:1992: .] Error 2
bamboo_defconfig
powerpc-linux-gcc -Wp,-MD,arch/powerpc/boot/.treeboot-akebono.o.d -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -O2 -msoft-float -mno-altivec -mno-vsx -pipe -fomit-frame-pointer -fno-builtin -fPIC -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -m32 -mcpu=powerpc -isystem /var/lib/laminar/run/linux-powerpc-bamboo_defconfig/12/toolchain/bin/../lib/gcc/powerpc-linux/13.0.0/include -mbig-endian -fno-stack-protector -include ./include/linux/compiler_attributes.h -I./arch/powerpc/boot -I./arch/powerpc/boot -mcpu=405 -c -o arch/powerpc/boot/treeboot-akebono.o arch/powerpc/boot/treeboot-akebono.c
{standard input}: Assembler messages:
{standard input}:94: Error: unrecognized opcode: `mtdcrx'
{standard input}:101: Error: unrecognized opcode: `mfdcrx'
{standard input}:107: Error: unrecognized opcode: `mtdcrx'
{standard input}:306: Error: unrecognized opcode: `mfdcrx'
make[1]: *** [arch/powerpc/boot/Makefile:229: arch/powerpc/boot/treeboot-akebono.o] Error 1
make: *** [arch/powerpc/Makefile:247: zImage] Error 2
cell_defconfig
powerpc64-linux-gcc -Wp,-MD,arch/powerpc/boot/.pseries-head.o.d -D__ASSEMBLY__ -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -O2 -msoft-float -mno-altivec -mno-vsx -pipe -fomit-frame-pointer -fno-builtin -fPIC -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -m32 -mcpu=powerpc -isystem /var/lib/laminar/run/linux-powerpc-cell_defconfig/12/toolchain/bin/../lib/gcc/powerpc64-linux/13.0.0/include -mbig-endian -nostdinc -c -o arch/powerpc/boot/pseries-head.o arch/powerpc/boot/pseries-head.S
arch/powerpc/boot/pseries-head.S: Assembler messages:
arch/powerpc/boot/pseries-head.S:8: Error: unrecognized opcode: `tdi'
make[1]: *** [arch/powerpc/boot/Makefile:232: arch/powerpc/boot/pseries-head.o] Error 1
make: *** [arch/powerpc/Makefile:247: zImage] Error 2
ebony_defconfig
powerpc-linux-gcc -Wp,-MD,arch/powerpc/boot/.treeboot-akebono.o.d -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -O2 -msoft-float -mno-altivec -mno-vsx -pipe -fomit-frame-pointer -fno-builtin -fPIC -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -m32 -mcpu=powerpc -isystem /var/lib/laminar/run/linux-powerpc-ebony_defconfig/12/toolchain/bin/../lib/gcc/powerpc-linux/13.0.0/include -mbig-endian -fno-stack-protector -include ./include/linux/compiler_attributes.h -I./arch/powerpc/boot -I./arch/powerpc/boot -mcpu=405 -c -o arch/powerpc/boot/treeboot-akebono.o arch/powerpc/boot/treeboot-akebono.c
{standard input}: Assembler messages:
{standard input}:94: Error: unrecognized opcode: `mtdcrx'
{standard input}:101: Error: unrecognized opcode: `mfdcrx'
{standard input}:107: Error: unrecognized opcode: `mtdcrx'
{standard input}:306: Error: unrecognized opcode: `mfdcrx'
make[1]: *** [arch/powerpc/boot/Makefile:229: arch/powerpc/boot/treeboot-akebono.o] Error 1
make: *** [arch/powerpc/Makefile:247: zImage] Error 2
ge_imp3a_defconfig
powerpc-linux-gcc -Wp,-MMD,drivers/ata/.libahci.o.d -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -include ./include/linux/compiler_types.h -D__KERNEL__ -I ./arch/powerpc -fmacro-prefix-map=./= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu11 -mbig-endian -m32 -msoft-float -pipe -ffixed-r2 -mmultiple -mno-readonly-in-sdata -mcpu=8540 -mno-prefixed -mno-pcrel -mno-altivec -mno-vsx -mno-mma -fno-asynchronous-unwind-tables -mno-string -Wa,-me500 -mbig-endian -mstack-protector-guard=tls -mstack-protector-guard-reg=r2 -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 -fno-allow-store-data-races -Wframe-larger-than=1024 -fstack-protector-strong -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -fomit-frame-pointer -ftrivial-auto-var-init=zero -fno-stack-clash-protection -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-truncation -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -mstack-protector-guard-offset=792 -DKBUILD_MODFILE='"drivers/ata/libahci"' -DKBUILD_BASENAME='"libahci"' -DKBUILD_MODNAME='"libahci"' -D__KBUILD_MODNAME=kmod_libahci -c -o drivers/ata/libahci.o drivers/ata/libahci.c
In file included from <command-line>:
drivers/ata/libahci.c: In function 'ahci_led_store':
././include/linux/compiler_types.h:357:45: error: call to '__compiletime_assert_297' declared with attribute error: BUILD_BUG_ON failed: sizeof(_s) > sizeof(long)
357 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^
././include/linux/compiler_types.h:338:25: note: in definition of macro '__compiletime_assert'
338 | prefix ## suffix(); \
| ^~~~~~
././include/linux/compiler_types.h:357:9: note: in expansion of macro '_compiletime_assert'
357 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
./include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
./include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
./include/linux/nospec.h:58:9: note: in expansion of macro 'BUILD_BUG_ON'
58 | BUILD_BUG_ON(sizeof(_s) > sizeof(long)); \
| ^~~~~~~~~~~~
drivers/ata/libahci.c:1198:23: note: in expansion of macro 'array_index_nospec'
1198 | pmp = array_index_nospec(pmp, EM_MAX_SLOTS);
| ^~~~~~~~~~~~~~~~~~
make[3]: *** [scripts/Makefile.build:250: drivers/ata/libahci.o] Error 1
make[2]: *** [scripts/Makefile.build:500: drivers/ata] Error 2
make[1]: *** [scripts/Makefile.build:500: drivers] Error 2
make: *** [Makefile:1992: .] Error 2
==> That's probably an unrelated issue, seen similarly for other builds.
guest.config
powerpc-linux-gcc -Wp,-MMD,arch/powerpc/kernel/.epapr_hcalls.o.d -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -D__KERNEL__ -I ./arch/powerpc -fmacro-prefix-map=./= -D__ASSEMBLY__ -fno-PIE -m32 -Wl,-a32 -mcpu=powerpc -mbig-endian -c -o arch/powerpc/kernel/epapr_hcalls.o arch/powerpc/kernel/epapr_hcalls.S
arch/powerpc/kernel/epapr_hcalls.S: Assembler messages:
arch/powerpc/kernel/epapr_hcalls.S:24: Error: unrecognized opcode: `wrteei'
make[3]: *** [scripts/Makefile.build:382: arch/powerpc/kernel/epapr_hcalls.o] Error 1
make[2]: *** [scripts/Makefile.build:500: arch/powerpc/kernel] Error 2
make[1]: *** [scripts/Makefile.build:500: arch/powerpc] Error 2
make: *** [Makefile:1992: .] Error 2
katmai_defconfig
powerpc-linux-gcc -Wp,-MD,arch/powerpc/boot/.treeboot-akebono.o.d -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -O2 -msoft-float -mno-altivec -mno-vsx -pipe -fomit-frame-pointer -fno-builtin -fPIC -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -m32 -mcpu=powerpc -isystem /var/lib/laminar/run/linux-powerpc-katmai_defconfig/12/toolchain/bin/../lib/gcc/powerpc-linux/13.0.0/include -mbig-endian -fno-stack-protector -include ./include/linux/compiler_attributes.h -I./arch/powerpc/boot -I./arch/powerpc/boot -mcpu=405 -c -o arch/powerpc/boot/treeboot-akebono.o arch/powerpc/boot/treeboot-akebono.c
{standard input}: Assembler messages:
{standard input}:94: Error: unrecognized opcode: `mtdcrx'
{standard input}:101: Error: unrecognized opcode: `mfdcrx'
{standard input}:107: Error: unrecognized opcode: `mtdcrx'
{standard input}:306: Error: unrecognized opcode: `mfdcrx'
make[1]: *** [arch/powerpc/boot/Makefile:229: arch/powerpc/boot/treeboot-akebono.o] Error 1
make: *** [arch/powerpc/Makefile:247: zImage] Error 2
mvme5100_defconfig
powerpc-linux-gcc -Wp,-MMD,arch/powerpc/kernel/.epapr_hcalls.o.d -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -D__KERNEL__ -I ./arch/powerpc -fmacro-prefix-map=./= -D__ASSEMBLY__ -fno-PIE -m32 -Wl,-a32 -mcpu=powerpc -mbig-endian -c -o arch/powerpc/kernel/epapr_hcalls.o arch/powerpc/kernel/epapr_hcalls.S
arch/powerpc/kernel/epapr_hcalls.S: Assembler messages:
arch/powerpc/kernel/epapr_hcalls.S:24: Error: unrecognized opcode: `wrteei'
make[3]: *** [scripts/Makefile.build:382: arch/powerpc/kernel/epapr_hcalls.o] Error 1
make[2]: *** [scripts/Makefile.build:500: arch/powerpc/kernel] Error 2
make[1]: *** [scripts/Makefile.build:500: arch/powerpc] Error 2
make: *** [Makefile:1992: .] Error 2
powernv_defconfig
powerpc64-linux-gcc -Wp,-MMD,arch/powerpc/lib/.sstep.o.d -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -include ./include/linux/compiler_types.h -D__KERNEL__ -I ./arch/powerpc -DHAVE_AS_ATHIGH=1 -fmacro-prefix-map=./= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu11 -mlittle-endian -m64 -msoft-float -pipe -mtraceback=no -mabi=elfv2 -mcmodel=medium -mno-pointers-to-nested-functions -mcpu=power8 -mtune=power10 -mno-prefixed -mno-pcrel -mno-altivec -mno-vsx -mno-mma -fno-asynchronous-unwind-tables -mno-string -Wa,-maltivec -Wa,-mpower4 -Wa,-many -mno-strict-align -mlittle-endian -mstack-protector-guard=tls -mstack-protector-guard-reg=r13 -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 -fno-allow-store-data-races -Wframe-larger-than=2048 -fstack-protector-strong -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -ftrivial-auto-var-init=zero -fno-stack-clash-protection -pg -mprofile-kernel -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-truncation -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -mstack-protector-guard-offset=3184 -Werror -DKBUILD_MODFILE='"arch/powerpc/lib/sstep"' -DKBUILD_BASENAME='"sstep"' -DKBUILD_MODNAME='"sstep"' -D__KBUILD_MODNAME=kmod_sstep -c -o arch/powerpc/lib/sstep.o arch/powerpc/lib/sstep.c
In function 'do_byte_reverse',
inlined from 'do_vec_store' at arch/powerpc/lib/sstep.c:722:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3509:9:
arch/powerpc/lib/sstep.c:286:25: error: array subscript [3, 4] is outside array bounds of 'union <anonymous>[1]' [-Werror=array-bounds=]
286 | up[0] = byterev_8(up[3]);
| ^~~~~~~~~~~~~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:708:11: note: at offset [24, 39] into object 'u' of size 16
708 | } u;
| ^
In function 'do_byte_reverse',
inlined from 'do_vec_store' at arch/powerpc/lib/sstep.c:722:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3509:9:
arch/powerpc/lib/sstep.c:287:23: error: array subscript [3, 4] is outside array bounds of 'union <anonymous>[1]' [-Werror=array-bounds=]
287 | up[3] = tmp;
| ~~~~~~^~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:708:11: note: at offset [24, 39] into object 'u' of size 16
708 | } u;
| ^
In function 'do_byte_reverse',
inlined from 'do_vec_store' at arch/powerpc/lib/sstep.c:722:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3509:9:
arch/powerpc/lib/sstep.c:288:23: error: array subscript 2 is outside array bounds of 'union <anonymous>[1]' [-Werror=array-bounds=]
288 | tmp = byterev_8(up[2]);
| ^~~~~~~~~~~~~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:708:11: note: at offset 16 into object 'u' of size 16
708 | } u;
| ^
In function 'do_byte_reverse',
inlined from 'do_vec_store' at arch/powerpc/lib/sstep.c:722:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3509:9:
arch/powerpc/lib/sstep.c:289:23: error: array subscript 2 is outside array bounds of 'union <anonymous>[1]' [-Werror=array-bounds=]
289 | up[2] = byterev_8(up[1]);
| ~~~~~~^~~~~~~~~~~~~~~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:708:11: note: at offset 16 into object 'u' of size 16
708 | } u;
| ^
In function 'do_byte_reverse',
inlined from 'do_vec_load' at arch/powerpc/lib/sstep.c:691:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3438:9:
arch/powerpc/lib/sstep.c:286:25: error: array subscript [3, 4] is outside array bounds of 'u8[16]' {aka 'unsigned char[16]'} [-Werror=array-bounds=]
286 | up[0] = byterev_8(up[3]);
| ^~~~~~~~~~~~~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
681 | } u = {};
| ^
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
In function 'do_byte_reverse',
inlined from 'do_vec_load' at arch/powerpc/lib/sstep.c:691:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3438:9:
arch/powerpc/lib/sstep.c:287:23: error: array subscript [3, 4] is outside array bounds of 'u8[16]' {aka 'unsigned char[16]'} [-Werror=array-bounds=]
287 | up[3] = tmp;
| ~~~~~~^~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
681 | } u = {};
| ^
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
In function 'do_byte_reverse',
inlined from 'do_vec_load' at arch/powerpc/lib/sstep.c:691:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3438:9:
arch/powerpc/lib/sstep.c:288:23: error: array subscript 2 is outside array bounds of 'u8[16]' {aka 'unsigned char[16]'} [-Werror=array-bounds=]
288 | tmp = byterev_8(up[2]);
| ^~~~~~~~~~~~~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
681 | } u = {};
| ^
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
In function 'do_byte_reverse',
inlined from 'do_vec_load' at arch/powerpc/lib/sstep.c:691:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3438:9:
arch/powerpc/lib/sstep.c:289:23: error: array subscript 2 is outside array bounds of 'u8[16]' {aka 'unsigned char[16]'} [-Werror=array-bounds=]
289 | up[2] = byterev_8(up[1]);
| ~~~~~~^~~~~~~~~~~~~~~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
681 | } u = {};
| ^
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
cc1: all warnings being treated as errors
make[3]: *** [scripts/Makefile.build:250: arch/powerpc/lib/sstep.o] Error 1
make[2]: *** [scripts/Makefile.build:500: arch/powerpc/lib] Error 2
make[1]: *** [scripts/Makefile.build:500: arch/powerpc] Error 2
make: *** [Makefile:1992: .] Error 2
ppc44x_defconfig
powerpc-linux-gcc -Wp,-MD,arch/powerpc/boot/.treeboot-akebono.o.d -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -O2 -msoft-float -mno-altivec -mno-vsx -pipe -fomit-frame-pointer -fno-builtin -fPIC -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -m32 -mcpu=powerpc -isystem /var/lib/laminar/run/linux-powerpc-ppc44x_defconfig/12/toolchain/bin/../lib/gcc/powerpc-linux/13.0.0/include -mbig-endian -fno-stack-protector -include ./include/linux/compiler_attributes.h -I./arch/powerpc/boot -I./arch/powerpc/boot -mcpu=405 -c -o arch/powerpc/boot/treeboot-akebono.o arch/powerpc/boot/treeboot-akebono.c
{standard input}: Assembler messages:
{standard input}:94: Error: unrecognized opcode: `mtdcrx'
{standard input}:101: Error: unrecognized opcode: `mfdcrx'
{standard input}:107: Error: unrecognized opcode: `mtdcrx'
{standard input}:306: Error: unrecognized opcode: `mfdcrx'
make[1]: *** [arch/powerpc/boot/Makefile:229: arch/powerpc/boot/treeboot-akebono.o] Error 1
make: *** [arch/powerpc/Makefile:247: zImage] Error 2
ppc64_defconfig
powerpc64-linux-gcc -Wp,-MMD,arch/powerpc/lib/.sstep.o.d -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -include ./include/linux/compiler_types.h -D__KERNEL__ -I ./arch/powerpc -DHAVE_AS_ATHIGH=1 -fmacro-prefix-map=./= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu11 -mbig-endian -m64 -msoft-float -pipe -mtraceback=no -mabi=elfv1 -mcall-aixdesc -mcmodel=medium -mno-pointers-to-nested-functions -mcpu=power4 -mtune=power10 -mno-prefixed -mno-pcrel -mno-altivec -mno-vsx -mno-mma -fno-asynchronous-unwind-tables -mno-string -Wa,-maltivec -Wa,-mpower4 -Wa,-many -mabi=elfv1 -mcall-aixdesc -mbig-endian -mstack-protector-guard=tls -mstack-protector-guard-reg=r13 -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 -fno-allow-store-data-races -Wframe-larger-than=2048 -fstack-protector-strong -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -ftrivial-auto-var-init=zero -fno-stack-clash-protection -pg -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-truncation -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -mstack-protector-guard-offset=3192 -Werror -DKBUILD_MODFILE='"arch/powerpc/lib/sstep"' -DKBUILD_BASENAME='"sstep"' -DKBUILD_MODNAME='"sstep"' -D__KBUILD_MODNAME=kmod_sstep -c -o arch/powerpc/lib/sstep.o arch/powerpc/lib/sstep.c
In function 'do_byte_reverse',
inlined from 'do_vec_store' at arch/powerpc/lib/sstep.c:722:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3509:9:
arch/powerpc/lib/sstep.c:286:25: error: array subscript [3, 4] is outside array bounds of 'union <anonymous>[1]' [-Werror=array-bounds=]
286 | up[0] = byterev_8(up[3]);
| ^~~~~~~~~~~~~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:708:11: note: at offset [24, 39] into object 'u' of size 16
708 | } u;
| ^
In function 'do_byte_reverse',
inlined from 'do_vec_store' at arch/powerpc/lib/sstep.c:722:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3509:9:
arch/powerpc/lib/sstep.c:287:23: error: array subscript [3, 4] is outside array bounds of 'union <anonymous>[1]' [-Werror=array-bounds=]
287 | up[3] = tmp;
| ~~~~~~^~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:708:11: note: at offset [24, 39] into object 'u' of size 16
708 | } u;
| ^
In function 'do_byte_reverse',
inlined from 'do_vec_store' at arch/powerpc/lib/sstep.c:722:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3509:9:
arch/powerpc/lib/sstep.c:288:23: error: array subscript 2 is outside array bounds of 'union <anonymous>[1]' [-Werror=array-bounds=]
288 | tmp = byterev_8(up[2]);
| ^~~~~~~~~~~~~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:708:11: note: at offset 16 into object 'u' of size 16
708 | } u;
| ^
In function 'do_byte_reverse',
inlined from 'do_vec_store' at arch/powerpc/lib/sstep.c:722:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3509:9:
arch/powerpc/lib/sstep.c:289:23: error: array subscript 2 is outside array bounds of 'union <anonymous>[1]' [-Werror=array-bounds=]
289 | up[2] = byterev_8(up[1]);
| ~~~~~~^~~~~~~~~~~~~~~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:708:11: note: at offset 16 into object 'u' of size 16
708 | } u;
| ^
In function 'do_byte_reverse',
inlined from 'do_vec_load' at arch/powerpc/lib/sstep.c:691:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3438:9:
arch/powerpc/lib/sstep.c:286:25: error: array subscript [3, 4] is outside array bounds of 'u8[16]' {aka 'unsigned char[16]'} [-Werror=array-bounds=]
286 | up[0] = byterev_8(up[3]);
| ^~~~~~~~~~~~~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
681 | } u = {};
| ^
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
In function 'do_byte_reverse',
inlined from 'do_vec_load' at arch/powerpc/lib/sstep.c:691:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3438:9:
arch/powerpc/lib/sstep.c:287:23: error: array subscript [3, 4] is outside array bounds of 'u8[16]' {aka 'unsigned char[16]'} [-Werror=array-bounds=]
287 | up[3] = tmp;
| ~~~~~~^~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
681 | } u = {};
| ^
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
In function 'do_byte_reverse',
inlined from 'do_vec_load' at arch/powerpc/lib/sstep.c:691:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3438:9:
arch/powerpc/lib/sstep.c:288:23: error: array subscript 2 is outside array bounds of 'u8[16]' {aka 'unsigned char[16]'} [-Werror=array-bounds=]
288 | tmp = byterev_8(up[2]);
| ^~~~~~~~~~~~~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
681 | } u = {};
| ^
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
In function 'do_byte_reverse',
inlined from 'do_vec_load' at arch/powerpc/lib/sstep.c:691:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3438:9:
arch/powerpc/lib/sstep.c:289:23: error: array subscript 2 is outside array bounds of 'u8[16]' {aka 'unsigned char[16]'} [-Werror=array-bounds=]
289 | up[2] = byterev_8(up[1]);
| ~~~~~~^~~~~~~~~~~~~~~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
681 | } u = {};
| ^
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
cc1: all warnings being treated as errors
make[3]: *** [scripts/Makefile.build:250: arch/powerpc/lib/sstep.o] Error 1
make[2]: *** [scripts/Makefile.build:500: arch/powerpc/lib] Error 2
make[1]: *** [scripts/Makefile.build:500: arch/powerpc] Error 2
make: *** [Makefile:1992: .] Error 2
ppc64e_defconfig
powerpc64-linux-gcc -Wp,-MMD,arch/powerpc/kernel/vdso/.gettimeofday-64.o.d -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -D__KERNEL__ -I ./arch/powerpc -DHAVE_AS_ATHIGH=1 -fmacro-prefix-map=./= -D__ASSEMBLY__ -fno-PIE -m64 -Wl,-a64 -mabi=elfv1 -Wa,-me500 -Wa,-me500mc -mabi=elfv1 -mbig-endian -Wl,-soname=linux-vdso64.so.1 -D__VDSO64__ -s -c -o arch/powerpc/kernel/vdso/gettimeofday-64.o arch/powerpc/kernel/vdso/gettimeofday.S
arch/powerpc/kernel/vdso/gettimeofday.S: Assembler messages:
arch/powerpc/kernel/vdso/gettimeofday.S:72: Error: unrecognized opcode: `stdu'
arch/powerpc/kernel/vdso/gettimeofday.S:72: Error: unrecognized opcode: `stdu'
arch/powerpc/kernel/vdso/gettimeofday.S:72: Error: unrecognized opcode: `std'
arch/powerpc/kernel/vdso/gettimeofday.S:72: Error: unrecognized opcode: `std'
arch/powerpc/kernel/vdso/gettimeofday.S:72: Error: unrecognized opcode: `ld'
arch/powerpc/kernel/vdso/gettimeofday.S:72: Error: unrecognized opcode: `ld'
arch/powerpc/kernel/vdso/gettimeofday.S:82: Error: unrecognized opcode: `stdu'
arch/powerpc/kernel/vdso/gettimeofday.S:82: Error: unrecognized opcode: `stdu'
arch/powerpc/kernel/vdso/gettimeofday.S:82: Error: unrecognized opcode: `std'
arch/powerpc/kernel/vdso/gettimeofday.S:82: Error: unrecognized opcode: `std'
arch/powerpc/kernel/vdso/gettimeofday.S:82: Error: unrecognized opcode: `ld'
arch/powerpc/kernel/vdso/gettimeofday.S:82: Error: unrecognized opcode: `ld'
arch/powerpc/kernel/vdso/gettimeofday.S:104: Error: unrecognized opcode: `stdu'
arch/powerpc/kernel/vdso/gettimeofday.S:104: Error: unrecognized opcode: `stdu'
arch/powerpc/kernel/vdso/gettimeofday.S:104: Error: unrecognized opcode: `std'
arch/powerpc/kernel/vdso/gettimeofday.S:104: Error: unrecognized opcode: `std'
arch/powerpc/kernel/vdso/gettimeofday.S:104: Error: unrecognized opcode: `ld'
arch/powerpc/kernel/vdso/gettimeofday.S:104: Error: unrecognized opcode: `ld'
arch/powerpc/kernel/vdso/gettimeofday.S:115: Error: unrecognized opcode: `stdu'
arch/powerpc/kernel/vdso/gettimeofday.S:115: Error: unrecognized opcode: `stdu'
arch/powerpc/kernel/vdso/gettimeofday.S:115: Error: unrecognized opcode: `std'
arch/powerpc/kernel/vdso/gettimeofday.S:115: Error: unrecognized opcode: `std'
arch/powerpc/kernel/vdso/gettimeofday.S:115: Error: unrecognized opcode: `ld'
arch/powerpc/kernel/vdso/gettimeofday.S:115: Error: unrecognized opcode: `ld'
make[1]: *** [arch/powerpc/kernel/vdso/Makefile:76: arch/powerpc/kernel/vdso/gettimeofday-64.o] Error 1
make: *** [arch/powerpc/Makefile:387: vdso_prepare] Error 2
pseries_defconfig
powerpc64-linux-gcc -Wp,-MMD,arch/powerpc/lib/.sstep.o.d -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -include ./include/linux/compiler_types.h -D__KERNEL__ -I ./arch/powerpc -DHAVE_AS_ATHIGH=1 -fmacro-prefix-map=./= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu11 -mbig-endian -m64 -msoft-float -pipe -mtraceback=no -mabi=elfv1 -mcall-aixdesc -mcmodel=medium -mno-pointers-to-nested-functions -mcpu=power4 -mtune=power10 -mno-prefixed -mno-pcrel -mno-altivec -mno-vsx -mno-mma -fno-asynchronous-unwind-tables -mno-string -Wa,-maltivec -Wa,-mpower4 -Wa,-many -mabi=elfv1 -mcall-aixdesc -mbig-endian -mstack-protector-guard=tls -mstack-protector-guard-reg=r13 -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 -fno-allow-store-data-races -Wframe-larger-than=2048 -fstack-protector-strong -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -ftrivial-auto-var-init=zero -fno-stack-clash-protection -pg -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-truncation -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -mstack-protector-guard-offset=3192 -Werror -DKBUILD_MODFILE='"arch/powerpc/lib/sstep"' -DKBUILD_BASENAME='"sstep"' -DKBUILD_MODNAME='"sstep"' -D__KBUILD_MODNAME=kmod_sstep -c -o arch/powerpc/lib/sstep.o arch/powerpc/lib/sstep.c
In function 'do_byte_reverse',
inlined from 'do_vec_store' at arch/powerpc/lib/sstep.c:722:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3509:9:
arch/powerpc/lib/sstep.c:286:25: error: array subscript [3, 4] is outside array bounds of 'union <anonymous>[1]' [-Werror=array-bounds=]
286 | up[0] = byterev_8(up[3]);
| ^~~~~~~~~~~~~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:708:11: note: at offset [24, 39] into object 'u' of size 16
708 | } u;
| ^
In function 'do_byte_reverse',
inlined from 'do_vec_store' at arch/powerpc/lib/sstep.c:722:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3509:9:
arch/powerpc/lib/sstep.c:287:23: error: array subscript [3, 4] is outside array bounds of 'union <anonymous>[1]' [-Werror=array-bounds=]
287 | up[3] = tmp;
| ~~~~~~^~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:708:11: note: at offset [24, 39] into object 'u' of size 16
708 | } u;
| ^
In function 'do_byte_reverse',
inlined from 'do_vec_store' at arch/powerpc/lib/sstep.c:722:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3509:9:
arch/powerpc/lib/sstep.c:288:23: error: array subscript 2 is outside array bounds of 'union <anonymous>[1]' [-Werror=array-bounds=]
288 | tmp = byterev_8(up[2]);
| ^~~~~~~~~~~~~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:708:11: note: at offset 16 into object 'u' of size 16
708 | } u;
| ^
In function 'do_byte_reverse',
inlined from 'do_vec_store' at arch/powerpc/lib/sstep.c:722:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3509:9:
arch/powerpc/lib/sstep.c:289:23: error: array subscript 2 is outside array bounds of 'union <anonymous>[1]' [-Werror=array-bounds=]
289 | up[2] = byterev_8(up[1]);
| ~~~~~~^~~~~~~~~~~~~~~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:708:11: note: at offset 16 into object 'u' of size 16
708 | } u;
| ^
In function 'do_byte_reverse',
inlined from 'do_vec_load' at arch/powerpc/lib/sstep.c:691:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3438:9:
arch/powerpc/lib/sstep.c:286:25: error: array subscript [3, 4] is outside array bounds of 'u8[16]' {aka 'unsigned char[16]'} [-Werror=array-bounds=]
286 | up[0] = byterev_8(up[3]);
| ^~~~~~~~~~~~~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
681 | } u = {};
| ^
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
In function 'do_byte_reverse',
inlined from 'do_vec_load' at arch/powerpc/lib/sstep.c:691:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3438:9:
arch/powerpc/lib/sstep.c:287:23: error: array subscript [3, 4] is outside array bounds of 'u8[16]' {aka 'unsigned char[16]'} [-Werror=array-bounds=]
287 | up[3] = tmp;
| ~~~~~~^~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
681 | } u = {};
| ^
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset [24, 39] into object 'u' of size 16
In function 'do_byte_reverse',
inlined from 'do_vec_load' at arch/powerpc/lib/sstep.c:691:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3438:9:
arch/powerpc/lib/sstep.c:288:23: error: array subscript 2 is outside array bounds of 'u8[16]' {aka 'unsigned char[16]'} [-Werror=array-bounds=]
288 | tmp = byterev_8(up[2]);
| ^~~~~~~~~~~~~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
681 | } u = {};
| ^
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
In function 'do_byte_reverse',
inlined from 'do_vec_load' at arch/powerpc/lib/sstep.c:691:3,
inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3438:9:
arch/powerpc/lib/sstep.c:289:23: error: array subscript 2 is outside array bounds of 'u8[16]' {aka 'unsigned char[16]'} [-Werror=array-bounds=]
289 | up[2] = byterev_8(up[1]);
| ~~~~~~^~~~~~~~~~~~~~~~~~
arch/powerpc/lib/sstep.c: In function 'emulate_loadstore':
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
681 | } u = {};
| ^
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
arch/powerpc/lib/sstep.c:681:11: note: at offset 16 into object 'u' of size 16
cc1: all warnings being treated as errors
make[3]: *** [scripts/Makefile.build:250: arch/powerpc/lib/sstep.o] Error 1
make[2]: *** [scripts/Makefile.build:500: arch/powerpc/lib] Error 2
make[1]: *** [scripts/Makefile.build:500: arch/powerpc] Error 2
adder875_defconfig
powerpc-linux-gcc -Wp,-MD,arch/powerpc/boot/.treeboot-akebono.o.d -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -O2 -msoft-float -mno-altivec -mno-vsx -pipe -fomit-frame-pointer -fno-builtin -fPIC -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -m32 -mcpu=powerpc -isystem /var/lib/laminar/run/linux-powerpc-rainier_defconfig/12/toolchain/bin/../lib/gcc/powerpc-linux/13.0.0/include -mbig-endian -fno-stack-protector -include ./include/linux/compiler_attributes.h -I./arch/powerpc/boot -I./arch/powerpc/boot -mcpu=405 -c -o arch/powerpc/boot/treeboot-akebono.o arch/powerpc/boot/treeboot-akebono.c
{standard input}: Assembler messages:
{standard input}:94: Error: unrecognized opcode: `mtdcrx'
{standard input}:101: Error: unrecognized opcode: `mfdcrx'
{standard input}:107: Error: unrecognized opcode: `mtdcrx'
{standard input}:306: Error: unrecognized opcode: `mfdcrx'
make[1]: *** [arch/powerpc/boot/Makefile:229: arch/powerpc/boot/treeboot-akebono.o] Error 1
make: *** [arch/powerpc/Makefile:247: zImage] Error 2
rainier_defconfig
powerpc-linux-gcc -Wp,-MD,arch/powerpc/boot/.treeboot-akebono.o.d -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -O2 -msoft-float -mno-altivec -mno-vsx -pipe -fomit-frame-pointer -fno-builtin -fPIC -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -m32 -mcpu=powerpc -isystem /var/lib/laminar/run/linux-powerpc-rainier_defconfig/12/toolchain/bin/../lib/gcc/powerpc-linux/13.0.0/include -mbig-endian -fno-stack-protector -include ./include/linux/compiler_attributes.h -I./arch/powerpc/boot -I./arch/powerpc/boot -mcpu=405 -c -o arch/powerpc/boot/treeboot-akebono.o arch/powerpc/boot/treeboot-akebono.c
{standard input}: Assembler messages:
{standard input}:94: Error: unrecognized opcode: `mtdcrx'
{standard input}:101: Error: unrecognized opcode: `mfdcrx'
{standard input}:107: Error: unrecognized opcode: `mtdcrx'
{standard input}:306: Error: unrecognized opcode: `mfdcrx'
make[1]: *** [arch/powerpc/boot/Makefile:229: arch/powerpc/boot/treeboot-akebono.o] Error 1
make: *** [arch/powerpc/Makefile:247: zImage] Error 2
sam440ep_defconfig
powerpc-linux-gcc -Wp,-MD,arch/powerpc/boot/.treeboot-akebono.o.d -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -O2 -msoft-float -mno-altivec -mno-vsx -pipe -fomit-frame-pointer -fno-builtin -fPIC -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -m32 -mcpu=powerpc -isystem /var/lib/laminar/run/linux-powerpc-sam440ep_defconfig/12/toolchain/bin/../lib/gcc/powerpc-linux/13.0.0/include -mbig-endian -fno-stack-protector -include ./include/linux/compiler_attributes.h -I./arch/powerpc/boot -I./arch/powerpc/boot -mcpu=405 -c -o arch/powerpc/boot/treeboot-akebono.o arch/powerpc/boot/treeboot-akebono.c
{standard input}: Assembler messages:
{standard input}:94: Error: unrecognized opcode: `mtdcrx'
{standard input}:101: Error: unrecognized opcode: `mfdcrx'
{standard input}:107: Error: unrecognized opcode: `mtdcrx'
{standard input}:306: Error: unrecognized opcode: `mfdcrx'
make[1]: *** [arch/powerpc/boot/Makefile:229: arch/powerpc/boot/treeboot-akebono.o] Error 1
make: *** [arch/powerpc/Makefile:247: zImage] Error 2
sequoia_defconfig
powerpc-linux-gcc -Wp,-MD,arch/powerpc/boot/.treeboot-akebono.o.d -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -O2 -msoft-float -mno-altivec -mno-vsx -pipe -fomit-frame-pointer -fno-builtin -fPIC -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -m32 -mcpu=powerpc -isystem /var/lib/laminar/run/linux-powerpc-sequoia_defconfig/12/toolchain/bin/../lib/gcc/powerpc-linux/13.0.0/include -mbig-endian -fno-stack-protector -include ./include/linux/compiler_attributes.h -I./arch/powerpc/boot -I./arch/powerpc/boot -mcpu=405 -c -o arch/powerpc/boot/treeboot-akebono.o arch/powerpc/boot/treeboot-akebono.c
{standard input}: Assembler messages:
{standard input}:94: Error: unrecognized opcode: `mtdcrx'
{standard input}:101: Error: unrecognized opcode: `mfdcrx'
{standard input}:107: Error: unrecognized opcode: `mtdcrx'
{standard input}:306: Error: unrecognized opcode: `mfdcrx'
make[1]: *** [arch/powerpc/boot/Makefile:229: arch/powerpc/boot/treeboot-akebono.o] Error 1
make: *** [arch/powerpc/Makefile:247: zImage] Error 2
taishan_defconfig
powerpc-linux-gcc -Wp,-MD,arch/powerpc/boot/.treeboot-akebono.o.d -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -O2 -msoft-float -mno-altivec -mno-vsx -pipe -fomit-frame-pointer -fno-builtin -fPIC -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -m32 -mcpu=powerpc -isystem /var/lib/laminar/run/linux-powerpc-taishan_defconfig/12/toolchain/bin/../lib/gcc/powerpc-linux/13.0.0/include -mbig-endian -fno-stack-protector -include ./include/linux/compiler_attributes.h -I./arch/powerpc/boot -I./arch/powerpc/boot -mcpu=405 -c -o arch/powerpc/boot/treeboot-akebono.o arch/powerpc/boot/treeboot-akebono.c
{standard input}: Assembler messages:
{standard input}:94: Error: unrecognized opcode: `mtdcrx'
{standard input}:101: Error: unrecognized opcode: `mfdcrx'
{standard input}:107: Error: unrecognized opcode: `mtdcrx'
{standard input}:306: Error: unrecognized opcode: `mfdcrx'
make[1]: *** [arch/powerpc/boot/Makefile:229: arch/powerpc/boot/treeboot-akebono.o] Error 1
make: *** [arch/powerpc/Makefile:247: zImage] Error 2
xes_mpc85xx_defconfig
powerpc-linux-gcc -Wp,-MMD,drivers/ata/.libahci.o.d -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -include ./include/linux/compiler_types.h -D__KERNEL__ -I ./arch/powerpc -fmacro-prefix-map=./= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu11 -mbig-endian -m32 -msoft-float -pipe -ffixed-r2 -mmultiple -mno-readonly-in-sdata -mcpu=8540 -mno-prefixed -mno-pcrel -mno-altivec -mno-vsx -mno-mma -fno-asynchronous-unwind-tables -mno-string -Wa,-me500 -mbig-endian -mstack-protector-guard=tls -mstack-protector-guard-reg=r2-fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 -fno-allow-store-data-races -Wframe-larger-than=1024 -fstack-protector-strong -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -fomit-frame-pointer -ftrivial-auto-var-init=zero -fno-stack-clash-protection -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-truncation -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -mstack-protector-guard-offset=768 -DKBUILD_MODFILE='"drivers/ata/libahci"' -DKBUILD_BASENAME='"libahci"' -DKBUILD_MODNAME='"libahci"' -D__KBUILD_MODNAME=kmod_libahci -c -o drivers/ata/libahci.o drivers/ata/libahci.c
In file included from <command-line>:
drivers/ata/libahci.c: In function 'ahci_led_store':
././include/linux/compiler_types.h:357:45: error: call to '__compiletime_assert_295' declared with attribute error: BUILD_BUG_ON failed: sizeof(_s) > sizeof(long)
357 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^
././include/linux/compiler_types.h:338:25: note: in definition of macro '__compiletime_assert'
338 | prefix ## suffix(); \
| ^~~~~~
././include/linux/compiler_types.h:357:9: note: in expansion of macro '_compiletime_assert'
357 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
./include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
./include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
./include/linux/nospec.h:58:9: note: in expansion of macro 'BUILD_BUG_ON'
58 | BUILD_BUG_ON(sizeof(_s) > sizeof(long)); \
| ^~~~~~~~~~~~
drivers/ata/libahci.c:1198:23: note: in expansion of macro 'array_index_nospec'
1198 | pmp = array_index_nospec(pmp, EM_MAX_SLOTS);
| ^~~~~~~~~~~~~~~~~~
make[3]: *** [scripts/Makefile.build:250: drivers/ata/libahci.o] Error 1
make[2]: *** [scripts/Makefile.build:500: drivers/ata] Error 2
make[1]: *** [scripts/Makefile.build:500: drivers] Error 2
make: *** [Makefile:1992: .] Error 2
currituck_defconfig
ep8248e_defconfig
ep88xc_defconfig
fsl-emb-nonhw.config
fsp2_defconfig
iss476-smp_defconfig
lite5200b_defconfig
mgcoge_defconfig
motionpro_defconfig
mpc5200_defconfig
mpc8272_ads_defconfig
mpc885_ads_defconfig
ppc6xx_defconfig
pq2fads_defconfig
ps3_defconfig
akebono_defconfig
tqm5200_defconfig
tqm8xx_defconfig
warp_defconfig
Compiler ICEs (during GIMPLE pass: ccp) in align.c:
powerpc-linux-gcc -Wp,-MMD,arch/powerpc/kernel/.align.o.d -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -include ./include/linux/compiler_types.h -D__KERNEL__ -I ./arch/powerpc -fmacro-prefix-map=./= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu11 -mbig-endian -m32 -msoft-float -pipe -ffixed-r2 -mmultiple -mno-readonly-in-sdata -mcpu=440 -mno-prefixed -mno-pcrel -mno-altivec -mno-vsx -mno-mma -fno-asynchronous-unwind-tables -mno-string -Wa,-m440 -mbig-endian -mstack-protector-guard=tls -mstack-protector-guard-reg=r2 -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 -fno-allow-store-data-races -Wframe-larger-than=1024 -fstack-protector-strong -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -fomit-frame-pointer -ftrivial-auto-var-init=zero -fno-stack-clash-protection -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-truncation -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -g -mstack-protector-guard-offset=1080 -Werror -DKBUILD_MODFILE='"arch/powerpc/kernel/align"' -DKBUILD_BASENAME='"align"' -DKBUILD_MODNAME='"align"' -D__KBUILD_MODNAME=kmod_align -c -o arch/powerpc/kernel/align.o arch/powerpc/kernel/align.c
during GIMPLE pass: ccp
arch/powerpc/kernel/align.c: In function '__copy_inst_from_kernel_nofault':
arch/powerpc/kernel/align.c:364:1: internal compiler error: in maybe_register_def, at tree-into-ssa.cc:1948
364 | }
| ^
0x19d8886 internal_error(char const*, ...)
???:0
0x7bb4fe fancy_abort(char const*, int, char const*)
???:0
0x1791bfe dom_walker::walk(basic_block_def*)
???:0
0xe94ec0 update_ssa(unsigned int)
???:0
0x103d6b9 execute_update_addresses_taken()
???:0
Please submit a full bug report, with preprocessed source (by using -freport-bug).
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.
make[3]: *** [scripts/Makefile.build:250: arch/powerpc/kernel/align.o] Error 1
make[2]: *** [scripts/Makefile.build:500: arch/powerpc/kernel] Error 2
make[1]: *** [scripts/Makefile.build:500: arch/powerpc] Error 2
make: *** [Makefile:1992: .] Error 2
==> Should probably open a PR for this.
Thanks for any pointers!
MfG, JBG
--
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Mass-building defconfigs: many fail with assembler errors
2022-12-12 21:51 Mass-building defconfigs: many fail with assembler errors Jan-Benedict Glaw
@ 2022-12-13 0:26 ` Segher Boessenkool
2022-12-13 10:00 ` Jan-Benedict Glaw
2022-12-13 3:49 ` Michael Ellerman
1 sibling, 1 reply; 14+ messages in thread
From: Segher Boessenkool @ 2022-12-13 0:26 UTC (permalink / raw)
To: Jan-Benedict Glaw; +Cc: linuxppc-dev
Hi!
On Mon, Dec 12, 2022 at 10:51:17PM +0100, Jan-Benedict Glaw wrote:
> Is anybody else routinely building current Binutils + GCC, to try to
> build all the Linux defconfigs?
I do regularly build kernels for powerpc-linux, powerpc64-linux,
powerpc64le-linux; ppc6xx_defconfig and ppc64_defconfig and
ppc64le_defconfig. Totally boring, but it frequently does not build.
Not as frequently as for the other Linux targets I build (32 total at
the moment).
> For PPC, a good number of those fail,
> and I probably don't understand PPC well enough to propose patches. Or
> did I pick wrongly targeted toolchains? Most of the time, my suspicion
> is that we're not giving the correct -m<cpu> flags in
> ./arch/powerpc/boot/? (My setup for doing test builds is fairly automated, I
> can easily throw in patches for testing.)
Many of those use a 32-bit toolchain with a 64-bit kernel, or they
require some e500 specific config but not getting it (or the other way
around).
> 64-bit.config
> ==> Why "-m32 -mcpu=powerpc"? Binutils/GCC are for --target=powerpc64-linux
Something in your config is forcing that.
> 85xx-64bit.config
> powerpc64-linux-gcc -Wp,-MMD,arch/powerpc/kernel/vdso/.gettimeofday-64.o.d -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -D__KERNEL__ -I ./arch/powerpc -DHAVE_AS_ATHIGH=1 -fmacro-prefix-map=./= -D__ASSEMBLY__ -fno-PIE -m64 -Wl,-a64 -mabi=elfv1 -Wa,-me500 -Wa,-me500mc -mabi=elfv1 -mbig-endian -Wl,-soname=linux-vdso64.so.1 -D__VDSO64__ -s -c -o arch/powerpc/kernel/vdso/gettimeofday-64.o arch/powerpc/kernel/vdso/gettimeofday.S
e500mc is a 32-bit core. This cannot fly.
> 85xx-hw.config
> powerpc-linux-gcc -Wp,-MMD,arch/powerpc/kernel/.epapr_hcalls.o.d -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -D__KERNEL__ -I ./arch/powerpc -fmacro-prefix-map=./= -D__ASSEMBLY__ -fno-PIE -m32 -Wl,-a32 -mcpu=powerpc -mbig-endian -c -o arch/powerpc/kernel/epapr_hcalls.o arch/powerpc/kernel/epapr_hcalls.S
> arch/powerpc/kernel/epapr_hcalls.S: Assembler messages:
> arch/powerpc/kernel/epapr_hcalls.S:24: Error: unrecognized opcode: `wrteei'
wrteei is a BookE instruction (not a PowerPC instruction), and something
specifically asked for just PowerPC.
> powernv_defconfig
> cc1: all warnings being treated as errors
Self-inflicted wound. The warnings may reveal more, or they might show
something that GCC isn't as good at as you may want; all warnings have
false positives, that is why they are warnings and not errors.
> Compiler ICEs (during GIMPLE pass: ccp) in align.c:
>
> powerpc-linux-gcc -Wp,-MMD,arch/powerpc/kernel/.align.o.d -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -include ./include/linux/compiler_types.h -D__KERNEL__ -I ./arch/powerpc -fmacro-prefix-map=./= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu11 -mbig-endian -m32 -msoft-float -pipe -ffixed-r2 -mmultiple -mno-readonly-in-sdata -mcpu=440 -mno-prefixed -mno-pcrel -mno-altivec -mno-vsx -mno-mma -fno-asynchronous-unwind-tables -mno-string -Wa,-m440 -mbig-endian -mstack-protector-guard=tls -mstack-protector-guard-reg=r2 -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 -fno-allow-store-data-races -Wframe-larger-than=1024 -fstack-protector-strong -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -fomit-frame-pointer -ftrivial-auto-var-init=zero -fno-stack-clash-protection -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-truncation -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -g -mstack-protector-guard-offset=1080 -Werror -DKBUILD_MODFILE='"arch/powerpc/kernel/align"' -DKBUILD_BASENAME='"align"' -DKBUILD_MODNAME='"align"' -D__KBUILD_MODNAME=kmod_align -c -o arch/powerpc/kernel/align.o arch/powerpc/kernel/align.c
> during GIMPLE pass: ccp
> arch/powerpc/kernel/align.c: In function '__copy_inst_from_kernel_nofault':
> arch/powerpc/kernel/align.c:364:1: internal compiler error: in maybe_register_def, at tree-into-ssa.cc:1948
> 364 | }
> | ^
> 0x19d8886 internal_error(char const*, ...)
> ???:0
> 0x7bb4fe fancy_abort(char const*, int, char const*)
> ???:0
> 0x1791bfe dom_walker::walk(basic_block_def*)
> ???:0
> 0xe94ec0 update_ssa(unsigned int)
> ???:0
> 0x103d6b9 execute_update_addresses_taken()
> ???:0
> Please submit a full bug report, with preprocessed source (by using -freport-bug).
> Please include the complete backtrace with any bug report.
> See <https://gcc.gnu.org/bugs/> for instructions.
> make[3]: *** [scripts/Makefile.build:250: arch/powerpc/kernel/align.o] Error 1
> make[2]: *** [scripts/Makefile.build:500: arch/powerpc/kernel] Error 2
> make[1]: *** [scripts/Makefile.build:500: arch/powerpc] Error 2
> make: *** [Makefile:1992: .] Error 2
>
> ==> Should probably open a PR for this.
Yes please!
Segher
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Mass-building defconfigs: many fail with assembler errors
2022-12-12 21:51 Mass-building defconfigs: many fail with assembler errors Jan-Benedict Glaw
2022-12-13 0:26 ` Segher Boessenkool
@ 2022-12-13 3:49 ` Michael Ellerman
2022-12-13 8:41 ` Jan-Benedict Glaw
2022-12-14 14:45 ` Jan-Benedict Glaw
1 sibling, 2 replies; 14+ messages in thread
From: Michael Ellerman @ 2022-12-13 3:49 UTC (permalink / raw)
To: Jan-Benedict Glaw, linuxppc-dev
Jan-Benedict Glaw <jbglaw@lug-owl.de> writes:
> Hi!
>
> Is anybody else routinely building current Binutils + GCC, to try to
> build all the Linux defconfigs?
I did for several years, but eventually stopped because it was taking
too much time I needed to spend on other things.
> For PPC, a good number of those fail,
> and I probably don't understand PPC well enough to propose patches. Or
> did I pick wrongly targeted toolchains? Most of the time, my suspicion
> is that we're not giving the correct -m<cpu> flags in
> ./arch/powerpc/boot/? (My setup for doing test builds is fairly automated, I
> can easily throw in patches for testing.)
All the results against <something>.config are invalid or at least
dubious. Those files are not standalone defconfigs, they're fragments of
defconfigs that are assembled together by arch/powerpc/Makefile using
merge_config.sh.
So your script should exclude all files that end in ".config".
To find the names of the generated configs you can use something like:
$ awk '/PHONY \+= .*config/ {print $3}' arch/powerpc/Makefile
> 64-bit.config
> powerpc64-linux-gcc -Wp,-MD,arch/powerpc/boot/.opal-calls.o.d -D__ASSEMBLY__ -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -O2 -msoft-float -mno-altivec -mno-vsx -pipe -fomit-frame-pointer -fno-builtin -fPIC -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -m32 -mcpu=powerpc -isystem /var/lib/laminar/run/linux-powerpc-64-bit.config/12/toolchain/bin/../lib/gcc/powerpc64-linux/13.0.0/include -mbig-endian -nostdinc -c -o arch/powerpc/boot/opal-calls.o arch/powerpc/boot/opal-calls.S
> arch/powerpc/boot/opal-calls.S: Assembler messages:
> arch/powerpc/boot/opal-calls.S:20: Error: unrecognized opcode: `ld'
> arch/powerpc/boot/opal-calls.S:21: Error: unrecognized opcode: `ld'
> arch/powerpc/boot/opal-calls.S:32: Error: unrecognized opcode: `std'
> arch/powerpc/boot/opal-calls.S:49: Error: unrecognized opcode: `ld'
> arch/powerpc/boot/opal-calls.S:50: Error: unrecognized opcode: `ld'
> arch/powerpc/boot/opal-calls.S:52: Error: unrecognized opcode: `hrfid'
> arch/powerpc/boot/opal-calls.S:55: Error: unrecognized opcode: `tdi'
> arch/powerpc/boot/opal-calls.S:58: Error: unrecognized opcode: `ld'
> make[1]: *** [arch/powerpc/boot/Makefile:232: arch/powerpc/boot/opal-calls.o] Error 1
> make: *** [arch/powerpc/Makefile:247: zImage] Error 2
...
> bamboo_defconfig
> powerpc-linux-gcc -Wp,-MD,arch/powerpc/boot/.treeboot-akebono.o.d -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -O2 -msoft-float -mno-altivec -mno-vsx -pipe -fomit-frame-pointer -fno-builtin -fPIC -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -m32 -mcpu=powerpc -isystem /var/lib/laminar/run/linux-powerpc-bamboo_defconfig/12/toolchain/bin/../lib/gcc/powerpc-linux/13.0.0/include -mbig-endian -fno-stack-protector -include ./include/linux/compiler_attributes.h -I./arch/powerpc/boot -I./arch/powerpc/boot -mcpu=405 -c -o arch/powerpc/boot/treeboot-akebono.o arch/powerpc/boot/treeboot-akebono.c
> {standard input}: Assembler messages:
> {standard input}:94: Error: unrecognized opcode: `mtdcrx'
> {standard input}:101: Error: unrecognized opcode: `mfdcrx'
> {standard input}:107: Error: unrecognized opcode: `mtdcrx'
> {standard input}:306: Error: unrecognized opcode: `mfdcrx'
> make[1]: *** [arch/powerpc/boot/Makefile:229: arch/powerpc/boot/treeboot-akebono.o] Error 1
> make: *** [arch/powerpc/Makefile:247: zImage] Error 2
Both treeboot-akebono.c and treeboot-currituck.c are for 476 so should
probably be built with -mcpu=476. eg:
diff --git a/arch/powerpc/boot/Makefile b/arch/powerpc/boot/Makefile
index d32d95aea5d6..acb6eddace8f 100644
--- a/arch/powerpc/boot/Makefile
+++ b/arch/powerpc/boot/Makefile
@@ -88,8 +88,8 @@ $(obj)/cuboot-taishan.o: BOOTCFLAGS += -mcpu=440
$(obj)/cuboot-katmai.o: BOOTCFLAGS += -mcpu=440
$(obj)/cuboot-acadia.o: BOOTCFLAGS += -mcpu=405
$(obj)/treeboot-iss4xx.o: BOOTCFLAGS += -mcpu=405
-$(obj)/treeboot-currituck.o: BOOTCFLAGS += -mcpu=405
-$(obj)/treeboot-akebono.o: BOOTCFLAGS += -mcpu=405
+$(obj)/treeboot-currituck.o: BOOTCFLAGS += -mcpu=476
+$(obj)/treeboot-akebono.o: BOOTCFLAGS += -mcpu=476
# The pre-boot decompressors pull in a lot of kernel headers and other source
# files. This creates a bit of a dependency headache since we need to copy
> cell_defconfig
> powerpc64-linux-gcc -Wp,-MD,arch/powerpc/boot/.pseries-head.o.d -D__ASSEMBLY__ -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -O2 -msoft-float -mno-altivec -mno-vsx -pipe -fomit-frame-pointer -fno-builtin -fPIC -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -m32 -mcpu=powerpc -isystem /var/lib/laminar/run/linux-powerpc-cell_defconfig/12/toolchain/bin/../lib/gcc/powerpc64-linux/13.0.0/include -mbig-endian -nostdinc -c -o arch/powerpc/boot/pseries-head.o arch/powerpc/boot/pseries-head.S
> arch/powerpc/boot/pseries-head.S: Assembler messages:
> arch/powerpc/boot/pseries-head.S:8: Error: unrecognized opcode: `tdi'
> make[1]: *** [arch/powerpc/boot/Makefile:232: arch/powerpc/boot/pseries-head.o] Error 1
> make: *** [arch/powerpc/Makefile:247: zImage] Error 2
I guess it's complaining about tdi in 32-bit code.
Except that tdi is in the FIXUP_ENDIAN macro. Not sure how we fix that.
> powernv_defconfig
> powerpc64-linux-gcc -Wp,-MMD,arch/powerpc/lib/.sstep.o.d -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -include ./include/linux/compiler_types.h -D__KERNEL__ -I ./arch/powerpc -DHAVE_AS_ATHIGH=1 -fmacro-prefix-map=./= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu11 -mlittle-endian -m64 -msoft-float -pipe -mtraceback=no -mabi=elfv2 -mcmodel=medium -mno-pointers-to-nested-functions -mcpu=power8 -mtune=power10 -mno-prefixed -mno-pcrel -mno-altivec -mno-vsx -mno-mma -fno-asynchronous-unwind-tables -mno-string -Wa,-maltivec -Wa,-mpower4 -Wa,-many -mno-strict-align -mlittle-endian -mstack-protector-guard=tls -mstack-protector-guard-reg=r13 -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 -fno-allow-store-data-races -Wframe-larger-than=2048 -fstack-protector-strong -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -ftrivial-auto-var-init=zero -fno-stack-clash-protection -pg -mprofile-kernel -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-truncation -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -mstack-protector-guard-offset=3184 -Werror -DKBUILD_MODFILE='"arch/powerpc/lib/sstep"' -DKBUILD_BASENAME='"sstep"' -DKBUILD_MODNAME='"sstep"' -D__KBUILD_MODNAME=kmod_sstep -c -o arch/powerpc/lib/sstep.o arch/powerpc/lib/sstep.c
> In function 'do_byte_reverse',
> inlined from 'do_vec_store' at arch/powerpc/lib/sstep.c:722:3,
> inlined from 'emulate_loadstore' at arch/powerpc/lib/sstep.c:3509:9:
> arch/powerpc/lib/sstep.c:286:25: error: array subscript [3, 4] is outside array bounds of 'union <anonymous>[1]' [-Werror=array-bounds=]
> 286 | up[0] = byterev_8(up[3]);
> | ^~~~~~~~~~~~~~~~
I've seen this one before, prior to array-bounds being disabled upstream.
The code is not actually buggy AFAICS, but it is quite complicated and relies on
the caller passing the correct size array to match the nb argument,
which is fairly fragile.
I'd be happy for it to be rewritten.
> ppc64e_defconfig
> powerpc64-linux-gcc -Wp,-MMD,arch/powerpc/kernel/vdso/.gettimeofday-64.o.d -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -D__KERNEL__ -I ./arch/powerpc -DHAVE_AS_ATHIGH=1 -fmacro-prefix-map=./= -D__ASSEMBLY__ -fno-PIE -m64 -Wl,-a64 -mabi=elfv1 -Wa,-me500 -Wa,-me500mc -mabi=elfv1 -mbig-endian -Wl,-soname=linux-vdso64.so.1 -D__VDSO64__ -s -c -o arch/powerpc/kernel/vdso/gettimeofday-64.o arch/powerpc/kernel/vdso/gettimeofday.S
> arch/powerpc/kernel/vdso/gettimeofday.S: Assembler messages:
> arch/powerpc/kernel/vdso/gettimeofday.S:72: Error: unrecognized opcode: `stdu'
> arch/powerpc/kernel/vdso/gettimeofday.S:72: Error: unrecognized opcode: `stdu'
> arch/powerpc/kernel/vdso/gettimeofday.S:72: Error: unrecognized opcode: `std'
> arch/powerpc/kernel/vdso/gettimeofday.S:72: Error: unrecognized opcode: `std'
> arch/powerpc/kernel/vdso/gettimeofday.S:72: Error: unrecognized opcode: `ld'
> arch/powerpc/kernel/vdso/gettimeofday.S:72: Error: unrecognized opcode: `ld'
> arch/powerpc/kernel/vdso/gettimeofday.S:82: Error: unrecognized opcode: `stdu'
> arch/powerpc/kernel/vdso/gettimeofday.S:82: Error: unrecognized opcode: `stdu'
> arch/powerpc/kernel/vdso/gettimeofday.S:82: Error: unrecognized opcode: `std'
> arch/powerpc/kernel/vdso/gettimeofday.S:82: Error: unrecognized opcode: `std'
> arch/powerpc/kernel/vdso/gettimeofday.S:82: Error: unrecognized opcode: `ld'
> arch/powerpc/kernel/vdso/gettimeofday.S:82: Error: unrecognized opcode: `ld'
> arch/powerpc/kernel/vdso/gettimeofday.S:104: Error: unrecognized opcode: `stdu'
> arch/powerpc/kernel/vdso/gettimeofday.S:104: Error: unrecognized opcode: `stdu'
> arch/powerpc/kernel/vdso/gettimeofday.S:104: Error: unrecognized opcode: `std'
> arch/powerpc/kernel/vdso/gettimeofday.S:104: Error: unrecognized opcode: `std'
> arch/powerpc/kernel/vdso/gettimeofday.S:104: Error: unrecognized opcode: `ld'
> arch/powerpc/kernel/vdso/gettimeofday.S:104: Error: unrecognized opcode: `ld'
> arch/powerpc/kernel/vdso/gettimeofday.S:115: Error: unrecognized opcode: `stdu'
> arch/powerpc/kernel/vdso/gettimeofday.S:115: Error: unrecognized opcode: `stdu'
> arch/powerpc/kernel/vdso/gettimeofday.S:115: Error: unrecognized opcode: `std'
> arch/powerpc/kernel/vdso/gettimeofday.S:115: Error: unrecognized opcode: `std'
> arch/powerpc/kernel/vdso/gettimeofday.S:115: Error: unrecognized opcode: `ld'
> arch/powerpc/kernel/vdso/gettimeofday.S:115: Error: unrecognized opcode: `ld'
> make[1]: *** [arch/powerpc/kernel/vdso/Makefile:76: arch/powerpc/kernel/vdso/gettimeofday-64.o] Error 1
> make: *** [arch/powerpc/Makefile:387: vdso_prepare] Error 2
I'm guessing but possibly fixed by:
http://patchwork.ozlabs.org/project/linuxppc-dev/patch/3fd60c2d8a28668a42b766b18362a526ef47e757.1670420281.git.christophe.leroy@csgroup.eu/
cheers
^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: Mass-building defconfigs: many fail with assembler errors
2022-12-13 3:49 ` Michael Ellerman
@ 2022-12-13 8:41 ` Jan-Benedict Glaw
2022-12-13 12:23 ` Segher Boessenkool
2022-12-14 14:45 ` Jan-Benedict Glaw
1 sibling, 1 reply; 14+ messages in thread
From: Jan-Benedict Glaw @ 2022-12-13 8:41 UTC (permalink / raw)
To: Michael Ellerman; +Cc: linuxppc-dev
[-- Attachment #1: Type: text/plain, Size: 5394 bytes --]
Hi Michael,
On Tue, 2022-12-13 14:49:20 +1100, Michael Ellerman <mpe@ellerman.id.au> wrote:
> Jan-Benedict Glaw <jbglaw@lug-owl.de> writes:
> > Is anybody else routinely building current Binutils + GCC, to try to
> > build all the Linux defconfigs?
>
> I did for several years, but eventually stopped because it was taking
> too much time I needed to spend on other things.
I've got one system at my hands to let it build stuff all day. So I'm
trying to extend that as far as possible.
> > For PPC, a good number of those fail,
> > and I probably don't understand PPC well enough to propose patches. Or
> > did I pick wrongly targeted toolchains? Most of the time, my suspicion
> > is that we're not giving the correct -m<cpu> flags in
> > ./arch/powerpc/boot/? (My setup for doing test builds is fairly automated, I
> > can easily throw in patches for testing.)
>
> All the results against <something>.config are invalid or at least
> dubious. Those files are not standalone defconfigs, they're fragments of
> defconfigs that are assembled together by arch/powerpc/Makefile using
> merge_config.sh.
>
> So your script should exclude all files that end in ".config".
Thanks! Will just drop those.
> To find the names of the generated configs you can use something like:
>
> $ awk '/PHONY \+= .*config/ {print $3}' arch/powerpc/Makefile
...and integrate these instead. Thanks a lot!
> > 64-bit.config
> > powerpc64-linux-gcc -Wp,-MD,arch/powerpc/boot/.opal-calls.o.d -D__ASSEMBLY__ -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -O2 -msoft-float -mno-altivec -mno-vsx -pipe -fomit-frame-pointer -fno-builtin -fPIC -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -m32 -mcpu=powerpc -isystem /var/lib/laminar/run/linux-powerpc-64-bit.config/12/toolchain/bin/../lib/gcc/powerpc64-linux/13.0.0/include -mbig-endian -nostdinc -c -o arch/powerpc/boot/opal-calls.o arch/powerpc/boot/opal-calls.S
> > arch/powerpc/boot/opal-calls.S: Assembler messages:
> > arch/powerpc/boot/opal-calls.S:20: Error: unrecognized opcode: `ld'
> > arch/powerpc/boot/opal-calls.S:21: Error: unrecognized opcode: `ld'
> > arch/powerpc/boot/opal-calls.S:32: Error: unrecognized opcode: `std'
> > arch/powerpc/boot/opal-calls.S:49: Error: unrecognized opcode: `ld'
> > arch/powerpc/boot/opal-calls.S:50: Error: unrecognized opcode: `ld'
> > arch/powerpc/boot/opal-calls.S:52: Error: unrecognized opcode: `hrfid'
> > arch/powerpc/boot/opal-calls.S:55: Error: unrecognized opcode: `tdi'
> > arch/powerpc/boot/opal-calls.S:58: Error: unrecognized opcode: `ld'
> > make[1]: *** [arch/powerpc/boot/Makefile:232: arch/powerpc/boot/opal-calls.o] Error 1
> > make: *** [arch/powerpc/Makefile:247: zImage] Error 2
>
> ...
>
> > bamboo_defconfig
> > powerpc-linux-gcc -Wp,-MD,arch/powerpc/boot/.treeboot-akebono.o.d -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -O2 -msoft-float -mno-altivec -mno-vsx -pipe -fomit-frame-pointer -fno-builtin -fPIC -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -m32 -mcpu=powerpc -isystem /var/lib/laminar/run/linux-powerpc-bamboo_defconfig/12/toolchain/bin/../lib/gcc/powerpc-linux/13.0.0/include -mbig-endian -fno-stack-protector -include ./include/linux/compiler_attributes.h -I./arch/powerpc/boot -I./arch/powerpc/boot -mcpu=405 -c -o arch/powerpc/boot/treeboot-akebono.o arch/powerpc/boot/treeboot-akebono.c
> > {standard input}: Assembler messages:
> > {standard input}:94: Error: unrecognized opcode: `mtdcrx'
> > {standard input}:101: Error: unrecognized opcode: `mfdcrx'
> > {standard input}:107: Error: unrecognized opcode: `mtdcrx'
> > {standard input}:306: Error: unrecognized opcode: `mfdcrx'
> > make[1]: *** [arch/powerpc/boot/Makefile:229: arch/powerpc/boot/treeboot-akebono.o] Error 1
> > make: *** [arch/powerpc/Makefile:247: zImage] Error 2
>
> Both treeboot-akebono.c and treeboot-currituck.c are for 476 so should
> probably be built with -mcpu=476. eg:
>
> diff --git a/arch/powerpc/boot/Makefile b/arch/powerpc/boot/Makefile
> index d32d95aea5d6..acb6eddace8f 100644
> --- a/arch/powerpc/boot/Makefile
> +++ b/arch/powerpc/boot/Makefile
> @@ -88,8 +88,8 @@ $(obj)/cuboot-taishan.o: BOOTCFLAGS += -mcpu=440
> $(obj)/cuboot-katmai.o: BOOTCFLAGS += -mcpu=440
> $(obj)/cuboot-acadia.o: BOOTCFLAGS += -mcpu=405
> $(obj)/treeboot-iss4xx.o: BOOTCFLAGS += -mcpu=405
> -$(obj)/treeboot-currituck.o: BOOTCFLAGS += -mcpu=405
> -$(obj)/treeboot-akebono.o: BOOTCFLAGS += -mcpu=405
> +$(obj)/treeboot-currituck.o: BOOTCFLAGS += -mcpu=476
> +$(obj)/treeboot-akebono.o: BOOTCFLAGS += -mcpu=476
>
> # The pre-boot decompressors pull in a lot of kernel headers and other source
> # files. This creates a bit of a dependency headache since we need to copy
I'll update my scripts to pick up this different config set and drop
in this patch.
MfG, JBG
--
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Mass-building defconfigs: many fail with assembler errors
2022-12-13 0:26 ` Segher Boessenkool
@ 2022-12-13 10:00 ` Jan-Benedict Glaw
2022-12-14 9:00 ` Jan-Benedict Glaw
0 siblings, 1 reply; 14+ messages in thread
From: Jan-Benedict Glaw @ 2022-12-13 10:00 UTC (permalink / raw)
To: Segher Boessenkool; +Cc: linuxppc-dev
[-- Attachment #1: Type: text/plain, Size: 4555 bytes --]
Hi Segher!
On Mon, 2022-12-12 18:26:13 -0600, Segher Boessenkool <segher@kernel.crashing.org> wrote:
> On Mon, Dec 12, 2022 at 10:51:17PM +0100, Jan-Benedict Glaw wrote:
[...]
> > For PPC, a good number of those fail,
> > and I probably don't understand PPC well enough to propose patches. Or
> > did I pick wrongly targeted toolchains? Most of the time, my suspicion
> > is that we're not giving the correct -m<cpu> flags in
> > ./arch/powerpc/boot/? (My setup for doing test builds is fairly automated, I
> > can easily throw in patches for testing.)
>
> Many of those use a 32-bit toolchain with a 64-bit kernel, or they
> require some e500 specific config but not getting it (or the other way
> around).
>
> > 64-bit.config
>
> > ==> Why "-m32 -mcpu=powerpc"? Binutils/GCC are for --target=powerpc64-linux
>
> Something in your config is forcing that.
That's a configuration that should not have been built. As Michael
wrote, it's just a fragment for a defconfig, I queued it for a build
but that was plain wrong. (As well as other *.config files.)
> > Compiler ICEs (during GIMPLE pass: ccp) in align.c:
> >
> > powerpc-linux-gcc -Wp,-MMD,arch/powerpc/kernel/.align.o.d -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -include ./include/linux/compiler_types.h -D__KERNEL__ -I ./arch/powerpc -fmacro-prefix-map=./= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu11 -mbig-endian -m32 -msoft-float -pipe -ffixed-r2 -mmultiple -mno-readonly-in-sdata -mcpu=440 -mno-prefixed -mno-pcrel -mno-altivec -mno-vsx -mno-mma -fno-asynchronous-unwind-tables -mno-string -Wa,-m440 -mbig-endian -mstack-protector-guard=tls -mstack-protector-guard-reg=r2 -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 -fno-allow-store-data-races -Wframe-larger-than=1024 -fstack-protector-strong -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -fomit-frame-pointer -ftrivial-auto-var-init=zero -fno-stack-clash-protection -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-truncation -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -g -mstack-protector-guard-offset=1080 -Werror -DKBUILD_MODFILE='"arch/powerpc/kernel/align"' -DKBUILD_BASENAME='"align"' -DKBUILD_MODNAME='"align"' -D__KBUILD_MODNAME=kmod_align -c -o arch/powerpc/kernel/align.o arch/powerpc/kernel/align.c
> > during GIMPLE pass: ccp
> > arch/powerpc/kernel/align.c: In function '__copy_inst_from_kernel_nofault':
> > arch/powerpc/kernel/align.c:364:1: internal compiler error: in maybe_register_def, at tree-into-ssa.cc:1948
> > 364 | }
> > | ^
> > 0x19d8886 internal_error(char const*, ...)
> > ???:0
> > 0x7bb4fe fancy_abort(char const*, int, char const*)
> > ???:0
> > 0x1791bfe dom_walker::walk(basic_block_def*)
> > ???:0
> > 0xe94ec0 update_ssa(unsigned int)
> > ???:0
> > 0x103d6b9 execute_update_addresses_taken()
> > ???:0
> > Please submit a full bug report, with preprocessed source (by using -freport-bug).
> > Please include the complete backtrace with any bug report.
> > See <https://gcc.gnu.org/bugs/> for instructions.
> > make[3]: *** [scripts/Makefile.build:250: arch/powerpc/kernel/align.o] Error 1
> > make[2]: *** [scripts/Makefile.build:500: arch/powerpc/kernel] Error 2
> > make[1]: *** [scripts/Makefile.build:500: arch/powerpc] Error 2
> > make: *** [Makefile:1992: .] Error 2
> >
> > ==> Should probably open a PR for this.
>
> Yes please!
I'll wait until the current build loop finishes. Looking at
__copy_inst_from_kernel_nofault(), it uses an asm goto, which I had
issues with and there was already a fix for it
(7676235f690e624b7ed41a22b22ce8ccfac1492f,
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107997) which might fix
all of those.
Thanks,
Jan-Benedict
--
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Mass-building defconfigs: many fail with assembler errors
2022-12-13 8:41 ` Jan-Benedict Glaw
@ 2022-12-13 12:23 ` Segher Boessenkool
0 siblings, 0 replies; 14+ messages in thread
From: Segher Boessenkool @ 2022-12-13 12:23 UTC (permalink / raw)
To: Jan-Benedict Glaw; +Cc: linuxppc-dev
On Tue, Dec 13, 2022 at 09:41:59AM +0100, Jan-Benedict Glaw wrote:
> On Tue, 2022-12-13 14:49:20 +1100, Michael Ellerman <mpe@ellerman.id.au> wrote:
> > So your script should exclude all files that end in ".config".
>
> Thanks! Will just drop those.
>
> > To find the names of the generated configs you can use something like:
> >
> > $ awk '/PHONY \+= .*config/ {print $3}' arch/powerpc/Makefile
>
> ...and integrate these instead. Thanks a lot!
You can also pretend you are a simple user and use the targets
"make help" and "make help-boards" suggest :-)
Segher
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Mass-building defconfigs: many fail with assembler errors
2022-12-13 10:00 ` Jan-Benedict Glaw
@ 2022-12-14 9:00 ` Jan-Benedict Glaw
2022-12-14 18:36 ` Jan-Benedict Glaw
2022-12-15 8:47 ` Jan-Benedict Glaw
0 siblings, 2 replies; 14+ messages in thread
From: Jan-Benedict Glaw @ 2022-12-14 9:00 UTC (permalink / raw)
To: Segher Boessenkool; +Cc: linuxppc-dev
[-- Attachment #1: Type: text/plain, Size: 3885 bytes --]
Hi Segher!
On Tue, 2022-12-13 11:00:45 +0100, Jan-Benedict Glaw <jbglaw@lug-owl.de> wrote:
> On Mon, 2022-12-12 18:26:13 -0600, Segher Boessenkool <segher@kernel.crashing.org> wrote:
> > On Mon, Dec 12, 2022 at 10:51:17PM +0100, Jan-Benedict Glaw wrote:
> > > Compiler ICEs (during GIMPLE pass: ccp) in align.c:
> > >
> > > powerpc-linux-gcc -Wp,-MMD,arch/powerpc/kernel/.align.o.d -nostdinc -I./arch/powerpc/include -I./arch/powerpc/include/generated -I./include -I./arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -include ./include/linux/compiler_types.h -D__KERNEL__ -I ./arch/powerpc -fmacro-prefix-map=./= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu11 -mbig-endian -m32 -msoft-float -pipe -ffixed-r2 -mmultiple -mno-readonly-in-sdata -mcpu=440 -mno-prefixed -mno-pcrel -mno-altivec -mno-vsx -mno-mma -fno-asynchronous-unwind-tables -mno-string -Wa,-m440 -mbig-endian -mstack-protector-guard=tls -mstack-protector-guard-reg=r2 -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 -fno-allow-store-data-races -Wframe-larger-than=1024 -fstack-protector-strong -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -fomit-frame-pointer -ftrivial-auto-var-init=zero -fno-stack-clash-protection -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-truncation -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -g -mstack-protector-guard-offset=1080 -Werror -DKBUILD_MODFILE='"arch/powerpc/kernel/align"' -DKBUILD_BASENAME='"align"' -DKBUILD_MODNAME='"align"' -D__KBUILD_MODNAME=kmod_align -c -o arch/powerpc/kernel/align.o arch/powerpc/kernel/align.c
> > > during GIMPLE pass: ccp
> > > arch/powerpc/kernel/align.c: In function '__copy_inst_from_kernel_nofault':
> > > arch/powerpc/kernel/align.c:364:1: internal compiler error: in maybe_register_def, at tree-into-ssa.cc:1948
> > > 364 | }
> > > | ^
> > > 0x19d8886 internal_error(char const*, ...)
> > > ???:0
> > > 0x7bb4fe fancy_abort(char const*, int, char const*)
> > > ???:0
> > > 0x1791bfe dom_walker::walk(basic_block_def*)
> > > ???:0
> > > 0xe94ec0 update_ssa(unsigned int)
> > > ???:0
> > > 0x103d6b9 execute_update_addresses_taken()
> > > ???:0
> > > Please submit a full bug report, with preprocessed source (by using -freport-bug).
> > > Please include the complete backtrace with any bug report.
> > > See <https://gcc.gnu.org/bugs/> for instructions.
> > > make[3]: *** [scripts/Makefile.build:250: arch/powerpc/kernel/align.o] Error 1
> > > make[2]: *** [scripts/Makefile.build:500: arch/powerpc/kernel] Error 2
> > > make[1]: *** [scripts/Makefile.build:500: arch/powerpc] Error 2
> > > make: *** [Makefile:1992: .] Error 2
> > >
> > > ==> Should probably open a PR for this.
> >
> > Yes please!
Submitted as https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108095:
typedef unsigned u32;
int __copy_inst_from_kernel_nofault_inst;
__copy_inst_from_kernel_nofault() {
unsigned suffix;
asm goto("" : "=r"(*(u32 *)&suffix) : : : Efault);
__copy_inst_from_kernel_nofault_inst = 0;
Efault:
}
ICEs with: `powerpc64-linux-gcc -Os -g -c -o align.o align.i` (Both
`-Os` and `-g` are needed to produce the ICE.)
MfG, JBG
--
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Mass-building defconfigs: many fail with assembler errors
2022-12-13 3:49 ` Michael Ellerman
2022-12-13 8:41 ` Jan-Benedict Glaw
@ 2022-12-14 14:45 ` Jan-Benedict Glaw
2022-12-15 6:49 ` Christophe Leroy
2022-12-15 12:47 ` Michael Ellerman
1 sibling, 2 replies; 14+ messages in thread
From: Jan-Benedict Glaw @ 2022-12-14 14:45 UTC (permalink / raw)
To: Michael Ellerman; +Cc: linuxppc-dev
[-- Attachment #1: Type: text/plain, Size: 1736 bytes --]
On Tue, 2022-12-13 14:49:20 +1100, Michael Ellerman <mpe@ellerman.id.au> wrote:
[...]
> Both treeboot-akebono.c and treeboot-currituck.c are for 476 so should
> probably be built with -mcpu=476. eg:
>
> diff --git a/arch/powerpc/boot/Makefile b/arch/powerpc/boot/Makefile
> index d32d95aea5d6..acb6eddace8f 100644
> --- a/arch/powerpc/boot/Makefile
> +++ b/arch/powerpc/boot/Makefile
> @@ -88,8 +88,8 @@ $(obj)/cuboot-taishan.o: BOOTCFLAGS += -mcpu=440
> $(obj)/cuboot-katmai.o: BOOTCFLAGS += -mcpu=440
> $(obj)/cuboot-acadia.o: BOOTCFLAGS += -mcpu=405
> $(obj)/treeboot-iss4xx.o: BOOTCFLAGS += -mcpu=405
> -$(obj)/treeboot-currituck.o: BOOTCFLAGS += -mcpu=405
> -$(obj)/treeboot-akebono.o: BOOTCFLAGS += -mcpu=405
> +$(obj)/treeboot-currituck.o: BOOTCFLAGS += -mcpu=476
> +$(obj)/treeboot-akebono.o: BOOTCFLAGS += -mcpu=476
>
> # The pre-boot decompressors pull in a lot of kernel headers and other source
> # files. This creates a bit of a dependency headache since we need to copy
With this patch applied, it seems this fixes these asm-related builds:
linux-powerpc-bamboo_defconfig
linux-powerpc-cell_defconfig
linux-powerpc-ebony_defconfig
linux-powerpc-katmai_defconfig
linux-powerpc-ppc44x_defconfig
linux-powerpc-rainier_defconfig
linux-powerpc-sam440ep_defconfig
linux-powerpc-sequoia_defconfig
linux-powerpc-taishan_defconfig
...while three remain unresolved:
linux-powerpc-asp8347_defconfig
linux-powerpc-mvme5100_defconfig
linux-powerpc-ppc64e_defconfig
Of course I cannot verify the resulting kernel binaries, but I guess
you'd push this patch.
The PR for the ICE is being actively worked on, just started a GCC
build with the suggested patch.
MfG, JBG
--
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Mass-building defconfigs: many fail with assembler errors
2022-12-14 9:00 ` Jan-Benedict Glaw
@ 2022-12-14 18:36 ` Jan-Benedict Glaw
2022-12-14 20:08 ` Segher Boessenkool
2022-12-15 8:47 ` Jan-Benedict Glaw
1 sibling, 1 reply; 14+ messages in thread
From: Jan-Benedict Glaw @ 2022-12-14 18:36 UTC (permalink / raw)
To: Segher Boessenkool; +Cc: linuxppc-dev
[-- Attachment #1: Type: text/plain, Size: 3268 bytes --]
Hi Segher!
On Wed, 2022-12-14 10:00:25 +0100, Jan-Benedict Glaw <jbglaw@lug-owl.de> wrote:
> On Tue, 2022-12-13 11:00:45 +0100, Jan-Benedict Glaw <jbglaw@lug-owl.de> wrote:
> > On Mon, 2022-12-12 18:26:13 -0600, Segher Boessenkool <segher@kernel.crashing.org> wrote:
> > > On Mon, Dec 12, 2022 at 10:51:17PM +0100, Jan-Benedict Glaw wrote:
> > > > Compiler ICEs (during GIMPLE pass: ccp) in align.c:
[...]
> Submitted as https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108095:
[...]
Jakub's patch seems to work (though I cannot *verify* the kernel
images on real hardware), so that will presumably fix these
configations (from the ICE point of view):
linux-powerpc-adder875_defconfig
linux-powerpc-akebono_defconfig
linux-powerpc-lite5200b_defconfig
linux-powerpc-mgcoge_defconfig
linux-powerpc-motionpro_defconfig
linux-powerpc-mpc5200_defconfig
linux-powerpc-mpc8272_ads_defconfig
linux-powerpc-ppc6xx_defconfig
linux-powerpc-tqm5200_defconfig
linux-powerpc-tqm8xx_defconfig
linux-powerpc-warp_defconfig
linux-powerpc-pq2fads_defconfig
linux-powerpc-ps3_defconfig
linux-powerpc-mpc885_ads_defconfig
linux-powerpc-ep8248e_defconfig
linux-powerpc-ep88xc_defconfig
linux-powerpc-iss476-smp_defconfig
linux-powerpc-fsp2_defconfig
linux-powerpc-currituck_defconfig
So we have these remaining build issues:
linux-powerpc-cell_defconfig bad asm (arch/powerpc/boot/pseries-head.S)
linux-powerpc-mvme5100_defconfig bad asm (arch/powerpc/kernel/epapr_hcalls.S)
linux-powerpc-asp8347_defconfig bad asm (arch/powerpc/kernel/pmc.c)
linux-powerpc-ppc6xx_defconfig bad asm (arch/powerpc/kernel/pmc.c)
linux-powerpc-ppc64e_defconfig bad asm (arch/powerpc/kernel/vdso/gettimeofday.S)
linux-powerpc-corenet64_smp_defconfig bad asm (arch/powerpc/kernel/vdso/gettimeofday.S)
I do *not* have CROSS32_COMPILE=... set for my builds. Maybe that
could cure at least the issues within the ./boot and ./kernel/vdso
directories? Let's try that... But I guess that won't help for the
other two remaining files (arch/powerpc/kernel/{epapr_hcalls.S,pmc.c).
linux-powerpc-pseries_defconfig sstep (out of array bounds)
linux-powerpc-powernv_defconfig sstep
linux-powerpc-ppc64_defconfig sstep
linux-powerpc-pseries_le_defconfig sstep
linux-powerpc-ppc64le_defconfig sstep
linux-powerpc-ppc64le_guest_defconfig sstep
linux-powerpc-ppc64_guest_defconfig sstep
linux-powerpc-powernv_be_defconfig sstep
My first guess on these is that it's a wrong warning. The union's
`u8 b[2 * sizeof(double)]` seems to be large enough.
linux-powerpc-akebono_defconfig ahci (BUILD_BUG_ON failed: sizeof(_s) > sizeof(long))
linux-powerpc-xes_mpc85xx_defconfig ahci
linux-powerpc-ge_imp3a_defconfig ahci
linux-powerpc-mpc85xx_defconfig ahci
linux-powerpc-mpc85xx_smp_defconfig ahci
linux-powerpc-corenet32_smp_defconfig ahci
linux-powerpc-mpc86xx_defconfig ahci
linux-powerpc-mpc86xx_smp_defconfig ahci
I've seen the AHCI issue on other (non-powerpc) builds as well,
haven't looked into this so I won't guess about whether this is a real
bug or a compiler issue.
Thanks,
Jan-Benedict
--
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Mass-building defconfigs: many fail with assembler errors
2022-12-14 18:36 ` Jan-Benedict Glaw
@ 2022-12-14 20:08 ` Segher Boessenkool
0 siblings, 0 replies; 14+ messages in thread
From: Segher Boessenkool @ 2022-12-14 20:08 UTC (permalink / raw)
To: Jan-Benedict Glaw; +Cc: linuxppc-dev
Hi!
On Wed, Dec 14, 2022 at 07:36:32PM +0100, Jan-Benedict Glaw wrote:
> So we have these remaining build issues:
>
> linux-powerpc-cell_defconfig bad asm (arch/powerpc/boot/pseries-head.S)
> linux-powerpc-mvme5100_defconfig bad asm (arch/powerpc/kernel/epapr_hcalls.S)
> linux-powerpc-asp8347_defconfig bad asm (arch/powerpc/kernel/pmc.c)
> linux-powerpc-ppc6xx_defconfig bad asm (arch/powerpc/kernel/pmc.c)
> linux-powerpc-ppc64e_defconfig bad asm (arch/powerpc/kernel/vdso/gettimeofday.S)
> linux-powerpc-corenet64_smp_defconfig bad asm (arch/powerpc/kernel/vdso/gettimeofday.S)
>
> I do *not* have CROSS32_COMPILE=... set for my builds. Maybe that
> could cure at least the issues within the ./boot and ./kernel/vdso
> directories?
I never set that, -m32 does the trick, every powerpc compiler is
biarch :-)
> Let's try that... But I guess that won't help for the
> other two remaining files (arch/powerpc/kernel/{epapr_hcalls.S,pmc.c).
Not likely no. Can you show the error of those again?
> linux-powerpc-pseries_defconfig sstep (out of array bounds)
> linux-powerpc-powernv_defconfig sstep
> linux-powerpc-ppc64_defconfig sstep
> linux-powerpc-pseries_le_defconfig sstep
> linux-powerpc-ppc64le_defconfig sstep
> linux-powerpc-ppc64le_guest_defconfig sstep
> linux-powerpc-ppc64_guest_defconfig sstep
> linux-powerpc-powernv_be_defconfig sstep
>
> My first guess on these is that it's a wrong warning. The union's
> `u8 b[2 * sizeof(double)]` seems to be large enough.
A false positive, yes. Which is *not* wrong. What is wrong is using
-Werror in any unknown environment. I have a stack of patches I use for
all my kernel builds, and half of those are eradicating harmful -Werror
instances.
> linux-powerpc-akebono_defconfig ahci (BUILD_BUG_ON failed: sizeof(_s) > sizeof(long))
> linux-powerpc-xes_mpc85xx_defconfig ahci
> linux-powerpc-ge_imp3a_defconfig ahci
> linux-powerpc-mpc85xx_defconfig ahci
> linux-powerpc-mpc85xx_smp_defconfig ahci
> linux-powerpc-corenet32_smp_defconfig ahci
> linux-powerpc-mpc86xx_defconfig ahci
> linux-powerpc-mpc86xx_smp_defconfig ahci
>
> I've seen the AHCI issue on other (non-powerpc) builds as well,
> haven't looked into this so I won't guess about whether this is a real
> bug or a compiler issue.
It is a real bug afaics.
Segher
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Mass-building defconfigs: many fail with assembler errors
2022-12-14 14:45 ` Jan-Benedict Glaw
@ 2022-12-15 6:49 ` Christophe Leroy
2022-12-15 6:55 ` Christophe Leroy
2022-12-15 12:47 ` Michael Ellerman
1 sibling, 1 reply; 14+ messages in thread
From: Christophe Leroy @ 2022-12-15 6:49 UTC (permalink / raw)
To: Jan-Benedict Glaw, Michael Ellerman; +Cc: linuxppc-dev
Le 14/12/2022 à 15:45, Jan-Benedict Glaw a écrit :
> On Tue, 2022-12-13 14:49:20 +1100, Michael Ellerman <mpe@ellerman.id.au> wrote:
> [...]
>> Both treeboot-akebono.c and treeboot-currituck.c are for 476 so should
>> probably be built with -mcpu=476. eg:
>>
>> diff --git a/arch/powerpc/boot/Makefile b/arch/powerpc/boot/Makefile
>> index d32d95aea5d6..acb6eddace8f 100644
>> --- a/arch/powerpc/boot/Makefile
>> +++ b/arch/powerpc/boot/Makefile
>> @@ -88,8 +88,8 @@ $(obj)/cuboot-taishan.o: BOOTCFLAGS += -mcpu=440
>> $(obj)/cuboot-katmai.o: BOOTCFLAGS += -mcpu=440
>> $(obj)/cuboot-acadia.o: BOOTCFLAGS += -mcpu=405
>> $(obj)/treeboot-iss4xx.o: BOOTCFLAGS += -mcpu=405
>> -$(obj)/treeboot-currituck.o: BOOTCFLAGS += -mcpu=405
>> -$(obj)/treeboot-akebono.o: BOOTCFLAGS += -mcpu=405
>> +$(obj)/treeboot-currituck.o: BOOTCFLAGS += -mcpu=476
>> +$(obj)/treeboot-akebono.o: BOOTCFLAGS += -mcpu=476
>>
>> # The pre-boot decompressors pull in a lot of kernel headers and other source
>> # files. This creates a bit of a dependency headache since we need to copy
>
> With this patch applied, it seems this fixes these asm-related builds:
>
> linux-powerpc-bamboo_defconfig
> linux-powerpc-cell_defconfig
> linux-powerpc-ebony_defconfig
> linux-powerpc-katmai_defconfig
> linux-powerpc-ppc44x_defconfig
> linux-powerpc-rainier_defconfig
> linux-powerpc-sam440ep_defconfig
> linux-powerpc-sequoia_defconfig
> linux-powerpc-taishan_defconfig
>
> ...while three remain unresolved:
>
> linux-powerpc-asp8347_defconfig
> linux-powerpc-mvme5100_defconfig
> linux-powerpc-ppc64e_defconfig
>
Can you try with below changes (you may have to apply manually as I'm
not sure my mail client preserves text integrity):
diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile
index bf5f0a998273..3245eec95627 100644
--- a/arch/powerpc/Makefile
+++ b/arch/powerpc/Makefile
@@ -201,18 +201,15 @@ KBUILD_CFLAGS += -fno-asynchronous-unwind-tables
# often slow when they are implemented at all
KBUILD_CFLAGS += $(call cc-option,-mno-string)
-cpu-as-$(CONFIG_40x) += -Wa,-m405
-cpu-as-$(CONFIG_44x) += -Wa,-m440
cpu-as-$(CONFIG_ALTIVEC) += $(call as-option,-Wa$(comma)-maltivec)
-cpu-as-$(CONFIG_PPC_E500) += -Wa,-me500
+cpu-as-$(CONFIG_TARGET_CPU_BOOL) += -Wa,-m$(CONFIG_TARGET_CPU)
# When using '-many -mpower4' gas will first try and find a matching
power4
# mnemonic and failing that it will allow any valid mnemonic that GAS
knows
# about. GCC will pass -many to GAS when assembling, clang does not.
# LLVM IAS doesn't understand either flag:
https://github.com/ClangBuiltLinux/linux/issues/675
# but LLVM IAS only supports ISA >= 2.06 for Book3S 64 anyway...
-cpu-as-$(CONFIG_PPC_BOOK3S_64) += $(call as-option,-Wa$(comma)-mpower4)
$(call as-option,-Wa$(comma)-many)
-cpu-as-$(CONFIG_PPC_E500MC) += $(call as-option,-Wa$(comma)-me500mc)
+cpu-as-$(CONFIG_PPC_BOOK3S_64) += $(call as-option,-Wa$(comma)-many)
KBUILD_AFLAGS += $(cpu-as-y)
KBUILD_CFLAGS += $(cpu-as-y)
^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: Mass-building defconfigs: many fail with assembler errors
2022-12-15 6:49 ` Christophe Leroy
@ 2022-12-15 6:55 ` Christophe Leroy
0 siblings, 0 replies; 14+ messages in thread
From: Christophe Leroy @ 2022-12-15 6:55 UTC (permalink / raw)
To: Jan-Benedict Glaw, Michael Ellerman; +Cc: linuxppc-dev
Le 15/12/2022 à 07:49, Christophe Leroy a écrit :
>
>
> Le 14/12/2022 à 15:45, Jan-Benedict Glaw a écrit :
>> On Tue, 2022-12-13 14:49:20 +1100, Michael Ellerman
>> <mpe@ellerman.id.au> wrote:
>> [...]
>>> Both treeboot-akebono.c and treeboot-currituck.c are for 476 so should
>>> probably be built with -mcpu=476. eg:
>>>
>>> diff --git a/arch/powerpc/boot/Makefile b/arch/powerpc/boot/Makefile
>>> index d32d95aea5d6..acb6eddace8f 100644
>>> --- a/arch/powerpc/boot/Makefile
>>> +++ b/arch/powerpc/boot/Makefile
>>> @@ -88,8 +88,8 @@ $(obj)/cuboot-taishan.o: BOOTCFLAGS += -mcpu=440
>>> $(obj)/cuboot-katmai.o: BOOTCFLAGS += -mcpu=440
>>> $(obj)/cuboot-acadia.o: BOOTCFLAGS += -mcpu=405
>>> $(obj)/treeboot-iss4xx.o: BOOTCFLAGS += -mcpu=405
>>> -$(obj)/treeboot-currituck.o: BOOTCFLAGS += -mcpu=405
>>> -$(obj)/treeboot-akebono.o: BOOTCFLAGS += -mcpu=405
>>> +$(obj)/treeboot-currituck.o: BOOTCFLAGS += -mcpu=476
>>> +$(obj)/treeboot-akebono.o: BOOTCFLAGS += -mcpu=476
>>> # The pre-boot decompressors pull in a lot of kernel headers and
>>> other source
>>> # files. This creates a bit of a dependency headache since we need
>>> to copy
>>
>> With this patch applied, it seems this fixes these asm-related builds:
>>
>> linux-powerpc-bamboo_defconfig
>> linux-powerpc-cell_defconfig
>> linux-powerpc-ebony_defconfig
>> linux-powerpc-katmai_defconfig
>> linux-powerpc-ppc44x_defconfig
>> linux-powerpc-rainier_defconfig
>> linux-powerpc-sam440ep_defconfig
>> linux-powerpc-sequoia_defconfig
>> linux-powerpc-taishan_defconfig
>>
>> ...while three remain unresolved:
>>
>> linux-powerpc-asp8347_defconfig
>> linux-powerpc-mvme5100_defconfig
>> linux-powerpc-ppc64e_defconfig
>>
>
> Can you try with below changes (you may have to apply manually as I'm
> not sure my mail client preserves text integrity):
>
> diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile
> index bf5f0a998273..3245eec95627 100644
> --- a/arch/powerpc/Makefile
> +++ b/arch/powerpc/Makefile
> @@ -201,18 +201,15 @@ KBUILD_CFLAGS += -fno-asynchronous-unwind-tables
> # often slow when they are implemented at all
> KBUILD_CFLAGS += $(call cc-option,-mno-string)
>
> -cpu-as-$(CONFIG_40x) += -Wa,-m405
> -cpu-as-$(CONFIG_44x) += -Wa,-m440
> cpu-as-$(CONFIG_ALTIVEC) += $(call as-option,-Wa$(comma)-maltivec)
> -cpu-as-$(CONFIG_PPC_E500) += -Wa,-me500
> +cpu-as-$(CONFIG_TARGET_CPU_BOOL) += -Wa,-m$(CONFIG_TARGET_CPU)
>
> # When using '-many -mpower4' gas will first try and find a matching
> power4
> # mnemonic and failing that it will allow any valid mnemonic that GAS
> knows
> # about. GCC will pass -many to GAS when assembling, clang does not.
> # LLVM IAS doesn't understand either flag:
> https://github.com/ClangBuiltLinux/linux/issues/675
> # but LLVM IAS only supports ISA >= 2.06 for Book3S 64 anyway...
> -cpu-as-$(CONFIG_PPC_BOOK3S_64) += $(call
> as-option,-Wa$(comma)-mpower4) $(call as-option,-Wa$(comma)-many)
> -cpu-as-$(CONFIG_PPC_E500MC) += $(call as-option,-Wa$(comma)-me500mc)
> +cpu-as-$(CONFIG_PPC_BOOK3S_64) += $(call as-option,-Wa$(comma)-many)
>
> KBUILD_AFLAGS += $(cpu-as-y)
> KBUILD_CFLAGS += $(cpu-as-y)
>
For ppc64e_defconfig, also make sure you have the fix that is on top of
powerpc/next-test branch :
https://github.com/linuxppc/linux/commits/next-test
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Mass-building defconfigs: many fail with assembler errors
2022-12-14 9:00 ` Jan-Benedict Glaw
2022-12-14 18:36 ` Jan-Benedict Glaw
@ 2022-12-15 8:47 ` Jan-Benedict Glaw
1 sibling, 0 replies; 14+ messages in thread
From: Jan-Benedict Glaw @ 2022-12-15 8:47 UTC (permalink / raw)
To: Segher Boessenkool; +Cc: linuxppc-dev
[-- Attachment #1: Type: text/plain, Size: 821 bytes --]
On Wed, 2022-12-14 10:00:25 +0100, Jan-Benedict Glaw <jbglaw@lug-owl.de> wrote:
> On Tue, 2022-12-13 11:00:45 +0100, Jan-Benedict Glaw <jbglaw@lug-owl.de> wrote:
> > On Mon, 2022-12-12 18:26:13 -0600, Segher Boessenkool <segher@kernel.crashing.org> wrote:
> > > On Mon, Dec 12, 2022 at 10:51:17PM +0100, Jan-Benedict Glaw wrote:
> > > > Compiler ICEs (during GIMPLE pass: ccp) in align.c:
> Submitted as https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108095:
...and already fixed upstream by Jakub Jelinek:
https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=bf3ce6f84a7a994a0fc87419b383b9ce4efed442
That's the second asm goto related bug I submitted (initially found
while looking at powerpc builds) and I'm actually surprised about the
speed both of them got fixed. That's phantastic work!
MfG, JBG
--
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Mass-building defconfigs: many fail with assembler errors
2022-12-14 14:45 ` Jan-Benedict Glaw
2022-12-15 6:49 ` Christophe Leroy
@ 2022-12-15 12:47 ` Michael Ellerman
1 sibling, 0 replies; 14+ messages in thread
From: Michael Ellerman @ 2022-12-15 12:47 UTC (permalink / raw)
To: Jan-Benedict Glaw; +Cc: linuxppc-dev
Jan-Benedict Glaw <jbglaw@lug-owl.de> writes:
> On Tue, 2022-12-13 14:49:20 +1100, Michael Ellerman <mpe@ellerman.id.au> wrote:
> [...]
>> Both treeboot-akebono.c and treeboot-currituck.c are for 476 so should
>> probably be built with -mcpu=476. eg:
>>
>> diff --git a/arch/powerpc/boot/Makefile b/arch/powerpc/boot/Makefile
>> index d32d95aea5d6..acb6eddace8f 100644
>> --- a/arch/powerpc/boot/Makefile
>> +++ b/arch/powerpc/boot/Makefile
>> @@ -88,8 +88,8 @@ $(obj)/cuboot-taishan.o: BOOTCFLAGS += -mcpu=440
>> $(obj)/cuboot-katmai.o: BOOTCFLAGS += -mcpu=440
>> $(obj)/cuboot-acadia.o: BOOTCFLAGS += -mcpu=405
>> $(obj)/treeboot-iss4xx.o: BOOTCFLAGS += -mcpu=405
>> -$(obj)/treeboot-currituck.o: BOOTCFLAGS += -mcpu=405
>> -$(obj)/treeboot-akebono.o: BOOTCFLAGS += -mcpu=405
>> +$(obj)/treeboot-currituck.o: BOOTCFLAGS += -mcpu=476
>> +$(obj)/treeboot-akebono.o: BOOTCFLAGS += -mcpu=476
>>
>> # The pre-boot decompressors pull in a lot of kernel headers and other source
>> # files. This creates a bit of a dependency headache since we need to copy
>
> With this patch applied, it seems this fixes these asm-related builds:
>
> linux-powerpc-bamboo_defconfig
> linux-powerpc-cell_defconfig
> linux-powerpc-ebony_defconfig
> linux-powerpc-katmai_defconfig
> linux-powerpc-ppc44x_defconfig
> linux-powerpc-rainier_defconfig
> linux-powerpc-sam440ep_defconfig
> linux-powerpc-sequoia_defconfig
> linux-powerpc-taishan_defconfig
Thanks.
> ...while three remain unresolved:
>
> linux-powerpc-asp8347_defconfig
OK. Patch below which I believe fixes that.
diff --git a/arch/powerpc/include/asm/reg_fsl_emb.h b/arch/powerpc/include/asm/reg_fsl_emb.h
index a21f529c43d9..8359c06d92d9 100644
--- a/arch/powerpc/include/asm/reg_fsl_emb.h
+++ b/arch/powerpc/include/asm/reg_fsl_emb.h
@@ -12,9 +12,16 @@
#ifndef __ASSEMBLY__
/* Performance Monitor Registers */
#define mfpmr(rn) ({unsigned int rval; \
- asm volatile("mfpmr %0," __stringify(rn) \
+ asm volatile(".machine push; " \
+ ".machine e300; " \
+ "mfpmr %0," __stringify(rn) ";" \
+ ".machine pop; " \
: "=r" (rval)); rval;})
-#define mtpmr(rn, v) asm volatile("mtpmr " __stringify(rn) ",%0" : : "r" (v))
+#define mtpmr(rn, v) asm volatile(".machine push; " \
+ ".machine e300; " \
+ "mtpmr " __stringify(rn) ",%0; " \
+ ".machine pop; " \
+ : : "r" (v))
#endif /* __ASSEMBLY__ */
/* Freescale Book E Performance Monitor APU Registers */
> linux-powerpc-mvme5100_defconfig
And another:
diff --git a/arch/powerpc/kernel/epapr_hcalls.S b/arch/powerpc/kernel/epapr_hcalls.S
index 69a912550577..1ed73ab30288 100644
--- a/arch/powerpc/kernel/epapr_hcalls.S
+++ b/arch/powerpc/kernel/epapr_hcalls.S
@@ -21,7 +21,10 @@ _GLOBAL(epapr_ev_idle)
ori r4, r4,_TLF_NAPPING /* so when we take an exception */
PPC_STL r4, TI_LOCAL_FLAGS(r2) /* it will return to our caller */
+ .machine push
+ .machine booke
wrteei 1
+ .machine pop
idle_loop:
LOAD_REG_IMMEDIATE(r11, EV_HCALL_TOKEN(EV_IDLE))
Not sure if that's the best solution, but it will at least unblock you
and allow you to actually test GCC which is I assume your goal.
> linux-powerpc-ppc64e_defconfig
TBD.
> Of course I cannot verify the resulting kernel binaries, but I guess
> you'd push this patch.
I don't have the hardware for most of these old boards, but I'll test
what I can, and yes I'd take the patch.
cheers
^ permalink raw reply related [flat|nested] 14+ messages in thread
end of thread, other threads:[~2022-12-15 12:48 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-12-12 21:51 Mass-building defconfigs: many fail with assembler errors Jan-Benedict Glaw
2022-12-13 0:26 ` Segher Boessenkool
2022-12-13 10:00 ` Jan-Benedict Glaw
2022-12-14 9:00 ` Jan-Benedict Glaw
2022-12-14 18:36 ` Jan-Benedict Glaw
2022-12-14 20:08 ` Segher Boessenkool
2022-12-15 8:47 ` Jan-Benedict Glaw
2022-12-13 3:49 ` Michael Ellerman
2022-12-13 8:41 ` Jan-Benedict Glaw
2022-12-13 12:23 ` Segher Boessenkool
2022-12-14 14:45 ` Jan-Benedict Glaw
2022-12-15 6:49 ` Christophe Leroy
2022-12-15 6:55 ` Christophe Leroy
2022-12-15 12:47 ` Michael Ellerman
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.