aboutsummaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorCooper Qu <cooper.qu@linux.alibaba.com>2021-09-22 16:14:36 +0800
committerNelson Chu <nelson.chu@sifive.com>2021-09-28 19:39:16 +0800
commit3a6a0158ee07ba2f960ae4a898897460382dc5ec (patch)
tree36aea02fddd2e89558fb596ecb7318be4b9f0508 /bfd
parent69a61890cb94746e5a564776081c3cefa8fca408 (diff)
downloadgdb-3a6a0158ee07ba2f960ae4a898897460382dc5ec.zip
gdb-3a6a0158ee07ba2f960ae4a898897460382dc5ec.tar.gz
gdb-3a6a0158ee07ba2f960ae4a898897460382dc5ec.tar.bz2
RISC-V: Fix wrong version number when arch contains 'p'.
When specify a default version for p extension in riscv_supported_std_ext[](elfxx-riscv.c) and assembling with -march=rv32imacp, the c extension's version in attribute will become 0p0, the expectation is 2p0. TODO: Remember to add testcase when we have supported standrad p in the future. bfd/ PR gas/28372 * elfxx-riscv.c (riscv_parsing_subset_version): Break if p represent the 'p' extension. Change-Id: Ia4e0cf26f3d7d07acaee8cefd86707ecac663a59
Diffstat (limited to 'bfd')
-rw-r--r--bfd/elfxx-riscv.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/bfd/elfxx-riscv.c b/bfd/elfxx-riscv.c
index c3d019c..044cc63 100644
--- a/bfd/elfxx-riscv.c
+++ b/bfd/elfxx-riscv.c
@@ -1536,13 +1536,9 @@ riscv_parsing_subset_version (const char *p,
{
np = *(p + 1);
+ /* Might be beginning of `p` extension. */
if (!ISDIGIT (np))
- {
- /* Might be beginning of `p` extension. */
- *major_version = version;
- *minor_version = 0;
- return p;
- }
+ break;
*major_version = version;
major_p = false;