diff mbox series

[i386] APX EGPR: fix missing pattern that prohibits egpr

Message ID 20231009020303.929293-1-hongyu.wang@intel.com
State New
Headers show
Series [i386] APX EGPR: fix missing pattern that prohibits egpr | expand

Commit Message

Hongyu Wang Oct. 9, 2023, 2:03 a.m. UTC
For vec_concatv2di, m constraint in alternative 0 and 1 could result in
egpr allocated on operand 2 under -mapxf. Should use jm instead.

Bootstrapped/regtested on x86-64-linux-gnu.

Ok for trunk?

gcc/ChangeLog:

	* config/i386/sse.md (vec_concatv2di): Replace constraint "m"
	with "jm" for alternative 0 and 1 of operand 2.
---
 gcc/config/i386/sse.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Hongtao Liu Oct. 9, 2023, 2:22 a.m. UTC | #1
On Mon, Oct 9, 2023 at 10:05 AM Hongyu Wang <hongyu.wang@intel.com> wrote:
>
> For vec_concatv2di, m constraint in alternative 0 and 1 could result in
> egpr allocated on operand 2 under -mapxf. Should use jm instead.
>
> Bootstrapped/regtested on x86-64-linux-gnu.
>
> Ok for trunk?
Ok.
>
> gcc/ChangeLog:
>
>         * config/i386/sse.md (vec_concatv2di): Replace constraint "m"
>         with "jm" for alternative 0 and 1 of operand 2.
> ---
>  gcc/config/i386/sse.md | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md
> index 6bffd749c6d..58672f46365 100644
> --- a/gcc/config/i386/sse.md
> +++ b/gcc/config/i386/sse.md
> @@ -20638,7 +20638,7 @@ (define_insn "vec_concatv2di"
>           (match_operand:DI 1 "register_operand"
>           "  0, 0,x ,Yv,0,Yv,0,0,v")
>           (match_operand:DI 2 "nonimmediate_operand"
> -         " jrm,jrm,rm,rm,x,Yv,x,m,m")))]
> +         " jrjm,jrjm,rm,rm,x,Yv,x,m,m")))]
>    "TARGET_SSE"
>    "@
>     pinsrq\t{$1, %2, %0|%0, %2, 1}
> --
> 2.31.1
>
diff mbox series

Patch

diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md
index 6bffd749c6d..58672f46365 100644
--- a/gcc/config/i386/sse.md
+++ b/gcc/config/i386/sse.md
@@ -20638,7 +20638,7 @@  (define_insn "vec_concatv2di"
 	  (match_operand:DI 1 "register_operand"
 	  "  0, 0,x ,Yv,0,Yv,0,0,v")
 	  (match_operand:DI 2 "nonimmediate_operand"
-	  " jrm,jrm,rm,rm,x,Yv,x,m,m")))]
+	  " jrjm,jrjm,rm,rm,x,Yv,x,m,m")))]
   "TARGET_SSE"
   "@
    pinsrq\t{$1, %2, %0|%0, %2, 1}