wiki:TBR/Review/ToolStatus

Version 11 (modified by JoelSherrill, on Sep 18, 2008 at 8:17:11 PM) (diff)

/* GCC Test Results */ C/C++ and Ada were swapped

ToolStatus

This page details the status of outstanding issues with the various components of the RTEMS Development Environment which consists of target specific configurations of Binutils, GCC, Newlib, and GDB in addition to GNU automake and autotools.

Binutils

Release 2.19

This is expected to be used by the 4.10 release series. As of 12 September 2008, we are using pre-release snapshots in the RPMs.

Release 2.18

This is used by the 4.8 and 4.9 release series.

Release 2.17

This is the version for the 4.7 release series.

GCC

For each PR reference, please duplicate it for each GCC branch that it still needs to be committed on. We are using this as a working document to help track which PRs to focus on and when the RTEMS Project can close them. Each time a PR is listed against a CVS branch or head, it should have a current note on its status from the RTEMS perspective -- are we tracking it, working on it, etc?

GCC Test Results

On targets where a BSP which executes on a simulator is available, the RTEMS Project regularly executes the GCC test suites for the C, C++ and Ada programming languages.

The results are submitted to the GCC project and results for various GCC versions are shown in the following table:

{| border="1" style="margin: 1em auto 1em auto;text-align: center;" |+

|GCC Version | 4.4 20080910 | 4.4 20080910 | 4.4 20080910 | 4.4 20080910 | 4.4 20080910 | 4.3.2 | 4.3.2 | 4.3.2 | 4.3.2 | 4.3.2
Target BSP RTEMS Version C/C++ Results Ada Results
arm edb7312 4.9 branch http://gcc.gnu.org/ml/gcc-testresults/2008-09/msg01308.html http://gcc.gnu.org/ml/gcc-testresults/2008-09/msg01305.html
i386 pc386 4.9 branch http://gcc.gnu.org/ml/gcc-testresults/2008-09/msg01041.html http://gcc.gnu.org/ml/gcc-testresults/2008-09/msg01056.html
mips jmr3904 4.9 branch http://gcc.gnu.org/ml/gcc-testresults/2008-09/msg01309.html http://gcc.gnu.org/ml/gcc-testresults/2008-09/msg01294.html
powerpc-rtems4.9 psim 4.9 branch http://gcc.gnu.org/ml/gcc-testresults/2008-09/msg00943.html http://gcc.gnu.org/ml/gcc-testresults/2008-09/msg00952.html
sparc-rtems4.9 sis 4.9 branch http://gcc.gnu.org/ml/gcc-testresults/2008-09/msg00943.html http://gcc.gnu.org/ml/gcc-testresults/2008-09/msg00916.html
arm edb7312 4.9 branch http://gcc.gnu.org/ml/gcc-testresults/2008-09/msg01306.html http://gcc.gnu.org/ml/gcc-testresults/2008-09/msg01304.html
i386 pc386 4.9 branch http://gcc.gnu.org/ml/gcc-testresults/2008-09/msg01310.html http://gcc.gnu.org/ml/gcc-testresults/2008-09/msg01307.html
mips jmr3904 4.9 branch http://gcc.gnu.org/ml/gcc-testresults/2008-09/msg01311.html http://gcc.gnu.org/ml/gcc-testresults/2008-09/msg01314.html
powerpc psim 4.9 branch http://gcc.gnu.org/ml/gcc-testresults/2008-09/msg01313.html http://gcc.gnu.org/ml/gcc-testresults/2008-09/msg01312.html
sparc-rtems4.9 sis 4.9 branch http://gcc.gnu.org/ml/gcc-testresults/2008-09/msg00994.html http://gcc.gnu.org/ml/gcc-testresults/2008-09/msg00876.html

|}

Outstanding PRs (not assigned to releases)

#GCCAVRBugs? - PRs and issues of interest to AVR users.

#http://gcc.gnu.org/bugzilla/show_bug.cgi?id=10532 - We still need the fix. IMO, this PR has been closed incorrectly.

#http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13076 - The infamous gnatlib bug.

#http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14537 - SPARC defines unix as cpp predefine breaking all embedded SPARC targets. This prevents GNAT from building at all for the embedded SPARC. Joel has a tentative fix for this against 3.4 but it needs review and testing. This PR is fixed for 4.0 but unlikely to be fixed in 3.4.x.

#http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14554 - Flaw in libffi -- there is arch-dependent code but no generic fallback routines.

#http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14555 - Variant of PR 14554 for the coldfire. libffi builds for most other m68k variants.

#http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14614 - Build problem with gcj which lingers for unknown reasons.

#http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17601 - Seemingly a non-portability in a Makefile, rtems-unspecific; Work-around is known, but nobody wants to apply it.

#http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17627 - Using C++ and libstdc++ on a M68060 can result in the execution of the CAS instruction on unaligned data on the stack. Further to this an issue of unaligned data and performance has been raised.

#http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17810 - ICE on ARM

#http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17822 - One of two obvious bugs in non-RTEMS specific files, which do have an impact on RTEMS. These unfixed bugs block further patches, Ralf has pending.

#http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17824 - One of two obvious bugs in non-RTEMS specific files, which do have an impact on RTEMS. These unfixed bugs block further patches, Ralf has pending.

#http://www.rtems.org/cgi-bin/gnatsweb.pl?database<tt>RTEMS&cmd</tt>view&pr=588 - Remove powerpc m505/roe multilib variant

#(CLARIFY) Ctors/Dtors? support missing for the arm? - Shall the arm 'USEINITFINI' ?

Development Head

#(VERIFY PRESENCE) http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17102 - ICE on ARM.

#(CONSIDER) Request to change switching arm from arm-elf to arm-eabi.

4.0 Per Target Status Notes

