[i386] : Fix PR93254, -msse generates sse2 instructions

Message ID CAFULd4bxhZeZiZXaZ9bgHTgwk=os6KHcOV=bmoNSW_tqB+CQMw@mail.gmail.com
State New
Headers show
Series
  • [i386] : Fix PR93254, -msse generates sse2 instructions
Related show

Commit Message

Uros Bizjak Jan. 14, 2020, 6:35 p.m.
2020-01-14  Uroš Bizjak  <ubizjak@gmail.com>

    PR target/93254
    * config/i386/i386.md (*movsf_internal): Require SSE2 ISA for
    alternatives 9 and 10.

Patch was bootstrapped and regression tested on x86_64-linux-gnu {,-m32}.

Committed to mainline, will be backported to gcc-9 branch.

Uros.

Comments

Uros Bizjak Jan. 15, 2020, 3:33 p.m. | #1
Also, we can remove existing SSE2 ISA requirements for alternatives 14 and 15.

Remove invalid SSE2 ISA requirements in *movsf_internal.

2020-01-15  Uroš Bizjak  <ubizjak@gmail.com>

    * config/i386/i386.md (*movsf_internal): Do not require
    SSE2 ISA for alternatives 14 and 15.

Patch was bootstrapped and regression tested on x86_64-linux-gnu {,-m32}.

Committed to mainline, will be backported to gcc-9 branch.

Uros.
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index a5133c6d765..6d70af211e0 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2020-01-15  Uroš Bizjak  <ubizjak@gmail.com>
+
+	* config/i386/i386.md (*movsf_internal): Do not require
+	SSE2 ISA for alternatives 14 and 15.
+
 2020-01-14  Uroš Bizjak  <ubizjak@gmail.com>
 
 	PR target/93254
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index f08410a471e..c9d2f338fe9 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -3696,7 +3696,7 @@
     }
 }
   [(set (attr "isa")
-     (cond [(eq_attr "alternative" "9,10,14,15")
+     (cond [(eq_attr "alternative" "9,10")
 	      (const_string "sse2")
 	   ]
 	   (const_string "*")))

Patch

diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index 03441109f48..f08410a471e 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -3696,7 +3696,7 @@ 
     }
 }
   [(set (attr "isa")
-     (cond [(eq_attr "alternative" "14,15")
+     (cond [(eq_attr "alternative" "9,10,14,15")
              (const_string "sse2")
           ]
           (const_string "*")))