dotgnu-pnet
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Dotgnu-pnet] [patch #7295] LibJit: Added support for windows 64-bit cal


From: Patrick van Beem
Subject: [Dotgnu-pnet] [patch #7295] LibJit: Added support for windows 64-bit callstack info
Date: Tue, 31 Aug 2010 07:36:19 +0000
User-agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8

URL:
  <http://savannah.gnu.org/patch/?7295>

                 Summary: LibJit: Added support for windows 64-bit callstack
info
                 Project: DotGNU Portable.NET
            Submitted by: pvbeem
            Submitted on: Tue 31 Aug 2010 07:36:18 AM GMT
                Category: None
                Priority: 5 - Normal
                  Status: None
                 Privacy: Public
             Assigned to: None
        Originator Email: 
             Open/Closed: Open
         Discussion Lock: Any

    _______________________________________________________

Details:

Added code do generate and request windows structures that describe the
function and it's prolog. This unwind information is used by windows to unwind
the stack when it has to generate a call stack (in case of an exception or in
the debugger).
This can be used like:

  PRUNTIME_FUNCTION pruntimefunction;
  DWORD64           baseaddress;

  if ( jit_function_compile(func) && jit_get_function_boundaries(func,
(void**)&pruntimefunction, (void**)&baseaddress))
  {
    RtlAddFunctionTable(pruntimefunction, 1, baseaddress);
  }

and when you free the function:
  RtlDeleteFunctionTable(pruntimefunction);

Note that at leas Visual Studio 2005 does not use this information to show
the correct call stack in the debugger. WinDbg and Visual Studio 2010 do (did
not try 2008).




    _______________________________________________________

File Attachments:


-------------------------------------------------------
Date: Tue 31 Aug 2010 07:36:18 AM GMT  Name: stackinfo64.zip.zip  Size: 42kB 
 By: pvbeem
The patch and files are based on the version with my previous patch
installed.
<http://savannah.gnu.org/patch/download.php?file_id=21357>

    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/patch/?7295>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]