summaryrefslogtreecommitdiff
path: root/pstl
diff options
context:
space:
mode:
authorEli Friedman <efriedma@quicinc.com>2020-04-07 14:05:29 -0700
committerEli Friedman <efriedma@quicinc.com>2020-04-15 13:01:41 -0700
commit7c10541e568f7453915d5d207c55f0fb7fb4c43c (patch)
treecab2ace9a75f5e4ea81b2ea9f38a6a2dc5aa127a /pstl
parent2ba4e3a4598b165245c581c506a813cd4a7dce33 (diff)
downloadllvm-7c10541e568f7453915d5d207c55f0fb7fb4c43c.tar.gz
[SelectionDAG] Fix usage of Align constructing MachineMemOperands.
The "Align" passed into getMachineMemOperand etc. is the alignment of the MachinePointerInfo, not the alignment of the memory operation. (getAlign() on a MachineMemOperand automatically reduces the alignment to account for this.) We were passing on wrong (overconservative) alignment in a bunch of places. Fix a bunch of these, mostly in legalization. And while I'm here, switch to the new Align APIs. The test changes are all scheduling changes: the biggest effect of preserving large alignments is that it improves alias analysis, so the scheduler has more freedom. (I was originally just trying to do a minor cleanup in SelectionDAGBuilder, but I accidentally went deeper down the rabbit hole.) Differential Revision: https://reviews.llvm.org/D77687
Diffstat (limited to 'pstl')
0 files changed, 0 insertions, 0 deletions