i386-call-1.c

来自「this is a gcc file, you can download it 」· C语言 代码 · 共 40 行

C
40
字号
/* PR optimization/11304 *//* Originator: <manuel.serrano@sophia.inria.fr> *//* { dg-do run { target i?86-*-* } } *//* { dg-options "-O -fomit-frame-pointer" } *//* Verify that %eax is always restored after a call.  */extern void abort(void);volatile int r;void set_eax(int val){  __asm__ __volatile__ ("mov %0, %%eax" : : "m" (val));}void foo(int val){  r = val;}int bar(int x){  if (x)  {    set_eax(0);    return x;  }  foo(x);}int main(void){  if (bar(1) != 1)    abort();  return 0;}

⌨️ 快捷键说明

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