|
|
6bc475c |
--- gcc/config/m68k/m68k.md.jj 2016-01-20 10:55:16.000000000 +0100
|
|
|
6bc475c |
+++ gcc/config/m68k/m68k.md 2016-02-22 11:14:01.789697673 +0100
|
|
|
6bc475c |
@@ -4544,7 +4544,7 @@ (define_insn "*ashldi3"
|
|
|
6bc475c |
(define_expand "ashldi3"
|
|
|
6bc475c |
[(set (match_operand:DI 0 "register_operand" "")
|
|
|
6bc475c |
(ashift:DI (match_operand:DI 1 "register_operand" "")
|
|
|
6bc475c |
- (match_operand 2 "const_int_operand" "")))]
|
|
|
6bc475c |
+ (match_operand:SI 2 "const_int_operand" "")))]
|
|
|
6bc475c |
"!TARGET_COLDFIRE"
|
|
|
6bc475c |
{
|
|
|
6bc475c |
/* ??? This is a named pattern like this is not allowed to FAIL based
|
|
|
6bc475c |
@@ -4813,7 +4813,7 @@ (define_insn "ashrdi_const"
|
|
|
6bc475c |
(define_expand "ashrdi3"
|
|
|
6bc475c |
[(set (match_operand:DI 0 "register_operand" "")
|
|
|
6bc475c |
(ashiftrt:DI (match_operand:DI 1 "register_operand" "")
|
|
|
6bc475c |
- (match_operand 2 "const_int_operand" "")))]
|
|
|
6bc475c |
+ (match_operand:SI 2 "const_int_operand" "")))]
|
|
|
6bc475c |
"!TARGET_COLDFIRE"
|
|
|
6bc475c |
{
|
|
|
6bc475c |
/* ??? This is a named pattern like this is not allowed to FAIL based
|
|
|
6bc475c |
@@ -5082,7 +5082,7 @@ (define_insn "*lshrdi3_const"
|
|
|
6bc475c |
(define_expand "lshrdi3"
|
|
|
6bc475c |
[(set (match_operand:DI 0 "register_operand" "")
|
|
|
6bc475c |
(lshiftrt:DI (match_operand:DI 1 "register_operand" "")
|
|
|
6bc475c |
- (match_operand 2 "const_int_operand" "")))]
|
|
|
6bc475c |
+ (match_operand:SI 2 "const_int_operand" "")))]
|
|
|
6bc475c |
"!TARGET_COLDFIRE"
|
|
|
6bc475c |
{
|
|
|
6bc475c |
/* ??? This is a named pattern like this is not allowed to FAIL based
|
|
|
6bc475c |
--- gcc/testsuite/gcc.dg/pr69885.c.jj 2016-02-22 11:14:50.981023120 +0100
|
|
|
6bc475c |
+++ gcc/testsuite/gcc.dg/pr69885.c 2016-02-22 11:13:45.000000000 +0100
|
|
|
6bc475c |
@@ -0,0 +1,13 @@
|
|
|
6bc475c |
+/* PR target/69885 */
|
|
|
6bc475c |
+/* { dg-do compile } */
|
|
|
6bc475c |
+/* { dg-options "-O2" } */
|
|
|
6bc475c |
+/* { dg-additional-options "-m68000" { target m68k*-*-* } } */
|
|
|
6bc475c |
+
|
|
|
6bc475c |
+void bar (void);
|
|
|
6bc475c |
+
|
|
|
6bc475c |
+void
|
|
|
6bc475c |
+foo (long long x)
|
|
|
6bc475c |
+{
|
|
|
6bc475c |
+ if (x >> 1)
|
|
|
6bc475c |
+ bar ();
|
|
|
6bc475c |
+}
|