On Sun, 2013-05-05 at 22:56 +0900, Kaz Kojima wrote: > Oleg Endo <oleg.e...@t-online.de> wrote: > > The operand mode in the tstsi_t_zero_extract_eq pattern was void on > > purpose to match any mode (at least QI HI SI DI). The attached patch > > fixes that. > > OK for trunk and 4.8 if it passes testing? (I'd leave 4.7 alone since > > it doesn't have the iterators.md). > > OK. > > > (BTW, I think the test case for this PR should have went into c-torture > > instead of target/sh ...) > > Sounds plausible.
I've committed the attached patch which moves the test case to c-torture/compile as revision 198803. Tested with make check RUNTESTFLAGS="compile.exp=pr57108.c --target_board=sh-sim \{-m2/-ml,-m2/-mb,-m2a/-mb,-m4/-ml,-m4/-mb,-m4a/-ml,-m4a/-mb} Cheers, Oleg testsuite/ChangeLog: PR target/57108 * gcc.target/sh/pr57108.c: Move this test case to ... * gcc.c-torture/compile/pr57108.c: ... here.
Index: gcc/testsuite/gcc.c-torture/compile/pr57108.c =================================================================== --- gcc/testsuite/gcc.c-torture/compile/pr57108.c (revision 0) +++ gcc/testsuite/gcc.c-torture/compile/pr57108.c (revision 0) @@ -0,0 +1,17 @@ +/* PR target/57108 */ + +void __assert_func (void) __attribute__ ((__noreturn__)); + +void +ATATransfer (int num, int buffer) +{ + int wordCount; + + while (num > 0) + { + wordCount = num * 512 / sizeof (int); + + ((0 == (buffer & 63)) ? (void)0 : __assert_func () ); + ((0 == (wordCount & 31)) ? (void)0 : __assert_func ()); + } +} Index: gcc/testsuite/gcc.target/sh/pr57108.c =================================================================== --- gcc/testsuite/gcc.target/sh/pr57108.c (revision 198802) +++ gcc/testsuite/gcc.target/sh/pr57108.c (working copy) @@ -1,19 +0,0 @@ -/* { dg-do compile { target "sh*-*-*" } } */ -/* { dg-options "-O1" } */ - -void __assert_func (void) __attribute__ ((__noreturn__)) ; - -void ATATransfer (int num, int buffer) -{ - int wordCount; - - while (num > 0) - { - wordCount = num * 512 / sizeof (int); - - ((0 == (buffer & 63)) ? (void)0 : __assert_func () ); - ((0 == (wordCount & 31)) ? (void)0 : __assert_func ()); - } - - - }