[llvm-dev] RFC: Killing undef and spreading poison (original) (raw)
Krzysztof Parzyszek via llvm-dev llvm-dev at lists.llvm.org
Tue Oct 18 13:22:23 PDT 2016
- Previous message: [llvm-dev] RFC: Killing undef and spreading poison
- Next message: [llvm-dev] RFC: Killing undef and spreading poison
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On 10/18/2016 3:12 PM, Sanjoy Das wrote:
But in the new proposal, in:
%x = freeze(poison) %y = xor %x, %x that is no longer allowed (%y has to be 0) -- all uses of %x will see some garbage, but fixed bit pattern.
What about this: %x = phi poison, poison (I'm simplifying the syntax here) Can this be simplified to "%x = poison", i.e. can we rauw(%x, poison)?
Or %x = load %uninitialized_var %y = load %uninitialized_var // are %x and %y equal (i.e. is "cmp eq %x, %y" == true)? // is freeze(%x) equal to freeze(%y)?
I'm wary about such rules. I have a feeling that this is going to create its own set of problems.
-Krzysztof
-- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation
- Previous message: [llvm-dev] RFC: Killing undef and spreading poison
- Next message: [llvm-dev] RFC: Killing undef and spreading poison
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]