HomePhabricator

[mips][msa] Fix infinite loop for mips.nori.b intrinsic

Authored by atanasyan on Wed, Sep 11, 4:16 AM.

Description

[mips][msa] Fix infinite loop for mips.nori.b intrinsic

When value of immediate in mips.nori.b is 255 (which has all ones in
binary form as 8bit integer) DAGCombiner and Legalizer would fall in an
infinite loop. DAGCombiner would try to simplify or %value, -1 by
turning %value into UNDEF. Legalizer will turn it back into Constant<0>
which would then be again turned into UNDEF by DAGCombiner. To avoid this
loop we make UNDEF legal for MSA int types on Mips.

Patch by Mirko Brkusanin.

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

llvm-svn: 371607