Re: [RFC] GCC vectorizer misses an opportunity to hoist loop invariant load after loop versioning.

2013-09-23 Thread Cong Hou
I have submitted a bugreport through GCC Bugzilla. The link is http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58508. thanks, Cong On Fri, Sep 20, 2013 at 12:57 AM, Richard Biener wrote: > On Wed, Sep 18, 2013 at 10:59 PM, Xinliang David Li > wrote: >> On Wed, Sep 18, 2013 at 1:23

[RFC] GCC vectorizer misses an opportunity to hoist loop invariant load after loop versioning.

2013-09-18 Thread Cong Hou
First, look as the code below. void foo(int* a, int* b, int n) { int i; for (i = 0; i < n; ++i) a[i] = *b; } This loop contains possible aliasing between a[i] and *b, and in order to vectorize this loop, GCC produces two versions of the loop, and only vectorizes the one in which

Resolving an issue of bootstrap failure from vectorization.

2013-07-09 Thread Cong Hou
Hi My name is Cong Hou, and I am a Noogler working in the compiler optimization team at Google. When we were trying moving the vectorization from O3 to O2 in GCC 4.9, we met a bootstrap failure from comparison between stage 2&3. This failure is caused by a potential bug in GCC as stated b