Hello,

this patch copies some more vector extensions from the C front-end to the C++ front-end. There seemed to be some reluctance to add those, but I guess a patch is the best way to ask. Note that I only added the vector x vector operations, not the vector x scalar ones.

I have some issues with the vector-compare-2.c torture test. It passes a vector by value (argument and return type), which is likely to warn (although for some reason it doesn't for me, with today's compiler). And it takes -Wno-psabi through a .x file, but those are not read in c-c++-common, so I put it in dg-options. I would have changed the function to use pointers, but I don't know if it specifically wants to test passing by value...



2012-08-31  Marc Glisse  <marc.gli...@inria.fr>
        PR c++/54427

cp/ChangeLog
        * typeck.c (cp_build_binary_op) [LSHIFT_EXPR, RSHIFT_EXPR, EQ_EXPR,
        NE_EXPR, LE_EXPR, GE_EXPR, LT_EXPR, GT_EXPR]: Handle VECTOR_TYPE.

testsuite/ChangeLog
        * gcc.dg/vector-shift.c: Move ...
        * c-c++-common/vector-shift.c: ... here.
        * gcc.dg/vector-shift1.c: Move ...
        * c-c++-common/vector-shift1.c: ... here.
        * gcc.dg/vector-shift3.c: Move ...
        * c-c++-common/vector-shift3.c: ... here.
        * gcc.dg/vector-compare-1.c: Move ...
        * c-c++-common/vector-compare-1.c: ... here.
        * gcc.dg/vector-compare-2.c: Move ...
        * c-c++-common/vector-compare-2.c: ... here.
        * gcc.c-torture/execute/vector-compare-1.c: Move ...
        * c-c++-common/torture/vector-compare-1.c: ... here.
        * gcc.c-torture/execute/vector-compare-2.x: Delete.
        * gcc.c-torture/execute/vector-compare-2.c: Move ...
        * c-c++-common/torture/vector-compare-2.c: ... here.
        * gcc.c-torture/execute/vector-shift.c: Move ...
        * c-c++-common/torture/vector-shift.c: ... here.
        * gcc.c-torture/execute/vector-shift2.c: Move ...
        * c-c++-common/torture/vector-shift2.c: ... here.
        * gcc.c-torture/execute/vector-subscript-1.c: Move ...
        * c-c++-common/torture/vector-subscript-1.c: ... here.
        * gcc.c-torture/execute/vector-subscript-2.c: Move ...
        * c-c++-common/torture/vector-subscript-2.c: ... here.
        * gcc.c-torture/execute/vector-subscript-3.c: Move ...
        * c-c++-common/torture/vector-subscript-3.c: ... here.

--
Marc Glisse

Reply via email to