GCC Bugzilla – Attachment 21156 Details for
Bug 28632
VRP should understand bitwise OR and AND
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
gcc/testsuite/gcc.dg/tree-ssa/vrp50-PR28632.c
vrp50-PR28632.c (text/x-csrc), 1.46 KB, created by
Bernhard Reutner-Fischer
on 2010-07-09 07:53:11 UTC
(
hide
)
Description:
gcc/testsuite/gcc.dg/tree-ssa/vrp50-PR28632.c
Filename:
MIME Type:
Creator:
Bernhard Reutner-Fischer
Created:
2010-07-09 07:53:11 UTC
Size:
1.46 KB
patch
obsolete
>/* { dg-do compile } */ >/* { dg-options "-O2 -ftree-vrp" } */ >/* PR28632 was concerned about VRP understanding bitwise OR and AND expressions. > */ > >void v4 (unsigned a, unsigned b) >{ > if (a < 0x1000) return; > if (a > 0x1000) return; > if (b < 0x0110) return; > /* constant true. */ > if (!__builtin_constant_p ((a|b) >= 0x01000)) > __asm__("bug.always.true"); > /* VRP must not think that this is constant. */ > if (__builtin_constant_p ((a|b) >= 0x10000)) > __asm__("bug.not.always.true"); >} >void u4 (unsigned n) >{ > if (n > 0x10111) return; > if (n < 0x10101) return; > /* always true. */ > if (!__builtin_constant_p (n & 0x00100)) > __asm__("bug.always.true"); > /* VRP must not think that this is constant true. */ > if (__builtin_constant_p (n & 0x00001)) > __asm__("bug.not.always.true"); > /* Out of range, always evaluates to constant false. */ > if (!__builtin_constant_p (n & 0x01000)) > __asm__("bug.always.false"); >} >void u5 (unsigned n) >{ > struct s {unsigned exp:8;} x; > x.exp = n; > if (__builtin_constant_p(((n + 1) & 255) > 1)) > __asm__("bug.not.always.true"); >} >void v5 (int a, int b) >{ > if (a < 0x1000) return; > if (a > 0x1000) return; > if (b < 0x0110) return; > /* constant true. */ > if (!__builtin_constant_p ((a|b) >= 0x01000)) > __asm__("bug.always.true"); > /* VRP must not think that this is always true. */ > if (__builtin_constant_p ((a|b) >= 0x10000)) > __asm__("bug.not.always.true"); >} >/* { dg-final { scan-assembler-not "bug\." } } */
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 28632
:
12035
|
12036
|
12067
|
16009
|
16010
|
16011
|
16012
|
16050
|
16113
|
16114
|
18044
| 21156 |
21162