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 c++/45074] New: GCC Segmentation fault - negating global register variables


When compiling the following example using language c++ (compiling in language
c works fine) and optimization level -O1 or higher (-O0 works fine) GCC 4.4.1
for MIPS crashes with an internal compiler error - segmentation fault in line
5.

Please note that the register variable is declared "double", when using "float"
type the error does not occur.

gcc -O1 -x c++ test_neg_float_register.c

---------test_neg_float_register.c----------
register double g_param_f64_1 __asm__("$f20");

void negate_float_register (void)
{
  g_param_f64_1 = -(g_param_f64_1);
}
--------------------------------------------

See attachment for example file.

The error is reproducible with GCC version 4.3.2 and 4.4.1 and optimization
level higher -O0 (that is -O1, -O2, -O3).


-- 
           Summary: GCC Segmentation fault - negating global register
                    variables
           Product: gcc
           Version: 4.4.1
            Status: UNCONFIRMED
          Severity: major
          Priority: P3
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: steffenschmidt dot ext at siemens dot com
  GCC host triplet: MinGW
GCC target triplet: mips*-*


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


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