summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Support/ThreadLocal.cpp
diff options
context:
space:
mode:
authorChandler Carruth <chandlerc@gmail.com>2014-10-03 11:25:58 +0000
committerChandler Carruth <chandlerc@gmail.com>2014-10-03 11:25:58 +0000
commit971a560cb85a5462a54210f1e425b6724e7e854d (patch)
treeaf4045970fd42119abc550af0375d5f326f4d18a /llvm/lib/Support/ThreadLocal.cpp
parent080cab91e1c5b341dddc2e1e628001f4ed885ac2 (diff)
downloadbcm5719-llvm-971a560cb85a5462a54210f1e425b6724e7e854d.tar.gz
bcm5719-llvm-971a560cb85a5462a54210f1e425b6724e7e854d.zip
[x86] Significantly improve the ability of the new vector shuffle
lowering to match VZEXT_MOVL patterns. I hadn't realized that these had sufficient pattern smarts in the backend to lower zext-ing from the low element of a vector without it being a scalar_to_vector node. They do, and this is how to match a bunch of patterns for movq, movss, etc. There is a weird propensity to end up using pshufd to place the element afterward even though it means domain crossing (or rather, to use xorps+movss to zext the element rather than movq) but that's an orthogonal problem with VZEXT_MOVL that someone should probably look at. llvm-svn: 218977
Diffstat (limited to 'llvm/lib/Support/ThreadLocal.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud