[SimplifyCFG] Update passingValueIsAlwaysUndefined to check more attributes
authorJuneyoung Lee <aqjune@gmail.com>
Tue, 23 Feb 2021 02:46:59 +0000 (11:46 +0900)
committerJuneyoung Lee <aqjune@gmail.com>
Wed, 24 Feb 2021 01:40:50 +0000 (10:40 +0900)
commit56d228a14e3631de157ae98dd61d21193e4502d5
tree39f08d2e9d6e31d86d0c135fdc231c47e03139c7
parentab5b00ada9e77437ed2c76f73cfb8481bb9826a5
[SimplifyCFG] Update passingValueIsAlwaysUndefined to check more attributes

This is a simple patch to update SimplifyCFG's passingValueIsAlwaysUndefined to inspect more attributes.

A new function `CallBase::isPassingUndefUB` checks attributes that imply noundef.

Reviewed By: spatel

Differential Revision: https://reviews.llvm.org/D97244
llvm/include/llvm/IR/InstrTypes.h
llvm/lib/Transforms/Utils/SimplifyCFG.cpp
llvm/test/Transforms/SimplifyCFG/UnreachableEliminate.ll