summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/Process/Linux/ProcessMonitor.cpp
diff options
context:
space:
mode:
authorHal Finkel <hfinkel@anl.gov>2014-04-02 02:34:49 +0000
committerHal Finkel <hfinkel@anl.gov>2014-04-02 02:34:49 +0000
commitb0ebdc0f43a5684c8a4f668cbeb016cf530a5802 (patch)
tree18ea7ae8299a1c0171df5d826a2e0a1bb946fd9c /lldb/source/Plugins/Process/Linux/ProcessMonitor.cpp
parent326e1fa13b1451bb227b6e279cb66f60d801169f (diff)
downloadbcm5719-llvm-b0ebdc0f43a5684c8a4f668cbeb016cf530a5802.tar.gz
bcm5719-llvm-b0ebdc0f43a5684c8a4f668cbeb016cf530a5802.zip
[LoopVectorizer] Count dependencies of consecutive pointers as uniforms
For the purpose of calculating the cost of the loop at various vectorization factors, we need to count dependencies of consecutive pointers as uniforms (which means that the VF = 1 cost is used for all overall VF values). For example, the TSVC benchmark function s173 has: ... %3 = add nsw i64 %indvars.iv, 16000 %arrayidx8 = getelementptr inbounds %struct.GlobalData* @global_data, i64 0, i32 0, i64 %3 ... and we must realize that the add will be a scalar in order to correctly deduce it to be profitable to vectorize this on PowerPC with VSX enabled. In fact, all dependencies of a consecutive pointer must be a scalar (uniform), and so we simply need to add all consecutive pointers to the worklist that currently detects collects uniforms. Fixes PR19296. llvm-svn: 205387
Diffstat (limited to 'lldb/source/Plugins/Process/Linux/ProcessMonitor.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud