[llvm-dev] funnel shift, select, and poison (original) (raw)

John Regehr via llvm-dev llvm-dev at lists.llvm.org
Mon Feb 25 12:06:52 PST 2019


It is definitely unsound to assume call(poison) == poison, because not every function returns a value that is poison-dependent on the function's arguments. That's exactly the same as for a "select".

But that is not what the LangRef says. It says that for purposes of poison: "Values other than phi nodes depend on their operands."

Most people, I think, would agree that select should not poison-depend on its not-selected operand. This is one of the things that needs to be clarified.

John



More information about the llvm-dev mailing list