Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/external/gpl3/gcc/dist/gcc/config/m68k undo the attempt to f...



details:   https://anonhg.NetBSD.org/src/rev/4bacbb9595c1
branches:  trunk
changeset: 347802:4bacbb9595c1
user:      christos <christos%NetBSD.org@localhost>
date:      Sat Sep 17 00:55:40 2016 +0000

description:
undo the attempt to figure out mult clobbering; breaks compilation; revert
to the fsf version

diffstat:

 external/gpl3/gcc/dist/gcc/config/m68k/m68k.md |  52 +++++--------------------
 1 files changed, 11 insertions(+), 41 deletions(-)

diffs (77 lines):

diff -r 1d63bcccff6a -r 4bacbb9595c1 external/gpl3/gcc/dist/gcc/config/m68k/m68k.md
--- a/external/gpl3/gcc/dist/gcc/config/m68k/m68k.md    Fri Sep 16 23:20:31 2016 +0000
+++ b/external/gpl3/gcc/dist/gcc/config/m68k/m68k.md    Sat Sep 17 00:55:40 2016 +0000
@@ -3135,34 +3135,16 @@
 ;; We need a separate DEFINE_EXPAND for u?mulsidi3 to be able to use the
 ;; proper matching constraint.  This is because the matching is between
 ;; the high-numbered word of the DImode operand[0] and operand[1].
-;;
-;; Note: life_analysis() does not keep track of the individual halves of the
-;; DImode register.  To prevent spurious liveness before the u?mulsidi3 insn
-;; (which causes "uninitialized variable" warnings), we explicitly clobber
-;; the DImode register.
 (define_expand "umulsidi3"
-  [(set (match_operand:DI 0 "register_operand" "")
-       (mult:DI (zero_extend:DI (match_operand:SI 1 "register_operand" ""))
-                (zero_extend:DI (match_operand:SI 2 "register_operand" ""))))]
-  "TARGET_68020 && !TUNE_68060 && !TARGET_COLDFIRE"
-  "")
-
-(define_insn_and_split "*umulsidi3_split"
-  [(set (match_operand:DI 0 "register_operand" "")
-       (mult:DI (zero_extend:DI (match_operand:SI 1 "register_operand" ""))
-                (zero_extend:DI (match_operand:SI 2 "register_operand" ""))))]
-  "TARGET_68020 && !TUNE_68060 && !TARGET_COLDFIRE"
-  "#"
-  "TARGET_68020 && !TUNE_68060 && !TARGET_COLDFIRE"
-  [
-   (parallel
-    [(set (subreg:SI (match_dup 0) 4)
-         (mult:SI (match_dup 1) (match_dup 2)))
+  [(parallel
+    [(set (subreg:SI (match_operand:DI 0 "register_operand" "") 4)
+         (mult:SI (match_operand:SI 1 "register_operand" "")
+                  (match_operand:SI 2 "register_operand" "")))
      (set (subreg:SI (match_dup 0) 0)
          (truncate:SI (lshiftrt:DI (mult:DI (zero_extend:DI (match_dup 1))
                                             (zero_extend:DI (match_dup 2)))
-                                   (const_int 32))))])
-   (clobber (match_dup 0))]
+                                   (const_int 32))))])]
+  "TARGET_68020 && !TUNE_68060 && !TARGET_COLDFIRE"
   "")
 
 (define_insn ""
@@ -3193,27 +3175,15 @@
   "mulu%.l %2,%3:%0")
 
 (define_expand "mulsidi3"
-  [(set (match_operand:DI 0 "register_operand" "")
-       (mult:DI (sign_extend:DI (match_operand:SI 1 "register_operand" ""))
-                (sign_extend:DI (match_operand:SI 2 "register_operand" ""))))]
-  "TARGET_68020 && !TUNE_68060 && !TARGET_COLDFIRE"
-  "")
-
-(define_insn_and_split "*mulsidi3_split"
-  [(set (match_operand:DI 0 "register_operand" "")
-       (mult:DI (sign_extend:DI (match_operand:SI 1 "register_operand" ""))
-                (sign_extend:DI (match_operand:SI 2 "register_operand" ""))))]
-  "TARGET_68020 && !TUNE_68060 && !TARGET_COLDFIRE"
-  "#"
-  "TARGET_68020 && !TUNE_68060 && !TARGET_COLDFIRE"
   [(parallel
-    [(set (subreg:SI (match_dup 0) 4)
-         (mult:SI (match_dup 1) (match_dup 2)))
+    [(set (subreg:SI (match_operand:DI 0 "register_operand" "") 4)
+         (mult:SI (match_operand:SI 1 "register_operand" "")
+                  (match_operand:SI 2 "register_operand" "")))
      (set (subreg:SI (match_dup 0) 0)
          (truncate:SI (lshiftrt:DI (mult:DI (sign_extend:DI (match_dup 1))
                                             (sign_extend:DI (match_dup 2)))
-                                   (const_int 32))))])
-   (clobber (match_dup 0))]
+                                   (const_int 32))))])]
+  "TARGET_68020 && !TUNE_68060 && !TARGET_COLDFIRE"
   "")
 
 (define_insn ""



Home | Main Index | Thread Index | Old Index