Browse by Tags

Tagged Content List
  • Blog Post: AMD64 unwind info gotchas

    I had a brief e-mail exchange with one of the devs on the optimizer team about a checkin he put up for review. He modified the compiler so that it only aligns the stack for functions that call other functions - that's the typical definition in compiler lingo of a 'leaf function'. My first response was...
  • Blog Post: Speaking in 'public'...

    I'll be hanging out with the cool kids at the Northwest C++ Users Group tomorrow night. If you're in the area, and want to heckle me, swing by. We'll be in building 40 at 6:30 PM. My talk starts at 7:00 PM. I'm talking about the actual runtime cost of exception handling for x64 and x86 on Windows. ...
  • Blog Post: What does "Hot Patchability" mean and what is it for?

    I got a question on my earlier ABI post about Hot Patchability, so I thought I'd go into excruciating detail on that one, since it's not quite as complicated as exception handling What the heck does Hot Patchable mean? Hot patchable means that, primarily, you're able to take a running application...
  • Blog Post: x64 ABI vs. x86 ABI (aka Calling Conventions for AMD64 & EM64T)

    (This is an older post, with some mild cleanup, and fixed links) Before I start: ABI = Application Binary Interface – this is the spec that describes how to call functions, pass parameters, unwind the stack, handle exceptions, etc... It’s also sometimes call the ‘Calling Convention’ There is a...
  • Blog Post: X64 Unwind Information

    I've had a fairly large number of e-mails with various people both inside & outside Microsoft explaining the AMD64 unwind data. I generally push them at the ABI documentation (which I've linked to in this entry). But the ABI documentation really requires a complete reading before you can really understand...
Page 1 of 1 (5 items)