[M3devel] AMD64_NT failing on null def to RTAllocator__GetTracedObj

Jay K jay.krell at cornell.edu
Sun Sep 22 11:10:02 CEST 2013

darn, AMD4_NT isn't working any longer.

It gets here:

0:000> k
Child-SP          RetAddr           Call Site
00000000`002bee90 00000001`3fac0f1f cm3!RTAllocator__GetTracedObj+0x91 [c:\dev2\src\runtime\common\rtallocator.m3 @ 221]
00000000`002bef10 00000001`3fa3fe96 cm3!RTHooks__AllocateTracedObj+0x2f [c:\dev2\src\runtime\common\rtallocator.m3 @ 123]
00000000`002bef60 00000001`3fa3f774 cm3!Pathname__Decompose+0x86 [c:\dev2\src\os\win32\pathnamewin32.m3 @ 40]
00000000`002beff0 00000001`3fa3f55f cm3!PathRepr__Root+0xb4 [c:\dev2\src\pathreprcommon.m3 @ 38]
00000000`002bf1c0 00000001`3fae37fc cm3!PathReprCommon_M3+0xcf [c:\dev2\src\pathreprcommon.m3 @ 46]
00000000`002bf380 00000001`3fae3653 cm3!RTLinker__RunMainBody+0x46c [c:\dev2\src\runtime\common\rtlinker.m3 @ 409]

0:000> dv /V
00000000`002bef10 @rsp+0x0080              def_L_96 = 0x00000000`00000000
0:000> u . -10
cm3!RTAllocator__GetTracedObj+0x81 [c:\dev2\src\runtime\common\rtallocator.m3 @217]:
00000001`3fac23b9 488b842480000000 mov     rax,qword ptr [rsp+80h]
00000001`3fac23c1 488b08          mov     rcx,qword ptr [rax]
0:000> u . l1
cm3!RTAllocator__GetTracedObj+0x91 [c:\dev2\src\runtime\common\rtallocator.m3 @
00000001`3fac23c1 488b08          mov     rcx,qword ptr [rax]
0:000> r rax

def is NULL.

It comes from here:


M_PathnameWin32_L_33 + 192 is NULL.
"_L_33" is an annoying uniquifier from the C backend, sprinkled on far more than needed.

 global data allocation for M_PathnameWin32
192    16  8  typecell ptr

Is that supposed to be statically initialized or filled in by RTLinker?

It noticably is not in the constants, but the writables.

Debug RTLinker?

 - Jay 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20130922/5486de0b/attachment-0001.html>

More information about the M3devel mailing list