[PATCH 2/5] [Server]: correctly set the DR0..7 registers on Linux for x86_64 architecture
Alexandre Julliard
julliard at winehq.org
Wed Apr 7 06:13:32 CDT 2010
Eric Pouech <eric.pouech at orange.fr> writes:
> @@ -549,12 +549,21 @@ void get_thread_context( struct thread *thread, context_t *context, unsigned int
> goto done;
> }
> }
> +#ifdef __i386__
> context->debug.i386_regs.dr0 = data[0];
> context->debug.i386_regs.dr1 = data[1];
> context->debug.i386_regs.dr2 = data[2];
> context->debug.i386_regs.dr3 = data[3];
> context->debug.i386_regs.dr6 = data[6];
> context->debug.i386_regs.dr7 = data[7];
> +#else /* __x86_64__ */
> + context->debug.x86_64_regs.dr0 = data[0];
> + context->debug.x86_64_regs.dr1 = data[1];
> + context->debug.x86_64_regs.dr2 = data[2];
> + context->debug.x86_64_regs.dr3 = data[3];
> + context->debug.x86_64_regs.dr6 = data[6];
> + context->debug.x86_64_regs.dr7 = data[7];
> +#endif
You can't use ifdefs, this needs to depend on the CPU type of the client
process.
--
Alexandre Julliard
julliard at winehq.org
More information about the wine-devel
mailing list