Re: metag build errors in mainline kernel

From: Guenter Roeck
Date: Wed Feb 21 2018 - 09:16:33 EST


On 02/21/2018 04:27 AM, James Hogan wrote:
On Tue, Feb 20, 2018 at 03:44:43PM -0800, Guenter Roeck wrote:
The following errors are seen when building the kernel with the latest
available metag toolchain (4.2.4 (IMG-1.4.0.700)). Kernel version tested
is (v4.16-rc2-64-gaf3e79d29555).

metag:allmodconfig

arch/metag/kernel/devtree.c:54: error: implicit declaration of function 'pr_info'

arch/metag/kernel/perf/perf_event.c:831: error: label âoutâ used but not defined
arch/metag/kernel/perf/perf_event.c:822: warning: unused variable âcpuâ

Thanks, these are easy enough for me to fix up.


metag:meta2_smp_defconfig

kernel/time/hrtimer.c: In function 'hrtimer_run_softirq':
time/hrtimer.c:1431: error: unable to find a register to spill in class 'Yr_REGS'
time/hrtimer.c:1431: error: this is the insn:
(insn:HI 41 40 99 2 kernel/time/hrtimer.c:576 (set (mem/s/j:DI (plus:SI (reg/f:SI 15 D1.7 [orig:84 D.45290 ] [84])
(const_int 368 [0x170])) [0 <variable>.offset+0 S8 A128])
(reg:DI 99 [ <variable>.offset ])) 211 {*sto_di_1_1_off12} (nil)
(expr_list:REG_DEAD (reg:DI 99 [ <variable>.offset ])
(nil)))
kernel/time/hrtimer.c:1431: confused by earlier errors, bailing out

Hmm.. ancient shelved toolchain. Perhaps this is the excuse we need to
say goodbye to arch/metag/...


Might be worth a thought. The metag toolchain doesn't even build anymore
without tweaking. gcc 4.2.4 doesn't build with a modern gcc, the metag
buildroot on github points to a no longer existing daily snapshot of
uclibc, and ToT uclibc doesn't build with gcc 4.2.4.

Guenter