llvm-project/llvm/test/Transforms/BDCE
Hal Finkel 9e54b7093a [BDCE] Don't check demanded bits on unsized types
To clear assumptions that are potentially invalid after trivialization, we need
to walk the use/def chain. Normally, the only way to reach an instruction with
an unsized type is via an instruction that has side effects (or otherwise will
demand its input bits). That would stop the walk. However, if we have a
readnone function that returns an unsized type (e.g., void), we must avoid
asking for the demanded bits of the function call's return value. A
void-returning readnone function is always dead (and so we can stop walking the
use/def chain here), but the check is necessary to avoid asserting.

Fixes PR34211.

llvm-svn: 311014
2017-08-16 16:09:22 +00:00
..
basic.ll [Analysis] Support bitreverse in -demanded-bits pass 2017-04-13 16:44:25 +00:00
dbg-multipleuses.ll Remove the obsolete offset parameter from @llvm.dbg.value 2017-07-28 20:21:02 +00:00
dce-pure.ll
dead-void-ro.ll [BDCE] Don't check demanded bits on unsized types 2017-08-16 16:09:22 +00:00
invalidate-assumptions.ll [BDCE] reduce scope of an assert (PR34179) 2017-08-14 15:13:46 +00:00
order.ll
pr26587.ll Remove the obsolete offset parameter from @llvm.dbg.value 2017-07-28 20:21:02 +00:00