Module Name: src
Committed By: snj
Date: Mon Feb 19 19:22:22 UTC 2018
Modified Files:
src/external/gpl3/gcc/dist/gcc/config/m68k [netbsd-7]: m68k.md
Log Message:
Revert to revision 1.1.1.2, as requested by mlelstv in ticket #1533:
Undo the attempt to figure out mult clobbering.
To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.3.4.1 \
src/external/gpl3/gcc/dist/gcc/config/m68k/m68k.md
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/external/gpl3/gcc/dist/gcc/config/m68k/m68k.md
diff -u src/external/gpl3/gcc/dist/gcc/config/m68k/m68k.md:1.3 src/external/gpl3/gcc/dist/gcc/config/m68k/m68k.md:1.3.4.1
--- src/external/gpl3/gcc/dist/gcc/config/m68k/m68k.md:1.3 Sat Mar 1 08:58:31 2014
+++ src/external/gpl3/gcc/dist/gcc/config/m68k/m68k.md Mon Feb 19 19:22:22 2018
@@ -3124,33 +3124,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"
- [(clobber (match_dup 0))
- (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))))])]
+ "TARGET_68020 && !TUNE_68060 && !TARGET_COLDFIRE"
"")
(define_insn ""
@@ -3181,27 +3164,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"
- [(clobber (match_dup 0))
- (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 (sign_extend:DI (match_dup 1))
(sign_extend:DI (match_dup 2)))
(const_int 32))))])]
+ "TARGET_68020 && !TUNE_68060 && !TARGET_COLDFIRE"
"")
(define_insn ""