llvm-6502/lib/VMCore
Chandler Carruth 602650c988 Add a routine to swap branch instruction operands, and update any
profile metadata at the same time. Use it to preserve metadata attached
to a branch when re-writing it in InstCombine.

Add metadata to the canonicalize_branch InstCombine test, and check that
it is tranformed correctly.

Reviewed by Nick Lewycky!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142168 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-17 01:11:57 +00:00
..
AsmWriter.cpp Tracing or debug-printing a newly formed instruction should not crash. 2011-09-30 19:50:40 +00:00
Attributes.cpp Add the returns_twice attribute to LLVM. 2011-10-03 14:45:37 +00:00
AutoUpgrade.cpp Remove the old atomic instrinsics. autoupgrade functionality is included with this patch. 2011-10-06 23:20:49 +00:00
BasicBlock.cpp Add getFirstInsertionPt() method. 2011-08-16 20:42:52 +00:00
CMakeLists.txt Unbreak CMake build. 2011-10-04 18:22:24 +00:00
ConstantFold.cpp Return undef value (instead of arbitrary) for wrong or undef index in 2011-09-02 17:01:40 +00:00
ConstantFold.h Convert ConstantFoldGetElementPtr to use ArrayRef. 2011-07-19 15:30:30 +00:00
Constants.cpp Change: 2011-09-21 03:09:09 +00:00
ConstantsContext.h land David Blaikie's patch to de-constify Type, with a few tweaks. 2011-07-18 04:54:35 +00:00
Core.cpp ocaml bindings: add getopcode for constant and instruction, and int64_of_const. 2011-10-14 20:37:49 +00:00
DebugInfoProbe.cpp Revert unintentional check-in. 2011-06-24 20:48:14 +00:00
DebugLoc.cpp Spacing. 2011-10-11 22:58:58 +00:00
Dominators.cpp Spruce up the error output. 2011-03-29 04:28:26 +00:00
Function.cpp constify array itself, don't iterate multiple times. 2011-10-14 22:50:21 +00:00
GCOV.cpp Put GCOVFile and other related interface in a common header so that llvm-cov tool can share it with GCOV writer. 2011-10-04 17:24:48 +00:00
Globals.cpp Micro-optimisation in getAliasedGlobal. 2011-08-01 12:28:01 +00:00
GVMaterializer.cpp
InlineAsm.cpp land David Blaikie's patch to de-constify Type, with a few tweaks. 2011-07-18 04:54:35 +00:00
Instruction.cpp Make isSafeToSpeculativelyExecute() return the right answer for some new instructions. Found by inspection; not sure what practical impact, if any, this has. 2011-09-01 21:03:03 +00:00
Instructions.cpp Add a routine to swap branch instruction operands, and update any 2011-10-17 01:11:57 +00:00
IntrinsicInst.cpp
IRBuilder.cpp land David Blaikie's patch to de-constify Type, with a few tweaks. 2011-07-18 04:54:35 +00:00
LeakDetector.cpp
LeaksContext.h
LLVMContext.cpp Make SMDiagnostic a little more sane. Instead of passing around note/warning/error as a 2011-10-16 05:43:57 +00:00
LLVMContextImpl.cpp bump pointer allocate LLVM IR types, since they are never deallocated. 2011-07-15 05:49:15 +00:00
LLVMContextImpl.h land David Blaikie's patch to de-constify Type, with a few tweaks. 2011-07-18 04:54:35 +00:00
Makefile Build system infrastructure for multiple tblgens. 2011-10-06 01:51:51 +00:00
Metadata.cpp Land the long talked about "type system rewrite" patch. This 2011-07-09 17:41:24 +00:00
Module.cpp Remove the last improper use of getGlobalContext() from LLVM. 2011-08-13 01:04:44 +00:00
Pass.cpp
PassManager.cpp Let printf do the formatting instead aligning strings ourselves. 2011-10-16 16:30:34 +00:00
PassRegistry.cpp Cosmetic changes, as per Nick's review. 2011-09-29 16:46:47 +00:00
PrintModulePass.cpp
SymbolTableListTraitsImpl.h
Type.cpp Rip out the old StructType APIs as warned about on llvmdev last week. 2011-08-18 17:39:28 +00:00
Use.cpp Remove the AugmentedUse struct. 2011-06-20 14:12:33 +00:00
User.cpp Reinstate r133513 (reverted in r133700) with an additional fix for a 2011-06-23 09:09:15 +00:00
Value.cpp land David Blaikie's patch to de-constify Type, with a few tweaks. 2011-07-18 04:54:35 +00:00
ValueSymbolTable.cpp eliminate the Type::getDescription() method, using "<<" instead. This 2011-06-18 21:18:23 +00:00
ValueTypes.cpp Add codegen support for vector select (in the IR this means a select 2011-09-06 19:07:46 +00:00
Verifier.cpp Check that catch clauses have pointer type. 2011-09-27 19:34:22 +00:00