PowerPC: Add future hwcap2 bits
authorMichael Meissner <meissner@linux.ibm.com>
Tue, 9 Jun 2020 20:35:43 +0000 (15:35 -0500)
committerMichael Meissner <meissner@linux.ibm.com>
Tue, 9 Jun 2020 20:35:43 +0000 (15:35 -0500)
This patch adds support for the two new HWCAP2 fields used by the
__builtin_cpu_supports function.  It adds support in the target_clones
attribute for -mcpu=future.

The two new __builtin_cpu_supports tests are:
__builtin_cpu_supports ("isa_3_1")
__builtin_cpu_supports ("mma")

The bits used are the bits that the Linux kernel engineers will be using for
these new features.

gcc/
2020-06-09  Michael Meissner  <meissner@linux.ibm.com>

* config/rs6000/ppc-auxv.h (PPC_PLATFORM_FUTURE): Allocate
'future' PowerPC platform.
(PPC_FEATURE2_ARCH_3_1): New HWCAP2 bit for ISA 3.1.
(PPC_FEATURE2_MMA): New HWCAP2 bit for MMA.
* config/rs6000/rs6000-call.c (cpu_supports_info): Add ISA 3.1 and
MMA HWCAP2 bits.
* config/rs6000/rs6000.c (CLONE_ISA_3_1): New clone support.
(rs6000_clone_map): Add 'future' system target_clones support.

testsuite/
2020-06-09  Michael Meissner  <meissner@linux.ibm.com>

* gcc.target/powerpc/clone3.c: New test for using 'future' with
the target_clones attribute.

gcc/ChangeLog
gcc/testsuite/ChangeLog

index c92582d..94a7b5f 100644 (file)
@@ -1,3 +1,14 @@
+2020-06-09  Michael Meissner  <meissner@linux.ibm.com>
+
+       * config/rs6000/ppc-auxv.h (PPC_PLATFORM_FUTURE): Allocate
+       'future' PowerPC platform.
+       (PPC_FEATURE2_ARCH_3_1): New HWCAP2 bit for ISA 3.1.
+       (PPC_FEATURE2_MMA): New HWCAP2 bit for MMA.
+       * config/rs6000/rs6000-call.c (cpu_supports_info): Add ISA 3.1 and
+       MMA HWCAP2 bits.
+       * config/rs6000/rs6000.c (CLONE_ISA_3_1): New clone support.
+       (rs6000_clone_map): Add 'future' system target_clones support.
+
 2020-06-08  Tobias Burnus  <tobias@codesourcery.com>
 
        PR lto/94848
index 4ca71a8..91b1687 100644 (file)
@@ -1,5 +1,10 @@
 2020-06-09  Michael Meissner  <meissner@linux.ibm.com>
 
+       * gcc.target/powerpc/clone3.c: New test for using 'future' with
+       the target_clones attribute.
+
+2020-06-09  Michael Meissner  <meissner@linux.ibm.com>
+
        * lib/target-supports.exp (check_effective_target_powerpc_pcrel):
        New.
        (check_effective_target_powerpc_prefixed_addr): New.