From 3f15527337a273242dd1a6314d5c2d6e69cf1afe Mon Sep 17 00:00:00 2001 From: Tejas Belagod Date: Wed, 12 Nov 2014 08:42:41 +0000 Subject: [PATCH] [AArch64] Add reference to ACLE and consolidate documentation. 2014-11-12 Tejas Belagod * Makefile.in (TEXI_GCC_FILES): Remove arm-acle-intrinsics.texi, arm-neon-intrinsics.texi, aarch64-acle-intrinsics.texi. * doc/aarch64-acle-intrinsics.texi: Remove. * doc/arm-acle-intrinsics.texi: Remove. * doc/arm-neon-intrinsics.texi: Remove. * doc/extend.texi: Consolidate sections AArch64 intrinsics, ARM NEON Intrinsics, ARM ACLE Intrinsics into one ARM C Language Extension section. Add references to public ACLE specification. From-SVN: r217405 --- gcc/ChangeLog | 11 +++++++++++ gcc/Makefile.in | 4 +--- gcc/doc/extend.texi | 36 ++++++++++++++++++++---------------- 3 files changed, 32 insertions(+), 19 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6c6a32541b6..77bd3ee4c96 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,14 @@ +2014-11-12 Tejas Belagod + + * Makefile.in (TEXI_GCC_FILES): Remove arm-acle-intrinsics.texi, + arm-neon-intrinsics.texi, aarch64-acle-intrinsics.texi. + * doc/aarch64-acle-intrinsics.texi: Remove. + * doc/arm-acle-intrinsics.texi: Remove. + * doc/arm-neon-intrinsics.texi: Remove. + * doc/extend.texi: Consolidate sections AArch64 intrinsics, + ARM NEON Intrinsics, ARM ACLE Intrinsics into one ARM C Language + Extension section. Add references to public ACLE specification. + 2014-11-11 Patrick Palka * tree-vrp.c (register_edge_assert_for_2): Change return type to diff --git a/gcc/Makefile.in b/gcc/Makefile.in index 0ab3476d517..6f98ca118db 100644 --- a/gcc/Makefile.in +++ b/gcc/Makefile.in @@ -2874,9 +2874,7 @@ TEXI_GCC_FILES = gcc.texi gcc-common.texi gcc-vers.texi frontends.texi \ gcov.texi trouble.texi bugreport.texi service.texi \ contribute.texi compat.texi funding.texi gnu.texi gpl_v3.texi \ fdl.texi contrib.texi cppenv.texi cppopts.texi avr-mmcu.texi \ - implement-c.texi implement-cxx.texi arm-neon-intrinsics.texi \ - arm-acle-intrinsics.texi aarch64-acle-intrinsics.texi \ - gcov-tool.texi + implement-c.texi implement-cxx.texi gcov-tool.texi # we explicitly use $(srcdir)/doc/tm.texi here to avoid confusion with # the generated tm.texi; the latter might have a more recent timestamp, diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi index cba38847e67..36127b56ace 100644 --- a/gcc/doc/extend.texi +++ b/gcc/doc/extend.texi @@ -9986,14 +9986,12 @@ instructions, but allow the compiler to schedule those calls. @menu * AArch64 Built-in Functions:: -* AArch64 intrinsics:: * Alpha Built-in Functions:: * Altera Nios II Built-in Functions:: * ARC Built-in Functions:: * ARC SIMD Built-in Functions:: * ARM iWMMXt Built-in Functions:: -* ARM NEON Intrinsics:: -* ARM ACLE Intrinsics:: +* ARM C Language Extensions (ACLE):: * ARM Floating Point Status and Control Intrinsics:: * AVR Built-in Functions:: * Blackfin Built-in Functions:: @@ -10032,11 +10030,6 @@ unsigned int __builtin_aarch64_get_fpsr () void __builtin_aarch64_set_fpsr (unsigned int) @end smallexample -@node AArch64 intrinsics -@subsection ACLE Intrinsics for AArch64 - -@include aarch64-acle-intrinsics.texi - @node Alpha Built-in Functions @subsection Alpha Built-in Functions @@ -10800,18 +10793,29 @@ long long __builtin_arm_wxor (long long, long long) long long __builtin_arm_wzero () @end smallexample -@node ARM NEON Intrinsics -@subsection ARM NEON Intrinsics -These built-in intrinsics for the ARM Advanced SIMD extension are available -when the @option{-mfpu=neon} switch is used: +@node ARM C Language Extensions (ACLE) +@subsection ARM C Language Extensions (ACLE) + +GCC implements extensions for C as described in the ARM C Language +Extensions (ACLE) specification, which can be found at +@uref{http://infocenter.arm.com/help/topic/com.arm.doc.ihi0053c/IHI0053C_acle_2_0.pdf}. -@include arm-neon-intrinsics.texi +As a part of ACLE, GCC implements extensions for Advanced SIMD as described in +the ARM C Language Extensions Specification. The complete list of Advanced SIMD +intrinsics can be found at +@uref{http://infocenter.arm.com/help/topic/com.arm.doc.ihi0073a/IHI0073A_arm_neon_intrinsics_ref.pdf}. +The built-in intrinsics for the Advanced SIMD extension are available when +NEON is enabled. -@node ARM ACLE Intrinsics -@subsection ARM ACLE Intrinsics +Currently, ARM and AArch64 back-ends do not support ACLE 2.0 fully. Both +back-ends support CRC32 intrinsics from @file{arm_acle.h}. The ARM backend's +16-bit floating-point Advanded SIMD Intrinsics currently comply to ACLE v1.1. +AArch64's backend does not have support for 16-bit floating point Advanced SIMD +Intrinsics yet. -@include arm-acle-intrinsics.texi +See @ref{ARM Options} and @ref{AArch64 Options} for more information on the +availability of extensions. @node ARM Floating Point Status and Control Intrinsics @subsection ARM Floating Point Status and Control Intrinsics -- 2.30.2