re PR rtl-optimization/33846 (ICE in trunc_int_for_mode, at explow.c:55)
PR rtl-optimization/33846 * combine.c (simplify_shift_const_1) [NOT]: Skip vector modes. testsuite/ChangeLog: PR rtl-optimization/33846 * gcc.dg/vect/pr33846.c: New testcase. From-SVN: r129589
This commit is contained in:
parent
68cba9eee7
commit
881ef7be46
|
@ -1,3 +1,8 @@
|
|||
2007-10-23 Uros Bizjak <ubizjak@gmail.com>
|
||||
|
||||
PR rtl-optimization/33846
|
||||
* combine.c (simplify_shift_const_1) [NOT]: Skip vector modes.
|
||||
|
||||
2007-10-23 Dorit Nuzman <dorit@il.ibm.com>
|
||||
|
||||
PR tree-optimization/33860
|
||||
|
@ -32,8 +37,8 @@
|
|||
|
||||
PR tree-optimization/33834
|
||||
PR tree-optimization/33835
|
||||
* tree-vect-analyze.c (vect_analyze_operations): RELEVANT and LIVE stmts
|
||||
need to be checked for success seperately.
|
||||
* tree-vect-analyze.c (vect_analyze_operations): RELEVANT and LIVE
|
||||
stmts need to be checked for success seperately.
|
||||
* tree-vect-transform.c (vectorizable_call, vectorizable_conversion):
|
||||
Remove the check that stmt is not LIVE.
|
||||
(vectorizable_assignment, vectorizable_induction): Likewise.
|
||||
|
@ -899,7 +904,7 @@
|
|||
IX86_BUILTIN_PSRADI128, IX86_BUILTIN_PSRLWI128,
|
||||
IX86_BUILTIN_PSRLDI128, IX86_BUILTIN_PSRLQI128]: Do not require
|
||||
immediate shift value.
|
||||
config/i386/emmintrin.h (_mm_slli_epi16, _mm_slli_epi32,
|
||||
* config/i386/emmintrin.h (_mm_slli_epi16, _mm_slli_epi32,
|
||||
_mm_slli_epi64, _mm_srai_epi16, _mm_srai_epi32, _mm_srli_epi16,
|
||||
_mm_srli_epi32, _mm_srli_epi64): Remove 'const' from count argument.
|
||||
Remove macros for !__OPTIMIZE__ case.
|
||||
|
|
|
@ -9343,6 +9343,9 @@ simplify_shift_const_1 (enum rtx_code code, enum machine_mode result_mode,
|
|||
break;
|
||||
|
||||
case NOT:
|
||||
if (VECTOR_MODE_P (mode))
|
||||
break;
|
||||
|
||||
/* Make this fit the case below. */
|
||||
varop = gen_rtx_XOR (mode, XEXP (varop, 0),
|
||||
GEN_INT (GET_MODE_MASK (mode)));
|
||||
|
|
|
@ -1,3 +1,9 @@
|
|||
2007-10-23 Martin Michlmayr <tbm@cyrius.com>
|
||||
Uros Bizjak <ubizjak@gmail.com>
|
||||
|
||||
PR rtl-optimization/33846
|
||||
* gcc.dg/vect/pr33846.c: New testcase.
|
||||
|
||||
2007-10-23 Martin Michlmayr <tbm@cyrius.com>
|
||||
Dorit Nuzman <dorit@il.ibm.com>
|
||||
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
/* Testcase by Martin Michlmayr <tbm@cyrius.com> */
|
||||
/* { dg-do compile } */
|
||||
/* { dg-require-effective-target vect_shift } */
|
||||
|
||||
int clamp_val (int i)
|
||||
{
|
||||
return ~i >> 31;
|
||||
}
|
||||
|
||||
void _mix_some_samples (long buf, int *mix_buffer, int mix_size)
|
||||
{
|
||||
int i;
|
||||
signed int *p = mix_buffer;
|
||||
for (i = mix_size ; i > 0; i--)
|
||||
{
|
||||
*((short *) buf) = clamp_val ((*p) + 0x800000);
|
||||
buf += 2;
|
||||
p++;
|
||||
}
|
||||
}
|
||||
|
||||
/* { dg-final { cleanup-tree-dump "vect" } } */
|
Loading…
Reference in New Issue