[LLVMbugs] [Bug 11137] New: Cleanup iteration over pointer-keyed maps and other nondeterminism

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Fri Oct 14 19:23:22 PDT 2011


           Summary: Cleanup iteration over pointer-keyed maps and other
           Product: libraries
           Version: trunk
          Platform: PC
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: Scalar Optimizations
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: atrick at apple.com
                CC: chandlerc at gmail.com, llvmbugs at cs.uiuc.edu

Based on an IRC discussion, it seems to be about time for someone to sweep over
the code removing obvious sources of nondeterminism like iterating over a map
with pointer keys.

I haven't looked carefully to see if any of these cases cause noticeable
nondeterminism. It may be worth cleaning them up just to be rigorous about this
sort of thing.

In SimplifyCFG:
  for (std::map<BasicBlock*, std::pair<unsigned, unsigned> >::iterator
             I = Popularity.begin(), E = Popularity.end(); I != E; ++I) {

In DeadStoreElimination:
  for (SmallPtrSet<Value*, 16>::iterator I = DeadStackObjects.begin(),

If anyone sees other suspects, please add them to this list if you don't intend
to fix it yourself!

Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

More information about the llvm-bugs mailing list