https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81100

            Bug ID: 81100
           Summary: ICE from x86  __asm__() statck manipulation
           Product: gcc
           Version: 6.3.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: lindsay at arista dot com
  Target Milestone: ---

Created attachment 41553
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=41553&action=edit
Preprocessed source left when ICE occurred

Using gcc-6.3.1-1.fc25.x86_64, the command:

   /usr/bin/gcc -g -pipe -fPIC -march=i686 -m32 -c test2.c

resulted in:
------------
test2.c: In function ‘main’:
test2.c:31:1: internal compiler error: in print_reg, at
config/i386/i386.c:16601
 }
 ^
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://bugzilla.redhat.com/bugzilla> for instructions.
{standard input}: Assembler messages:
{standard input}: Warning: end of file not at end of a line; newline inserted
{standard input}:45: Error: unbalanced parenthesis in operand 2.
{standard input}: Error: open CFI at the end of file; missing .cfi_endproc
directive
Preprocessed source stored into /tmp/cc48P0WJ.out file, please attach this to
your bugreport.
----------

I attach the .out file. As you can see, this is already a cutdown, which mostly
consists of an __asm__() that plays games with the x86 stack pointer. The full
original was working code, but we hit the ICE when we tried to upgrade to a
newer GCC.

This might be related to bug 80367. A quick look didn't find any other
candidates.

Reply via email to