[ValueTracking] Handle bitcasts between vec-int-ptr in `isKnownNonZero`
authorNoah Goldstein <goldstein.w.n@gmail.com>
Sun, 30 Apr 2023 14:32:54 +0000 (09:32 -0500)
committerNoah Goldstein <goldstein.w.n@gmail.com>
Sun, 30 Apr 2023 15:06:45 +0000 (10:06 -0500)
commitc7f7f601f2c86203f8659e0a765549853f3c2a85
treeeb07008420abaeeef03c3f0a8c3a9cb2eb0323bb
parentf7bf984ed3ac57e57f12d010b086f1e1bd5627b9
[ValueTracking] Handle bitcasts between vec-int-ptr in `isKnownNonZero`

We where missing these cases so something like:
`(bitcast to i32 (or v216 x, <2, 1>))`

would not be found to be non-zero.

Reviewed By: nikic

Differential Revision: https://reviews.llvm.org/D149409
llvm/lib/Analysis/ValueTracking.cpp
llvm/test/Analysis/ValueTracking/known-non-zero.ll