android_mt6572_jiabo/external/valgrind/none/tests/x86/lahf.c
2025-09-05 16:56:03 +08:00

33 lines
504 B
C

#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;
}