https://sourceware.org/bugzilla/show_bug.cgi?id=18189

            Bug ID: 18189
           Summary: Extra-large constant handling failure in microblaze
           Product: binutils
           Version: 2.25
            Status: NEW
          Severity: normal
          Priority: P2
         Component: gas
          Assignee: unassigned at sourceware dot org
          Reporter: dhowells at redhat dot com

Created attachment 8220
  --> https://sourceware.org/bugzilla/attachment.cgi?id=8220&action=edit
libgcc derived assembly file that shows the problem.

Attempting to assemble this line with a microblaze-linux-gnu target assembler:

    addik    r23,r0,0xb746a0003f800000

works when the compiler is x86_64 hosted but fails when i386 hosted with the
following error:

    _powisf2.s: Assembler messages:
    _powisf2.s:71: Fatal error: operand must be a constant or a label

Given that microblaze is 32-bit only, I would guess that the error should
appear on x86_64 as well as on i386 - and that this is actually a symptom of a
gcc bug.

The error can be obtained by running the attached assembly file through the
assembler thusly:

    microblaze-linux-gnu-as _powisf2.s

-- 
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