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

gcc bug?



While trying to build: util-linux_2.17.2-3.3.dsc

make[4]: Entering directory `/root/ul/util-linux-2.17.2/shlibs/uuid/src'                                         
  CC     clear.lo                                                                                                
  CC     compare.lo                                                                                              
  CC     copy.lo                                                                                                 
  CC     gen_uuid.lo                                                                                             
/tmp/cc1xmMQc.s: Assembler messages:                                                                             
/tmp/cc1xmMQc.s:1299: Error: syntax error -- statement `move.l %a2,last.5547@TLSLDO+4(%a0)' ignored              
/tmp/cc1xmMQc.s:1736: Error: syntax error -- statement `move.l %a2,last.5547@TLSLDO+4(%a0)' ignored              
make[4]: *** [gen_uuid.lo] Error 1                                                                               
make[4]: Leaving directory `/root/ul/util-linux-2.17.2/shlibs/uuid/src'                                          
make[3]: *** [../shlibs/uuid/src/libuuid.la] Error 2                                                             
make[3]: Leaving directory `/root/ul/util-linux-2.17.2/disk-utils'                                               
make[2]: *** [all-recursive] Error 1                                                                             
make[2]: Leaving directory `/root/ul/util-linux-2.17.2'                                                          
make[1]: *** [all] Error 2                                                                                       
make[1]: Leaving directory `/root/ul/util-linux-2.17.2'                                                          
make: *** [build-stamp] Error 2                                                                                  
dpkg-buildpackage: error: debian/rules build gave error exit status 2                                            

Manually:

↓ same command as “make -n” shows, just with -save-temps added.
# /bin/sh ../../../libtool --silent --tag=CC   --mode=compile gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I../../..  -include ../../../config.h -I../../../include -DLOCALEDIR=\"/usr/share/locale\" -I../../../shlibs/uuid/src  -fsigned-char -g -O2 -fno-omit-frame-pointer -fno-optimize-sibling-calls -MT gen_uuid.lo -MD -MP -MF .deps/gen_uuid.Tpo -c -o gen_uuid.lo gen_uuid.c -save-temps
gen_uuid.s: Assembler messages:
gen_uuid.s:1299: Error: syntax error -- statement `move.l %a2,last.5547@TLSLDO+4(%a0)' ignored
gen_uuid.s:1736: Error: syntax error -- statement `move.l %a2,last.5547@TLSLDO+4(%a0)' ignored

Excerpt from gen_uuid.s:

 1285 .L112:
 1286         .loc 1 385 0
 1287         move.l %d3,-(%sp)
 1288         move.l %d3,(%sp)
 1289         move.l %d0,-76(%fp)
 1290         bsr.l __tls_get_addr@PLTPC
 1291         clr.l adjustment.5546@TLSLDO(%a0)
 1292         .loc 1 386 0
 1293         move.l %d2,(%sp)
 1294         move.l %d2,(%sp)
 1295         addq.l #4,%sp
 1296         move.l -24(%fp),%a1
 1297         move.l -20(%fp),%a2
 1298         move.l %a1,last.5547@TLSLDO(%a0)
					↑ works
 1299         move.l %a2,last.5547@TLSLDO+4(%a0)
					↑ fails
 1300         sub.l %a1,%a1
 1301         move.l -76(%fp),%d0

My binutils are latest sid ones (2.20.1-15).

bye,
//mirabilos
-- 
I believe no one can invent an algorithm. One just happens to hit upon it
when God enlightens him. Or only God invents algorithms, we merely copy them.
If you don't believe in God, just consider God as Nature if you won't deny
existence.		-- Coywolf Qi Hunt


Reply to: