[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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



On 7 Jan 2020, at 08:57, John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de> 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


Reply to: