Split resolveCycles(bool AllowTemps) into two interfaces and document
authorTeresa Johnson <tejohnson@google.com>
Mon, 11 Jan 2016 21:37:41 +0000 (21:37 +0000)
committerTeresa Johnson <tejohnson@google.com>
Mon, 11 Jan 2016 21:37:41 +0000 (21:37 +0000)
commit37ec4dcde391755d552dd7b7eb1c996ffc61c9e8
treeaa54814a699a7ce76178193b8369b795c2c06e97
parent37aa498e312aab2e7ddb22f687c1b7a32d679d0c
Split resolveCycles(bool AllowTemps) into two interfaces and document

Address review feedback from r255909.

Move body of resolveCycles(bool AllowTemps) to
resolveRecursivelyImpl(bool AllowTemps). Revert resolveCycles back
to asserting on temps, and add new resolveNonTemporaries interface
to invoke the new implementation with AllowTemps=true. Document
the differences between these interfaces, specifically the effect
on RAUW support and uniquing. Call appropriate interface from
ValueMapper.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@257389 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/IR/Metadata.h
lib/IR/Metadata.cpp
lib/Transforms/Utils/ValueMapper.cpp