Just when you think you have nailed everfything down, you decide to start with a fresh clone and stuff don't build anymore ;)

See: https://review.trustedfirmware.org/c/TF-M/trusted-firmware-m/+/6766

I have now gone over and tried building everything that has IAR support and here are my findings.

I have used the following patches:
https://review.trustedfirmware.org/c/TF-M/tf-m-tests/+/5978
https://review.trustedfirmware.org/c/TF-M/trusted-firmware-m/+/6766

I have built for the following targets:
musca_a
mps2/an519
mps2/an521
mps2/an539
mps2/sse-200_aws
mps3/an524
cypress/psoc64
nxp/lpcxpresso55s69 (-DBL2=False as bl2 support appears to have been added recently to this target)
stm/nucleo_l552ze_q
stm/stm32l562e_dk

The mps2/fvp_sse300 requires a compiler with support for the M55, and the IAR compiler with support for this is not yet released.

I have run tests on the following targets:
musca_a
mps2/an519
mps2/an521
mps2/an539

The cypress/psoc64 board I have appears to be obsolete now and I could not flash the secure image to it.

The nuvoton/m2351 appears to have IAR support, but it appears untested as it gives linking errors for the bl2 and NS startup files.

There are some old and new warnings for type issues and some other minor things.

The QCBOR NaN tests are still failing, see:
https://developer.trustedfirmware.org/T700

This really is an issue where the ARM ABI and IEEE 754 are incompatible and we are following the ARM ABI. In reality neither ARMCLANG nor GNUARM are fully ARM ABI compliant as they are not ignoring the relevant bits.

Thomas

--

Thomas Törnblom, Product Engineer
IAR Systems AB
Box 23051, Strandbodgatan 1
SE-750 23 Uppsala, SWEDEN
Mobile: +46 76 180 17 80 Fax: +46 18 16 78 01
E-mail: thomas.tornblom@iar.com Website: www.iar.com
Twitter: www.twitter.com/iarsystems