[CodeGenPrepare] Replace other uses of EVT::getEVT with TL::getValueType.
authorAhmed Bougacha <ahmed.bougacha@gmail.com>
Wed, 12 Nov 2014 23:05:03 +0000 (23:05 +0000)
committerAhmed Bougacha <ahmed.bougacha@gmail.com>
Wed, 12 Nov 2014 23:05:03 +0000 (23:05 +0000)
commitcd2f8c95a78d9e433b55b7689c316f91528b7fe3
tree9d624eeb204bc97a322f6e4c0e29b7d80fc4c82e
parentb990a25d5a7df00deb09d5bc64679cb4b33ecf3d
[CodeGenPrepare] Replace other uses of EVT::getEVT with TL::getValueType.

r221820 fixed a problem (PR21548) where an iPTR was used in TLI legality checks,
which isn't valid and resulted in a failed assertion.
The solution was to lower pointer types into the correct target's VT, by
using TL::getValueType instead of EVT::getEVT.

This commit changes 3 other uses of EVT::getEVT, but without any tests:
- One of these non-lowered EVTs is passed to allowsMisalignedMemoryAccesses,
which goes into target's TL implementation and doesn't cause any problem (yet.)
- Two others are passed to TLI.isOperationLegalOrCustom:
  - one only looks at extensions, so doesn't concern pointers.
  - one only looks at binary operators, so also isn't a problem.

The latter might some day be exposed to pointers and cause the same assert as
the original PR, because there's a comment hinting at also supporting cast ops.

For consistency, update all of them and be done with it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@221827 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/CodeGenPrepare.cpp