Re: Bug#948317: gcc-10: Please disable gm2 on ia64

James Clarke <[email protected]>
Newsgroups gmane.linux.debian.ports.ia64
Message-ID <[email protected]>
On 7 Jan 2020, at 08:57, John Paul Adrian Glaubitz <[email protected]> wrote:
> On 1/7/20 9:54 AM, Matthias Klose wrote:
>>> The gcc-10 build currently fails on ia64 when trying to build gm2 [1],
>>> thus I have disabled gm2 for a local test build.
>> 
>> how does it fail?
> 
> The assembler is complaining [1]:
> 
> mv -f $depbase.Tpo $depbase.Plo
> libtool: compile:  /<<PKGBUILDDIR>>/build/./gcc/xgcc -B/<<PKGBUILDDIR>>/build/./gcc/ -B/usr/ia64-linux-gnu/bin/ -B/usr/ia64-linux-gnu/lib/ -isystem /usr/ia64-linux-gnu/include -isystem /usr/ia64-linux-gnu/sys-include -isystem /<<PKGBUILDDIR>>/build/sys-include -fchecking=1 -DHAVE_CONFIG_H -I. -I../../../src/libquadmath -I ../../../src/libquadmath/../include -g -O2 -MT math/clogq.lo -MD -MP -MF math/.deps/clogq.Tpo -c ../../../src/libquadmath/math/clogq.c  -fPIC -DPIC -o math/.libs/clogq.o
> /tmp/ccyNARpA.s: Assembler messages:
> /tmp/ccyNARpA.s:40: Error: Wrong number of input operands
> /tmp/ccyNARpA.s:47: Error: Wrong number of input operands
> /tmp/ccyNARpA.s:81: Error: Wrong number of input operands
> /tmp/ccyNARpA.s:100: Error: Wrong number of input operands
> /tmp/ccyNARpA.s:109: Error: Wrong number of input operands
> /tmp/ccyNARpA.s:116: Error: Wrong number of input operands

I haven't tried building it yet, but suspect it's this:

src/gcc/m2/gm2-gcc/m2block.c:719:      tree instr = m2decl_BuildStringConstant ("nop", 3);
src/gcc/m2/gm2-gcc/m2block.c-720-      tree string
src/gcc/m2/gm2-gcc/m2block.c-721-          = resolve_asm_operand_names (instr, NULL_TREE, NULL_TREE, NULL_TREE);
src/gcc/m2/gm2-gcc/m2block.c-722-      tree note = build_stmt (pending_location, ASM_EXPR, string, NULL_TREE,
src/gcc/m2/gm2-gcc/m2block.c-723-                              NULL_TREE, NULL_TREE, NULL_TREE);

ia64's nop, like s390, is "nop 0", but unlike s390 there is no alias for just
"nop", you need to give the full instruction. Can we not avoid this and use
build_empty_stmt instead of creating inline assembly?

James
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.