<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Jun 4, 2021 at 9:16 AM Matthew J Fletcher <<a href="mailto:amimjf@gmail.com">amimjf@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Replying to myself.<br><div><br></div><div>Seems various interrupt and other rtems routines need to be excluded, with "-finstrument-functions-exclude-file-list=/rtems -finstrument-functions-exclude-function-list=arm_interrupt_,rtems_" stability resumes.</div></div></blockquote><div><br></div><div>Thank you for posting the solution even though you had to find it on your own.</div><div><br></div><div>There is a section in the users guide which discusses this option without </div><div>mentioning the exclude option at all. Could you kindly provide a patch to</div><div>mention that option and give any advice you have along with your example</div><div>above? It would be certainly be appreciated by the next person to follow</div><div>this path.</div><div><br></div><div>I would bet that not every rtems_ method needs to be excluded but the</div><div>rules for what needs to be excluded are unclear to me. I expect it depends</div><div>on what the profiling methods actually do.</div><div><br></div><div>--joel</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, 2 Jun 2021 at 15:34, Matthew J Fletcher <<a href="mailto:amimjf@gmail.com" target="_blank">amimjf@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Hi <div><br></div><div>Has anyone tried with -finstrument-functions with the rtems-5 branch a (gcc 7.5.0) ? even with a minimal stub (shown), i get random crashes, normally in the heap allocate/free code paths</div><div><br></div><div>__attribute__((no_instrument_function)) void __cyg_profile_func_enter (void *this_fn, void *call_site)<br>{<br>        }<br>__attribute__((no_instrument_function)) void __cyg_profile_func_exit (void *this_fn, void *call_site)<br></div><div>{</div><div>}<br clear="all"><div><br></div><div>Removing 

-finstrument-functions from the makefiles removes the crashes.</div><div><br></div><div dir="ltr"><div><br>regards</div><div>---</div><div>Matthew J Fletcher</div><br></div></div></div>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr"><div><br>regards</div><div>---</div><div>Matthew J Fletcher</div><br></div>
_______________________________________________<br>
users mailing list<br>
<a href="mailto:users@rtems.org" target="_blank">users@rtems.org</a><br>
<a href="http://lists.rtems.org/mailman/listinfo/users" rel="noreferrer" target="_blank">http://lists.rtems.org/mailman/listinfo/users</a></blockquote></div></div>