Code provision for x86_64 and PowerPC 64 linux user mode support.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2619 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
j_mayer 2007-04-06 08:56:50 +00:00
parent 9ead1a1263
commit 84409ddbda
5 changed files with 82 additions and 6 deletions

View file

@ -690,7 +690,11 @@ static void setup_frame(int sig, struct emulated_sigaction *ka,
err |= __put_user(frame->retcode, &frame->pretcode);
/* This is popl %eax ; movl $,%eax ; int $0x80 */
err |= __put_user(0xb858, (short *)(frame->retcode+0));
#if defined(TARGET_X86_64)
#warning "Fix this !"
#else
err |= __put_user(TARGET_NR_sigreturn, (int *)(frame->retcode+2));
#endif
err |= __put_user(0x80cd, (short *)(frame->retcode+6));
}
@ -2048,7 +2052,7 @@ void process_pending_signals(void *cpu_env)
host_to_target_sigset_internal(&target_old_set, &old_set);
/* if the CPU is in VM86 mode, we restore the 32 bit values */
#ifdef TARGET_I386
#if defined(TARGET_I386) && !defined(TARGET_X86_64)
{
CPUX86State *env = cpu_env;
if (env->eflags & VM_MASK)