<div dir="ltr">Hi,<div>   I have tested x.rap on Tiny6410 board. It works now.</div><div>   The patch is listed in <a href="https://gist.github.com/MrVan/5440197">https://gist.github.com/MrVan/5440197</a></div><div>   </div>
<div>   There is something wrong when using rtems arm gcc for s3c6410.</div><div>   Gcc always generates undefined instructions for s3c6410.I do not know why.</div><div>   I may post it on user list.</div><div>   </div><div>
   The test is based on 4.10 not 4.11 for the gcc reson.</div><div>   what I added is mainly:</div><div>   1. Modify the current PC24 reloaction, add CALL and JUMP24.</div><div>       In elf for arm, It says PC24 is Deprecated.</div>
<div style>   2. Modify the  rtems_rtl_symbol_global_add function, because when "rap ld ./x.rap",</div><div style>       It tells "can not find global symbols". To arm, the symbol in rtld-gsyms.c needs align, so I add some code for this.</div>
<div style>   </div><div style><br></div><div style>  I will try to add other relocation types.Thanks.</div><div style><br></div><div style><br></div><div style>Regards,</div><div style>Peng.</div><div><br><div class="gmail_extra">
<br><br><div class="gmail_quote">2013/4/22 Gedare Bloom <span dir="ltr"><<a href="mailto:gedare@rtems.org" target="_blank">gedare@rtems.org</a>></span><br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
Administrative note: I made your google doc private and shared it<br>
explicitly with Chris (and a handful of others).<br></blockquote><div style>Thanks very much.</div><div style> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

<div class=""><div class="h5"><br>
On Sun, Apr 21, 2013 at 11:45 PM, Chris Johns <<a href="mailto:chrisj@rtems.org">chrisj@rtems.org</a>> wrote:<br>
> Peng Fan wrote:<br>
>><br>
>><br>
>> I add the following code to ignore ARM.attributes and ARM.exidx sections<br>
>> which are contained in xa.c x-long.*.c and rtld.prelink. Not sure whether<br>
>> this is right or not, but when compling rtl target, all is passed. This<br>
>> may looks not a good way.<br>
><br>
><br>
> I have not looked into the best way to add this support. I suspect updating<br>
> elftoolchain is the best solution but I am not sure how.<br>
><br>
>> diff --git a/elftoolchain/libelf/elf_data.c<br>
>> b/elftoolchain/libelf/elf_data.c<br>
>> index 5ac6453..a6e17ae 100644<br>
>> --- a/elftoolchain/libelf/elf_data.c<br>
>> +++ b/elftoolchain/libelf/elf_data.c<br>
>> @@ -87,9 +87,20 @@ elf_getdata(Elf_Scn *s, Elf_Data *d)<br>
>> return (NULL);<br>
>> }<br>
>> +if (sh_type == 0x70000003 || sh_type == 0x70000001) {<br>
>> +if ((d = _libelf_allocate_data(s)) == NULL)<br>
>><br>
>> +return (NULL);<br>
>> +d->d_buf = 0;<br>
>> +d->d_size = 0;<br>
>> +return (d);<br>
>><br>
>> +}<br>
>> +  //printf("freenix %x %x\n", (sh_type), ELF_T_FIRST);<br>
>> +<br>
>><br>
>> Now, I am trying to make the rtld run on my Tiny6410 board. It does run,<br>
>> but rap load ./x.rap fails. Error msg is:<br>
>> rtl: reloc unknown: sym = 0, type = 29, offset = 0x4, contents =<br>
>> 0xeafffffe<br>
>> error: loading: (22) .text: Unsupported relocation type 29 in non-PLT<br>
>> relocations<br>
>><br>
>> Type 29 in elf for arm is R_TYPE_JUMP24 which is not supported in<br>
>> rtl-target side, thus error occurs. I am trying to add this to target<br>
>> side.<br>
><br>
><br>
> Excellent. This now the real task.<br>
><br>
>><br>
>> I have finished a proposal draft. It is here<br>
>><br>
>> <<a href="https://docs.google.com/document/d/1HBkRU7_kUOvoiCQWTUxQ151kvX--3x_E7r0rTerxYbo/edit?usp=sharing" target="_blank">https://docs.google.com/document/d/1HBkRU7_kUOvoiCQWTUxQ151kvX--3x_E7r0rTerxYbo/edit?usp=sharing</a>>.<br>

>><br>
>> You can edit it. Hope you can give me some suggestions. On the target<br>
>> side, I know the main work that I should done is in rtl-mdreloc-arm.c,<br>
>> but on the host side, It seems all have been done.  Thnnks.<br>
><br>
><br>
> This is just a part of the project. The ARM relocation may not be enough. I<br>
> will think about this.<br>
><br>
><br>
> Chris<br>
</div></div><div class=""><div class="h5">> _______________________________________________<br>
> rtems-devel mailing list<br>
> <a href="mailto:rtems-devel@rtems.org">rtems-devel@rtems.org</a><br>
> <a href="http://www.rtems.org/mailman/listinfo/rtems-devel" target="_blank">http://www.rtems.org/mailman/listinfo/rtems-devel</a><br>
</div></div></blockquote></div><br></div></div></div>