⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fold-eqandshift-1.c

📁 用于进行gcc测试
💻 C
字号:
/* PR middle-end/21137  *//* { dg-do compile } *//* { dg-options "-O2 -fdump-tree-original" } */extern void foo();void test1(int a){  if ((a >> 3) & 1)    foo ();}void test2(int b){  if ((b >> 3) & 4)    foo ();}int test3(int c){  return (c >> 3) & 1;}int test4(int d){  return (d >> 3) & 4;}#if __INT_MAX__ == 32767#define INT_BITS 16#elif __INT_MAX__ == 2147483647#define INT_BITS 32#elif __INT_MAX__ == 9223372036854775807#define INT_BITS 64#else#error Please add support for your target here.#endifvoid test5(int e){  if ((e >> (INT_BITS - 1)) & 64)    foo();}void test6(unsigned int f){  if ((f >> (INT_BITS - 1)) & 64)    foo();}/* { dg-final { scan-tree-dump-times "\\(a \& 8\\) != 0" 1 "original" } } *//* { dg-final { scan-tree-dump-times "\\(b \& 32\\) != 0" 1 "original" } } *//* { dg-final { scan-tree-dump-times "c >> 3 \& 1" 1 "original" } } *//* { dg-final { scan-tree-dump-times "d >> 3 \& 4" 1 "original" } } *//* { dg-final { scan-tree-dump-times "e < 0" 1 "original" } } *//* { dg-final { scan-tree-dump-times "if \\(0\\)" 1 "original" } } *//* { dg-final { cleanup-tree-dump "original" } } */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -