20020312-1.c

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

C
24
字号
/* This does not compile on HC11/HC12 due to the asm which requires   two 32-bit registers.  *//* { dg-do assemble { xfail m6811-*-* m6812-*-* } } *//* PR optimization/5892 */typedef struct { unsigned long a; unsigned int b, c; } A;typedef struct { unsigned long a; A *b; int c; } B;static inline unsigned intbar (unsigned int x){  unsigned long r;  asm ("" : "=r" (r) : "0" (x));  return r >> 31;}int foo (B *x){  A *y;  y = x->b;  y->b = bar (x->c);  y->c = ({ unsigned int z = 1; (z << 24) | (z >> 24); });}

⌨️ 快捷键说明

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