Skip to content

Commit 12b7220

Browse files
aarch64: Add +cpa feature flag
This doesn't enable anything within the compiler, but this allows the flag to be passed the assembler. There also doesn't appear to be a kernel cpuinfo name yet. gcc/ChangeLog: * config/aarch64/aarch64-arches.def (V9_5A): Add CPA. * config/aarch64/aarch64-option-extensions.def (CPA): New. * doc/invoke.texi: Document +cpa.
1 parent 25464e7 commit 12b7220

File tree

3 files changed

+6
-2
lines changed

3 files changed

+6
-2
lines changed

gcc/config/aarch64/aarch64-arches.def

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,6 @@ AARCH64_ARCH("armv9.1-a", generic_armv9_a, V9_1A, 9, (V8_6A, V9A))
4646
AARCH64_ARCH("armv9.2-a", generic_armv9_a, V9_2A, 9, (V8_7A, V9_1A))
4747
AARCH64_ARCH("armv9.3-a", generic_armv9_a, V9_3A, 9, (V8_8A, V9_2A))
4848
AARCH64_ARCH("armv9.4-a", generic_armv9_a, V9_4A, 9, (V8_9A, V9_3A))
49-
AARCH64_ARCH("armv9.5-a", generic_armv9_a, V9_5A, 9, (V9_4A, FAMINMAX, LUT))
49+
AARCH64_ARCH("armv9.5-a", generic_armv9_a, V9_5A, 9, (V9_4A, CPA, FAMINMAX, LUT))
5050

5151
#undef AARCH64_ARCH

gcc/config/aarch64/aarch64-option-extensions.def

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -275,6 +275,8 @@ AARCH64_OPT_EXTENSION("ssve-fp8dot2", SSVE_FP8DOT2, (SSVE_FP8DOT4), (), (), "sme
275275

276276
AARCH64_OPT_EXTENSION("lut", LUT, (SIMD), (), (), "lut")
277277

278+
AARCH64_OPT_EXTENSION("cpa", CPA, (), (), (), "")
279+
278280
#undef AARCH64_OPT_FMV_EXTENSION
279281
#undef AARCH64_OPT_EXTENSION
280282
#undef AARCH64_FMV_FEATURE

gcc/doc/invoke.texi

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21672,7 +21672,7 @@ and the features that they enable by default:
2167221672
@item @samp{armv9.2-a} @tab Armv9.2-A @tab @samp{armv9.1-a}, @samp{+wfxt}, @samp{+xs}
2167321673
@item @samp{armv9.3-a} @tab Armv9.3-A @tab @samp{armv9.2-a}, @samp{+mops}
2167421674
@item @samp{armv9.4-a} @tab Armv9.4-A @tab @samp{armv9.3-a}
21675-
@item @samp{armv9.5-a} @tab Armv9.4-A @tab @samp{armv9.4-a}, @samp{+faminmax}, @samp{+lut}
21675+
@item @samp{armv9.5-a} @tab Armv9.4-A @tab @samp{armv9.4-a}, @samp{cpa}, @samp{+faminmax}, @samp{+lut}
2167621676
@item @samp{armv8-r} @tab Armv8-R @tab @samp{armv8-r}
2167721677
@end multitable
2167821678

@@ -22085,6 +22085,8 @@ extension in streaming mode.
2208522085
Enable the Floating Point Absolute Maximum/Minimum extension.
2208622086
@item lut
2208722087
Enable the Lookup Table extension.
22088+
@item cpa
22089+
Enable the Checked Pointer Arithmetic instructions.
2208822090
@item sve-b16b16
2208922091
Enable the SVE non-widening brain floating-point (@code{bf16}) extension.
2209022092
This only has an effect when @code{sve2} or @code{sme2} are also enabled.

0 commit comments

Comments
 (0)