public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/47148] New: likely wrong code bug
@ 2011-01-01 18:40 regehr at cs dot utah.edu
  2011-01-01 20:07 ` [Bug tree-optimization/47148] [4.6 Regression] " jakub at gcc dot gnu.org
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: regehr at cs dot utah.edu @ 2011-01-01 18:40 UTC (permalink / raw)
  To: gcc-bugs

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

           Summary: likely wrong code bug
           Product: gcc
           Version: 4.6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: regehr@cs.utah.edu
                CC: chenyang@cs.utah.edu
              Host: x86_64-unknown-linux-gnu
            Target: x86_64-unknown-linux-gnu
             Build: x86_64-unknown-linux-gnu


[regehr@gamow tmp436]$ current-gcc -O1 small.c -o small 
[regehr@gamow tmp436]$ ./small
0
[regehr@gamow tmp436]$ current-gcc -O2 small.c -o small
[regehr@gamow tmp436]$ ./small
1
[regehr@gamow tmp436]$ current-gcc -v
Using built-in specs.
COLLECT_GCC=current-gcc
COLLECT_LTO_WRAPPER=/uusoc/exports/scratch/regehr/z/compiler-install/gcc-r168380-install/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.6.0/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: ../configure --with-libelf=/usr/local --enable-lto
--prefix=/home/regehr/z/compiler-install/gcc-r168380-install
--program-prefix=r168380- --enable-languages=c,c++
Thread model: posix
gcc version 4.6.0 20101231 (experimental) (GCC) 
[regehr@gamow tmp436]$ cat small.c


int printf(const char *format, ...);

static unsigned div(unsigned p1, unsigned p2)
{
  return p1 / p2;
}

static unsigned rshift (unsigned p1, unsigned p2)
{
  if (p2 >= 32)
    return p1;
  else
    return p1 >> p2;
}

static unsigned g_26 = 1;
static unsigned g_78 = 1;

static void func_28 (unsigned char p_30, unsigned p_31)
{
  if (p_31) {
    unsigned l1 = div (0x7000, p_30-2) ^ g_26;
    unsigned l2 = rshift (g_26, g_26);
    unsigned l4 = g_26 - l2;
    g_78 &= (l4 && (g_26-1)) + l1;
  } 
}

static void func_2 (void)
{
  func_28 (1, 1);
}

int main(void)
{
  func_2();
  func_28 (-1, 1);
  printf("%d\n", g_78);
  return 0;
}


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2011-01-03 21:13 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-01-01 18:40 [Bug c/47148] New: likely wrong code bug regehr at cs dot utah.edu
2011-01-01 20:07 ` [Bug tree-optimization/47148] [4.6 Regression] " jakub at gcc dot gnu.org
2011-01-01 20:17 ` hjl.tools at gmail dot com
2011-01-01 20:54 ` [Bug target/47148] " jakub at gcc dot gnu.org
2011-01-01 21:03 ` hjl.tools at gmail dot com
2011-01-01 21:09 ` jakub at gcc dot gnu.org
2011-01-02 11:29 ` jakub at gcc dot gnu.org
2011-01-03 21:10 ` jakub at gcc dot gnu.org
2011-01-03 21:13 ` jakub at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).