Probably inaccuracy in GCC 4.7.0 documentation.
Hello, GNU GCC team. It seems like I've found an inaccuracy in GCC 4.7.0 documentation. It is about -fdefer-pop optimization option. The point is that this option is mentioned in the list of optimization flags which -O1 turns on (Chapter 3: GCC Command Options, part 3.10 Options That Control Optimization, page 107/766 of http://gcc.gnu.org/onlinedocs/gcc-4.7.0/gcc.pdf), but there are no any other allusions to -fdefer-pop in the document, even in 3.1 Option Summary, where it is expected to be. There is no explanation of what this flag does in HTML version of the document too (here [http://gcc.gnu.org/onlinedocs/gcc-4.7.0/gcc/Optimize-Options.html#Optimize-Options] and here [http://gcc.gnu.org/onlinedocs/gcc-4.7.0/gcc/Option-Summary.html#Option-Summary]). I'm guessing that this flag is not further supported by GCC, or not yet implemented. The statements above are valid for May 16, 2012. May I give you my best wishes, Roman Sazhenkov
announce: The C Conference; San Diego, CA; August 28th
The first C Conference is happening in San Diego, CA on August 28th 2012. It is focused on the C programming language and modern developments in that ecosystem. The conference is co-located with LinuxCon and Linux Plumbers Conference. http://www.cconf.org/ The "Reverse CFP" is open now and tickets are available. Let us know what you want to see at the conference. http://www.cconf.org/pfc/ See you there. Brandon
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.
Re: Vectorizer question
On 5/16/2012 4:01 PM, Iyer, Balaji V wrote: 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. Is this about vector extensions to C, or about other languages such as C++ or Fortran? In Fortran, it's definitely an array of logical, in the case where the compiler can't optimize it away. This would more likely be written return x==y ? x+y : x-y; -- Tim Prince