Repository : ssh://darcs.haskell.org//srv/darcs/packages/Win32 On branch : master
http://hackage.haskell.org/trac/ghc/changeset/b9c5356e659ff8d470a3e092c18a01d1d0b61b57 >--------------------------------------------------------------- commit b9c5356e659ff8d470a3e092c18a01d1d0b61b57 Author: Ian Lynagh <[email protected]> Date: Thu Mar 15 23:10:52 2012 +0000 Fix DebugApi on Win64 >--------------------------------------------------------------- System/Win32/DebugApi.hsc | 24 +++++++++++++++++++++--- 1 files changed, 21 insertions(+), 3 deletions(-) diff --git a/System/Win32/DebugApi.hsc b/System/Win32/DebugApi.hsc index 39c77b1..bfe71f1 100644 --- a/System/Win32/DebugApi.hsc +++ b/System/Win32/DebugApi.hsc @@ -287,12 +287,10 @@ withThreadContext t act = (act buf) +#if __i386__ eax, ebx, ecx, edx :: Int esi, edi :: Int ebp, eip, esp :: Int -segCs, segDs, segEs, segFs, segGs :: Int -eFlags :: Int - eax = (#offset CONTEXT, Eax) ebx = (#offset CONTEXT, Ebx) ecx = (#offset CONTEXT, Ecx) @@ -302,11 +300,31 @@ edi = (#offset CONTEXT, Edi) ebp = (#offset CONTEXT, Ebp) eip = (#offset CONTEXT, Eip) esp = (#offset CONTEXT, Esp) +#elif __x86_64__ +rax, rbx, rcx, rdx :: Int +rsi, rdi :: Int +rbp, rip, rsp :: Int +rax = (#offset CONTEXT, Rax) +rbx = (#offset CONTEXT, Rbx) +rcx = (#offset CONTEXT, Rcx) +rdx = (#offset CONTEXT, Rdx) +rsi = (#offset CONTEXT, Rsi) +rdi = (#offset CONTEXT, Rdi) +rbp = (#offset CONTEXT, Rbp) +rip = (#offset CONTEXT, Rip) +rsp = (#offset CONTEXT, Rsp) +#else +#error Unsupported architecture +#endif + +segCs, segDs, segEs, segFs, segGs :: Int segCs = (#offset CONTEXT, SegCs) segDs = (#offset CONTEXT, SegDs) segEs = (#offset CONTEXT, SegEs) segFs = (#offset CONTEXT, SegFs) segGs = (#offset CONTEXT, SegGs) + +eFlags :: Int eFlags = (#offset CONTEXT, EFlags) dr :: Int -> Int _______________________________________________ Cvs-libraries mailing list [email protected] http://www.haskell.org/mailman/listinfo/cvs-libraries
