OpenCores
URL https://opencores.org/ocsvn/plasma/plasma/trunk

Subversion Repositories plasma

[/] [plasma/] [trunk/] [tools/] [convert.c] - Diff between revs 409 and 437

Show entire file | Details | Blame | View Log

Rev 409 Rev 437
Line 155... Line 155...
         elfRegInfo = (ELF_RegInfo*)(buf + elfProgram->p_offset);
         elfRegInfo = (ELF_RegInfo*)(buf + elfProgram->p_offset);
         gp_ptr = ntohl(elfRegInfo->ri_gp_value);
         gp_ptr = ntohl(elfRegInfo->ri_gp_value);
      }
      }
      if((int)elfProgram->p_vaddr < BUF_SIZE)
      if((int)elfProgram->p_vaddr < BUF_SIZE)
      {
      {
         //printf("[0x%x,0x%x,0x%x,0x%x,0x%x]\n", elfProgram->p_vaddr,
         printf("[vaddr=0x%x,offset=0x%x,filesz=0x%x,memsz=0x%x,flags=0x%x]\n",
         //   elfProgram->p_offset, elfProgram->p_filesz, elfProgram->p_memsz,
            elfProgram->p_vaddr, elfProgram->p_offset,
         //   elfProgram->p_flags);
            elfProgram->p_filesz, elfProgram->p_memsz,
 
            elfProgram->p_flags);
         if((int)elfProgram->p_vaddr < 0)
         if((int)elfProgram->p_vaddr < 0)
            elfProgram->p_vaddr = 0;
            elfProgram->p_vaddr = 0;
         memcpy(code + elfProgram->p_vaddr, buf + elfProgram->p_offset,
         memcpy(code + elfProgram->p_vaddr, buf + elfProgram->p_offset,
                 elfProgram->p_filesz);
                 elfProgram->p_filesz);
         length = elfProgram->p_vaddr + elfProgram->p_filesz;
         length = elfProgram->p_vaddr + elfProgram->p_filesz;
         //printf("length = %d 0x%x\n", length, length);
         printf("length = %d = 0x%x\n", length, length);
      }
      }
   }
   }
 
 
   for(i = 0; i < elfHeader->e_shnum; ++i)
   for(i = 0; i < elfHeader->e_shnum; ++i)
   {
   {
Line 200... Line 201...
      }
      }
   }
   }
 
 
   if(bss_start == 0)
   if(bss_start == 0)
      bss_start = length;
      bss_start = length;
   if(length > bss_start - elfHeader->e_entry)
   //if(length > bss_start - elfHeader->e_entry)
   {
   //{
      length = bss_start - elfHeader->e_entry;
   //   length = bss_start - elfHeader->e_entry;
   }
   //}
   if(bss_start == length)
   if(bss_start == length)
   {
   {
      bss_start = length;
      bss_start = length;
      bss_end = length + 4;
      bss_end = length + 4;
   }
   }

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.