dotgnu-pnet-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Dotgnu-pnet-commits] CVS: pnet/image pecoff_writer.c,1.12,1.13


From: Rhys Weatherley <address@hidden>
Subject: [Dotgnu-pnet-commits] CVS: pnet/image pecoff_writer.c,1.12,1.13
Date: Thu, 03 Jul 2003 08:42:51 -0400

Update of /cvsroot/dotgnu-pnet/pnet/image
In directory subversions:/tmp/cvs-serv21516/image

Modified Files:
        pecoff_writer.c 
Log Message:


_ILWriteFinal: move the ".ildebug" section to the end of the image
so that it can be easily stripped.


Index: pecoff_writer.c
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/image/pecoff_writer.c,v
retrieving revision 1.12
retrieving revision 1.13
diff -C2 -r1.12 -r1.13
*** pecoff_writer.c     15 May 2003 04:51:47 -0000      1.12
--- pecoff_writer.c     3 Jul 2003 12:42:48 -0000       1.13
***************
*** 629,632 ****
--- 629,634 ----
        unsigned long offset;
        ILWSection *section;
+       ILWSection *prevSection;
+       ILWSection *debugSection;
        int numSections;
        unsigned long table;
***************
*** 779,782 ****
--- 781,822 ----
                WriteBlockPadding(writer, 512);
                realTextSize = ((textLength + 511) & ~511);
+       }
+ 
+       /* If we have ".ildebug" data, then move it to the end of the list */
+       section = writer->sections;
+       prevSection = 0;
+       debugSection = 0;
+       while(section != 0)
+       {
+               if(!strcmp(section->name, ".ildebug"))
+               {
+                       debugSection = section;
+                       if(prevSection)
+                       {
+                               prevSection->next = section->next;
+                       }
+                       else
+                       {
+                               writer->sections = section->next;
+                       }
+                       section = section->next;
+               }
+               else
+               {
+                       prevSection = section;
+                       section = section->next;
+               }
+       }
+       if(debugSection)
+       {
+               if(prevSection)
+               {
+                       prevSection->next = debugSection;
+               }
+               else
+               {
+                       writer->sections = debugSection;
+               }
+               debugSection->next = 0;
        }
  





reply via email to

[Prev in Thread] Current Thread [Next in Thread]