[PATCH v4 1/1] RISC-V: Add SpacemiT vendor extensions xsmtvdot

Andreas Schwab schwab@suse.de
Thu Apr 16 08:49:40 GMT 2026


On Apr 10 2026, Mark Zhuang wrote:

> +		    case 'w':
> +		      /* Xpw&S ... bits in S indicates whether
> +			 corresponding item is permitted.  */
> +		      if (*++oparg != '&')
> +			goto unknown_riscv_ip_operand;
> +		      size_t n = strtol (oparg + 1, (char **)&oparg, 16);
> +		      oparg--;
> +		      /* Optional operand: if not present, default to i8.  */
> +		      if (*asarg == '\0')
> +			regno = 3;
> +		      else if (*asarg == ',')
> +			{
> +			  asarg++;
> +			  if (strncmp (asarg, "i2", 2) == 0)
> +			    {
> +			      regno = 0;
> +			      asarg += 2;
> +			    }
> +			  else if (strncmp (asarg, "i16", 3) == 0)
> +			    {
> +			      regno = 1;
> +			      asarg += 3;
> +			    }
> +			  else if (strncmp (asarg, "i4", 2) == 0)
> +			    {
> +			      regno = 2;
> +			      asarg += 2;
> +			    }
> +			  else if (strncmp (asarg, "i8", 2) == 0)
> +			    {
> +			      regno = 3;
> +			      asarg += 2;
> +			    }
> +			  else
> +			    break;

That does not appear to diagnose an invalid operand.

-- 
Andreas Schwab, SUSE Labs, schwab@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE  1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."


More information about the Binutils mailing list