Add support for reverse pointer induction variables. These are loops that contain...
authorNadav Rotem <nrotem@apple.com>
Wed, 23 Jan 2013 01:35:00 +0000 (01:35 +0000)
committerNadav Rotem <nrotem@apple.com>
Wed, 23 Jan 2013 01:35:00 +0000 (01:35 +0000)
commitab3e698ee930770c07a5a5c464044f849cc2a1b7
treebefb6feeb540337f243944e8d6800a013ce729a7
parent7f63983da608ee1c42839b2f87177e511c247ccd
Add support for reverse pointer induction variables. These are loops that contain pointers that count backwards.
For example, this is the hot loop in BZIP:

  do {
    m = *--p;
    *p = ( ... );
  } while (--n);

llvm-svn: 173219
llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
llvm/test/Transforms/LoopVectorize/bzip_reverse_loops.ll [new file with mode: 0644]
llvm/test/Transforms/LoopVectorize/ptr_loops.ll [new file with mode: 0644]
llvm/test/Transforms/LoopVectorize/struct_access.ll [new file with mode: 0644]