all groups > dotnet clr > september 2006 >
You're in the

dotnet clr

group:

Is there a tool to view JIT output?


Is there a tool to view JIT output? John
9/20/2006 7:34:23 PM
dotnet clr:
I really want to see what machine code the JITter is producing for an
undebugged release build. I've discovered that I can call a breakpoint
opcode (INT3) which will allow me to attach a debugger and see a little
bit of what I want but its difficult to navigate.

There's the ngen /debug option, but I can't seem to figure out how to
get ngen to generate the native assembly so that I can attach to it and
see whats going on.

Re: Is there a tool to view JIT output? Willy Denoyette [MVP]
9/20/2006 11:20:17 PM

[quoted text, click to view]
|I really want to see what machine code the JITter is producing for an
| undebugged release build. I've discovered that I can call a breakpoint
| opcode (INT3) which will allow me to attach a debugger and see a little
| bit of what I want but its difficult to navigate.
|
| There's the ngen /debug option, but I can't seem to figure out how to
| get ngen to generate the native assembly so that I can attach to it and
| see whats going on.
|
| Any thoughts?

The only possibility is through the native debugger.

Willy.

Re: Is there a tool to view JIT output? Barry Kelly
9/21/2006 12:00:00 AM
[quoted text, click to view]

You don't need to compile in debug mode or start under the debugger to
debug the application and view the JITted code. You can attach with
WinDbg and load up SOS (".load sos"), and then use commands like
"!name2ee YourModule.exe YourNamespace.YourClass.YourMethod" to get the
jitted address (once they've been run once), and then
"!u <addressOfJITted-method>" to disassemble the body of the managed
method.

-- Barry

--
AddThis Social Bookmark Button