gcc/ChangeLog:
PR target/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 <[email protected]>
---
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 b19d56149e7..b005af62e61 100644
--- a/gcc/config/riscv/riscv.cc
+++ b/gcc/config/riscv/riscv.cc
@@ -9823,6 +9823,13 @@ riscv_option_override (void)
error ("ILP32E ABI does not support the %qc extension",
UNITS_PER_FP_REG > 8 ? 'Q' : 'D');
+ 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.43.2