This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFC] [autovect patch] Implement vectorization hints



On Feb 25, 2005, at 1:14 AM, Richard Guenther wrote:


On Thu, 24 Feb 2005 16:27:39 -0800, Devang Patel <dpatel@apple.com> wrote:
This patch implements two #pragmas that developers can use to give
hints to auto vectorization pass. These pragmas are inserted in the
source file before the loop. They are effective only on the very next
loop in the source file.
"#pragma novector" instructs compiler to not vectorize the loop.
Programmer may decide to do so for various reasons.
"#pragma ivdep" instructs compiler to ignore possible data dependence
when data dependence analyzer is not able determine it. This is useful
in a situation where compiler does not have enough information to prove
data independence, but developer knows about it.
Where should I place the #pragma ivdep if I have a nested loop?

[example 1]
#pragma ivdep
  for (;;)
    for (;;)
       ;

[example 2]
or
  for (;;)
#pragma ivdep
    for (;;)
       ;
or even before both loops?

If it is intended for inner loop then as per your second example. Right now auto vectorizer does not handle nested outer loops.
-
Devang



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]