diff options
| author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2017-02-10 14:37:25 +0000 |
|---|---|---|
| committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2017-02-10 14:37:25 +0000 |
| commit | bfb17478061b9126301adea558dcdc1e7c3f8443 (patch) | |
| tree | 5c14773f3ac0e8e21528b7c80a1693b8db9a7288 /llvm/lib/Bitcode/Writer/BitcodeWriterPass.cpp | |
| parent | 8c8b10389d8bc3f615427ded303997bbc43f2e8e (diff) | |
| download | llvm-bfb17478061b9126301adea558dcdc1e7c3f8443.zip llvm-bfb17478061b9126301adea558dcdc1e7c3f8443.tar.gz llvm-bfb17478061b9126301adea558dcdc1e7c3f8443.tar.bz2 | |
[DAGCombine] Allow vector constant folding of any value type before type legalization
The patch comes in 2 parts:
1 - it makes use of the SelectionDAG::NewNodesMustHaveLegalTypes flag to tell when it can safely constant fold illegal types.
2 - it correctly resets SelectionDAG::NewNodesMustHaveLegalTypes at the start of each call to SelectionDAGISel::CodeGenAndEmitDAG so all the pre-legalization stages can make use of it - not just the first basic block that gets handled.
Fix for PR30760
Differential Revision: https://reviews.llvm.org/D29568
llvm-svn: 294749
Diffstat (limited to 'llvm/lib/Bitcode/Writer/BitcodeWriterPass.cpp')
0 files changed, 0 insertions, 0 deletions
