On Mon, Sep 29, 2014 at 5:53 PM, Bill Schmidt <wschm...@linux.vnet.ibm.com> wrote: > Hi, > > The vec_lvsl and vec_lvsr interfaces are deprecated for little endian in > the ELFv2 ABI document. At the moment, these interfaces will produce > incorrect code, and the only indication a programmer has of this is that > his or her code does not function correctly. This patch adds a warning > message to inform the little endian programmer of the deprecated usage. > > The patch described in > https://gcc.gnu.org/ml/gcc-patches/2014-09/msg02580.html is a > prerequisite for this patch, as otherwise the deprecation message causes > bootstrap failure due to -Werror in the later stages. > > I feel the deprecation message is needed because, in a future patch, we > plan to make vec_lvsl and vec_lvsr work so that BE code will run on LE > without requiring code modifications. However, code modifications are > still desirable because the LE code, while correct, will be pretty poor. > The deprecation message will encourage programmers to rewrite their code > that makes use of vec_lvsl/lvsr. > > I've added a new test to demonstrate the message, and updated a number > of tests to use -Wno-deprecated so the new message doesn't disturb them. > > Bootstrapped and tested on powerpc64le-unknown-linux-gnu with no > regressions. Is this ok for trunk? > > Thanks, > Bill > > > [gcc] > > 2014-09-29 Bill Schmidt <wschm...@linux.vnet.ibm.com> > > * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin): > Issue a warning message when vec_lvsl or vec_lvsr is used with a > little endian target. > > [gcc/testsuite] > > 2014-09-29 Bill Schmidt <wschm...@linux.vnet.ibm.com> > > * g++.dg/ext/altivec-2.C: Compile with -Wno-deprecated to avoid > failing with the new warning message. > * gcc.dg/vmx/3c-01a.c: Likewise. > * gcc.dg/vmx/ops-long-1.c: Likewise. > * gcc.dg/vmx/ops.c: Likewise. > * gcc.target/powerpc/altivec-20.c: Likewise. > * gcc.target/powerpc/altivec-6.c: Likewise. > * gcc.target/powerpc/altivec-vec-merge.c: Likewise. > * gcc.target/powerpc/vsx-builtin-8.c: Likewise. > * gcc.target/powerpc/warn-lvsl-lvsr.c: New test.
Okay. Thanks, David