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

📄 loop-ivopts-2.c

📁 linux下编程用 编译软件
💻 C
字号:
/* PR rtl-optimization/20290  */   /* We used to mis-optimize the second loop in main on at least ppc and   arm, because tree loop would change the loop to something like:  ivtmp.65 = &l[i];  ivtmp.16 = 113;  goto <bb 4> (<L4>);<L3>:;  *(ivtmp.65 + 4294967292B) = 9;  i = i + 1;<L4>:;  ivtmp.16 = ivtmp.16 - 1;  ivtmp.65 = ivtmp.65 + 4B;  if (ivtmp.16 != 0) goto <L3>;   We used to consider the increment of i as executed in every  iteration, so we'd miscompute the final value.  */extern void abort (void);voidcheck (unsigned int *l){  int i;  for (i = 0; i < 288; i++)    if (l[i] != 7 + (i < 256 || i >= 280) + (i >= 144 && i < 256))      abort ();}intmain (void){  int i;  unsigned int l[288];  for (i = 0; i < 144; i++)    l[i] = 8;  for (; i < 256; i++)    l[i] = 9;  for (; i < 280; i++)    l[i] = 7;  for (; i < 288; i++)    l[i] = 8;  check (l);  return 0;}

⌨️ 快捷键说明

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