https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122479
Bug ID: 122479
Summary: [m68k] unable to find a register to spill in class
‘ADDR_REGS’ when building scipy
Product: gcc
Version: 15.2.1
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: glaubitz at physik dot fu-berlin.de
CC: mikpelinux at gmail dot com, schwab at gcc dot gnu.org,
sjames at gcc dot gnu.org
Target Milestone: ---
Target: m68k-*-*
Trying to build scipy in Debian fails with:
FAILED:
scipy/sparse/sparsetools/_sparsetools.cpython-313-m68k-linux-gnu.so.p/bsr.cxx.o
c++ -Iscipy/sparse/sparsetools/_sparsetools.cpython-313-m68k-linux-gnu.so.p
-Iscipy/sparse/sparsetools -I../scipy/sparse/sparsetools
-I../scipy/_build_utils/src
-I../../../../usr/lib/m68k-linux-gnu/python3-numpy/numpy/_core/include
-I/usr/include/python3.13 -I/usr/include/m68k-linux-gnu/python3.13
-fvisibility=hidden -fvisibility-inlines-hidden -fdiagnostics-color=always
-DNDEBUG -Wall -Winvalid-pch -std=c++17 -O3 -g -O2
-ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat
-Werror=format-security -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
-D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC
-DNPY_NO_DEPRECATED_API=NPY_1_9_API_VERSION -MD -MQ
scipy/sparse/sparsetools/_sparsetools.cpython-313-m68k-linux-gnu.so.p/bsr.cxx.o
-MF
scipy/sparse/sparsetools/_sparsetools.cpython-313-m68k-linux-gnu.so.p/bsr.cxx.o.d
-o
scipy/sparse/sparsetools/_sparsetools.cpython-313-m68k-linux-gnu.so.p/bsr.cxx.o
-c ../scipy/sparse/sparsetools/bsr.cxx
In file included from ../scipy/sparse/sparsetools/bsr.cxx:5:
../scipy/sparse/sparsetools/bsr.h: In function ‘void bsr_binop_bsr(I, I, I, I,
const I*, const I*, const T*, const I*, const I*, const T*, I*, I*, T2*, const
bin_op&) [with I = long long int; T = complex_wrapper<float, npy_cfloat>; T2 =
complex_wrapper<float, npy_cfloat>; bin_op =
std::multiplies<complex_wrapper<float, npy_cfloat> >]’:
../scipy/sparse/sparsetools/bsr.h:591:1: error: unable to find a register to
spill in class ‘ADDR_REGS’
591 | }
| ^
../scipy/sparse/sparsetools/bsr.h:591:1: error: this is the insn:
(insn 848 847 3788 54 (set (mem:DI (plus:SI (mult:SI (subreg:SI (reg/v:DI 744
[orig:137 nnz ] [137]) 4)
(const_int 8 [0x8]))
(reg/v/f:SI 392 [ Cj ])) [2 *_176+0 S8 A16])
(mem:DI (post_inc:SI (reg:SI 6 %d6 [orig:63 ivtmp.100551 ] [63])) [2
MEM[(const long long int *)_814]+0 S8 A16]))
"../scipy/sparse/sparsetools/bsr.h":512:25 75 {*m68k.md:1569}
(expr_list:REG_INC (reg:SI 6 %d6 [orig:63 ivtmp.100551 ] [63])
(nil)))
../scipy/sparse/sparsetools/bsr.h:591: confused by earlier errors, bailing out
Preprocessed source stored into /tmp/ccWCtWOH.out file, please attach this to
your bugreport.
Full build log available in:
https://buildd.debian.org/status/fetch.php?pkg=scipy&arch=m68k&ver=1.16.2-5&stamp=1761712176&raw=0
Preprocessed source follows in the next comment.