RedHat 9 fix
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@323 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
9621339dca
commit
070893f425
|
@ -6,6 +6,7 @@
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
#include <signal.h>
|
#include <signal.h>
|
||||||
#include <setjmp.h>
|
#include <setjmp.h>
|
||||||
|
#include <errno.h>
|
||||||
#include <sys/ucontext.h>
|
#include <sys/ucontext.h>
|
||||||
#include <sys/mman.h>
|
#include <sys/mman.h>
|
||||||
#include <asm/vm86.h>
|
#include <asm/vm86.h>
|
||||||
|
@ -855,7 +856,6 @@ void test_segs(void)
|
||||||
#endif
|
#endif
|
||||||
/* do some tests with fs or gs */
|
/* do some tests with fs or gs */
|
||||||
asm volatile ("movl %0, %%fs" : : "r" (MK_SEL(1)));
|
asm volatile ("movl %0, %%fs" : : "r" (MK_SEL(1)));
|
||||||
asm volatile ("movl %0, %%gs" : : "r" (MK_SEL(2)));
|
|
||||||
|
|
||||||
seg_data1[1] = 0xaa;
|
seg_data1[1] = 0xaa;
|
||||||
seg_data2[1] = 0x55;
|
seg_data2[1] = 0x55;
|
||||||
|
@ -863,7 +863,12 @@ void test_segs(void)
|
||||||
asm volatile ("fs movzbl 0x1, %0" : "=r" (res));
|
asm volatile ("fs movzbl 0x1, %0" : "=r" (res));
|
||||||
printf("FS[1] = %02x\n", res);
|
printf("FS[1] = %02x\n", res);
|
||||||
|
|
||||||
asm volatile ("gs movzbl 0x1, %0" : "=r" (res));
|
asm volatile ("pushl %%gs\n"
|
||||||
|
"movl %1, %%gs\n"
|
||||||
|
"gs movzbl 0x1, %0\n"
|
||||||
|
"popl %%gs\n"
|
||||||
|
: "=r" (res)
|
||||||
|
: "r" (MK_SEL(2)));
|
||||||
printf("GS[1] = %02x\n", res);
|
printf("GS[1] = %02x\n", res);
|
||||||
|
|
||||||
/* tests with ds/ss (implicit segment case) */
|
/* tests with ds/ss (implicit segment case) */
|
||||||
|
|
Loading…
Reference in a new issue