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

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

[Dotgnu-pnet-commits] pnet/image debug_writer.c, 1.4, 1.5 image.h, 1.31,


From: Rhys Weatherley <address@hidden>
Subject: [Dotgnu-pnet-commits] pnet/image debug_writer.c, 1.4, 1.5 image.h, 1.31, 1.32
Date: Mon, 29 Sep 2003 07:11:33 +0000

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

Modified Files:
        debug_writer.c image.h 
Log Message:


Add the link directory to the debug symbol table so that
the full pathname of a source file can be recovered later.


Index: debug_writer.c
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/image/debug_writer.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** debug_writer.c      15 May 2003 04:51:47 -0000      1.4
--- debug_writer.c      29 Sep 2003 07:11:31 -0000      1.5
***************
*** 105,110 ****
  }
  
! void ILWriterDebugAdd(ILWriter *writer, ILProgramItem *item, int type,
!                                         const void *info, unsigned long len)
  {
        unsigned char header[IL_META_COMPRESS_MAX_SIZE * 2];
--- 105,111 ----
  }
  
! static void WriterDebugAdd(ILWriter *writer, ILProgramItem *item,
!                                                  unsigned long pseudo, int 
type,
!                                              const void *info, unsigned long 
len)
  {
        unsigned char header[IL_META_COMPRESS_MAX_SIZE * 2];
***************
*** 127,130 ****
--- 128,132 ----
        {
                writer->debugTokens[writer->numDebugTokens].item = item;
+               writer->debugTokens[writer->numDebugTokens].pseudo = pseudo;
                writer->debugTokens[writer->numDebugTokens].offset = offset;
                ++(writer->numDebugTokens);
***************
*** 144,147 ****
--- 146,150 ----
                        writer->maxDebugTokens += 256;
                        newTokens[writer->numDebugTokens].item = item;
+                       newTokens[writer->numDebugTokens].pseudo = pseudo;
                        newTokens[writer->numDebugTokens].offset = offset;
                        ++(writer->numDebugTokens);
***************
*** 150,153 ****
--- 153,168 ----
  }
  
+ void ILWriterDebugAdd(ILWriter *writer, ILProgramItem *item, int type,
+                                         const void *info, unsigned long len)
+ {
+       WriterDebugAdd(writer, item, 0, type, info, len);
+ }
+ 
+ void ILWriterDebugAddPseudo(ILWriter *writer, unsigned long token, int type,
+                                                       const void *info, 
unsigned long len)
+ {
+       WriterDebugAdd(writer, 0, token, type, info, len);
+ }
+ 
  /*
   * Write the contents of a buffer list to the ".ildebug" section.
***************
*** 179,188 ****
  static int DebugIndexCompare(const void *e1, const void *e2)
  {
!       if(((ILDebugToken *)e1)->item->token < ((ILDebugToken 
*)e2)->item->token)
        {
                return -1;
        }
!       else if(((ILDebugToken *)e1)->item->token >
!                       ((ILDebugToken *)e2)->item->token)
        {
                return 1;
--- 194,220 ----
  static int DebugIndexCompare(const void *e1, const void *e2)
  {
!       unsigned long token1;
!       unsigned long token2;
!       if(((ILDebugToken *)e1)->item)
!       {
!               token1 = ((ILDebugToken *)e1)->item->token;
!       }
!       else
!       {
!               token1 = ((ILDebugToken *)e1)->pseudo;
!       }
!       if(((ILDebugToken *)e2)->item)
!       {
!               token2 = ((ILDebugToken *)e2)->item->token;
!       }
!       else
!       {
!               token2 = ((ILDebugToken *)e2)->pseudo;
!       }
!       if(token1 < token2)
        {
                return -1;
        }
!       else if(token1 > token2)
        {
                return 1;
***************
*** 262,265 ****
--- 294,299 ----
                unsigned long posn2;
                unsigned long temp;
+               unsigned long token1;
+               unsigned long token2;
                ILProgramItem *tempItem;
                for(posn = 0; posn < (writer->numDebugTokens - 1); ++posn)
***************
*** 267,277 ****
                        for(posn2 = (posn + 1); posn2 < writer->numDebugTokens; 
++posn2)
                        {
!                               if(writer->debugTokens[posn].item->token >
!                                  writer->debugTokens[posn2].item->token)
                                {
!                                       tempItem = 
writer->debugTokens[posn].item->token;
!                                       writer->debugTokens[posn].item->token =
!                                               
writer->debugTokens[posn2].item->token;
!                                       writer->debugTokens[posn2].token = 
tempItem;
                                        temp = writer->debugTokens[posn].offset;
                                        writer->debugTokens[posn].offset =
--- 301,330 ----
                        for(posn2 = (posn + 1); posn2 < writer->numDebugTokens; 
++posn2)
                        {
!                               if(writer->debugTokens[posn].item)
                                {
!                                       token1 = 
writer->debugTokens[posn].item->token;
!                               }
!                               else
!                               {
!                                       token1 = 
writer->debugTokens[posn].pseudo;
!                               }
!                               if(writer->debugTokens[posn2].item)
!                               {
!                                       token2 = 
writer->debugTokens[posn2].item->token;
!                               }
!                               else
!                               {
!                                       token2 = 
writer->debugTokens[posn2].pseudo;
!                               }
!                               if(token1 > token2)
!                               {
!                                       tempItem = 
writer->debugTokens[posn].item;
!                                       writer->debugTokens[posn].item =
!                                               writer->debugTokens[posn2].item;
!                                       writer->debugTokens[posn2].item = 
tempItem;
!                                       temp = writer->debugTokens[posn].pseudo;
!                                       writer->debugTokens[posn].pseudo =
!                                               
writer->debugTokens[posn2].pseudo;
!                                       writer->debugTokens[posn2].pseudo = 
temp;
                                        temp = writer->debugTokens[posn].offset;
                                        writer->debugTokens[posn].offset =
***************
*** 287,291 ****
        for(posn = 0; posn < writer->numDebugTokens; ++posn)
        {
!               value = writer->debugTokens[posn].item->token;
                IL_WRITE_UINT32(header, value);
                value = writer->debugTokens[posn].offset;
--- 340,351 ----
        for(posn = 0; posn < writer->numDebugTokens; ++posn)
        {
!               if(writer->debugTokens[posn].item)
!               {
!                       value = writer->debugTokens[posn].item->token;
!               }
!               else
!               {
!                       value = writer->debugTokens[posn].pseudo;
!               }
                IL_WRITE_UINT32(header, value);
                value = writer->debugTokens[posn].offset;

Index: image.h
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/image/image.h,v
retrieving revision 1.31
retrieving revision 1.32
diff -C2 -d -r1.31 -r1.32
*** image.h     25 Sep 2003 01:19:04 -0000      1.31
--- image.h     29 Sep 2003 07:11:31 -0000      1.32
***************
*** 325,328 ****
--- 325,329 ----
  {
        ILProgramItem  *item;
+       unsigned long   pseudo;
        unsigned long   offset;
  





reply via email to

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