[Ada] Use atomics in runtime on ARM and Aarch64 VxWorks

Pierre-Marie de Rodat derodat@adacore.com
Tue Nov 9 09:46:10 GMT 2021


For ARM and Aarch64 architectures we use runtime units that rely on
atomic builtins instructions on all OSes except VxWorks (e.g. QNX,
Linux, FreeBSD). This looks like an oversight, because the builtins
depend on the architecture, not on the OS.

Part of improving efficiency of the Ada.Strings.Unbounded unit by using
non-null types to avoid runtime checks.

Tested on x86_64-pc-linux-gnu, committed on trunk

gcc/ada/

	* Makefile.rtl (ARM and Aarch64 VxWorks): Use atomic variants of
	runtime units.
	* libgnat/a-strunb__shared.ads: Mention AARCH64 and ARM as
	supported.
	* libgnat/s-atocou.ads: Likewise.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch.diff
Type: text/x-diff
Size: 1470 bytes
Desc: not available
URL: <https://gcc.gnu.org/pipermail/gcc-patches/attachments/20211109/f54c8978/attachment.bin>


More information about the Gcc-patches mailing list