This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
RE: Vectorizer question
If both X & Y are vectors, GCC will report error (at least on our port based on 4.5)
as invalid operands to ==. Not sure if it is extended for 4.7.
Bingfeng
-----Original Message-----
From: gcc-owner@gcc.gnu.org [mailto:gcc-owner@gcc.gnu.org] On Behalf Of Iyer, Balaji V
Sent: 17 May 2012 00:01
To: 'gcc@gcc.gnu.org'
Subject: Vectorizer question
Hello Everyone,
I have a question regarding the vectorizer. In the following code below...
Int func (int x, int y)
{
If (x==y)
Return (x+y);
Else
Return (x-y);
}
If we force the x and y to be vectors of vectorlength 4, then will the if-statement get a vector of booleans or does it get 1 boolean that compares 2 very large values? I guess another way to ask is that, will it logically break it up into 4 if-statements or just 1?
Any help is greatly appreciated!
Thanks,
Balaji V. Iyer.
PS. Please CC me in response so that I can get to it quickly.