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/37341] New: Internal error: Segmentation fault (program cc1)


Seen on Ubuntu Hardy on r139924.

regehr@john-home:~/volatile/tmp23$  current-gcc -O3 small.c
current-gcc: Internal error: Segmentation fault (program cc1)
Please submit a full bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.

regehr@john-home:~/volatile/tmp23$  current-gcc -v

Using built-in specs.
Target: i686-pc-linux-gnu
Configured with: ../configure --program-prefix=current-
--enable-languages=c,c++ --prefix=/home/regehr : (reconfigured) ../configure
--program-prefix=current- --enable-languages=c,c++ --prefix=/home/regehr :
(reconfigured) ../configure --program-prefix=current- --enable-languages=c,c++
--prefix=/home/regehr : (reconfigured) ../configure --program-prefix=current-
--enable-languages=c,c++ --prefix=/home/regehr : (reconfigured) ../configure
--program-prefix=current- --prefix=/home/regehr --enable-languages=c,c++
--no-create --no-recursion : (reconfigured) ../configure
--program-prefix=current- --prefix=/home/regehr --enable-languages=c,c++
--no-create --no-recursion
Thread model: posix
gcc version 4.4.0 20080903 (experimental) (GCC) 

regehr@john-home:~/volatile/tmp23$  cat small.c

typedef signed char int8_t;
typedef short int int16_t;
typedef int int32_t;
__extension__ typedef long long int int64_t;
typedef unsigned int uint32_t;
static inline int
lshift_s_s (int left, int right)
{
  if ((left < 0) || (right < 0) || (right >= sizeof (int) * 8)
      || (left > (1 >> right)))
    return left;
}
static inline uint32_t
safe_mul_int32_t_s_s (int32_t si1, int32_t si2)
{
  if (si2 > 0)
    {
    }
  else if ((si1) && (si2 < (2147483647 / si1)))
    return si1;
  return si1 * si2;
}
static inline uint32_t
safe_mod_int32_t_s_s (int32_t si1, uint32_t si2)
{
}
static inline uint32_t
safe_div_int32_t_s_s (int32_t si1, uint32_t si2)
{
  return si1;
}

int16_t g_223;
int32_t g_243;
int32_t func_100 (int8_t p_102, int64_t p_104);
uint32_t
func_45 (int64_t p_47, uint32_t p_48, uint32_t p_49)
{
  for (0; 1; 1)
    {
      uint32_t l_281;
      if (safe_div_int32_t_s_s
          ((safe_mul_int32_t_s_s
            (func_100 (p_48, 1),
             (lshift_s_s (g_223, g_243)))) < (safe_mod_int32_t_s_s (l_281,
                                                                    p_48)),
           1))
        return 1;
    }
}
int32_t
func_100 (int8_t p_102, int64_t p_104)
{
  int8_t l_105 = 0xB6L;
  return l_105;
}


-- 
           Summary: Internal error: Segmentation fault (program cc1)
           Product: gcc
           Version: 4.4.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: regehr at cs dot utah dot edu
 GCC build triplet: i686-pc-linux-gnu
  GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu


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


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