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 <[email protected]>
---
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