gcc/ChangeLog:

        PR 116152
        * config/riscv/riscv.cc (riscv_option_override): Add deprecation
        warning.

gcc/testsuite/ChangeLog:

        * gcc.target/riscv/predef-9.c: Add check for warning.

Signed-off-by: Patrick O'Neill <patr...@rivosinc.com>
---
v2 ChangeLog:
Shorten message and split into warning and note.
---
 gcc/config/riscv/riscv.cc                 | 7 +++++++
 gcc/testsuite/gcc.target/riscv/predef-9.c | 2 ++
 2 files changed, 9 insertions(+)

diff --git a/gcc/config/riscv/riscv.cc b/gcc/config/riscv/riscv.cc
index 8ece7859945..b0526529980 100644
--- a/gcc/config/riscv/riscv.cc
+++ b/gcc/config/riscv/riscv.cc
@@ -9818,6 +9818,13 @@ riscv_option_override (void)
        error ("rv64e requires lp64e ABI");
     }

+  if (riscv_abi == ABI_LP64E)
+    {
+      if (warning (OPT_Wdeprecated, "LP64E ABI is marked for deprecation in 
GCC"))
+       inform (UNKNOWN_LOCATION, "If you need LP64E please notify the GCC "
+               "project via https://gcc.gnu.org/PR116152";);
+    }
+
   /* Zfinx require abi ilp32, ilp32e, lp64 or lp64e.  */
   if (TARGET_ZFINX
       && riscv_abi != ABI_ILP32 && riscv_abi != ABI_LP64
diff --git a/gcc/testsuite/gcc.target/riscv/predef-9.c 
b/gcc/testsuite/gcc.target/riscv/predef-9.c
index cc3abc9a741..0d9488529ea 100644
--- a/gcc/testsuite/gcc.target/riscv/predef-9.c
+++ b/gcc/testsuite/gcc.target/riscv/predef-9.c
@@ -1,5 +1,7 @@
 /* { dg-do compile } */
 /* { dg-options "-march=rv64em -mabi=lp64e -mno-div -mcmodel=medlow" } */
+/* { dg-warning "LP64E ABI is marked for deprecation in GCC" "" { target *-*-* 
} 0 } */
+/* { dg-note "If you need LP64E please notify the GCC project via 
https://gcc.gnu.org/PR116152"; "" { target *-*-* } 0 } */

 int main () {
 #if !defined(__riscv)
--
2.34.1

Reply via email to