#(FIXED) http://gcc.gnu.org/bugzilla/show''bug.cgi?id<tt>19378 </tt> avr-rtems4.7 4.0 Regression? ICE during bootstrap compiling _fixdfdi #(open) http://gcc.gnu.org/bugzilla/show_bug.cgi?id<tt>19421 </tt> m68k-rtems4.7 soft-float failure when building paranoia #(FIXED) http://gcc.gnu.org/bugzilla/show_bug.cgi?id<tt>19379 </tt> i386-rtems4.7 soft-float when building itself #(FIXED) http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19528 - sh-rtems4.7 misses ra.h #(FIXED) http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19528 - sh-rtems4.7 multilibs have changed #(Patch attached) http://gcc.gnu.org/bugzilla/show_bug.cgi?id<tt>14537 </tt> sparc-rtems4.7 defines UNIX #(FIXED) http://gcc.gnu.org/bugzilla/show_bug.cgi?id<tt>19364 </tt> sparc-rtems4.7 does not build #(FIXED) http://gcc.gnu.org/bugzilla/show_bug.cgi?id<tt>19488 </tt> RTEMS specific patches required to get Ada run-time to build. #(Laurent Guerby helping) http://gcc.gnu.org/bugzilla/show_bug.cgi?id<tt>19489 </tt> Ada attempts to build RTEMS-hosted versions of gnattools. #(open) http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19537 tic4x-rtems fails early with ICE

JoelSherrill And Ralf have attempted to build RTEMS using this toolset. GCC 4.x has new warnings and errors which impact most BSPs. We have reported the compiler issues we have discovered so far and gotten most BSPs to build. We are trying to fix the errors that prevent things from building before worrying too much about target specific build status on RTEMS itself.

  • arm-rtems4.7 - C, C++ build.
  • avr-rtems4.7 - C builds. C++?
  • h8300-rtems4.7 - C, C++ build.
  • i386-rtems4.7 - C, C++ build with fix not reviewed.
  • m68k-rtems4.7 - C, C++ build. RTEMS itself fails with PR19421 (soft-float/paranoia)
  • mips64-rtems4.7 - C, C++ build.
  • mips-rtems4.7 - C, C++ build.
  • powerpc-rtems4.7 - C, C++ build.
  • sh-rtems4.7 - C, C++ built at one point.
  • sparc-rtems4.7 - C and C++ built with working patch which addresses PRs. This is enough to build RTEMS and run hello and ticker. Joel has not gotten C++ global ctors to work but exceptions do not.
  • tic4x-rtems4.7 - ICE early in build needs to be reported.

3.4 Release Branch

#(TRACK) http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17102 - ICE on ARM. Work-around: Don't use optimization levels > -O2.

#(TRACK) http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18251 - ICE on AVR.

#(TRACK) http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18563 - ICE on AVR ("cpuboot.c"-breakdown). Work-around: Don't use optimization levels > -00. Doesn't seem to affect RTEMS.

#(TRACK) http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18563 - ICE on h8300 ("cpuboot.c"-breakdown). Work-around: Don't use optimization levels > -00. Doesn't seem to affect RTEMS.

#(TRACK) http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18542 - ICE on m68k ("cpuboot.c"-breakdown). Work-around: Don't use optimization levels > -00. Breaks the ods68302 BSP.

#(TRACK) http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19593 - ICE on i386. Impacts pc486, pc586, and pck6.

#tic4x doesn't build for -msmall - Work-around: Remove -msmall multlib-variants (Patch pending in gcc-patches@).

#(APPLY) http://www.rtems.org/cgi-bin/gnatsweb.pl?database<tt>RTEMS&cmd</tt>view&pr=678 - AVR patches, submit once gcc-3.4 unfreezes.

3.3 Release Branch

#(ASKED PERMISSION TO APPLY) http://gcc.gnu.org/bugzilla/show''bug.cgi?id=14583 - 'USEINITFINI_ not defined on PowerPC

#(CLOSED AS OF 3.3.5) http://gcc.gnu.org/bugzilla/show''bug.cgi?id=14620 - The rtems-LIBSPEC bug. Closed, but seemingly missing in gcc-3.3. gcc-3.3 may have been frozen when the patches had been applied to gcc-3.4 and gcc-trunk.

Newlib

Release 1.15.0

28 May 2007: This is the version currently in use by the 4.7 release series and 4.8 CVS head. Both have patches for different reasons. The 4.8 CVS head is trending towards more POSIX compliance and some header files have changes to support this which are incompatible with 4.7.

Release 1.11.0

#http://www.rtems.org/cgi-bin/gnatsweb.pl?database<tt>RTEMS&cmd</tt>view&pr=616 - Arm endianness is broken, supposed to be fixed in newlib > 1.12.0.

#tic4x fixed size types are broken. - Won't fix.

Release 1.12.0

#http://www.rtems.org/cgi-bin/gnatsweb.pl?database<tt>RTEMS&cmd</tt>view&pr=616 - Arm endianness is broken, supposed to be fixed in newlib > 1.12.0.

#Conflicts on intNt, 'intNt types (<sys/types.h>) with new stdint.h in RTEMS >= 4.6.99. Patch in preparation (Ralf).

#tic4x fixed-size types are broken - May-be fix.

GDB

6.x Release Series

  • Early releases did not backtrace on popular targets. Need to retest later in series.

===Release 5.3===

  • TBD

==Autoconf==

#Whitespaces in $PWD are not allowed - Supposed to be fixed in autoconf > 2.59

==Automake==

#Dependency tracking of *.S missing in automake <<tt> 1.10 - Supposed to be present in automake ></tt> 1.10.

#Make compilation of *.S aware of CPPFLAGS - Fixed in RTEMS patches, supposed to be present in automake >= 1.10.