summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Utils/CmpInstAnalysis.cpp
diff options
context:
space:
mode:
authorChandler Carruth <chandlerc@gmail.com>2012-12-17 04:07:37 +0000
committerChandler Carruth <chandlerc@gmail.com>2012-12-17 04:07:37 +0000
commitccca504f3a08a47f7852fe9a8f98e2f3c68d8b1f (patch)
treed4adaf06c33a882f2728ec40ba47356f1aab9a94 /llvm/lib/Transforms/Utils/CmpInstAnalysis.cpp
parenteae65a56294eddee7296fe2f9ef64de5066c52dc (diff)
downloadbcm5719-llvm-ccca504f3a08a47f7852fe9a8f98e2f3c68d8b1f.tar.gz
bcm5719-llvm-ccca504f3a08a47f7852fe9a8f98e2f3c68d8b1f.zip
Fix the first part of PR14478: memset now works.
PR14478 highlights a serious problem in SROA that simply wasn't being exercised due to a lack of vector input code mixed with C-library function calls. Part of SROA was written carefully to handle subvector accesses via memset and memcpy, but the rewriter never grew support for this. Fixing it required refactoring the subvector access code in other parts of SROA so it could be shared, and then fixing the splat formation logic and using subvector insertion (this patch). The PR isn't quite fixed yet, as memcpy is still broken in the same way. I'm starting on that series of patches now. Hopefully this will be enough to bring the bullet benchmark back to life with the bb-vectorizer enabled, but that may require fixing memcpy as well. llvm-svn: 170301
Diffstat (limited to 'llvm/lib/Transforms/Utils/CmpInstAnalysis.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud