C++程序  |  34行  |  504 B

#include "tests/asm.h"
#include <stdio.h>

extern int foo_1 ( void );
asm("\n"
VG_SYM(foo_1) ":\n"
"\tpushl $0\n"
"\tpopfl\n"
"\tmovl $0xFFFFFFFF, %eax\n"
"\tmovl $0x12345678, %edx\n"
"\tsubl %eax, %edx\n"
"\tlahf\n"
"\tret\n"
);

extern int foo_0 ( void );
asm("\n"
VG_SYM(foo_0) ":\n"
"\tpushl $0\n"
"\tpopfl\n"
"\tmovl $0x0, %eax\n"
"\tmovl $0x12345678, %edx\n"
"\tsubl %eax, %edx\n"
"\tlahf\n"
"\tret\n"
);

int main ( void )
{
  printf("0x%x\n", foo_0());
  printf("0x%x\n", foo_1());
  return 0;
}