The Linux Page

exception

mov eax,dword ptr fs:[0000000h]

As I was trying to debug a problem using an STL vector, I looked at the resulting assembly and saw this strange thing:

mov eax,dword ptr fs:[0000000h]

And a little further down, the opposite:

mov dword ptr fs:[0000000h],eax

These statements are from VC++ so the first is "put fs:[0] in eax" and the second is "save eax at fs:[0]".

Curious I looked around and found a page describing what's really hapenning. If you need to know, that's actually initializing the exception structure for this function. The fs:[0] location is where that structure pointer is saved ...

Compiling in 64bit with VC 2010 can result in a crashing software

Today, as I was trying to run a 64 bit application in Release mode under Windows 7, I got a crash about a NULL pointer. There is the debuggee (<- well known Microsoft spelling of Debugger) error window:

Unhandled exception in ... Access violation reading location 0x0000...

Unhandled exception at 0x52740ccf in guikeyboard_test_developer.exe:
0xC0000005: Access violation reading location 0x0000000000000000.

So... according to this error, the software access a NULL pointer. It took me some time, but the problem was not a NULL pointer, it was an unaligned memory access. In other words, it is trying to write a a pointer that is not 16 bytes aligned, which is ...

Syndicate content Syndicate content

SMS From Me Logo

SMS From Me

To automatically start one on one conversations with your online leads.

     

   

Terms of Site Index

Find the page/content you are looking for with our index.