llvm-6502/lib
Duncan P. N. Exon Smith 865919d60d IR: Add BasicBlock::insertInto()
Although unlinked `BasicBlock`s can be created, there's currently no way
to insert them into `Function`s after the fact.  In particular,
`moveAfter()` and `moveBefore()` require that the basic block is already
linked.

Extract the logic for initially linking a `BasicBlock` out of the
constructor and into a member function that can be used for lazy
insertion.

  - Asserts that the basic block is currently unlinked.
  - Matches the logic of the constructor.
  - Changed the constructor to use it since the logic matches.

This is needed in a follow-up commit for PR5680.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@214563 91177308-0d34-0410-b5e6-96231b3b80d8
2014-08-01 21:22:04 +00:00
..
Analysis Fix ScalarEvolutionExpander when creating a PHI in a block with duplicate predecessors 2014-07-31 19:13:38 +00:00
AsmParser
Bitcode BitcodeReader: Fix some BlockAddress forward reference corner cases 2014-08-01 21:11:34 +00:00
CodeGen [SDAG] Begin simplifying the way in which the legalizer deletes nodes. 2014-08-01 19:49:59 +00:00
DebugInfo DWOHolder takes ownership of the argument constructor, use std::unique_ptr. 2014-07-31 20:26:42 +00:00
ExecutionEngine Include Archive.h 2014-08-01 19:28:15 +00:00
IR IR: Add BasicBlock::insertInto() 2014-08-01 21:22:04 +00:00
IRReader
LineEditor
Linker
LTO
MC Add support for StackMap section for ELF/Linux systems 2014-08-01 18:47:09 +00:00
Object
Option
ProfileData
Support Remove some calls to std::move. 2014-08-01 14:31:55 +00:00
TableGen
Target Add a non-const subtarget returning function to the target machine 2014-08-01 21:18:01 +00:00
Transforms [dfsan] Correctly handle loads and stores of zero size. 2014-08-01 21:18:18 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile