GCC with patches for OS216
Revisão | 41b504e91e5cd0fdce36b7306ce42dd592c401f2 (tree) |
---|---|
Hora | 2020-07-03 02:29:08 |
Autor | Peter Bergner <bergner@linu...> |
Commiter | Peter Bergner |
rs6000: Add support for builtin_cpu_is ("power10")
Add support for builtin_cpu_is ("power10"). Also add documentation for
the recently added "arch_3_1" and "mma" builtin_cpu_supports arguments.
2020-06-25 Peter Bergner <bergner@linux.ibm.com>
gcc/
* config/rs6000/rs6000-call.c (cpu_is_info) <power10>: New.
* doc/extend.texi (PowerPC Built-in Functions): Document power10,
arch_3_1 and mma.
gcc/testsuite/
* gcc.target/powerpc/cpu-builtin-1.c: Add tests for power10, arch_3_1
and mma.
(cherry picked from commit 67161d24f45601e43abea98f2c3d7d7a462b6eab)
@@ -105,6 +105,7 @@ static const struct | ||
105 | 105 | const char *cpu; |
106 | 106 | unsigned int cpuid; |
107 | 107 | } cpu_is_info[] = { |
108 | + { "power10", PPC_PLATFORM_POWER10 }, | |
108 | 109 | { "power9", PPC_PLATFORM_POWER9 }, |
109 | 110 | { "power8", PPC_PLATFORM_POWER8 }, |
110 | 111 | { "power7", PPC_PLATFORM_POWER7 }, |
@@ -17018,6 +17018,8 @@ issues a warning. | ||
17018 | 17018 | The following CPU names can be detected: |
17019 | 17019 | |
17020 | 17020 | @table @samp |
17021 | +@item power10 | |
17022 | +IBM POWER10 Server CPU. | |
17021 | 17023 | @item power9 |
17022 | 17024 | IBM POWER9 Server CPU. |
17023 | 17025 | @item power8 |
@@ -17094,6 +17096,8 @@ CPU supports ISA 2.06 (eg, POWER7) | ||
17094 | 17096 | CPU supports ISA 2.07 (eg, POWER8) |
17095 | 17097 | @item arch_3_00 |
17096 | 17098 | CPU supports ISA 3.0 (eg, POWER9) |
17099 | +@item arch_3_1 | |
17100 | +CPU supports ISA 3.1 (eg, POWER10) | |
17097 | 17101 | @item archpmu |
17098 | 17102 | CPU supports the set of compatible performance monitoring events. |
17099 | 17103 | @item booke |
@@ -17127,6 +17131,8 @@ CPU supports icache snooping capabilities. | ||
17127 | 17131 | CPU supports 128-bit IEEE binary floating point instructions. |
17128 | 17132 | @item isel |
17129 | 17133 | CPU supports the integer select instruction. |
17134 | +@item mma | |
17135 | +CPU supports the matrix-multiply assist instructions. | |
17130 | 17136 | @item mmu |
17131 | 17137 | CPU has a memory management unit. |
17132 | 17138 | @item notb |
@@ -24,6 +24,7 @@ use_cpu_is_builtins (unsigned int *p) | ||
24 | 24 | p[12] = __builtin_cpu_is ("ppc440"); |
25 | 25 | p[13] = __builtin_cpu_is ("ppc405"); |
26 | 26 | p[14] = __builtin_cpu_is ("ppc-cell-be"); |
27 | + p[15] = __builtin_cpu_is ("power10"); | |
27 | 28 | #else |
28 | 29 | p[0] = 0; |
29 | 30 | #endif |
@@ -74,6 +75,8 @@ use_cpu_supports_builtins (unsigned int *p) | ||
74 | 75 | p[38] = __builtin_cpu_supports ("darn"); |
75 | 76 | p[39] = __builtin_cpu_supports ("scv"); |
76 | 77 | p[40] = __builtin_cpu_supports ("htm-no-suspend"); |
78 | + p[41] = __builtin_cpu_supports ("arch_3_1"); | |
79 | + p[42] = __builtin_cpu_supports ("mma"); | |
77 | 80 | #else |
78 | 81 | p[0] = 0; |
79 | 82 | #endif |