[PATCH] Global Structure Vectorization
Arnold Schwaighofer
aschwaighofer at apple.com
Sat Feb 23 09:55:52 PST 2013
Hi all,
On Feb 20, 2013, at 1:18 PM, Nadav Rotem <nrotem at apple.com> wrote:
> Hi Renato,
>
> Thanks for working on this. The code looks correct. I agree with Arnold that this function is becoming even more complicated and it would be nice to refactor it somehow, but we can do it later. I don't mind if the tests are in one file or multiple files. I assume that you ran the test-suite and found no failures. Did you see any newly vectorized loops ?
I just did a quick analysis of how many more loops we handle due to this patch. This is running over test-suite + externals (specs, povray) on x86-64/darwin. I also have a modified copy where we always check alias analysis (i.e. also when the identified object is not a global variable). Here are the numbers:
no aa vectorization: 4249
current trunk: 4277 (delta 28)
always aa vec: 4320 (delta 43)
What is missing of course is a qualitative analysis: do any of those matter?
Here are some benchmarks that had (more) vectorized loops due to variant "always aa vec":
Povray
bzip2
gcc
gobmk
h264ref
ClamAV
JM/ldecod
JM/lencod
bzip2
7zip
gsm/toast
mpeg2/mpeg2dec
MiBench/consumer-lame
MiBench/telecomm-gsm
ReedSolomon
Best,
Arnold
More information about the llvm-commits
mailing list