Arm semihosting v2 implementation isn't complete

Richard Earnshaw (lists) Richard.Earnshaw@arm.com
Tue Dec 18 18:09:00 GMT 2018


On 18/12/2018 16:54, Tamar Christina wrote:
> Hi Alexander,
> 
>  #ifdef THUMB_VXM
>    #define AngelSWIInsn			"bkpt"
>    #define AngelSWIAsm			bkpt
> +#elif defined (SEMIHOST_V2) && (__ARM_ARCH == 8)
> 
> You'll want to use the same condition as the reason number setting code above,
> 
> #if defined (SEMIHOST_V2) && defined (SEMIHOST_V2_MIXED_MODE)
> 
> As we only want to use hlt in the mixed mode and not always.
> The Armv8 check isn't needed due to the note in the specification
> "Note: This requirement includes supporting the HLT encodings on ARMv7 and earlier processors, even though HLT
> is only defined as an instruction in ARMv8."
> 
> So we just generate all the multilibs and leave it up to the implementations to support it or not.
> 
> Thanks,
> Tamar
> 
> +  #define AngelSWIInsn			"hlt"
> +  #define AngelSWIAsm			hlt
>  #else
>    #define AngelSWIInsn			"swi"
>    #define AngelSWIAsm			swi
> 

Any patch to libgloss here needs to be similarly applied to the code in
newlib/libc/sys/arm

R.



More information about the Newlib mailing list