On 26/12/15 01:39, Thomas Preud'homme wrote: > [Sending on behalf of Andre Vieira] > > Hello, > > This patch series aims at implementing an alpha status support for ARMv8-M's > Security Extensions. It is only posted as RFC at this stage. You can find the > specification of ARMV8-M Security Extensions in: ARM®v8-M Security > Extensions: Requirements on Development Tools > (http://infocenter.arm.com/help/topic/com.arm.doc.ecm0359818/index.html). > > We currently: > - do not support passing arguments or returning on the stack for > cmse_nonsecure_{call,entry} functions, > - do not guarantee padding bits are cleared for arguments or return variables > of cmse_nonsecure_{call,entry} functions, > - only test Security Extensions for -mfpu=fpv5-d16 and fpv5-sp-d16 and only > support single and double precision FPU's with d16. > > > Andre Vieira (8): > Add support for ARMv8-M's Security Extensions flag and intrinsics > Add RTL patterns for thumb1 push/pop > Handling ARMv8-M Security Extension's cmse_nonsecure_entry attribute > ARMv8-M Security Extension's cmse_nonsecure_entry: __acle_se label and bxns > return > ARMv8-M Security Extension's cmse_nonsecure_entry: clear registers > Handling ARMv8-M Security Extension's cmse_nonsecure_call attribute > ARMv8-M Security Extension's cmse_nonsecure_call: use > __gnu_cmse_nonsecure_call > Added support for ARMV8-M Security Extension cmse_nonsecure_caller intrinsic > > > Cheers, > > Andre >
Hi there, with the second version of the patch to clear registers when returning from cmse_nonsecure_entry functions we guarantee that padding bits are cleared when returning from a cmse_nonsecure_entry function. However, we still do not guarantee this happens for when passing compound types as arguments to cmse_nonsecure_call's. Furthermore patch 2/8 has been dropped since it was no longer relevant. Andre Vieira (8): Add support for ARMv8-M's Security Extensions flag and intrinsics Add RTL patterns for thumb1 push/pop (DROPPED) Handling ARMv8-M Security Extension's cmse_nonsecure_entry attribute ARMv8-M Security Extension's cmse_nonsecure_entry: __acle_se label and bxns return ARMv8-M Security Extension's cmse_nonsecure_entry: clear registers Handling ARMv8-M Security Extension's cmse_nonsecure_call attribute ARMv8-M Security Extension's cmse_nonsecure_call: use __gnu_cmse_nonsecure_call Added support for ARMV8-M Security Extension cmse_nonsecure_caller intrinsic Cheers, Andre