diff mbox series

riscv: Move UNSPEC_XTHEAD* from unspecv to unspec

Message ID 20240130092901.2700245-1-christoph.muellner@vrull.eu
State New
Headers show
Series riscv: Move UNSPEC_XTHEAD* from unspecv to unspec | expand

Commit Message

Christoph Müllner Jan. 30, 2024, 9:29 a.m. UTC
The UNSPEC_XTHEAD* macros ended up in the unspecv enum,
which broke gcc/testsuite/gcc.target/riscv/xtheadfmv-fmv.c.
The INSNs expect these unspecs to be not volatile.
Further, there is not reason to have them defined volatile.
So let's simply move the macros into the unspec enum.

With this patch we have again 0 fails in riscv.exp.

gcc/ChangeLog:

	* config/riscv/riscv.md: Move UNSPEC_XTHEADFMV* to unspec enum.

Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
---
 gcc/config/riscv/riscv.md | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

Comments

Kito Cheng Jan. 30, 2024, 9:53 a.m. UTC | #1
Yeah, that should be put in unspec rather than unspecv, LGTM :)

On Tue, Jan 30, 2024 at 5:29 PM Christoph Müllner
<christoph.muellner@vrull.eu> wrote:
>
> The UNSPEC_XTHEAD* macros ended up in the unspecv enum,
> which broke gcc/testsuite/gcc.target/riscv/xtheadfmv-fmv.c.
> The INSNs expect these unspecs to be not volatile.
> Further, there is not reason to have them defined volatile.
> So let's simply move the macros into the unspec enum.
>
> With this patch we have again 0 fails in riscv.exp.
>
> gcc/ChangeLog:
>
>         * config/riscv/riscv.md: Move UNSPEC_XTHEADFMV* to unspec enum.
>
> Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
> ---
>  gcc/config/riscv/riscv.md | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/gcc/config/riscv/riscv.md b/gcc/config/riscv/riscv.md
> index edcaec4a786..b320ad0210e 100644
> --- a/gcc/config/riscv/riscv.md
> +++ b/gcc/config/riscv/riscv.md
> @@ -89,6 +89,10 @@ (define_c_enum "unspec" [
>
>    ;; Workaround for HFmode without hardware extension
>    UNSPEC_FMV_SFP16_X
> +
> +  ;; XTheadFmv moves
> +  UNSPEC_XTHEADFMV
> +  UNSPEC_XTHEADFMV_HW
>  ])
>
>  (define_c_enum "unspecv" [
> @@ -127,10 +131,6 @@ (define_c_enum "unspecv" [
>    ;; Zihintpause unspec
>    UNSPECV_PAUSE
>
> -  ;; XTheadFmv unspec
> -  UNSPEC_XTHEADFMV
> -  UNSPEC_XTHEADFMV_HW
> -
>    ;; XTheadInt unspec
>    UNSPECV_XTHEADINT_PUSH
>    UNSPECV_XTHEADINT_POP
> --
> 2.43.0
>
diff mbox series

Patch

diff --git a/gcc/config/riscv/riscv.md b/gcc/config/riscv/riscv.md
index edcaec4a786..b320ad0210e 100644
--- a/gcc/config/riscv/riscv.md
+++ b/gcc/config/riscv/riscv.md
@@ -89,6 +89,10 @@  (define_c_enum "unspec" [
 
   ;; Workaround for HFmode without hardware extension
   UNSPEC_FMV_SFP16_X
+
+  ;; XTheadFmv moves
+  UNSPEC_XTHEADFMV
+  UNSPEC_XTHEADFMV_HW
 ])
 
 (define_c_enum "unspecv" [
@@ -127,10 +131,6 @@  (define_c_enum "unspecv" [
   ;; Zihintpause unspec
   UNSPECV_PAUSE
 
-  ;; XTheadFmv unspec
-  UNSPEC_XTHEADFMV
-  UNSPEC_XTHEADFMV_HW
-
   ;; XTheadInt unspec
   UNSPECV_XTHEADINT_PUSH
   UNSPECV_XTHEADINT_POP