<div dir="ltr">Hi,<div style>Thanks for all your advice.</div><div style>I use arm-rtemseabi4.11-gdb to debug the code. The test bsp is arm1136jfs</div><div style>I add such test code in hello sample:</div><div style><br></div>
<div style><div><span class="" style="white-space:pre">   </span>char *tmp = "/";</div><div><span class="" style="white-space:pre"> </span>char dest[10];</div><div><span class="" style="white-space:pre">     </span>dest[0] = 'a';</div>
<div><span class="" style="white-space:pre">    </span>dest[1] = '\0';</div><div><span class="" style="white-space:pre">    </span>printf("dest %x, len %x\n", dest, strlen(dest));  </div><div><span class="" style="white-space:pre">       </span>strncat(dest, tmp, 10);</div>
<div><br></div><div style>printf outputs :  dest 1b6bc, len 1</div><div style><br></div><div style>gcc optimize strncat function.</div><div style><div><br></div><div style>The step debug log is listed below:</div><div style>
<div>Breakpoint 2, 0x00000814 in Init (ignored=<optimized out>)</div><div>    at ../../../../../../../rtems/c/src/../../testsuites/samples/hello/init.c:32</div><div>32<span class="" style="white-space:pre">            </span>strncat(dest, tmp, 10);</div>
<div>1: x/i $pc</div><div>=> 0x814 <Init+68>:<span class="" style="white-space:pre">       </span>strh<span class="" style="white-space:pre">      </span>r3, [r4, r0]  <b>//r4+r0 is unaligned.</b></div><div>(gdb) i r r0</div>
<div><b>r0             0x1<span class="" style="white-space:pre"> </span>1</b></div><div>(gdb) i r r4</div><div><b>r4             0x1b6bc<span class="" style="white-space:pre">      </span>112316</b></div><div>(gdb) i r r3</div>
<div>r3             0x2f<span class="" style="white-space:pre"> </span>47</div><div>(gdb) c       <b>//It is ok</b></div><div>Continuing.</div><div>*** HELLO WORLD TEST ***</div><div>Hello World</div><div>*** END OF HELLO WORLD TEST ***</div>
<div>[Inferior 1 (process 42000) exited with code 05]</div><div><br></div></div><div style>No error msg with "strh r3, [r4, r0]", when arm-rtemseabi4.11-run hello.exe. I do not know why. </div><div style><br></div>
<div style>Regards,</div><div style>Peng.</div></div></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">2013/4/24 Sebastian Huber <span dir="ltr"><<a href="mailto:sebastian.huber@embedded-brains.de" target="_blank">sebastian.huber@embedded-brains.de</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On 04/24/2013 05:30 PM, Joel Sherrill wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On 4/24/2013 10:26 AM, Sebastian Huber wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On 04/24/2013 04:05 PM, Peng Fan wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Version: arm-rtems4.10-gcc ---- gcc version 4.4.7 20120313<br>
<br>
is okay.<br>
<br>
</blockquote>
This version does not use the EABI version 5 and is horribly out of date.<br>
<br>
If you don't want unaligned load/store instructions, then use the<br>
-mno-unaligned-access GCC option.<br>
<br>
</blockquote>
Asking out of ignorance, is there a chance newilb will include some?<br>
<br>
</blockquote>
<br></div>
This is possible, yes.  GCC assumes cores for the ARMv6 and later can cope with unaligned access.<div class="im HOEnZb"><br>
<br>
-- <br>
Sebastian Huber, embedded brains GmbH<br>
<br>
Address : Dornierstr. 4, D-82178 Puchheim, Germany<br>
Phone   : +49 89 189 47 41-16<br>
Fax     : +49 89 189 47 41-09<br>
E-Mail  : <a href="mailto:sebastian.huber@embedded-brains.de" target="_blank">sebastian.huber@embedded-<u></u>brains.de</a><br>
PGP     : Public key available on request.<br>
<br>
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.<br></div><div class="HOEnZb"><div class="h5">
______________________________<u></u>_________________<br>
rtems-users mailing list<br>
<a href="mailto:rtems-users@rtems.org" target="_blank">rtems-users@rtems.org</a><br>
<a href="http://www.rtems.org/mailman/listinfo/rtems-users" target="_blank">http://www.rtems.org/mailman/<u></u>listinfo/rtems-users</a><br>
</div></div></blockquote></div><br></div>