This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug bootstrap/45611] New: [4.6 regression] SIGBUS in generate_option_input_file on Solaris 2/SPARC


Between rev 163993 and 164013, mainline bootstrap started failing on Solaris 2
SPARC.  The stage2 libgcc fails to configure because the stage2 xgcc gets a
SIGBUS for

% ../../xgcc -B../../gcc/ -c -g -O2 conftest.c
Bus Error

Running xgcc under gdb, I find that the crash happens here:

Program received signal SIGSEGV, Segmentation fault.
generate_option_input_file (argc=<value optimized out>, argv=<value optimized
out>, lang_mask=<value optimized out>, decoded_options=0xffbff394,
decoded_options_count=0xffbff390) at
/vol/gcc/src/hg/trunk/local/gcc/opts-common.c:750
1: x/i $pc
=> 0x28584 <decode_cmdline_options_to_array+168>:       clrx  [ %l0 + 0x18 ]

%lo+0x18 isn't 8-byte aligned at that point.

Comparing the assembler code between the working and failing versions, I find
that the following change has happened:

     decode_cmdline_options_to_array+0xa4:   c0 24 20 14  clr       [%l0 +
0x14]
-    decode_cmdline_options_to_array+0xa8:   c0 24 20 18  clr       [%l0 +
0x18]
-    decode_cmdline_options_to_array+0xac:   c0 24 20 1c  clr       [%l0 +
0x1c]
-    decode_cmdline_options_to_array+0xb0:   c4 24 20 24  st        %g2, [%l0 +
0x24]
+    decode_cmdline_options_to_array+0xa8:   c0 74 20 18  clrx      [%l0 +
0x18]
+    decode_cmdline_options_to_array+0xac:   c4 24 20 24  st        %g2, [%l0 +
0x24]

i.e. two clr insns (which are ok with 4-byte alignment) have been replaced by
a single clrx.

I'll start a reghunt to find the culprit patch.


-- 
           Summary: [4.6 regression] SIGBUS in generate_option_input_file on
                    Solaris 2/SPARC
           Product: gcc
           Version: 4.6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: bootstrap
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: ro at gcc dot gnu dot org
 GCC build triplet: sparc-sun-solaris2*
  GCC host triplet: sparc-sun-solaris2*
GCC target triplet: sparc-sun-solaris2*


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45611


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]