#4084: throwing std::runtime on PC BSP fails
----------------------------+--------------------
  Reporter:  Joel Sherrill  |      Owner:  (none)
      Type:  defect         |     Status:  new
  Priority:  normal         |  Milestone:  6.1
 Component:  tool/gcc       |    Version:  6
  Severity:  normal         |   Keywords:
Blocked By:                 |   Blocking:
----------------------------+--------------------
 Copied from #2830 for new release milestone. The solution is to update
 gcc/config/i386/t-rtems. Whether for gcc 10 or gcc master is the
 difference on this CR versus #2830 which had to be to gcc 7 as a patch via
 the RSB.



 Throwing a std::runtime() exception locks up.

 The lock up is in the exception clean up handler where the exception
 object is destructed. The destructor loops distructing the std::string
 object. The path ends up in libstdc++-v3/include/ext/atomicity.h line 48
 or exchange_and_add.

 At a guess it would seem like the C++ atomics on i386 is broken or
 fragile.

 UPDATE: This was broken when gcc i386 eliminated -mcpu in favor of
 -march/-mtune. The multilibs were built with -mtune and not -march.

--
Ticket URL: <http://devel.rtems.org/ticket/4084>
RTEMS Project <http://www.rtems.org/>
RTEMS Project
_______________________________________________
bugs mailing list
[email protected]
http://lists.rtems.org/mailman/listinfo/bugs

Reply via email to