[PATCH][Newlib][AArch32] Add support for HLT to Mixed Mode models

Corinna Vinschen vinschen@redhat.com
Thu Feb 7 18:26:00 GMT 2019

On Feb  7 16:05, Tamar Christina wrote:
> Hi All,
> The Semihosting v2 protocol requires us to output the Armv8-a HLT instruction
> when in mixed mode (SEMIHOST_V2_MIXED_MODE), however it also requires this to
> be done for Armv7-a and earlier architectures.
> The HLT instruction is defined in the undefined encoding space for older
> architectures but simulators such as QEMU already trap on it [1] for all
> architectures and is a requirement for semihosting v2 [2]
> Unfortunately the GAS restricts the use of HLT to Armv8-a which requires us to
> use the instruction encodings we want directly in crt0.
> This patch does this, I have not updated newlib/libc/* as that is quite out of
> date already.  A proper sync is needed in order to get things back in sync.
> A different patch for this would be best.
> [1] https://github.com/qemu/qemu/commit/19a6e31c9d2701ef648b70ddcfc3bf64cec8c37e
> [2] https://developer.arm.com/docs/100863/latest/the-semihosting-interface
> Regtested on arm-none-eabi and no issues.
> Ok for trunk?

Sorry, no.

> Thanks,
> Tamar
> libgloss/ChangeLog:
> 2019-02-07  Tamar Christina  <tamar.christina@arm.com>
> 	PR libgloss/24070
> 	* arm/crt0.S: Convert macros to function Macros.
> 	* arm/swi.h (AngelSWI_ARM, AngelSWI): Use raw insn encoding for
> 	(AngelSWIAsm): Make function.
> 	(AngelSWIInsn, AngelSWIAsm): Use .inst directive as instruction.

Did you have a look into libgloss/ChangeLog lately?  We're using git for
three years now.  Please provide patches in git format-patch format and
provide a normal git log entry explaining what the patch does and why.
We don't do CVS ChangeLogs anymore.


Corinna Vinschen
Cygwin Maintainer
Red Hat
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/newlib/attachments/20190207/7ade5e73/attachment.sig>

More information about the Newlib mailing list