diff options
author | Tsukasa OI <research_trasio@irq.a4lg.com> | 2023-07-24 05:09:39 +0000 |
---|---|---|
committer | Tsukasa OI <research_trasio@irq.a4lg.com> | 2023-07-24 23:42:35 +0000 |
commit | 6e30678feb8ab38ad80a589226c5d0e9c9dc399e (patch) | |
tree | 2575ed38bd4d8980dc63bb69338ced81f57ecb02 | |
parent | 766f6d170c56d1d7b03e81f64d069386d0a7c5dd (diff) | |
download | binutils-6e30678feb8ab38ad80a589226c5d0e9c9dc399e.zip binutils-6e30678feb8ab38ad80a589226c5d0e9c9dc399e.tar.gz binutils-6e30678feb8ab38ad80a589226c5d0e9c9dc399e.tar.bz2 |
RISC-V: Implications from 'Zc[fd]' extensions
The version 1.0.4-1 of the code size reduction specification clarifies
that 'Zcf' implies 'F' and 'Zcd' implies 'D'.
cf:
<https://github.com/riscv/riscv-code-size-reduction/releases/tag/v1.0.4-1>
This commit adds those implications.
bfd/ChangeLog:
* elfxx-riscv.c (riscv_implicit_subsets): Add two implications,
'Zcf' -> 'F' and 'Zcd' -> 'D'.
gas/ChangeLog:
* testsuite/gas/riscv/march-imply-zcd.d: New test.
* testsuite/gas/riscv/march-imply-zcf.d: New test.
-rw-r--r-- | bfd/elfxx-riscv.c | 2 | ||||
-rw-r--r-- | gas/testsuite/gas/riscv/march-imply-zcd.d | 6 | ||||
-rw-r--r-- | gas/testsuite/gas/riscv/march-imply-zcf.d | 6 |
3 files changed, 14 insertions, 0 deletions
diff --git a/bfd/elfxx-riscv.c b/bfd/elfxx-riscv.c index eaf4966..b43d2cf 100644 --- a/bfd/elfxx-riscv.c +++ b/bfd/elfxx-riscv.c @@ -1132,6 +1132,8 @@ static struct riscv_implicit_subset riscv_implicit_subsets[] = {"zvl256b", "zvl128b", check_implicit_always}, {"zvl128b", "zvl64b", check_implicit_always}, {"zvl64b", "zvl32b", check_implicit_always}, + {"zcd", "d", check_implicit_always}, + {"zcf", "f", check_implicit_always}, {"zfa", "f", check_implicit_always}, {"d", "f", check_implicit_always}, {"zfh", "zfhmin", check_implicit_always}, diff --git a/gas/testsuite/gas/riscv/march-imply-zcd.d b/gas/testsuite/gas/riscv/march-imply-zcd.d new file mode 100644 index 0000000..e7c75f6 --- /dev/null +++ b/gas/testsuite/gas/riscv/march-imply-zcd.d @@ -0,0 +1,6 @@ +#as: -march=rv32i_zcd -march-attr -misa-spec=20191213 +#readelf: -A +#source: empty.s +Attribute Section: riscv +File Attributes + Tag_RISCV_arch: "rv32i2p1_f2p2_d2p2_zicsr2p0_zca1p0_zcd1p0" diff --git a/gas/testsuite/gas/riscv/march-imply-zcf.d b/gas/testsuite/gas/riscv/march-imply-zcf.d new file mode 100644 index 0000000..3829637 --- /dev/null +++ b/gas/testsuite/gas/riscv/march-imply-zcf.d @@ -0,0 +1,6 @@ +#as: -march=rv32i_zcf -march-attr -misa-spec=20191213 +#readelf: -A +#source: empty.s +Attribute Section: riscv +File Attributes + Tag_RISCV_arch: "rv32i2p1_f2p2_zicsr2p0_zca1p0_zcf1p0" |