diff options
author | Kito Cheng <kito.cheng@sifive.com> | 2020-12-11 16:51:40 +0800 |
---|---|---|
committer | Kito Cheng <kito.cheng@sifive.com> | 2021-01-08 11:14:02 +0800 |
commit | e3354b6de7a348386425879847c4f18ef1e82791 (patch) | |
tree | 684a084e45f07dad44b2eccefdf7e654a6033fea /gcc/common | |
parent | 0b7b4710111e0ac42d14ffdd1d71ff9c6751414e (diff) | |
download | gcc-e3354b6de7a348386425879847c4f18ef1e82791.zip gcc-e3354b6de7a348386425879847c4f18ef1e82791.tar.gz gcc-e3354b6de7a348386425879847c4f18ef1e82791.tar.bz2 |
RISC-V: Implement new style of architecture extension test macros.
- This patch introduce new set of architecture extension test macros
which is accept on riscv-c-api-doc recently.
- https://github.com/riscv/riscv-c-api-doc/blob/master/riscv-c-api.md#architecture-extension-test-macro
- We will also mark deprecated for legacy architecture extension test macros
in GCC 11, but still support that for 1 or 2 release cycles.
gcc/ChangeLog:
* common/config/riscv/riscv-common.c (riscv_current_subset_list): New.
* config/riscv/riscv-c.c (riscv-subset.h): New.
(INCLUDE_STRING): Define.
(riscv_cpu_cpp_builtins): Add new style architecture extension
test macros.
* config/riscv/riscv-subset.h (riscv_subset_list::begin): New.
(riscv_subset_list::end): New.
(riscv_current_subset_list): New.
gcc/testsuite/ChangeLog:
* gcc.target/riscv/predef-10.c: New.
* gcc.target/riscv/predef-11.c: New.
* gcc.target/riscv/predef-12.c: New.
* gcc.target/riscv/predef-13.c: New.
Diffstat (limited to 'gcc/common')
-rw-r--r-- | gcc/common/config/riscv/riscv-common.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/common/config/riscv/riscv-common.c b/gcc/common/config/riscv/riscv-common.c index 934c716..b3f5c07 100644 --- a/gcc/common/config/riscv/riscv-common.c +++ b/gcc/common/config/riscv/riscv-common.c @@ -112,6 +112,11 @@ static const char *riscv_supported_std_ext (void); static riscv_subset_list *current_subset_list = NULL; +const riscv_subset_list *riscv_current_subset_list () +{ + return current_subset_list; +} + riscv_subset_t::riscv_subset_t () : name (), major_version (0), minor_version (0), next (NULL), explicit_version_p (false), implied_p (false) |