https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68577

--- Comment #5 from rsandifo at gcc dot gnu.org <rsandifo at gcc dot gnu.org> 
---
Author: rsandifo
Date: Tue Dec  1 21:01:35 2015
New Revision: 231131

URL: https://gcc.gnu.org/viewcvs?rev=231131&root=gcc&view=rev
Log:
PR68577: Handle narrowing for vector popcount, etc.

This patch adds support for simple cases where a vector
internal function returns wider results than the scalar
equivalent.  It punts on other cases.

Tested on powerpc64-linux-gnu and x86_64-linux-gnu.

gcc/
        PR tree-optimization/68577
        * tree-vect-stmts.c (simple_integer_narrowing): New function.
        (vectorizable_call): Restrict internal function handling
        to NONE and NARROW cases, using simple_integer_narrowing
        to test for the latter.  Add cost of narrowing operation
        and insert it where necessary.

gcc/testsuite/
        PR tree-optimization/68577
        * gcc.dg/vect/pr68577.c: New test.

Added:
    trunk/gcc/testsuite/gcc.dg/vect/pr68577.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/tree-vect-stmts.c

Reply via email to