Skip to content
  1. Apr 06, 2010
    • Chris Lattner's avatar
      fix a really nasty bug that Evan was tracking in SCCP. When resolving · adca6082
      Chris Lattner authored
      undefs in branches/switches, we have two cases: a branch on a literal
      undef or a branch on a symbolic value which is undef.  If we have a
      literal undef, the code was correct: forcing it to a constant is the
      right thing to do.
      
      If we have a branch on a symbolic value that is undef, we should force
      the symbolic value to a constant, which then makes the successor block
      live.  Forcing the condition of the branch to being a constant isn't 
      safe if later paths become live and the value becomes overdefined.  This
      is the case that 'forcedconstant' is designed to handle, so just use it.
      
      This fixes rdar://7765019 but there is no good testcase for this, the
      one I have is too insane to be useful in the future.
      
      llvm-svn: 100478
      adca6082
  2. Apr 05, 2010
  3. Apr 04, 2010
  4. Apr 03, 2010
  5. Apr 02, 2010
  6. Apr 01, 2010
  7. Mar 31, 2010
  8. Mar 30, 2010
Loading