On 04/06/2011 07:20 PM, Sebastian Huber wrote:
> On 06/04/11 18:24, Ralf Corsepius wrote:
>> On 04/06/2011 05:20 PM, Sebastian Huber wrote:
>>
>>> there were several requests for ARM Cortex-M support on RTEMS
>>> recently.  The
>>> first step towards this is a suitable ARM tool chain.  I want to use
>>> this event
>>> to clean up the multilibs and switch to the EABI version 5.  The
>>> benefit of
>>> EABI version 5 is that this brings RTEMS more in line with the
>>> primary GCC
>>> platform arm-linux-gnueabi.
>>
>> These patches are not OK with me, because these are widely
>> incompatible to what has been used in RTEMS up today
> 
> Can you please list these incompatibilities.  The RTEMS test suite shows
> no problems with this tool chain.  The GCC test suite looks also good.
[...]

It is not really helpful to claim something without an explanation.  The
missing tool chain for the ARM Cortex architecture blocks RTEMS from further
development on a very important embedded systems platform.  A lot of competing
real time operating systems provide ARM Cortex support for a long time.

Lets look at the GCC test suite results:

RTEMS 4.11, GCC 4.6.0 (EABI)

                === gcc Summary ===

# of expected passes            72429
# of unexpected failures        200
# of unexpected successes       7
# of expected failures          183
# of unresolved testcases       138
# of unsupported tests          1103

                === g++ Summary ===

# of expected passes            25494
# of unexpected failures        11
# of unexpected successes       1
# of expected failures          160
# of unsupported tests          427

RTEMS 4.11, GCC 4.6.0 (old ABI)

                === gcc Summary ===

# of expected passes            43613
# of unexpected failures        15916
# of unexpected successes       8
# of expected failures          181
# of unresolved testcases       11127
# of unsupported tests          1124

                === g++ Summary ===

# of expected passes            20709
# of unexpected failures        2590
# of expected failures          157
# of unresolved testcases       291
# of unsupported tests          430

RTEMS 4.10, GCC 4.4.5 (old ABI)

                === gcc Summary ===

# of expected passes            34293
# of unexpected failures        11273
# of expected failures          237
# of unresolved testcases       7878
# of unsupported tests          683

                === g++ Summary ===

# of expected passes            15707
# of unexpected failures        1726
# of expected failures          155
# of unresolved testcases       26
# of unsupported tests          194

RTEMS 4.9, GCC 4.3.2 (old ABI)

                === gcc Summary ===

# of expected passes            47164
# of unexpected failures        2070
# of expected failures          97
# of unresolved testcases       92
# of untested testcases         35
# of unsupported tests          792

                === g++ Summary ===

# of expected passes            17019
# of unexpected failures        52
# of unexpected successes       2
# of expected failures          82
# of unresolved testcases       49
# of unsupported tests          164

The EABI tool chain has by far the best test suite results.

The RTEMS test suite was run with the edb7312 BSP and shows good results.  It
works also on real hardware with the lpc24xx and lpc32xx BSPs.

All ARM BSPs compile and link all tests with the EABI tool chain.

We use the VFP floating point format in all ARM BSPs since 2010-04-30.

All ARM BSPs support the init and fini array sections since 2010-12-03.

The C++ exceptions change from SJLJ to a table based implementation is an
implementation detail.

The required ARM/Thumb interwork is an enhancement.

I don't claim that the switch to the EABI tool chain will be without problems,
but we have to use it to figure this out.  The multilib selection may need
further changes.  I am concerned about the enabled exceptions in some libgcc
functions.

-- 
Sebastian Huber, embedded brains GmbH

Address : Obere Lagerstr. 30, D-82178 Puchheim, Germany
Phone   : +49 89 18 90 80 79-6
Fax     : +49 89 18 90 80 79-9
E-Mail  : sebastian.hu...@embedded-brains.de
PGP     : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.

Reply via email to