20040609-1.c

来自「linux下编程用 编译软件」· C语言 代码 · 共 74 行

C
74
字号
/* PRs target/15569, rtl-optimization/15681 *//* { dg-do compile } *//* { dg-options "-Os -frename-registers" } *//* { dg-options "-mconstant-gp -Os -frename-registers" { target ia64-*-* } } */struct S { struct S *a, *b; };struct T { struct S e; unsigned long a; int b, c; void *d; } f;unsigned long f1 (unsigned long);void f2 (int, struct T *);void *f3 (void *);unsigned long volatile g;static voidf4 (struct T *p){  f1 (f1 (((unsigned long) g - p->a) >> 20));}static struct T *f5 (void){  struct T *g, *p;  struct T *q = 0;  for (g = p = &f; (g = p = (struct T *) (g->e.a)) != &f;)    if (p->b)      {	f4 (p);	if (p->c & 0x80000)	  return p;      }  return q;}static voidf6 (struct T *p){  f2 (9, p);}static inline void *f7 (struct T *t){  void *d;  d = t->d;  if (d)    d = f3 (d);  return d;}static void *f8 (struct T *p){  void *d = f7 (p);  if (!d)    return 0;  f6 (p);  return d;}static voidf9 (void){  struct T *p;  p = f5 ();  f8 (p);}voidtest (void){  f9 ();}

⌨️ 快捷键说明

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