]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/doc/gccint/testsuites/directives-used-within-dejagnu-tests/features-for-dg-add-options.rst
sphinx: add missing trailing newline
[thirdparty/gcc.git] / gcc / doc / gccint / testsuites / directives-used-within-dejagnu-tests / features-for-dg-add-options.rst
CommitLineData
c63539ff
ML
1..
2 Copyright 1988-2022 Free Software Foundation, Inc.
3 This is part of the GCC manual.
4 For copying conditions, see the copyright.rst file.
5
6.. _add-options:
7
8Features for dg-add-options
9^^^^^^^^^^^^^^^^^^^^^^^^^^^
10
11The supported values of :samp:`{feature}` for directive ``dg-add-options``
12are:
13
14``arm_fp``
15 ``__ARM_FP`` definition. Only ARM targets support this feature, and only then
16 in certain modes; see the :ref:`arm_fp_ok <arm_fp_ok>`.
17
18``arm_fp_dp``
19 ``__ARM_FP`` definition with double-precision support. Only ARM
20 targets support this feature, and only then in certain modes; see the
21 :ref:`arm_fp_dp_ok <arm_fp_dp_ok>`.
22
23``arm_neon``
24 NEON support. Only ARM targets support this feature, and only then
25 in certain modes; see the :ref:`arm_neon_ok <arm_neon_ok>`.
26
27``arm_fp16``
28 VFP half-precision floating point support. This does not select the
29 FP16 format; for that, use :ref:`arm_fp16_ieee <arm_fp16_ieee>` or
30 :ref:`arm_fp16_alternative <arm_fp16_alternative>` instead. This
31 feature is only supported by ARM targets and then only in certain
32 modes; see the :ref:`arm_fp16_ok <arm_fp16_ok>`.
33
34.. _arm_fp16_ieee:
35
36``arm_fp16_ieee``
37 ARM IEEE 754-2008 format VFP half-precision floating point support.
38 This feature is only supported by ARM targets and then only in certain
39 modes; see the :ref:`arm_fp16_ok <arm_fp16_ok>`.
40
41.. _arm_fp16_alternative:
42
43``arm_fp16_alternative``
44 ARM Alternative format VFP half-precision floating point support.
45 This feature is only supported by ARM targets and then only in certain
46 modes; see the :ref:`arm_fp16_ok <arm_fp16_ok>`.
47
48``arm_neon_fp16``
49 NEON and half-precision floating point support. Only ARM targets
50 support this feature, and only then in certain modes; see
51 the :ref:`arm_neon_fp16_ok <arm_neon_fp16_ok>`.
52
53``arm_vfp3``
54 arm vfp3 floating point support; see
55 the :ref:`arm_vfp3_ok <arm_vfp3_ok>`.
56
57``arm_arch_v8a_hard``
58 Add options for ARMv8-A and the hard-float variant of the AAPCS,
59 if this is supported by the compiler; see the
60 :ref:`arm_arch_v8a_hard_ok <arm_arch_v8a_hard_ok>` effective target keyword.
61
62``arm_v8_1a_neon``
63 Add options for ARMv8.1-A with Adv.SIMD support, if this is supported
64 by the target; see the :ref:`arm_v8_1a_neon_ok <arm_v8_1a_neon_ok>`
65 effective target keyword.
66
67``arm_v8_2a_fp16_scalar``
68 Add options for ARMv8.2-A with scalar FP16 support, if this is
69 supported by the target; see the
70 :ref:`arm_v8_2a_fp16_scalar_ok <arm_v8_2a_fp16_scalar_ok>` effective
71 target keyword.
72
73``arm_v8_2a_fp16_neon``
74 Add options for ARMv8.2-A with Adv.SIMD FP16 support, if this is
75 supported by the target; see the
76 :ref:`arm_v8_2a_fp16_neon_ok <arm_v8_2a_fp16_neon_ok>` effective target
77 keyword.
78
79``arm_v8_2a_dotprod_neon``
80 Add options for ARMv8.2-A with Adv.SIMD Dot Product support, if this is
81 supported by the target; see the
82 :ref:`arm_v8_2a_dotprod_neon_ok <arm_v8_2a_dotprod_neon_ok>` effective target keyword.
83
84``arm_fp16fml_neon``
85 Add options to enable generation of the ``VFMAL`` and ``VFMSL``
86 instructions, if this is supported by the target; see the
87 :ref:`arm_fp16fml_neon_ok <arm_fp16fml_neon_ok>` effective target keyword.
88
89``arm_dsp``
90 Add options for ARM DSP intrinsics support, if this is supported by
91 the target; see the :ref:`arm_dsp_ok <arm_dsp_ok>`.
92
93``bind_pic_locally``
94 Add the target-specific flags needed to enable functions to bind
95 locally when using pic/PIC passes in the testsuite.
96
97:samp:`float{n}`
98 Add the target-specific flags needed to use the ``_Floatn`` type.
99
100:samp:`float{n}x`
101 Add the target-specific flags needed to use the ``_Floatnx`` type.
102
103``ieee``
104 Add the target-specific flags needed to enable full IEEE
105 compliance mode.
106
107``mips16_attribute``
108 ``mips16`` function attributes.
109 Only MIPS targets support this feature, and only then in certain modes.
110
111.. _stack_size_ao:
112
113``stack_size``
114 Add the flags needed to define macro STACK_SIZE and set it to the stack size
115 limit associated with the :ref:`stack_size_et <stack_size_et>`.
116
117``sqrt_insn``
118 Add the target-specific flags needed to enable hardware square root
119 instructions, if any.
120
121``tls``
3ed1b4ce 122 Add the target-specific flags needed to use thread-local storage.