[LegalizeDAG] Share Vector/Scalar CTTZ Expansion
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Tue, 23 Oct 2018 15:37:19 +0000 (15:37 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Tue, 23 Oct 2018 15:37:19 +0000 (15:37 +0000)
commitb975ff4700351334e74d4d26219668092c7cbc16
treeb4eaf1bfb50e662948e70ba8ff458a2295f4028e
parentb555b76ed3548d0a27653eac746bc686f810caa3
[LegalizeDAG] Share Vector/Scalar CTTZ Expansion

As suggested on D53258, this patch demonstrates sharing common CTTZ expansion code between VectorLegalizer and SelectionDAGLegalize by putting it in TargetLowering.

I intend to move CTLZ and (scalar) CTPOP over as well and then update D53258 accordingly.

Differential Revision: https://reviews.llvm.org/D53474

llvm-svn: 345039
llvm/include/llvm/CodeGen/TargetLowering.h
llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp