[PATCH 8/8] RISC-V: Fix the order checking for Z* extension.

Nelson Chu nelson.chu@sifive.com
Fri Nov 27 02:33:10 GMT 2020


We have to check the first char of the Z* extensions, to make sure that
they follow the order of the standard extensions.  But we can not have
the testcases for this patch, since we only support the zicsr and zifencei
so far, both of them are the sub extensions of i.

	bfd/
	* elfxx-riscv.c (riscv_parse_prefixed_ext): Use riscv_compare_subsets
	to check the Z* extensions' order.
---
 bfd/elfxx-riscv.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/bfd/elfxx-riscv.c b/bfd/elfxx-riscv.c
index ec883e4..293ac83 100644
--- a/bfd/elfxx-riscv.c
+++ b/bfd/elfxx-riscv.c
@@ -1543,8 +1543,7 @@ riscv_parse_prefixed_ext (riscv_parse_subset_t *rps,
 	}
 
       /* Check that the extension is in alphabetical order.  */
-      if (!strncasecmp (last_name, config->prefix, 1)
-	  && strcasecmp (last_name, subset) > 0)
+      if (riscv_compare_subsets (last_name, subset) > 0)
 	{
 	  rps->error_handler
 	    (_("-march=%s: %s ISA extension `%s' is not in alphabetical "
-- 
2.7.4



More information about the Binutils mailing list