On Thu, 14 Jun 2012, Ramana Radhakrishnan wrote:

While experimenting with the fixes to allow neon intrinsics to work
with __builtin_shuffle I hit the fact that __builtin_shuffle isn't
really supported by the C++ frontend.I'm keen we use __builtin_shuffle
for these intrinsics, but that means we need this support in the C++
frontend.

I've taken the liberty of pulling Marc's patch from bugzilla, adding
the couple of bits and pieces that were needed, moved all the vshuf*
tests from gcc.c-torture/execute to c-c++-common/torture which means
they run for both the C and C++ compilers, and bootstrapped and
regtested this on x86_64, gcc110(powerpc*-linux) and arm-linux-gnueabi
(with a cross compiler). I've then verified that all the tests pass
and there are no regressions for these targets

Any other place I should be moving these tests to ?

Ok ?

regards,
Ramana


2012-06-14  Marc Glisse  <marc.gli...@inria.fr>

       * c-typeck.c (c_build_vec_perm_expr): Move to c-family/c-common.c.
       * c-tree.h (c_build_vec_perm_expr): Move to c-family/c-common.h.

c-family/

      * c-typeck.c (c_build_vec_perm_expr): Move to c-family/c-common.c.
      * c-tree.h (c_build_vec_perm_expr): Move to c-family/c-common.h.


cp/
       * semantics.c (literal_type_p): Handle VECTOR_TYPE.
       (potential_constant_expression_1): Handle VEC_PERM_EXPR.

I just noticed this part. Rereading my comment in

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51033#c22

it seems like this may break things with -std=c++11 and you used the old version from comment 19. I am unable to test anything these days (taking a plane tomorrow), sorry.

Thanks again for taking charge of the patch,

--
Marc Glisse

Reply via email to