http://sourceware.org/bugzilla/show_bug.cgi?id=13441

             Bug #: 13441
           Summary: binutils-2.22 gas on sparc64-linux rejects "smul"
                    instructions breaking gcc bootstrap
           Product: binutils
           Version: 2.22
            Status: NEW
          Severity: normal
          Priority: P2
         Component: gas
        AssignedTo: unassig...@sourceware.org
        ReportedBy: mi...@it.uu.se
    Classification: Unclassified


> cat bug.s
        .section        ".text"
        .align 4
        .global foo
foo:
        smul    %g1, 19, %g0
        jmp     %o7+8
        nop
> as -o bug.o bug.s
bug.s: Assembler messages:
bug.s:5: Error: Hardware capability "mul32" not enabled for "smul".
> as --version
GNU assembler (GNU Binutils) 2.22
Copyright 2011 Free Software Foundation, Inc.
This program is free software; you may redistribute it under the terms of
the GNU General Public License version 3 or later.
This program has absolutely no warranty.
This assembler was configured for a target of `sparc64-unknown-linux-gnu'.

With gas from binutils-2.21.1 or older there's no error:

> /usr/bin/as -o bug.o bug.s ; /usr/bin/objdump -d bug.o

bug.o:     file format elf32-sparc


Disassembly of section .text:

00000000 <foo>:
   0:   80 58 60 13     smul  %g1, 0x13, %g0
   4:   81 c3 e0 08     retl 
   8:   01 00 00 00     nop 

The test case originates from gcc's libiberty/regex.c, where it's simply a
multiplication of a signed int with the constant 19.  The failure prevents gcc
from being bootstrapped with binutils-2.22.

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

_______________________________________________
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils

Reply via email to