[LLVMdev] Jump Theading/GVN bug - moving discussion to llvm-dev

Chris Lattner clattner at apple.com
Fri Feb 27 09:44:58 PST 2015


On Feb 27, 2015, at 6:24 AM, Rafael EspĂ­ndola <rafael.espindola at gmail.com> wrote:
>> 
>> I think this a great example of how our current definition is nonsensical
>> and confusing.  :)
> 
> It is. It is just hard to come up with a definition that doesn't just hide the
> confusion in a slightly more complicated case. Except:
> 
>> What would be implications of making dominates assert is given an
>> unreachable block?  This seems like it would help isolate a lot of bugs.
>> Callers need to know about unreachable blocks anyways, so why not just make
>> that explicit?
> 
> That is, making (A dominates B) undefined if A is unreachable. To be clear,
> you propose changing only the utility function that passes use, correct?
> The verifier would still use the current version and @f above would still
> be considered valid.

Has anyone considered changing the dominates() apis to return an "enum { Yes, No, Unreachable}"?

-Chris



More information about the llvm-dev mailing list