Hi Ken,
I see you implemented this change anyway in psa_interface_thread.c and other places. This breaks IAR builds unfortunately: --- ... :: "i" (spm_interface_thread_dispatcher) ^ "C:\Users\thomasto\Projects\tf-m13\trusted-firmware-m\secure_fw\spm\cmsis_psa\psa_interface_thread.c",29 Error[Ta094]: Operand modifier a is not valid for operand #spm_interface_thread_dispatcher
:: "i" (tfm_spm_client_psa_framework_version), ^ "C:\Users\thomasto\Projects\tf-m13\trusted-firmware-m\secure_fw\spm\cmsis_psa\psa_interface_thread.c",43 Error[Ta094]: Operand modifier a is not valid for operand #tfm_spm_client_psa_framework_version ... ---
For IAR we need to use the #pragma required method previously used.
/Thomas
Den 2021-10-19 kl. 11:11, skrev Ken Liu via TF-M:
Hi Thomas,
Thanks for the confirm 😉
Let’s see if we can refine this part from a coding perspective.
/Ken
*From:* TF-M tf-m-bounces@lists.trustedfirmware.org *On Behalf Of *Thomas Törnblom via TF-M *Sent:* Tuesday, October 19, 2021 4:53 PM *To:* tf-m@lists.trustedfirmware.org *Subject:* Re: [TF-M] Inline asm syntax unified and symbol reference in IAR toolchain
Hi Ken,
We have an open ticket for just consuming the ".syntax unified", which is set to be fixed in a future update.
I've tested your suggestion for "#pragma required" and it doesn't seem to work.
Cheers, Thomas
Den 2021-10-19 kl. 09:22, skrev Ken Liu via TF-M:
Hi Thomas and all, I noticed there are some #if !defined(__ICCARM__) ".syntax unified \n" #endif In source code, looks like �.syntax unified� is not support in IAR, is that true? If it could not be supported in a short term, we can define some wrapper such as: #ifdef __ICCARM__ #define CLAIM_SYNTAX_UNIFIED �\n� #else #define CLAIM_SYNTAX_UNIFIED ".syntax unified \n" #endif Another question is about the: #if defined(__ICCARM__) #pragma required = do_schedule #endif If we claim do_schedule in the constraints, is the above �#pragma required� still needed? __asm (��. :: �i�(do_schedule)); We can create a patch to test this � using a constraint looks more proper. Thanks. /Ken
--
*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.comWebsite: www.iar.com http://www.iar.com Twitter: www.twitter.com/iarsystems http://www.twitter.com/iarsystems