Consider following program: static Object x; static Object y;
static void Main() { x = null; x = null; x = null; x = null; y = new Object(); y = y; y = y; y = y; } Without optimizations, you will get the behavior you are seeing. An optimizing compiler or JIT can eliminate the redundant stores. -Jan -----Original Message----- From: Discussion of the Rotor Shared Source CLI implementation [mailto:[EMAIL PROTECTED] On Behalf Of Gajah Mada Sent: Tuesday, November 02, 2004 2:37 PM To: [EMAIL PROTECTED] Subject: Re: [DOTNET-ROTOR] Write Barrier If we add printf("overwrites %08x with %08x\n", *dst, ref);" to the JIT_CheckedWriteBarrier function, some lines in the trace look like: overwrites 00B7FD1C with 00B7FD1C /* the *des is equal to ref */ overwrites 00000000 with 00000000 /* bunch of these */ Why do we need to update null with null? The logged application is a HelloWorld program. Help? Gajah Mada =================================== This list is hosted by DevelopMentor(r) http://www.develop.com ASP.NET courses you may be interested in: Guerrilla.NET November 29 - December 03, 204, in London, UK December 06-10, 2004, in Los Angeles http://www.develop.com/courses/gdotnetls Essential .NET: building applications and components with CSharp November 29 - December 03, 2004, in Los Angeles http://www.develop.com/courses/edotnet View archives and manage your subscription(s) at http://discuss.develop.com =================================== This list is hosted by DevelopMentorŪ http://www.develop.com ASP.NET courses you may be interested in: Guerrilla.NET November 29 - December 03, 204, in London, UK December 06-10, 2004, in Los Angeles http://www.develop.com/courses/gdotnetls Essential .NET: building applications and components with CSharp November 29 - December 03, 2004, in Los Angeles http://www.develop.com/courses/edotnet View archives and manage your subscription(s) at http://discuss.develop.com