svn commit: r202375 - in vendor/llvm/dist: . autoconf cmake/modules docs include/llvm include/llvm-c include/llvm/ADT include/llvm/Analysis include/llvm/Bitcode include/llvm/CodeGen include/llvm/MC...

Roman Divacky rdivacky at FreeBSD.org
Fri Jan 15 15:37:29 UTC 2010


Author: rdivacky
Date: Fri Jan 15 15:37:28 2010
New Revision: 202375
URL: http://svn.freebsd.org/changeset/base/202375

Log:
  Update LLVM to 93512.

Added:
  vendor/llvm/dist/include/llvm/ADT/SmallBitVector.h
  vendor/llvm/dist/include/llvm/MC/MCParsedAsmOperand.h
  vendor/llvm/dist/lib/CodeGen/OptimizeExts.cpp
  vendor/llvm/dist/lib/Transforms/InstCombine/
  vendor/llvm/dist/lib/Transforms/InstCombine/CMakeLists.txt
  vendor/llvm/dist/lib/Transforms/InstCombine/InstCombine.h
  vendor/llvm/dist/lib/Transforms/InstCombine/InstCombineAddSub.cpp
  vendor/llvm/dist/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
  vendor/llvm/dist/lib/Transforms/InstCombine/InstCombineCalls.cpp
  vendor/llvm/dist/lib/Transforms/InstCombine/InstCombineCasts.cpp
  vendor/llvm/dist/lib/Transforms/InstCombine/InstCombineCompares.cpp
  vendor/llvm/dist/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
  vendor/llvm/dist/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
  vendor/llvm/dist/lib/Transforms/InstCombine/InstCombinePHI.cpp
  vendor/llvm/dist/lib/Transforms/InstCombine/InstCombineSelect.cpp
  vendor/llvm/dist/lib/Transforms/InstCombine/InstCombineShifts.cpp
  vendor/llvm/dist/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
  vendor/llvm/dist/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
  vendor/llvm/dist/lib/Transforms/InstCombine/InstCombineWorklist.h
  vendor/llvm/dist/lib/Transforms/InstCombine/InstructionCombining.cpp
  vendor/llvm/dist/lib/Transforms/InstCombine/Makefile
  vendor/llvm/dist/test/Assembler/functionlocal-metadata.ll
  vendor/llvm/dist/test/CodeGen/MSP430/shifts.ll
  vendor/llvm/dist/test/CodeGen/SystemZ/2010-01-04-DivMem.ll
  vendor/llvm/dist/test/CodeGen/Thumb2/2010-01-06-TailDuplicateLabels.ll
  vendor/llvm/dist/test/CodeGen/X86/2007-01-08-X86-64-Pointer.ll
  vendor/llvm/dist/test/CodeGen/X86/2010-01-05-ZExt-Shl.ll
  vendor/llvm/dist/test/CodeGen/X86/2010-01-07-ISelBug.ll
  vendor/llvm/dist/test/CodeGen/X86/2010-01-07-UAMemFeature.ll
  vendor/llvm/dist/test/CodeGen/X86/2010-01-08-Atomic64Bug.ll
  vendor/llvm/dist/test/CodeGen/X86/2010-01-11-ExtraPHIArg.ll
  vendor/llvm/dist/test/CodeGen/X86/2010-01-13-OptExtBug.ll
  vendor/llvm/dist/test/CodeGen/X86/3addr-or.ll
  vendor/llvm/dist/test/CodeGen/X86/addr-label-difference.ll
  vendor/llvm/dist/test/CodeGen/X86/br-fold.ll
  vendor/llvm/dist/test/CodeGen/X86/brcond.ll
  vendor/llvm/dist/test/CodeGen/X86/remat-mov-0.ll
  vendor/llvm/dist/test/CodeGen/X86/sext-subreg.ll
  vendor/llvm/dist/test/CodeGen/X86/tailcall-largecode.ll
  vendor/llvm/dist/test/CodeGen/X86/twoaddr-lea.ll
  vendor/llvm/dist/test/CodeGen/X86/use-add-flags.ll
  vendor/llvm/dist/test/CodeGen/X86/vec_cast.ll
  vendor/llvm/dist/test/CodeGen/X86/xor-icmp.ll
  vendor/llvm/dist/test/DebugInfo/2010-01-05-DbgScope.ll
  vendor/llvm/dist/test/ExecutionEngine/2010-01-15-UndefValue.ll
  vendor/llvm/dist/test/FrontendC/2010-01-05-LinkageName.c
  vendor/llvm/dist/test/FrontendC/2010-01-13-MemBarrier.c
  vendor/llvm/dist/test/FrontendC/2010-01-14-FnType-DebugInfo.c
  vendor/llvm/dist/test/FrontendC/2010-01-14-StaticVariable.c
  vendor/llvm/dist/test/TableGen/eq.td
  vendor/llvm/dist/test/Transforms/GlobalOpt/crash.ll
  vendor/llvm/dist/test/Transforms/InstCombine/fsub-fadd.ll
  vendor/llvm/dist/test/Transforms/InstCombine/load-cmp.ll
  vendor/llvm/dist/test/Transforms/Reassociate/crash.ll
  vendor/llvm/dist/unittests/ADT/BitVectorTest.cpp
  vendor/llvm/dist/unittests/ADT/SmallBitVectorTest.cpp
Deleted:
  vendor/llvm/dist/lib/Transforms/Instrumentation/BlockProfiling.cpp
  vendor/llvm/dist/lib/Transforms/Instrumentation/RSProfiling.cpp
  vendor/llvm/dist/lib/Transforms/Instrumentation/RSProfiling.h
  vendor/llvm/dist/lib/Transforms/Scalar/InstructionCombining.cpp
  vendor/llvm/dist/test/CodeGen/X86/anyext-uses.ll
  vendor/llvm/dist/test/CodeGen/X86/brcond-srl.ll
  vendor/llvm/dist/test/DebugInfo/2009-12-01-CurrentFn.ll
  vendor/llvm/dist/test/Transforms/IndVarSimplify/2007-01-08-X86-64-Pointer.ll
  vendor/llvm/dist/test/Transforms/InstCombine/cast-and-cast.ll
  vendor/llvm/dist/test/Transforms/InstCombine/cast-cast-to-and.ll
  vendor/llvm/dist/test/Transforms/InstCombine/cast-load-gep.ll
  vendor/llvm/dist/test/Transforms/InstCombine/cast-propagate.ll
  vendor/llvm/dist/test/Transforms/InstCombine/cast-sext-zext.ll
  vendor/llvm/dist/test/Transforms/InstCombine/cast2.ll
  vendor/llvm/dist/test/Transforms/InstCombine/cast3.ll
  vendor/llvm/dist/test/Transforms/InstCombine/cast_ld_addr_space.ll
  vendor/llvm/dist/test/Transforms/InstCombine/setcc-cast-cast.ll
  vendor/llvm/dist/test/Transforms/LICM/licm_preserve_dbginfo.ll
Modified:
  vendor/llvm/dist/CMakeLists.txt
  vendor/llvm/dist/LICENSE.TXT
  vendor/llvm/dist/autoconf/configure.ac
  vendor/llvm/dist/cmake/modules/LLVMLibDeps.cmake
  vendor/llvm/dist/configure
  vendor/llvm/dist/docs/CodeGenerator.html
  vendor/llvm/dist/docs/LangRef.html
  vendor/llvm/dist/docs/ProgrammersManual.html
  vendor/llvm/dist/docs/ReleaseNotes.html
  vendor/llvm/dist/docs/SourceLevelDebugging.html
  vendor/llvm/dist/docs/TableGenFundamentals.html
  vendor/llvm/dist/include/llvm-c/Analysis.h
  vendor/llvm/dist/include/llvm-c/BitReader.h
  vendor/llvm/dist/include/llvm-c/Core.h
  vendor/llvm/dist/include/llvm-c/ExecutionEngine.h
  vendor/llvm/dist/include/llvm-c/Target.h
  vendor/llvm/dist/include/llvm/ADT/BitVector.h
  vendor/llvm/dist/include/llvm/ADT/StringExtras.h
  vendor/llvm/dist/include/llvm/ADT/StringRef.h
  vendor/llvm/dist/include/llvm/ADT/Twine.h
  vendor/llvm/dist/include/llvm/Analysis/AliasAnalysis.h
  vendor/llvm/dist/include/llvm/Analysis/DebugInfo.h
  vendor/llvm/dist/include/llvm/Analysis/DominatorInternals.h
  vendor/llvm/dist/include/llvm/Analysis/Dominators.h
  vendor/llvm/dist/include/llvm/Analysis/LoopInfo.h
  vendor/llvm/dist/include/llvm/Analysis/PostDominators.h
  vendor/llvm/dist/include/llvm/Attributes.h
  vendor/llvm/dist/include/llvm/Bitcode/LLVMBitCodes.h
  vendor/llvm/dist/include/llvm/CodeGen/DAGISelHeader.h
  vendor/llvm/dist/include/llvm/CodeGen/FastISel.h
  vendor/llvm/dist/include/llvm/CodeGen/MachineFunction.h
  vendor/llvm/dist/include/llvm/CodeGen/MachineInstr.h
  vendor/llvm/dist/include/llvm/CodeGen/MachineInstrBuilder.h
  vendor/llvm/dist/include/llvm/CodeGen/MachineLoopInfo.h
  vendor/llvm/dist/include/llvm/CodeGen/MachineOperand.h
  vendor/llvm/dist/include/llvm/CodeGen/Passes.h
  vendor/llvm/dist/include/llvm/CodeGen/SelectionDAGISel.h
  vendor/llvm/dist/include/llvm/CodeGen/ValueTypes.h
  vendor/llvm/dist/include/llvm/IntrinsicInst.h
  vendor/llvm/dist/include/llvm/Intrinsics.td
  vendor/llvm/dist/include/llvm/LinkAllPasses.h
  vendor/llvm/dist/include/llvm/MC/MCAsmLexer.h
  vendor/llvm/dist/include/llvm/MC/MCSymbol.h
  vendor/llvm/dist/include/llvm/Metadata.h
  vendor/llvm/dist/include/llvm/Module.h
  vendor/llvm/dist/include/llvm/Support/CFG.h
  vendor/llvm/dist/include/llvm/Support/FormattedStream.h
  vendor/llvm/dist/include/llvm/Support/Mangler.h
  vendor/llvm/dist/include/llvm/Support/MathExtras.h
  vendor/llvm/dist/include/llvm/Support/PatternMatch.h
  vendor/llvm/dist/include/llvm/Target/Target.td
  vendor/llvm/dist/include/llvm/Target/TargetAsmParser.h
  vendor/llvm/dist/include/llvm/Target/TargetInstrInfo.h
  vendor/llvm/dist/include/llvm/Target/TargetLowering.h
  vendor/llvm/dist/include/llvm/Target/TargetLoweringObjectFile.h
  vendor/llvm/dist/include/llvm/Target/TargetRegisterInfo.h
  vendor/llvm/dist/include/llvm/Target/TargetSelectionDAG.td
  vendor/llvm/dist/include/llvm/Transforms/Instrumentation.h
  vendor/llvm/dist/include/llvm/Transforms/Utils/BasicBlockUtils.h
  vendor/llvm/dist/include/llvm/Transforms/Utils/Local.h
  vendor/llvm/dist/include/llvm/Type.h
  vendor/llvm/dist/include/llvm/ValueSymbolTable.h
  vendor/llvm/dist/lib/Analysis/AliasAnalysis.cpp
  vendor/llvm/dist/lib/Analysis/Analysis.cpp
  vendor/llvm/dist/lib/Analysis/ConstantFolding.cpp
  vendor/llvm/dist/lib/Analysis/DbgInfoPrinter.cpp
  vendor/llvm/dist/lib/Analysis/DebugInfo.cpp
  vendor/llvm/dist/lib/Analysis/IVUsers.cpp
  vendor/llvm/dist/lib/Analysis/InlineCost.cpp
  vendor/llvm/dist/lib/Analysis/LoopInfo.cpp
  vendor/llvm/dist/lib/Analysis/ScalarEvolution.cpp
  vendor/llvm/dist/lib/Analysis/ValueTracking.cpp
  vendor/llvm/dist/lib/AsmParser/LLParser.cpp
  vendor/llvm/dist/lib/AsmParser/LLParser.h
  vendor/llvm/dist/lib/Bitcode/Reader/BitReader.cpp
  vendor/llvm/dist/lib/Bitcode/Reader/BitcodeReader.cpp
  vendor/llvm/dist/lib/Bitcode/Writer/BitcodeWriter.cpp
  vendor/llvm/dist/lib/Bitcode/Writer/ValueEnumerator.cpp
  vendor/llvm/dist/lib/Bitcode/Writer/ValueEnumerator.h
  vendor/llvm/dist/lib/CodeGen/AggressiveAntiDepBreaker.cpp
  vendor/llvm/dist/lib/CodeGen/AggressiveAntiDepBreaker.h
  vendor/llvm/dist/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
  vendor/llvm/dist/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
  vendor/llvm/dist/lib/CodeGen/CMakeLists.txt
  vendor/llvm/dist/lib/CodeGen/CriticalAntiDepBreaker.cpp
  vendor/llvm/dist/lib/CodeGen/CriticalAntiDepBreaker.h
  vendor/llvm/dist/lib/CodeGen/DeadMachineInstructionElim.cpp
  vendor/llvm/dist/lib/CodeGen/ELFCodeEmitter.cpp
  vendor/llvm/dist/lib/CodeGen/ELFWriter.cpp
  vendor/llvm/dist/lib/CodeGen/ExactHazardRecognizer.cpp
  vendor/llvm/dist/lib/CodeGen/GCMetadata.cpp
  vendor/llvm/dist/lib/CodeGen/GCStrategy.cpp
  vendor/llvm/dist/lib/CodeGen/IfConversion.cpp
  vendor/llvm/dist/lib/CodeGen/IntrinsicLowering.cpp
  vendor/llvm/dist/lib/CodeGen/LLVMTargetMachine.cpp
  vendor/llvm/dist/lib/CodeGen/LiveInterval.cpp
  vendor/llvm/dist/lib/CodeGen/LiveIntervalAnalysis.cpp
  vendor/llvm/dist/lib/CodeGen/LiveVariables.cpp
  vendor/llvm/dist/lib/CodeGen/LowerSubregs.cpp
  vendor/llvm/dist/lib/CodeGen/MachOWriter.cpp
  vendor/llvm/dist/lib/CodeGen/MachineBasicBlock.cpp
  vendor/llvm/dist/lib/CodeGen/MachineFunction.cpp
  vendor/llvm/dist/lib/CodeGen/MachineInstr.cpp
  vendor/llvm/dist/lib/CodeGen/MachineLICM.cpp
  vendor/llvm/dist/lib/CodeGen/MachineLoopInfo.cpp
  vendor/llvm/dist/lib/CodeGen/MachineSSAUpdater.cpp
  vendor/llvm/dist/lib/CodeGen/MachineSink.cpp
  vendor/llvm/dist/lib/CodeGen/MachineVerifier.cpp
  vendor/llvm/dist/lib/CodeGen/PBQP/AnnotatedGraph.h
  vendor/llvm/dist/lib/CodeGen/PBQP/ExhaustiveSolver.h
  vendor/llvm/dist/lib/CodeGen/PBQP/GraphBase.h
  vendor/llvm/dist/lib/CodeGen/PBQP/HeuristicSolver.h
  vendor/llvm/dist/lib/CodeGen/PBQP/Heuristics/Briggs.h
  vendor/llvm/dist/lib/CodeGen/PBQP/PBQPMath.h
  vendor/llvm/dist/lib/CodeGen/PBQP/SimpleGraph.h
  vendor/llvm/dist/lib/CodeGen/PBQP/Solution.h
  vendor/llvm/dist/lib/CodeGen/PBQP/Solver.h
  vendor/llvm/dist/lib/CodeGen/PHIElimination.cpp
  vendor/llvm/dist/lib/CodeGen/PostRASchedulerList.cpp
  vendor/llvm/dist/lib/CodeGen/PreAllocSplitting.cpp
  vendor/llvm/dist/lib/CodeGen/ProcessImplicitDefs.cpp
  vendor/llvm/dist/lib/CodeGen/RegAllocLinearScan.cpp
  vendor/llvm/dist/lib/CodeGen/RegAllocLocal.cpp
  vendor/llvm/dist/lib/CodeGen/RegAllocPBQP.cpp
  vendor/llvm/dist/lib/CodeGen/ScheduleDAG.cpp
  vendor/llvm/dist/lib/CodeGen/SelectionDAG/CallingConvLower.cpp
  vendor/llvm/dist/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
  vendor/llvm/dist/lib/CodeGen/SelectionDAG/FastISel.cpp
  vendor/llvm/dist/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
  vendor/llvm/dist/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
  vendor/llvm/dist/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
  vendor/llvm/dist/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
  vendor/llvm/dist/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp
  vendor/llvm/dist/lib/CodeGen/SelectionDAG/LegalizeTypes.h
  vendor/llvm/dist/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
  vendor/llvm/dist/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
  vendor/llvm/dist/lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp
  vendor/llvm/dist/lib/CodeGen/SelectionDAG/ScheduleDAGList.cpp
  vendor/llvm/dist/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp
  vendor/llvm/dist/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
  vendor/llvm/dist/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
  vendor/llvm/dist/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
  vendor/llvm/dist/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
  vendor/llvm/dist/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
  vendor/llvm/dist/lib/CodeGen/SelectionDAG/SelectionDAGPrinter.cpp
  vendor/llvm/dist/lib/CodeGen/SelectionDAG/TargetLowering.cpp
  vendor/llvm/dist/lib/CodeGen/ShrinkWrapping.cpp
  vendor/llvm/dist/lib/CodeGen/SimpleRegisterCoalescing.cpp
  vendor/llvm/dist/lib/CodeGen/SjLjEHPrepare.cpp
  vendor/llvm/dist/lib/CodeGen/SlotIndexes.cpp
  vendor/llvm/dist/lib/CodeGen/Spiller.cpp
  vendor/llvm/dist/lib/CodeGen/StackProtector.cpp
  vendor/llvm/dist/lib/CodeGen/StackSlotColoring.cpp
  vendor/llvm/dist/lib/CodeGen/StrongPHIElimination.cpp
  vendor/llvm/dist/lib/CodeGen/TailDuplication.cpp
  vendor/llvm/dist/lib/CodeGen/TargetInstrInfoImpl.cpp
  vendor/llvm/dist/lib/CodeGen/TwoAddressInstructionPass.cpp
  vendor/llvm/dist/lib/CodeGen/VirtRegMap.cpp
  vendor/llvm/dist/lib/CodeGen/VirtRegRewriter.cpp
  vendor/llvm/dist/lib/ExecutionEngine/ExecutionEngine.cpp
  vendor/llvm/dist/lib/ExecutionEngine/ExecutionEngineBindings.cpp
  vendor/llvm/dist/lib/ExecutionEngine/Interpreter/Execution.cpp
  vendor/llvm/dist/lib/ExecutionEngine/JIT/JIT.cpp
  vendor/llvm/dist/lib/ExecutionEngine/JIT/JITEmitter.cpp
  vendor/llvm/dist/lib/ExecutionEngine/JIT/JITMemoryManager.cpp
  vendor/llvm/dist/lib/ExecutionEngine/JIT/OProfileJITEventListener.cpp
  vendor/llvm/dist/lib/Linker/LinkModules.cpp
  vendor/llvm/dist/lib/MC/MCExpr.cpp
  vendor/llvm/dist/lib/MC/MCInst.cpp
  vendor/llvm/dist/lib/MC/MCSectionELF.cpp
  vendor/llvm/dist/lib/MC/MCSymbol.cpp
  vendor/llvm/dist/lib/MC/MCValue.cpp
  vendor/llvm/dist/lib/Support/APInt.cpp
  vendor/llvm/dist/lib/Support/CommandLine.cpp
  vendor/llvm/dist/lib/Support/ConstantRange.cpp
  vendor/llvm/dist/lib/Support/ErrorHandling.cpp
  vendor/llvm/dist/lib/Support/FormattedStream.cpp
  vendor/llvm/dist/lib/Support/Statistic.cpp
  vendor/llvm/dist/lib/Support/StringExtras.cpp
  vendor/llvm/dist/lib/Support/StringRef.cpp
  vendor/llvm/dist/lib/Support/Timer.cpp
  vendor/llvm/dist/lib/Support/Twine.cpp
  vendor/llvm/dist/lib/System/Win32/DynamicLibrary.inc
  vendor/llvm/dist/lib/Target/ARM/ARMBaseInstrInfo.cpp
  vendor/llvm/dist/lib/Target/ARM/ARMBaseInstrInfo.h
  vendor/llvm/dist/lib/Target/ARM/ARMBaseRegisterInfo.cpp
  vendor/llvm/dist/lib/Target/ARM/ARMISelDAGToDAG.cpp
  vendor/llvm/dist/lib/Target/ARM/ARMISelLowering.cpp
  vendor/llvm/dist/lib/Target/ARM/ARMInstrInfo.td
  vendor/llvm/dist/lib/Target/ARM/ARMInstrThumb.td
  vendor/llvm/dist/lib/Target/ARM/ARMInstrThumb2.td
  vendor/llvm/dist/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
  vendor/llvm/dist/lib/Target/ARM/ARMRegisterInfo.td
  vendor/llvm/dist/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
  vendor/llvm/dist/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp
  vendor/llvm/dist/lib/Target/Alpha/AlphaISelDAGToDAG.cpp
  vendor/llvm/dist/lib/Target/Blackfin/AsmPrinter/BlackfinAsmPrinter.cpp
  vendor/llvm/dist/lib/Target/Blackfin/BlackfinISelDAGToDAG.cpp
  vendor/llvm/dist/lib/Target/CBackend/CBackend.cpp
  vendor/llvm/dist/lib/Target/CellSPU/SPUISelDAGToDAG.cpp
  vendor/llvm/dist/lib/Target/MSP430/MSP430ISelDAGToDAG.cpp
  vendor/llvm/dist/lib/Target/MSP430/MSP430ISelLowering.cpp
  vendor/llvm/dist/lib/Target/MSP430/MSP430InstrInfo.td
  vendor/llvm/dist/lib/Target/Mips/MipsISelDAGToDAG.cpp
  vendor/llvm/dist/lib/Target/PIC16/PIC16ISelDAGToDAG.cpp
  vendor/llvm/dist/lib/Target/PIC16/PIC16ISelDAGToDAG.h
  vendor/llvm/dist/lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp
  vendor/llvm/dist/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
  vendor/llvm/dist/lib/Target/PowerPC/PPCInstrInfo.td
  vendor/llvm/dist/lib/Target/PowerPC/PPCJITInfo.cpp
  vendor/llvm/dist/lib/Target/PowerPC/PPCMCAsmInfo.cpp
  vendor/llvm/dist/lib/Target/PowerPC/README.txt
  vendor/llvm/dist/lib/Target/README.txt
  vendor/llvm/dist/lib/Target/Sparc/SparcISelDAGToDAG.cpp
  vendor/llvm/dist/lib/Target/SubtargetFeature.cpp
  vendor/llvm/dist/lib/Target/SystemZ/SystemZISelDAGToDAG.cpp
  vendor/llvm/dist/lib/Target/Target.cpp
  vendor/llvm/dist/lib/Target/TargetLoweringObjectFile.cpp
  vendor/llvm/dist/lib/Target/X86/AsmParser/X86AsmParser.cpp
  vendor/llvm/dist/lib/Target/X86/AsmPrinter/X86AsmPrinter.cpp
  vendor/llvm/dist/lib/Target/X86/AsmPrinter/X86MCInstLower.cpp
  vendor/llvm/dist/lib/Target/X86/README-SSE.txt
  vendor/llvm/dist/lib/Target/X86/README.txt
  vendor/llvm/dist/lib/Target/X86/X86.td
  vendor/llvm/dist/lib/Target/X86/X86CodeEmitter.cpp
  vendor/llvm/dist/lib/Target/X86/X86FastISel.cpp
  vendor/llvm/dist/lib/Target/X86/X86FloatingPoint.cpp
  vendor/llvm/dist/lib/Target/X86/X86ISelDAGToDAG.cpp
  vendor/llvm/dist/lib/Target/X86/X86ISelLowering.cpp
  vendor/llvm/dist/lib/Target/X86/X86Instr64bit.td
  vendor/llvm/dist/lib/Target/X86/X86InstrInfo.cpp
  vendor/llvm/dist/lib/Target/X86/X86InstrInfo.h
  vendor/llvm/dist/lib/Target/X86/X86InstrInfo.td
  vendor/llvm/dist/lib/Target/X86/X86InstrSSE.td
  vendor/llvm/dist/lib/Target/X86/X86JITInfo.cpp
  vendor/llvm/dist/lib/Target/X86/X86RegisterInfo.cpp
  vendor/llvm/dist/lib/Target/X86/X86Subtarget.cpp
  vendor/llvm/dist/lib/Target/X86/X86Subtarget.h
  vendor/llvm/dist/lib/Target/XCore/XCoreISelDAGToDAG.cpp
  vendor/llvm/dist/lib/Transforms/IPO/ArgumentPromotion.cpp
  vendor/llvm/dist/lib/Transforms/IPO/DeadArgumentElimination.cpp
  vendor/llvm/dist/lib/Transforms/IPO/FunctionAttrs.cpp
  vendor/llvm/dist/lib/Transforms/IPO/GlobalOpt.cpp
  vendor/llvm/dist/lib/Transforms/IPO/Inliner.cpp
  vendor/llvm/dist/lib/Transforms/IPO/Internalize.cpp
  vendor/llvm/dist/lib/Transforms/IPO/MergeFunctions.cpp
  vendor/llvm/dist/lib/Transforms/IPO/PartialInlining.cpp
  vendor/llvm/dist/lib/Transforms/IPO/StructRetPromotion.cpp
  vendor/llvm/dist/lib/Transforms/Instrumentation/CMakeLists.txt
  vendor/llvm/dist/lib/Transforms/Instrumentation/OptimalEdgeProfiling.cpp
  vendor/llvm/dist/lib/Transforms/Instrumentation/ProfilingUtils.cpp
  vendor/llvm/dist/lib/Transforms/Makefile
  vendor/llvm/dist/lib/Transforms/Scalar/ABCD.cpp
  vendor/llvm/dist/lib/Transforms/Scalar/ADCE.cpp
  vendor/llvm/dist/lib/Transforms/Scalar/CMakeLists.txt
  vendor/llvm/dist/lib/Transforms/Scalar/CodeGenPrepare.cpp
  vendor/llvm/dist/lib/Transforms/Scalar/DeadStoreElimination.cpp
  vendor/llvm/dist/lib/Transforms/Scalar/GVN.cpp
  vendor/llvm/dist/lib/Transforms/Scalar/IndVarSimplify.cpp
  vendor/llvm/dist/lib/Transforms/Scalar/JumpThreading.cpp
  vendor/llvm/dist/lib/Transforms/Scalar/LICM.cpp
  vendor/llvm/dist/lib/Transforms/Scalar/LoopIndexSplit.cpp
  vendor/llvm/dist/lib/Transforms/Scalar/LoopStrengthReduce.cpp
  vendor/llvm/dist/lib/Transforms/Scalar/LoopUnrollPass.cpp
  vendor/llvm/dist/lib/Transforms/Scalar/LoopUnswitch.cpp
  vendor/llvm/dist/lib/Transforms/Scalar/MemCpyOptimizer.cpp
  vendor/llvm/dist/lib/Transforms/Scalar/Reassociate.cpp
  vendor/llvm/dist/lib/Transforms/Scalar/SCCP.cpp
  vendor/llvm/dist/lib/Transforms/Scalar/SCCVN.cpp
  vendor/llvm/dist/lib/Transforms/Scalar/ScalarReplAggregates.cpp
  vendor/llvm/dist/lib/Transforms/Scalar/SimplifyCFGPass.cpp
  vendor/llvm/dist/lib/Transforms/Scalar/SimplifyLibCalls.cpp
  vendor/llvm/dist/lib/Transforms/Scalar/TailDuplication.cpp
  vendor/llvm/dist/lib/Transforms/Utils/AddrModeMatcher.cpp
  vendor/llvm/dist/lib/Transforms/Utils/BasicBlockUtils.cpp
  vendor/llvm/dist/lib/Transforms/Utils/BasicInliner.cpp
  vendor/llvm/dist/lib/Transforms/Utils/CloneFunction.cpp
  vendor/llvm/dist/lib/Transforms/Utils/CloneLoop.cpp
  vendor/llvm/dist/lib/Transforms/Utils/CodeExtractor.cpp
  vendor/llvm/dist/lib/Transforms/Utils/InlineFunction.cpp
  vendor/llvm/dist/lib/Transforms/Utils/InstructionNamer.cpp
  vendor/llvm/dist/lib/Transforms/Utils/Local.cpp
  vendor/llvm/dist/lib/Transforms/Utils/LoopUnroll.cpp
  vendor/llvm/dist/lib/Transforms/Utils/LowerInvoke.cpp
  vendor/llvm/dist/lib/Transforms/Utils/LowerSwitch.cpp
  vendor/llvm/dist/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
  vendor/llvm/dist/lib/Transforms/Utils/SSAUpdater.cpp
  vendor/llvm/dist/lib/Transforms/Utils/SSI.cpp
  vendor/llvm/dist/lib/Transforms/Utils/SimplifyCFG.cpp
  vendor/llvm/dist/lib/Transforms/Utils/UnifyFunctionExitNodes.cpp
  vendor/llvm/dist/lib/VMCore/AsmWriter.cpp
  vendor/llvm/dist/lib/VMCore/Attributes.cpp
  vendor/llvm/dist/lib/VMCore/AutoUpgrade.cpp
  vendor/llvm/dist/lib/VMCore/ConstantFold.cpp
  vendor/llvm/dist/lib/VMCore/Constants.cpp
  vendor/llvm/dist/lib/VMCore/ConstantsContext.h
  vendor/llvm/dist/lib/VMCore/Core.cpp
  vendor/llvm/dist/lib/VMCore/Function.cpp
  vendor/llvm/dist/lib/VMCore/InlineAsm.cpp
  vendor/llvm/dist/lib/VMCore/Instruction.cpp
  vendor/llvm/dist/lib/VMCore/Instructions.cpp
  vendor/llvm/dist/lib/VMCore/IntrinsicInst.cpp
  vendor/llvm/dist/lib/VMCore/Mangler.cpp
  vendor/llvm/dist/lib/VMCore/Metadata.cpp
  vendor/llvm/dist/lib/VMCore/Module.cpp
  vendor/llvm/dist/lib/VMCore/Pass.cpp
  vendor/llvm/dist/lib/VMCore/PassManager.cpp
  vendor/llvm/dist/lib/VMCore/PrintModulePass.cpp
  vendor/llvm/dist/lib/VMCore/Type.cpp
  vendor/llvm/dist/lib/VMCore/TypeSymbolTable.cpp
  vendor/llvm/dist/lib/VMCore/TypesContext.h
  vendor/llvm/dist/lib/VMCore/Value.cpp
  vendor/llvm/dist/lib/VMCore/ValueSymbolTable.cpp
  vendor/llvm/dist/lib/VMCore/Verifier.cpp
  vendor/llvm/dist/runtime/libprofile/exported_symbols.lst
  vendor/llvm/dist/test/Analysis/BasicAA/2007-11-05-SizeCrash.ll
  vendor/llvm/dist/test/Analysis/ScalarEvolution/2007-07-15-NegativeStride.ll
  vendor/llvm/dist/test/Analysis/ScalarEvolution/2007-08-06-Unsigned.ll
  vendor/llvm/dist/test/Analysis/ScalarEvolution/2008-02-11-ReversedCondition.ll
  vendor/llvm/dist/test/Analysis/ScalarEvolution/2008-02-12-SMAXTripCount.ll
  vendor/llvm/dist/test/Analysis/ScalarEvolution/2008-11-18-LessThanOrEqual.ll
  vendor/llvm/dist/test/Analysis/ScalarEvolution/2008-11-18-Stride1.ll
  vendor/llvm/dist/test/Analysis/ScalarEvolution/avoid-smax-0.ll
  vendor/llvm/dist/test/Analysis/ScalarEvolution/max-trip-count.ll
  vendor/llvm/dist/test/Analysis/ScalarEvolution/nsw-offset.ll
  vendor/llvm/dist/test/Analysis/ScalarEvolution/nsw.ll
  vendor/llvm/dist/test/Analysis/ScalarEvolution/sext-inreg.ll
  vendor/llvm/dist/test/Analysis/ScalarEvolution/sext-iv-0.ll
  vendor/llvm/dist/test/Analysis/ScalarEvolution/sext-iv-1.ll
  vendor/llvm/dist/test/Analysis/ScalarEvolution/sext-iv-2.ll
  vendor/llvm/dist/test/Analysis/ScalarEvolution/trip-count3.ll
  vendor/llvm/dist/test/Analysis/ScalarEvolution/trip-count7.ll
  vendor/llvm/dist/test/Analysis/ScalarEvolution/trip-count8.ll
  vendor/llvm/dist/test/Analysis/ScalarEvolution/zext-wrap.ll
  vendor/llvm/dist/test/Assembler/vector-cmp.ll
  vendor/llvm/dist/test/CodeGen/ARM/indirectbr.ll
  vendor/llvm/dist/test/CodeGen/ARM/private.ll
  vendor/llvm/dist/test/CodeGen/ARM/tail-opts.ll
  vendor/llvm/dist/test/CodeGen/Alpha/private.ll
  vendor/llvm/dist/test/CodeGen/Blackfin/2009-08-15-SetCC-Undef.ll
  vendor/llvm/dist/test/CodeGen/Blackfin/ct32.ll
  vendor/llvm/dist/test/CodeGen/Blackfin/ct64.ll
  vendor/llvm/dist/test/CodeGen/Blackfin/ctlz16.ll
  vendor/llvm/dist/test/CodeGen/Blackfin/ctpop16.ll
  vendor/llvm/dist/test/CodeGen/Blackfin/cttz16.ll
  vendor/llvm/dist/test/CodeGen/Blackfin/promote-logic.ll
  vendor/llvm/dist/test/CodeGen/CellSPU/dp_farith.ll
  vendor/llvm/dist/test/CodeGen/CellSPU/mul_ops.ll
  vendor/llvm/dist/test/CodeGen/CellSPU/private.ll
  vendor/llvm/dist/test/CodeGen/Generic/2009-03-29-SoftFloatVectorExtract.ll
  vendor/llvm/dist/test/CodeGen/Generic/2009-04-28-i128-cmp-crash.ll
  vendor/llvm/dist/test/CodeGen/MSP430/bit.ll
  vendor/llvm/dist/test/CodeGen/MSP430/setcc.ll
  vendor/llvm/dist/test/CodeGen/Mips/private.ll
  vendor/llvm/dist/test/CodeGen/PowerPC/indirectbr.ll
  vendor/llvm/dist/test/CodeGen/PowerPC/private.ll
  vendor/llvm/dist/test/CodeGen/SPARC/private.ll
  vendor/llvm/dist/test/CodeGen/SystemZ/2009-06-02-Rotate.ll
  vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-add.ll
  vendor/llvm/dist/test/CodeGen/X86/2006-05-11-InstrSched.ll
  vendor/llvm/dist/test/CodeGen/X86/2007-02-04-OrAddrMode.ll
  vendor/llvm/dist/test/CodeGen/X86/2009-02-26-MachineLICMBug.ll
  vendor/llvm/dist/test/CodeGen/X86/2009-05-23-dagcombine-shifts.ll
  vendor/llvm/dist/test/CodeGen/X86/2009-11-16-MachineLICM.ll
  vendor/llvm/dist/test/CodeGen/X86/and-su.ll
  vendor/llvm/dist/test/CodeGen/X86/darwin-bzero.ll
  vendor/llvm/dist/test/CodeGen/X86/extractelement-shuffle.ll
  vendor/llvm/dist/test/CodeGen/X86/fast-isel.ll
  vendor/llvm/dist/test/CodeGen/X86/fold-load.ll
  vendor/llvm/dist/test/CodeGen/X86/lsr-sort.ll
  vendor/llvm/dist/test/CodeGen/X86/mul-legalize.ll
  vendor/llvm/dist/test/CodeGen/X86/private.ll
  vendor/llvm/dist/test/CodeGen/X86/stack-color-with-reg.ll
  vendor/llvm/dist/test/CodeGen/X86/stride-nine-with-base-reg.ll
  vendor/llvm/dist/test/CodeGen/X86/tail-opts.ll
  vendor/llvm/dist/test/CodeGen/X86/test-nofold.ll
  vendor/llvm/dist/test/CodeGen/X86/vec_ext_inreg.ll
  vendor/llvm/dist/test/CodeGen/X86/vec_shuffle-22.ll
  vendor/llvm/dist/test/CodeGen/X86/vec_shuffle-25.ll
  vendor/llvm/dist/test/CodeGen/X86/vec_shuffle-26.ll
  vendor/llvm/dist/test/CodeGen/X86/widen_select-1.ll
  vendor/llvm/dist/test/CodeGen/X86/widen_shuffle-1.ll
  vendor/llvm/dist/test/CodeGen/X86/widen_shuffle-2.ll
  vendor/llvm/dist/test/CodeGen/X86/x86-64-and-mask.ll
  vendor/llvm/dist/test/CodeGen/X86/x86-64-jumps.ll
  vendor/llvm/dist/test/CodeGen/XCore/2009-03-27-v2f64-param.ll
  vendor/llvm/dist/test/CodeGen/XCore/private.ll
  vendor/llvm/dist/test/DebugInfo/2009-10-16-Scope.ll
  vendor/llvm/dist/test/DebugInfo/printdbginfo2.ll
  vendor/llvm/dist/test/Feature/NamedMDNode.ll
  vendor/llvm/dist/test/FrontendC/cstring-align.c
  vendor/llvm/dist/test/Integer/BitPacked.ll
  vendor/llvm/dist/test/Integer/packed_bt.ll
  vendor/llvm/dist/test/Integer/testvarargs_bt.ll
  vendor/llvm/dist/test/Other/2007-06-28-PassManager.ll
  vendor/llvm/dist/test/Other/2008-02-14-PassManager.ll
  vendor/llvm/dist/test/Other/2008-08-14-PassManager.ll
  vendor/llvm/dist/test/Other/2009-06-05-no-implicit-float.ll
  vendor/llvm/dist/test/Transforms/ConstProp/loads.ll
  vendor/llvm/dist/test/Transforms/DeadArgElim/canon.ll
  vendor/llvm/dist/test/Transforms/DeadStoreElimination/const-pointers.ll
  vendor/llvm/dist/test/Transforms/DeadStoreElimination/no-targetdata.ll
  vendor/llvm/dist/test/Transforms/FunctionAttrs/2008-10-04-LocalMemory.ll
  vendor/llvm/dist/test/Transforms/GVN/null-aliases-nothing.ll
  vendor/llvm/dist/test/Transforms/GlobalOpt/ctor-list-opt-dbg.ll
  vendor/llvm/dist/test/Transforms/IPConstantProp/return-argument.ll
  vendor/llvm/dist/test/Transforms/IndVarSimplify/shrunk-constant.ll
  vendor/llvm/dist/test/Transforms/Inline/2007-12-19-InlineNoUnwind.ll
  vendor/llvm/dist/test/Transforms/InstCombine/apint-shift.ll
  vendor/llvm/dist/test/Transforms/InstCombine/bswap-fold.ll
  vendor/llvm/dist/test/Transforms/InstCombine/bswap.ll
  vendor/llvm/dist/test/Transforms/InstCombine/cast.ll
  vendor/llvm/dist/test/Transforms/InstCombine/cast_ptr.ll
  vendor/llvm/dist/test/Transforms/InstCombine/intrinsics.ll
  vendor/llvm/dist/test/Transforms/InstCombine/load.ll
  vendor/llvm/dist/test/Transforms/InstCombine/loadstore-alignment.ll
  vendor/llvm/dist/test/Transforms/InstCombine/or.ll
  vendor/llvm/dist/test/Transforms/InstCombine/shift-sra.ll
  vendor/llvm/dist/test/Transforms/InstCombine/sub.ll
  vendor/llvm/dist/test/Transforms/JumpThreading/basic.ll
  vendor/llvm/dist/test/Transforms/LoopIndexSplit/SplitValue-2007-08-24-dbg.ll
  vendor/llvm/dist/test/Transforms/LoopRotate/PhiRename-1.ll
  vendor/llvm/dist/test/Transforms/LoopStrengthReduce/2009-04-28-no-reduce-mul.ll
  vendor/llvm/dist/test/Transforms/LoopStrengthReduce/dont_reverse.ll
  vendor/llvm/dist/test/Transforms/LoopStrengthReduce/quadradic-exit-value.ll
  vendor/llvm/dist/test/Transforms/PruneEH/simplenoreturntest.ll
  vendor/llvm/dist/test/Transforms/ScalarRepl/2009-01-09-scalarrepl-empty.ll
  vendor/llvm/dist/test/Transforms/SimplifyCFG/2003-08-17-FoldSwitch-dbg.ll
  vendor/llvm/dist/test/Transforms/SimplifyCFG/2009-03-05-Speculative-Hoist-Dbg.ll
  vendor/llvm/dist/test/Transforms/SimplifyCFG/branch_fold_dbg.ll
  vendor/llvm/dist/test/Transforms/SimplifyCFG/hoist-common-code.dbg.ll
  vendor/llvm/dist/test/Transforms/SimplifyCFG/switch_formation.dbg.ll
  vendor/llvm/dist/test/Transforms/SimplifyCFG/two-entry-phi-return.dbg.ll
  vendor/llvm/dist/test/Transforms/TailCallElim/dont_reorder_load.ll
  vendor/llvm/dist/test/Verifier/2006-10-15-AddrLabel.ll
  vendor/llvm/dist/tools/llc/llc.cpp
  vendor/llvm/dist/tools/llvm-mc/AsmLexer.cpp
  vendor/llvm/dist/tools/llvm-mc/AsmParser.cpp
  vendor/llvm/dist/tools/llvmc/plugins/Base/Base.td.in
  vendor/llvm/dist/tools/lto/LTOCodeGenerator.cpp
  vendor/llvm/dist/tools/opt/opt.cpp
  vendor/llvm/dist/unittests/VMCore/MetadataTest.cpp
  vendor/llvm/dist/utils/TableGen/AsmMatcherEmitter.cpp
  vendor/llvm/dist/utils/TableGen/CodeEmitterGen.cpp
  vendor/llvm/dist/utils/TableGen/CodeGenInstruction.cpp
  vendor/llvm/dist/utils/TableGen/CodeGenTarget.cpp
  vendor/llvm/dist/utils/TableGen/CodeGenTarget.h
  vendor/llvm/dist/utils/TableGen/DAGISelEmitter.cpp
  vendor/llvm/dist/utils/TableGen/FastISelEmitter.cpp
  vendor/llvm/dist/utils/TableGen/InstrInfoEmitter.cpp
  vendor/llvm/dist/utils/TableGen/IntrinsicEmitter.cpp
  vendor/llvm/dist/utils/TableGen/OptParserEmitter.cpp
  vendor/llvm/dist/utils/TableGen/Record.cpp
  vendor/llvm/dist/utils/TableGen/Record.h
  vendor/llvm/dist/utils/TableGen/SubtargetEmitter.cpp
  vendor/llvm/dist/utils/TableGen/TGLexer.cpp
  vendor/llvm/dist/utils/TableGen/TGLexer.h
  vendor/llvm/dist/utils/TableGen/TGParser.cpp
  vendor/llvm/dist/utils/buildit/GNUmakefile
  vendor/llvm/dist/utils/vim/llvm.vim
  vendor/llvm/dist/utils/vim/vimrc

Modified: vendor/llvm/dist/CMakeLists.txt
==============================================================================
--- vendor/llvm/dist/CMakeLists.txt	Fri Jan 15 15:36:24 2010	(r202374)
+++ vendor/llvm/dist/CMakeLists.txt	Fri Jan 15 15:37:28 2010	(r202375)
@@ -296,6 +296,7 @@ add_subdirectory(lib/Bitcode/Reader)
 add_subdirectory(lib/Bitcode/Writer)
 add_subdirectory(lib/Transforms/Utils)
 add_subdirectory(lib/Transforms/Instrumentation)
+add_subdirectory(lib/Transforms/InstCombine)
 add_subdirectory(lib/Transforms/Scalar)
 add_subdirectory(lib/Transforms/IPO)
 add_subdirectory(lib/Transforms/Hello)

Modified: vendor/llvm/dist/LICENSE.TXT
==============================================================================
--- vendor/llvm/dist/LICENSE.TXT	Fri Jan 15 15:36:24 2010	(r202374)
+++ vendor/llvm/dist/LICENSE.TXT	Fri Jan 15 15:37:28 2010	(r202375)
@@ -4,7 +4,7 @@ LLVM Release License
 University of Illinois/NCSA
 Open Source License
 
-Copyright (c) 2003-2009 University of Illinois at Urbana-Champaign.
+Copyright (c) 2003-2010 University of Illinois at Urbana-Champaign.
 All rights reserved.
 
 Developed by:

Modified: vendor/llvm/dist/autoconf/configure.ac
==============================================================================
--- vendor/llvm/dist/autoconf/configure.ac	Fri Jan 15 15:36:24 2010	(r202374)
+++ vendor/llvm/dist/autoconf/configure.ac	Fri Jan 15 15:37:28 2010	(r202375)
@@ -512,7 +512,7 @@ case "$enableval" in
             PIC16)       TARGETS_TO_BUILD="PIC16 $TARGETS_TO_BUILD" ;;
             XCore)       TARGETS_TO_BUILD="XCore $TARGETS_TO_BUILD" ;;
             MSP430)      TARGETS_TO_BUILD="MSP430 $TARGETS_TO_BUILD" ;;
-            SystemZ)     TARGETS_TO_BUILD="SystemZ $TARGETS_TO_BUILD" ;;
+            s390x)       TARGETS_TO_BUILD="SystemZ $TARGETS_TO_BUILD" ;;
             Blackfin)    TARGETS_TO_BUILD="Blackfin $TARGETS_TO_BUILD" ;;
             *)       AC_MSG_ERROR([Can not set target to build]) ;;
           esac ;;

Modified: vendor/llvm/dist/cmake/modules/LLVMLibDeps.cmake
==============================================================================
--- vendor/llvm/dist/cmake/modules/LLVMLibDeps.cmake	Fri Jan 15 15:36:24 2010	(r202374)
+++ vendor/llvm/dist/cmake/modules/LLVMLibDeps.cmake	Fri Jan 15 15:37:28 2010	(r202375)
@@ -7,9 +7,9 @@ set(MSVC_LIB_DEPS_LLVMAlphaCodeGen LLVMA
 set(MSVC_LIB_DEPS_LLVMAlphaInfo LLVMSupport)
 set(MSVC_LIB_DEPS_LLVMAnalysis LLVMCore LLVMSupport LLVMSystem LLVMTarget)
 set(MSVC_LIB_DEPS_LLVMArchive LLVMBitReader LLVMCore LLVMSupport LLVMSystem)
-set(MSVC_LIB_DEPS_LLVMAsmParser LLVMCore LLVMSupport LLVMSystem)
+set(MSVC_LIB_DEPS_LLVMAsmParser LLVMCore LLVMSupport)
 set(MSVC_LIB_DEPS_LLVMAsmPrinter LLVMAnalysis LLVMCodeGen LLVMCore LLVMMC LLVMSupport LLVMSystem LLVMTarget)
-set(MSVC_LIB_DEPS_LLVMBitReader LLVMCore LLVMSupport LLVMSystem)
+set(MSVC_LIB_DEPS_LLVMBitReader LLVMCore LLVMSupport)
 set(MSVC_LIB_DEPS_LLVMBitWriter LLVMCore LLVMSupport LLVMSystem)
 set(MSVC_LIB_DEPS_LLVMBlackfinAsmPrinter LLVMAsmPrinter LLVMBlackfinInfo LLVMCodeGen LLVMCore LLVMMC LLVMSupport LLVMSystem LLVMTarget)
 set(MSVC_LIB_DEPS_LLVMBlackfinCodeGen LLVMBlackfinInfo LLVMCodeGen LLVMCore LLVMMC LLVMSelectionDAG LLVMSupport LLVMTarget)
@@ -21,15 +21,16 @@ set(MSVC_LIB_DEPS_LLVMCellSPUCodeGen LLV
 set(MSVC_LIB_DEPS_LLVMCellSPUInfo LLVMSupport)
 set(MSVC_LIB_DEPS_LLVMCodeGen LLVMAnalysis LLVMCore LLVMMC LLVMScalarOpts LLVMSupport LLVMSystem LLVMTarget LLVMTransformUtils)
 set(MSVC_LIB_DEPS_LLVMCore LLVMSupport LLVMSystem)
-set(MSVC_LIB_DEPS_LLVMCppBackend LLVMCore LLVMCppBackendInfo LLVMSupport LLVMSystem LLVMTarget)
+set(MSVC_LIB_DEPS_LLVMCppBackend LLVMCore LLVMCppBackendInfo LLVMSupport LLVMTarget)
 set(MSVC_LIB_DEPS_LLVMCppBackendInfo LLVMSupport)
 set(MSVC_LIB_DEPS_LLVMExecutionEngine LLVMCore LLVMSupport LLVMSystem LLVMTarget)
-set(MSVC_LIB_DEPS_LLVMInstrumentation LLVMAnalysis LLVMCore LLVMScalarOpts LLVMSupport LLVMSystem LLVMTransformUtils)
+set(MSVC_LIB_DEPS_LLVMInstCombine LLVMAnalysis LLVMCore LLVMSupport LLVMSystem LLVMTarget LLVMTransformUtils)
+set(MSVC_LIB_DEPS_LLVMInstrumentation LLVMAnalysis LLVMCore LLVMSupport LLVMSystem LLVMTransformUtils)
 set(MSVC_LIB_DEPS_LLVMInterpreter LLVMCodeGen LLVMCore LLVMExecutionEngine LLVMSupport LLVMSystem LLVMTarget)
 set(MSVC_LIB_DEPS_LLVMJIT LLVMCodeGen LLVMCore LLVMExecutionEngine LLVMMC LLVMSupport LLVMSystem LLVMTarget)
 set(MSVC_LIB_DEPS_LLVMLinker LLVMArchive LLVMBitReader LLVMCore LLVMSupport LLVMSystem)
 set(MSVC_LIB_DEPS_LLVMMC LLVMSupport LLVMSystem)
-set(MSVC_LIB_DEPS_LLVMMSIL LLVMAnalysis LLVMCodeGen LLVMCore LLVMMSILInfo LLVMScalarOpts LLVMSupport LLVMSystem LLVMTarget LLVMTransformUtils LLVMipa)
+set(MSVC_LIB_DEPS_LLVMMSIL LLVMAnalysis LLVMCodeGen LLVMCore LLVMMSILInfo LLVMScalarOpts LLVMSupport LLVMTarget LLVMTransformUtils LLVMipa)
 set(MSVC_LIB_DEPS_LLVMMSILInfo LLVMSupport)
 set(MSVC_LIB_DEPS_LLVMMSP430AsmPrinter LLVMAsmPrinter LLVMCodeGen LLVMCore LLVMMC LLVMMSP430Info LLVMSupport LLVMSystem LLVMTarget)
 set(MSVC_LIB_DEPS_LLVMMSP430CodeGen LLVMCodeGen LLVMCore LLVMMC LLVMMSP430Info LLVMSelectionDAG LLVMSupport LLVMSystem LLVMTarget)
@@ -37,13 +38,13 @@ set(MSVC_LIB_DEPS_LLVMMSP430Info LLVMSup
 set(MSVC_LIB_DEPS_LLVMMipsAsmPrinter LLVMAsmPrinter LLVMCodeGen LLVMCore LLVMMC LLVMMipsCodeGen LLVMMipsInfo LLVMSupport LLVMSystem LLVMTarget)
 set(MSVC_LIB_DEPS_LLVMMipsCodeGen LLVMCodeGen LLVMCore LLVMMC LLVMMipsInfo LLVMSelectionDAG LLVMSupport LLVMSystem LLVMTarget)
 set(MSVC_LIB_DEPS_LLVMMipsInfo LLVMSupport)
-set(MSVC_LIB_DEPS_LLVMPIC16 LLVMAnalysis LLVMCodeGen LLVMCore LLVMMC LLVMPIC16Info LLVMSelectionDAG LLVMSupport LLVMSystem LLVMTarget)
-set(MSVC_LIB_DEPS_LLVMPIC16AsmPrinter LLVMAsmPrinter LLVMCodeGen LLVMCore LLVMMC LLVMPIC16 LLVMPIC16Info LLVMSupport LLVMSystem LLVMTarget)
+set(MSVC_LIB_DEPS_LLVMPIC16 LLVMAnalysis LLVMCodeGen LLVMCore LLVMMC LLVMPIC16Info LLVMSelectionDAG LLVMSupport LLVMTarget)
+set(MSVC_LIB_DEPS_LLVMPIC16AsmPrinter LLVMAsmPrinter LLVMCodeGen LLVMCore LLVMMC LLVMPIC16 LLVMPIC16Info LLVMSupport LLVMTarget)
 set(MSVC_LIB_DEPS_LLVMPIC16Info LLVMSupport)
 set(MSVC_LIB_DEPS_LLVMPowerPCAsmPrinter LLVMAsmPrinter LLVMCodeGen LLVMCore LLVMMC LLVMPowerPCInfo LLVMSupport LLVMSystem LLVMTarget)
 set(MSVC_LIB_DEPS_LLVMPowerPCCodeGen LLVMCodeGen LLVMCore LLVMMC LLVMPowerPCInfo LLVMSelectionDAG LLVMSupport LLVMSystem LLVMTarget)
 set(MSVC_LIB_DEPS_LLVMPowerPCInfo LLVMSupport)
-set(MSVC_LIB_DEPS_LLVMScalarOpts LLVMAnalysis LLVMCore LLVMSupport LLVMSystem LLVMTarget LLVMTransformUtils)
+set(MSVC_LIB_DEPS_LLVMScalarOpts LLVMAnalysis LLVMCore LLVMInstCombine LLVMSupport LLVMSystem LLVMTarget LLVMTransformUtils)
 set(MSVC_LIB_DEPS_LLVMSelectionDAG LLVMAnalysis LLVMAsmPrinter LLVMCodeGen LLVMCore LLVMSupport LLVMSystem LLVMTarget)
 set(MSVC_LIB_DEPS_LLVMSparcAsmPrinter LLVMAsmPrinter LLVMCodeGen LLVMCore LLVMMC LLVMSparcInfo LLVMSupport LLVMSystem LLVMTarget)
 set(MSVC_LIB_DEPS_LLVMSparcCodeGen LLVMCodeGen LLVMCore LLVMMC LLVMSelectionDAG LLVMSparcInfo LLVMSupport LLVMSystem LLVMTarget)
@@ -53,14 +54,14 @@ set(MSVC_LIB_DEPS_LLVMSystem )
 set(MSVC_LIB_DEPS_LLVMSystemZAsmPrinter LLVMAsmPrinter LLVMCodeGen LLVMCore LLVMMC LLVMSupport LLVMSystem LLVMSystemZInfo LLVMTarget)
 set(MSVC_LIB_DEPS_LLVMSystemZCodeGen LLVMCodeGen LLVMCore LLVMMC LLVMSelectionDAG LLVMSupport LLVMSystemZInfo LLVMTarget)
 set(MSVC_LIB_DEPS_LLVMSystemZInfo LLVMSupport)
-set(MSVC_LIB_DEPS_LLVMTarget LLVMCore LLVMMC LLVMSupport LLVMSystem)
+set(MSVC_LIB_DEPS_LLVMTarget LLVMCore LLVMMC LLVMSupport)
 set(MSVC_LIB_DEPS_LLVMTransformUtils LLVMAnalysis LLVMCore LLVMSupport LLVMSystem LLVMTarget LLVMipa)
 set(MSVC_LIB_DEPS_LLVMX86AsmParser LLVMMC LLVMX86Info)
 set(MSVC_LIB_DEPS_LLVMX86AsmPrinter LLVMAsmPrinter LLVMCodeGen LLVMCore LLVMMC LLVMSupport LLVMSystem LLVMTarget LLVMX86CodeGen LLVMX86Info)
-set(MSVC_LIB_DEPS_LLVMX86CodeGen LLVMCodeGen LLVMCore LLVMMC LLVMSelectionDAG LLVMSupport LLVMSystem LLVMTarget LLVMX86Disassembler LLVMX86Info)
-set(MSVC_LIB_DEPS_LLVMX86Disassembler )
+set(MSVC_LIB_DEPS_LLVMX86CodeGen LLVMCodeGen LLVMCore LLVMMC LLVMSelectionDAG LLVMSupport LLVMSystem LLVMTarget LLVMX86Info)
+set(MSVC_LIB_DEPS_LLVMX86Disassembler LLVMMC LLVMSupport LLVMX86Info)
 set(MSVC_LIB_DEPS_LLVMX86Info LLVMSupport)
-set(MSVC_LIB_DEPS_LLVMXCore LLVMCodeGen LLVMCore LLVMMC LLVMSelectionDAG LLVMSupport LLVMSystem LLVMTarget LLVMXCoreInfo)
+set(MSVC_LIB_DEPS_LLVMXCore LLVMCodeGen LLVMCore LLVMMC LLVMSelectionDAG LLVMSupport LLVMTarget LLVMXCoreInfo)
 set(MSVC_LIB_DEPS_LLVMXCoreAsmPrinter LLVMAsmPrinter LLVMCodeGen LLVMCore LLVMMC LLVMSupport LLVMSystem LLVMTarget LLVMXCoreInfo)
 set(MSVC_LIB_DEPS_LLVMXCoreInfo LLVMSupport)
 set(MSVC_LIB_DEPS_LLVMipa LLVMAnalysis LLVMCore LLVMSupport LLVMSystem)

Modified: vendor/llvm/dist/configure
==============================================================================
--- vendor/llvm/dist/configure	Fri Jan 15 15:36:24 2010	(r202374)
+++ vendor/llvm/dist/configure	Fri Jan 15 15:37:28 2010	(r202375)
@@ -5080,7 +5080,7 @@ case "$enableval" in
             PIC16)       TARGETS_TO_BUILD="PIC16 $TARGETS_TO_BUILD" ;;
             XCore)       TARGETS_TO_BUILD="XCore $TARGETS_TO_BUILD" ;;
             MSP430)      TARGETS_TO_BUILD="MSP430 $TARGETS_TO_BUILD" ;;
-            SystemZ)     TARGETS_TO_BUILD="SystemZ $TARGETS_TO_BUILD" ;;
+            s390x)       TARGETS_TO_BUILD="SystemZ $TARGETS_TO_BUILD" ;;
             Blackfin)    TARGETS_TO_BUILD="Blackfin $TARGETS_TO_BUILD" ;;
             *)       { { echo "$as_me:$LINENO: error: Can not set target to build" >&5
 echo "$as_me: error: Can not set target to build" >&2;}

Modified: vendor/llvm/dist/docs/CodeGenerator.html
==============================================================================
--- vendor/llvm/dist/docs/CodeGenerator.html	Fri Jan 15 15:36:24 2010	(r202374)
+++ vendor/llvm/dist/docs/CodeGenerator.html	Fri Jan 15 15:37:28 2010	(r202375)
@@ -1731,11 +1731,6 @@ define fastcc i32 @tailcaller(i32 %in1, 
    (because one or more of above constraints are not met) to be followed by a
    readjustment of the stack. So performance might be worse in such cases.</p>
 
-<p>On x86 and x86-64 one register is reserved for indirect tail calls (e.g via a
-   function pointer). So there is one less register for integer argument
-   passing. For x86 this means 2 registers (if <tt>inreg</tt> parameter
-   attribute is used) and for x86-64 this means 5 register are used.</p>
-
 </div>
 <!-- ======================================================================= -->
 <div class="doc_subsection">
@@ -2121,7 +2116,7 @@ MOVSX32rm16 -&gt; movsx, 32-bit register
 
   <a href="mailto:sabre at nondot.org">Chris Lattner</a><br>
   <a href="http://llvm.org">The LLVM Compiler Infrastructure</a><br>
-  Last modified: $Date: 2009-10-10 23:30:55 +0200 (Sat, 10 Oct 2009) $
+  Last modified: $Date: 2010-01-11 19:53:47 +0100 (Mon, 11 Jan 2010) $
 </address>
 
 </body>

Modified: vendor/llvm/dist/docs/LangRef.html
==============================================================================
--- vendor/llvm/dist/docs/LangRef.html	Fri Jan 15 15:36:24 2010	(r202374)
+++ vendor/llvm/dist/docs/LangRef.html	Fri Jan 15 15:37:28 2010	(r202375)
@@ -43,6 +43,7 @@
       <li><a href="#globalvars">Global Variables</a></li>
       <li><a href="#functionstructure">Functions</a></li>
       <li><a href="#aliasstructure">Aliases</a></li>
+      <li><a href="#namedmetadatastructure">Named Metadata</a></li>
       <li><a href="#paramattrs">Parameter Attributes</a></li>
       <li><a href="#fnattrs">Function Attributes</a></li>
       <li><a href="#gc">Garbage Collector Names</a></li>
@@ -85,12 +86,12 @@
       <li><a href="#undefvalues">Undefined Values</a></li>
       <li><a href="#blockaddress">Addresses of Basic Blocks</a></li>
       <li><a href="#constantexprs">Constant Expressions</a></li>
-      <li><a href="#metadata">Embedded Metadata</a></li>
     </ol>
   </li>
   <li><a href="#othervalues">Other Values</a>
     <ol>
       <li><a href="#inlineasm">Inline Assembler Expressions</a></li>
+      <li><a href="#metadata">Metadata Nodes and Metadata Strings</a></li>
     </ol>
   </li>
   <li><a href="#intrinsic_globals">Intrinsic Global Variables</a>
@@ -498,14 +499,19 @@ define i32 @main() {                    
 
   <i>; Call puts function to write out the string to stdout.</i>
   <a href="#i_call">call</a> i32 @puts(i8 * %cast210)                             <i>; i32</i>
-  <a href="#i_ret">ret</a> i32 0<br>}<br>
+  <a href="#i_ret">ret</a> i32 0<br>}
+
+<i>; Named metadata</i>
+!1 = metadata !{i32 41}
+!foo = !{!1, null}
 </pre>
 </div>
 
 <p>This example is made up of a <a href="#globalvars">global variable</a> named
-   "<tt>.LC0</tt>", an external declaration of the "<tt>puts</tt>" function, and
+   "<tt>.LC0</tt>", an external declaration of the "<tt>puts</tt>" function,
    a <a href="#functionstructure">function definition</a> for
-   "<tt>main</tt>".</p>
+   "<tt>main</tt>" and <a href="#namedmetadatastructure">named metadata</a> 
+   "<tt>foo"</tt>.</p>
 
 <p>In general, a module is made up of a list of global values, where both
    functions and global variables are global values.  Global values are
@@ -558,10 +564,17 @@ define i32 @main() {                    
 
   <dt><tt><b><a name="linkage_linkonce">linkonce</a></b></tt></dt>
   <dd>Globals with "<tt>linkonce</tt>" linkage are merged with other globals of
-      the same name when linkage occurs.  This is typically used to implement
-      inline functions, templates, or other code which must be generated in each
-      translation unit that uses it.  Unreferenced <tt>linkonce</tt> globals are
-      allowed to be discarded.</dd>
+      the same name when linkage occurs.  This can be used to implement
+      some forms of inline functions, templates, or other code which must be
+      generated in each translation unit that uses it, but where the body may
+      be overridden with a more definitive definition later.  Unreferenced
+      <tt>linkonce</tt> globals are allowed to be discarded.  Note that
+      <tt>linkonce</tt> linkage does not actually allow the optimizer to
+      inline the body of this function into callers because it doesn't know if
+      this definition of the function is the definitive definition within the
+      program or whether it will be overridden by a stronger definition.
+      To enable inlining and other optimizations, use "<tt>linkonce_odr</tt>"
+      linkage.</dd>
 
   <dt><tt><b><a name="linkage_weak">weak</a></b></tt></dt>
   <dd>"<tt>weak</tt>" linkage has the same merging semantics as
@@ -671,9 +684,9 @@ define i32 @main() {                    
       (e.g. by passing things in registers).  This calling convention allows the
       target to use whatever tricks it wants to produce fast code for the
       target, without having to conform to an externally specified ABI
-      (Application Binary Interface).  Implementations of this convention should
-      allow arbitrary <a href="CodeGenerator.html#tailcallopt">tail call
-      optimization</a> to be supported.  This calling convention does not
+      (Application Binary Interface).
+      <a href="CodeGenerator.html#tailcallopt">Tail calls can only be optimized
+      when this convention is used.</a>  This calling convention does not
       support varargs and requires the prototype of all callees to exactly match
       the prototype of the function definition.</dd>
 
@@ -905,6 +918,27 @@ define [<a href="#linkage">linkage</a>] 
 </div>
 
 <!-- ======================================================================= -->
+<div class="doc_subsection">
+  <a name="namedmetadatastructure">Named Metadata</a>
+</div>
+
+<div class="doc_text">
+
+<p>Named metadata is a collection of metadata. <a href="#metadata"> Metadata </a>
+   node and null are the only valid named metadata operands. 
+   Metadata strings are not allowed as an named metadata operand.</p>
+
+<h5>Syntax:</h5>
+<div class="doc_code">
+<pre>
+!1 = metadata !{metadata !"one"}
+!name = !{null, !1}
+</pre>
+</div>
+
+</div>
+
+<!-- ======================================================================= -->
 <div class="doc_subsection"><a name="paramattrs">Parameter Attributes</a></div>
 
 <div class="doc_text">
@@ -1649,10 +1683,12 @@ Classifications</a> </div>
    underlying processor.  The elements of a structure may be any type that has a
    size.</p>
 
-<p>Structures are accessed using '<tt><a href="#i_load">load</a></tt> and
-   '<tt><a href="#i_store">store</a></tt>' by getting a pointer to a field with
-   the '<tt><a href="#i_getelementptr">getelementptr</a></tt>' instruction.</p>
-
+<p>Structures in memory are accessed using '<tt><a href="#i_load">load</a></tt>'
+   and '<tt><a href="#i_store">store</a></tt>' by getting a pointer to a field
+   with the '<tt><a href="#i_getelementptr">getelementptr</a></tt>' instruction.
+   Structures in registers are accessed using the
+   '<tt><a href="#i_extractvalue">extractvalue</a></tt>' and
+   '<tt><a href="#i_insertvalue">insertvalue</a></tt>' instructions.</p>
 <h5>Syntax:</h5>
 <pre>
   { &lt;type list&gt; }
@@ -2305,12 +2341,12 @@ has undefined behavior.</p>
 </div>
 
 <!-- ======================================================================= -->
-<div class="doc_subsection"><a name="metadata">Embedded Metadata</a>
+<div class="doc_subsection"><a name="metadata">Metadata Nodes and Metadata Strings</a>
 </div>
 
 <div class="doc_text">
 
-<p>Embedded metadata provides a way to attach arbitrary data to the instruction
+<p>Metadata provides a way to attach arbitrary data to the instruction
    stream without affecting the behaviour of the program.  There are two
    metadata primitives, strings and nodes. All metadata has the
    <tt>metadata</tt> type and is identified in syntax by a preceding exclamation
@@ -2329,6 +2365,9 @@ has undefined behavior.</p>
    event that a value is deleted, it will be replaced with a typeless
    "<tt>null</tt>", such as "<tt>metadata !{null, i32 10}</tt>".</p>
 
+<p>A <a href="#namedmetadatastructure">named metadata</a> is a collection of 
+   metadata nodes. For example: "<tt>!foo =  metadata !{!4, !3}</tt>".
+
 <p>Optimizations may rely on metadata to provide additional information about
    the program that isn't available in the instructions, or that isn't easily
    computable. Similarly, the code generator may expect a certain metadata
@@ -3848,7 +3887,7 @@ Instruction</a> </div>
 
 <h5>Syntax:</h5>
 <pre>
-  &lt;result&gt; = insertvalue &lt;aggregate type&gt; &lt;val&gt;, &lt;ty&gt; &lt;val&gt;, &lt;idx&gt;    <i>; yields &lt;n x &lt;ty&gt;&gt;</i>
+  &lt;result&gt; = insertvalue &lt;aggregate type&gt; &lt;val&gt;, &lt;ty&gt; &lt;elt&gt;, &lt;idx&gt;    <i>; yields &lt;aggregate type&gt;</i>
 </pre>
 
 <h5>Overview:</h5>
@@ -3873,7 +3912,8 @@ Instruction</a> </div>
 
 <h5>Example:</h5>
 <pre>
-  &lt;result&gt; = insertvalue {i32, float} %agg, i32 1, 0    <i>; yields {i32, float}</i>
+  %agg1 = insertvalue {i32, float} undef, i32 1, 0         <i>; yields {i32 1, float undef}</i>
+  %agg2 = insertvalue {i32, float} %agg1, float %val, 1    <i>; yields {i32 1, float %val}</i>
 </pre>
 
 </div>
@@ -4983,15 +5023,31 @@ Loop:       ; Infinite loop that counts 
 <p>This instruction requires several arguments:</p>
 
 <ol>
-  <li>The optional "tail" marker indicates whether the callee function accesses
-      any allocas or varargs in the caller.  If the "tail" marker is present,
-      the function call is eligible for tail call optimization.  Note that calls
-      may be marked "tail" even if they do not occur before
-      a <a href="#i_ret"><tt>ret</tt></a> instruction.</li>
+  <li>The optional "tail" marker indicates that the callee function does not
+      access any allocas or varargs in the caller.  Note that calls may be
+      marked "tail" even if they do not occur before
+      a <a href="#i_ret"><tt>ret</tt></a> instruction.  If the "tail" marker is
+      present, the function call is eligible for tail call optimization,
+      but <a href="CodeGenerator.html#tailcallopt">might not in fact be
+      optimized into a jump</a>.  As of this writing, the extra requirements for
+      a call to actually be optimized are:
+      <ul>
+        <li>Caller and callee both have the calling
+            convention <tt>fastcc</tt>.</li>
+        <li>The call is in tail position (ret immediately follows call and ret
+            uses value of call or is void).</li>
+        <li>Option <tt>-tailcallopt</tt> is enabled,
+            or <code>llvm::PerformTailCallOpt</code> is <code>true</code>.</li>
+        <li><a href="CodeGenerator.html#tailcallopt">Platform specific
+            constraints are met.</a></li>
+      </ul>
+  </li>
 
   <li>The optional "cconv" marker indicates which <a href="#callingconv">calling
       convention</a> the call should use.  If none is specified, the call
-      defaults to using C calling conventions.</li>
+      defaults to using C calling conventions.  The calling convention of the
+      call must match the calling convention of the target function, or else the
+      behavior is undefined.</li>
 
   <li>The optional <a href="#paramattrs">Parameter Attributes</a> list for
       return values. Only '<tt>zeroext</tt>', '<tt>signext</tt>', and
@@ -7263,7 +7319,7 @@ LLVM</a>.</p>
 
 <h5>Overview:</h5>
 <p>The <tt>llvm.objectsize</tt> intrinsic is designed to provide information
-   to the optimizers to either discover at compile time either a) when an
+   to the optimizers to discover at compile time either a) when an
    operation like memcpy will either overflow a buffer that corresponds to
    an object, or b) to determine that a runtime check for overflow isn't
    necessary. An object in this context means an allocation of a
@@ -7294,7 +7350,7 @@ LLVM</a>.</p>
 
   <a href="mailto:sabre at nondot.org">Chris Lattner</a><br>
   <a href="http://llvm.org">The LLVM Compiler Infrastructure</a><br>
-  Last modified: $Date: 2009-12-23 01:29:49 +0100 (Wed, 23 Dec 2009) $
+  Last modified: $Date: 2010-01-11 20:35:55 +0100 (Mon, 11 Jan 2010) $
 </address>
 
 </body>

Modified: vendor/llvm/dist/docs/ProgrammersManual.html
==============================================================================
--- vendor/llvm/dist/docs/ProgrammersManual.html	Fri Jan 15 15:36:24 2010	(r202374)
+++ vendor/llvm/dist/docs/ProgrammersManual.html	Fri Jan 15 15:37:28 2010	(r202375)
@@ -94,6 +94,7 @@ option</a></li>
     <li><a href="#ds_bit">BitVector-like containers</a>
     <ul>
       <li><a href="#dss_bitvector">A dense bitvector</a></li>
+      <li><a href="#dss_smallbitvector">A "small" dense bitvector</a></li>
       <li><a href="#dss_sparsebitvector">A sparse bitvector</a></li>
     </ul></li>
   </ul>
@@ -1584,7 +1585,7 @@ please don't use it.</p>
 </div>
 
 <div class="doc_text">
-<p> The BitVector container provides a fixed size set of bits for manipulation.
+<p> The BitVector container provides a dynamic size set of bits for manipulation.
 It supports individual bit setting/testing, as well as set operations.  The set
 operations take time O(size of bitvector), but operations are performed one word
 at a time, instead of one bit at a time.  This makes the BitVector very fast for
@@ -1595,6 +1596,25 @@ the number of set bits to be high (IE a 
 
 <!-- _______________________________________________________________________ -->
 <div class="doc_subsubsection">
+  <a name="dss_smallbitvector">SmallBitVector</a>
+</div>
+
+<div class="doc_text">
+<p> The SmallBitVector container provides the same interface as BitVector, but
+it is optimized for the case where only a small number of bits, less than
+25 or so, are needed. It also transparently supports larger bit counts, but
+slightly less efficiently than a plain BitVector, so SmallBitVector should
+only be used when larger counts are rare.
+</p>
+
+<p>
+At this time, SmallBitVector does not support set operations (and, or, xor),
+and its operator[] does not provide an assignable lvalue.
+</p>
+</div>
+
+<!-- _______________________________________________________________________ -->
+<div class="doc_subsubsection">
   <a name="dss_sparsebitvector">SparseBitVector</a>
 </div>
 
@@ -3872,7 +3892,7 @@ arguments. An argument has a pointer to 
   <a href="mailto:dhurjati at cs.uiuc.edu">Dinakar Dhurjati</a> and
   <a href="mailto:sabre at nondot.org">Chris Lattner</a><br>
   <a href="http://llvm.org">The LLVM Compiler Infrastructure</a><br>
-  Last modified: $Date: 2009-10-23 00:11:22 +0200 (Fri, 23 Oct 2009) $
+  Last modified: $Date: 2010-01-05 19:24:00 +0100 (Tue, 05 Jan 2010) $
 </address>
 
 </body>

Modified: vendor/llvm/dist/docs/ReleaseNotes.html
==============================================================================
--- vendor/llvm/dist/docs/ReleaseNotes.html	Fri Jan 15 15:36:24 2010	(r202374)
+++ vendor/llvm/dist/docs/ReleaseNotes.html	Fri Jan 15 15:37:28 2010	(r202375)
@@ -58,6 +58,7 @@ Almost dead code.
   include/llvm/Analysis/LiveValues.h => Dan
   lib/Transforms/IPO/MergeFunctions.cpp => consider for 2.8.
   llvm/Analysis/PointerTracking.h => Edwin wants this, consider for 2.8.
+  ABCD, SCCVN, GEPSplitterPass
 -->
  
    
@@ -1348,7 +1349,7 @@ lists</a>.</p>
   src="http://www.w3.org/Icons/valid-html401-blue" alt="Valid HTML 4.01"></a>
 
   <a href="http://llvm.org/">LLVM Compiler Infrastructure</a><br>
-  Last modified: $Date: 2009-11-03 22:50:09 +0100 (Tue, 03 Nov 2009) $
+  Last modified: $Date: 2010-01-09 23:30:40 +0100 (Sat, 09 Jan 2010) $
 </address>
 
 </body>

Modified: vendor/llvm/dist/docs/SourceLevelDebugging.html
==============================================================================
--- vendor/llvm/dist/docs/SourceLevelDebugging.html	Fri Jan 15 15:36:24 2010	(r202374)
+++ vendor/llvm/dist/docs/SourceLevelDebugging.html	Fri Jan 15 15:37:28 2010	(r202375)
@@ -38,6 +38,7 @@
     <li><a href="#format_common_intrinsics">Debugger intrinsic functions</a>
       <ul>
       <li><a href="#format_common_declare">llvm.dbg.declare</a></li>
+      <li><a href="#format_common_value">llvm.dbg.value</a></li>
     </ul></li>
   </ol></li>
   <li><a href="#format_common_lifetime">Object lifetimes and scoping</a></li>
@@ -775,6 +776,25 @@ DW_TAG_return_variable = 258
 </div>
 
 <!-- ======================================================================= -->
+<div class="doc_subsubsection">
+  <a name="format_common_value">llvm.dbg.value</a>
+</div>
+
+<div class="doc_text">
+<pre>
+  void %<a href="#format_common_value">llvm.dbg.value</a>( metadata, i64, metadata )
+</pre>
+
+<p>This intrinsic provides information when a user source variable is set to a
+   new value.  The first argument is the new value (wrapped as metadata).  The
+   second argument is the offset in the user source variable where the new value
+   is written.  The third argument is
+   the <tt>%<a href="#format_variables">llvm.dbg.variable</a></tt> containing
+   the description of the user source variable. </p>
+
+</div>
+
+<!-- ======================================================================= -->
 <div class="doc_subsection">
   <a name="format_common_lifetime">Object lifetimes and scoping</a>
 </div>
@@ -1718,7 +1738,7 @@ enum Trees {
 
   <a href="mailto:sabre at nondot.org">Chris Lattner</a><br>
   <a href="http://llvm.org">LLVM Compiler Infrastructure</a><br>
-  Last modified: $Date: 2009-12-01 01:59:58 +0100 (Tue, 01 Dec 2009) $
+  Last modified: $Date: 2010-01-11 23:53:48 +0100 (Mon, 11 Jan 2010) $
 </address>
 
 </body>

Modified: vendor/llvm/dist/docs/TableGenFundamentals.html
==============================================================================
--- vendor/llvm/dist/docs/TableGenFundamentals.html	Fri Jan 15 15:36:24 2010	(r202374)
+++ vendor/llvm/dist/docs/TableGenFundamentals.html	Fri Jan 15 15:37:28 2010	(r202375)
@@ -423,6 +423,10 @@ class.  This operation is analogous to $
   <dd>An integer {0,1} indicating whether list 'a' is empty.</dd>
 <dt><tt>!if(a,b,c)</tt></dt>
   <dd>'b' if the result of integer operator 'a' is nonzero, 'c' otherwise.</dd>
+<dt><tt>!eq(a,b)</tt></dt>
+  <dd>Integer one if string a is equal to string b, zero otherwise.  This
+      only operates on string objects.  Use !cast<string> to compare other
+      types of objects.</dd>
 </dl>
 
 <p>Note that all of the values have rules specifying how they convert to values
@@ -794,7 +798,7 @@ This should highlight the APIs in <tt>Ta
 
   <a href="mailto:sabre at nondot.org">Chris Lattner</a><br>
   <a href="http://llvm.org">LLVM Compiler Infrastructure</a><br>
-  Last modified: $Date: 2009-10-29 19:10:34 +0100 (Thu, 29 Oct 2009) $
+  Last modified: $Date: 2010-01-05 20:11:42 +0100 (Tue, 05 Jan 2010) $
 </address>
 
 </body>

Modified: vendor/llvm/dist/include/llvm-c/Analysis.h
==============================================================================
--- vendor/llvm/dist/include/llvm-c/Analysis.h	Fri Jan 15 15:36:24 2010	(r202374)
+++ vendor/llvm/dist/include/llvm-c/Analysis.h	Fri Jan 15 15:37:28 2010	(r202375)
@@ -36,12 +36,12 @@ typedef enum {
 /* Verifies that a module is valid, taking the specified action if not.
    Optionally returns a human-readable description of any invalid constructs.
    OutMessage must be disposed with LLVMDisposeMessage. */
-int LLVMVerifyModule(LLVMModuleRef M, LLVMVerifierFailureAction Action,
-                     char **OutMessage);
+LLVMBool LLVMVerifyModule(LLVMModuleRef M, LLVMVerifierFailureAction Action,
+                          char **OutMessage);
 
 /* Verifies that a single function is valid, taking the specified action. Useful
    for debugging. */
-int LLVMVerifyFunction(LLVMValueRef Fn, LLVMVerifierFailureAction Action);
+LLVMBool LLVMVerifyFunction(LLVMValueRef Fn, LLVMVerifierFailureAction Action);
 
 /* Open up a ghostview window that displays the CFG of the current function.
    Useful for debugging. */

Modified: vendor/llvm/dist/include/llvm-c/BitReader.h
==============================================================================
--- vendor/llvm/dist/include/llvm-c/BitReader.h	Fri Jan 15 15:36:24 2010	(r202374)
+++ vendor/llvm/dist/include/llvm-c/BitReader.h	Fri Jan 15 15:37:28 2010	(r202375)
@@ -29,24 +29,24 @@ extern "C" {
 /* Builds a module from the bitcode in the specified memory buffer, returning a
    reference to the module via the OutModule parameter. Returns 0 on success.
    Optionally returns a human-readable error message via OutMessage. */ 
-int LLVMParseBitcode(LLVMMemoryBufferRef MemBuf,
-                     LLVMModuleRef *OutModule, char **OutMessage);
+LLVMBool LLVMParseBitcode(LLVMMemoryBufferRef MemBuf,
+                          LLVMModuleRef *OutModule, char **OutMessage);
 
-int LLVMParseBitcodeInContext(LLVMContextRef ContextRef,
-                              LLVMMemoryBufferRef MemBuf,
-                              LLVMModuleRef *OutModule, char **OutMessage);
+LLVMBool LLVMParseBitcodeInContext(LLVMContextRef ContextRef,
+                                   LLVMMemoryBufferRef MemBuf,
+                                   LLVMModuleRef *OutModule, char **OutMessage);
 
 /* Reads a module from the specified path, returning via the OutMP parameter
    a module provider which performs lazy deserialization. Returns 0 on success.
    Optionally returns a human-readable error message via OutMessage. */ 
-int LLVMGetBitcodeModuleProvider(LLVMMemoryBufferRef MemBuf,
-                                 LLVMModuleProviderRef *OutMP,
-                                 char **OutMessage);
-
-int LLVMGetBitcodeModuleProviderInContext(LLVMContextRef ContextRef,
-                                          LLVMMemoryBufferRef MemBuf,
-                                          LLVMModuleProviderRef *OutMP,
-                                          char **OutMessage);
+LLVMBool LLVMGetBitcodeModuleProvider(LLVMMemoryBufferRef MemBuf,
+                                      LLVMModuleProviderRef *OutMP,
+                                      char **OutMessage);
+
+LLVMBool LLVMGetBitcodeModuleProviderInContext(LLVMContextRef ContextRef,
+                                               LLVMMemoryBufferRef MemBuf,
+                                               LLVMModuleProviderRef *OutMP,
+                                               char **OutMessage);
 
 
 #ifdef __cplusplus

Modified: vendor/llvm/dist/include/llvm-c/Core.h
==============================================================================
--- vendor/llvm/dist/include/llvm-c/Core.h	Fri Jan 15 15:36:24 2010	(r202374)
+++ vendor/llvm/dist/include/llvm-c/Core.h	Fri Jan 15 15:37:28 2010	(r202375)
@@ -46,6 +46,8 @@ extern "C" {
 #endif
 
 
+typedef int LLVMBool;
+
 /* Opaque types. */
 
 /**
@@ -292,7 +294,7 @@ const char *LLVMGetTarget(LLVMModuleRef 
 void LLVMSetTarget(LLVMModuleRef M, const char *Triple);
 
 /** See Module::addTypeName. */
-int LLVMAddTypeName(LLVMModuleRef M, const char *Name, LLVMTypeRef Ty);
+LLVMBool LLVMAddTypeName(LLVMModuleRef M, const char *Name, LLVMTypeRef Ty);
 void LLVMDeleteTypeName(LLVMModuleRef M, const char *Name);
 LLVMTypeRef LLVMGetTypeByName(LLVMModuleRef M, const char *Name);
 
@@ -355,20 +357,20 @@ LLVMTypeRef LLVMPPCFP128Type(void);
 /* Operations on function types */
 LLVMTypeRef LLVMFunctionType(LLVMTypeRef ReturnType,
                              LLVMTypeRef *ParamTypes, unsigned ParamCount,
-                             int IsVarArg);
-int LLVMIsFunctionVarArg(LLVMTypeRef FunctionTy);
+                             LLVMBool IsVarArg);
+LLVMBool LLVMIsFunctionVarArg(LLVMTypeRef FunctionTy);
 LLVMTypeRef LLVMGetReturnType(LLVMTypeRef FunctionTy);
 unsigned LLVMCountParamTypes(LLVMTypeRef FunctionTy);
 void LLVMGetParamTypes(LLVMTypeRef FunctionTy, LLVMTypeRef *Dest);
 
 /* Operations on struct types */
 LLVMTypeRef LLVMStructTypeInContext(LLVMContextRef C, LLVMTypeRef *ElementTypes,
-                                    unsigned ElementCount, int Packed);
+                                    unsigned ElementCount, LLVMBool Packed);
 LLVMTypeRef LLVMStructType(LLVMTypeRef *ElementTypes, unsigned ElementCount,
-                           int Packed);
+                           LLVMBool Packed);
 unsigned LLVMCountStructElementTypes(LLVMTypeRef StructTy);
 void LLVMGetStructElementTypes(LLVMTypeRef StructTy, LLVMTypeRef *Dest);
-int LLVMIsPackedStruct(LLVMTypeRef StructTy);
+LLVMBool LLVMIsPackedStruct(LLVMTypeRef StructTy);
 
 /* Operations on array, pointer, and vector types (sequence types) */
 LLVMTypeRef LLVMArrayType(LLVMTypeRef ElementType, unsigned ElementCount);
@@ -427,10 +429,6 @@ void LLVMDisposeTypeHandle(LLVMTypeHandl
         macro(IntrinsicInst)                \
           macro(DbgInfoIntrinsic)           \
             macro(DbgDeclareInst)           \
-            macro(DbgFuncStartInst)         \
-            macro(DbgRegionEndInst)         \
-            macro(DbgRegionStartInst)       \
-            macro(DbgStopPointInst)         \
           macro(EHSelectorInst)             \
           macro(MemIntrinsic)               \
             macro(MemCpyInst)               \
@@ -499,14 +497,14 @@ LLVMValueRef LLVMGetOperand(LLVMValueRef
 LLVMValueRef LLVMConstNull(LLVMTypeRef Ty); /* all zeroes */
 LLVMValueRef LLVMConstAllOnes(LLVMTypeRef Ty); /* only for int/vector */
 LLVMValueRef LLVMGetUndef(LLVMTypeRef Ty);
-int LLVMIsConstant(LLVMValueRef Val);
-int LLVMIsNull(LLVMValueRef Val);
-int LLVMIsUndef(LLVMValueRef Val);
+LLVMBool LLVMIsConstant(LLVMValueRef Val);
+LLVMBool LLVMIsNull(LLVMValueRef Val);
+LLVMBool LLVMIsUndef(LLVMValueRef Val);
 LLVMValueRef LLVMConstPointerNull(LLVMTypeRef Ty);
 
 /* Operations on scalar constants */
 LLVMValueRef LLVMConstInt(LLVMTypeRef IntTy, unsigned long long N,
-                          int SignExtend);
+                          LLVMBool SignExtend);
 LLVMValueRef LLVMConstIntOfString(LLVMTypeRef IntTy, const char *Text,
                                   uint8_t Radix);
 LLVMValueRef LLVMConstIntOfStringAndSize(LLVMTypeRef IntTy, const char *Text,
@@ -521,17 +519,17 @@ long long LLVMConstIntGetSExtValue(LLVMV
 
 /* Operations on composite constants */
 LLVMValueRef LLVMConstStringInContext(LLVMContextRef C, const char *Str,
-                                      unsigned Length, int DontNullTerminate);
+                                      unsigned Length, LLVMBool DontNullTerminate);
 LLVMValueRef LLVMConstStructInContext(LLVMContextRef C, 
                                       LLVMValueRef *ConstantVals,
-                                      unsigned Count, int Packed);
+                                      unsigned Count, LLVMBool Packed);
 
 LLVMValueRef LLVMConstString(const char *Str, unsigned Length,
-                             int DontNullTerminate);
+                             LLVMBool DontNullTerminate);
 LLVMValueRef LLVMConstArray(LLVMTypeRef ElementTy,
                             LLVMValueRef *ConstantVals, unsigned Length);
 LLVMValueRef LLVMConstStruct(LLVMValueRef *ConstantVals, unsigned Count,
-                             int Packed);
+                             LLVMBool Packed);
 LLVMValueRef LLVMConstVector(LLVMValueRef *ScalarConstantVals, unsigned Size);
 
 /* Constant expressions */
@@ -591,7 +589,7 @@ LLVMValueRef LLVMConstTruncOrBitCast(LLV
 LLVMValueRef LLVMConstPointerCast(LLVMValueRef ConstantVal,
                                   LLVMTypeRef ToType);
 LLVMValueRef LLVMConstIntCast(LLVMValueRef ConstantVal, LLVMTypeRef ToType,
-                              unsigned isSigned);
+                              LLVMBool isSigned);
 LLVMValueRef LLVMConstFPCast(LLVMValueRef ConstantVal, LLVMTypeRef ToType);
 LLVMValueRef LLVMConstSelect(LLVMValueRef ConstantCondition,
                              LLVMValueRef ConstantIfTrue,
@@ -609,13 +607,13 @@ LLVMValueRef LLVMConstExtractValue(LLVMV
 LLVMValueRef LLVMConstInsertValue(LLVMValueRef AggConstant,
                                   LLVMValueRef ElementValueConstant,
                                   unsigned *IdxList, unsigned NumIdx);
-LLVMValueRef LLVMConstInlineAsm(LLVMTypeRef Ty, 
+LLVMValueRef LLVMConstInlineAsm(LLVMTypeRef Ty,
                                 const char *AsmString, const char *Constraints,
-                                int HasSideEffects);
+                                LLVMBool HasSideEffects, LLVMBool IsAlignStack);
 
 /* Operations on global variables, functions, and aliases (globals) */
 LLVMModuleRef LLVMGetGlobalParent(LLVMValueRef Global);
-int LLVMIsDeclaration(LLVMValueRef Global);
+LLVMBool LLVMIsDeclaration(LLVMValueRef Global);
 LLVMLinkage LLVMGetLinkage(LLVMValueRef Global);
 void LLVMSetLinkage(LLVMValueRef Global, LLVMLinkage Linkage);
 const char *LLVMGetSection(LLVMValueRef Global);
@@ -635,10 +633,10 @@ LLVMValueRef LLVMGetPreviousGlobal(LLVMV
 void LLVMDeleteGlobal(LLVMValueRef GlobalVar);
 LLVMValueRef LLVMGetInitializer(LLVMValueRef GlobalVar);
 void LLVMSetInitializer(LLVMValueRef GlobalVar, LLVMValueRef ConstantVal);
-int LLVMIsThreadLocal(LLVMValueRef GlobalVar);
-void LLVMSetThreadLocal(LLVMValueRef GlobalVar, int IsThreadLocal);
-int LLVMIsGlobalConstant(LLVMValueRef GlobalVar);
-void LLVMSetGlobalConstant(LLVMValueRef GlobalVar, int IsConstant);
+LLVMBool LLVMIsThreadLocal(LLVMValueRef GlobalVar);
+void LLVMSetThreadLocal(LLVMValueRef GlobalVar, LLVMBool IsThreadLocal);
+LLVMBool LLVMIsGlobalConstant(LLVMValueRef GlobalVar);
+void LLVMSetGlobalConstant(LLVMValueRef GlobalVar, LLVMBool IsConstant);
 
 /* Operations on aliases */
 LLVMValueRef LLVMAddAlias(LLVMModuleRef M, LLVMTypeRef Ty, LLVMValueRef Aliasee,
@@ -678,7 +676,7 @@ void LLVMSetParamAlignment(LLVMValueRef 
 
 /* Operations on basic blocks */
 LLVMValueRef LLVMBasicBlockAsValue(LLVMBasicBlockRef BB);
-int LLVMValueIsBasicBlock(LLVMValueRef Val);
+LLVMBool LLVMValueIsBasicBlock(LLVMValueRef Val);
 LLVMBasicBlockRef LLVMValueAsBasicBlock(LLVMValueRef Val);
 LLVMValueRef LLVMGetBasicBlockParent(LLVMBasicBlockRef BB);
 unsigned LLVMCountBasicBlocks(LLVMValueRef Fn);
@@ -718,8 +716,8 @@ void LLVMSetInstrParamAlignment(LLVMValu
                                 unsigned align);
 
 /* Operations on call instructions (only) */
-int LLVMIsTailCall(LLVMValueRef CallInst);
-void LLVMSetTailCall(LLVMValueRef CallInst, int IsTailCall);
+LLVMBool LLVMIsTailCall(LLVMValueRef CallInst);
+void LLVMSetTailCall(LLVMValueRef CallInst, LLVMBool IsTailCall);
 
 /* Operations on phi nodes */
 void LLVMAddIncoming(LLVMValueRef PhiNode, LLVMValueRef *IncomingValues,
@@ -932,11 +930,11 @@ void LLVMDisposeModuleProvider(LLVMModul
 
 /*===-- Memory buffers ----------------------------------------------------===*/
 
-int LLVMCreateMemoryBufferWithContentsOfFile(const char *Path,
-                                             LLVMMemoryBufferRef *OutMemBuf,
-                                             char **OutMessage);
-int LLVMCreateMemoryBufferWithSTDIN(LLVMMemoryBufferRef *OutMemBuf,
-                                    char **OutMessage);
+LLVMBool LLVMCreateMemoryBufferWithContentsOfFile(const char *Path,
+                                                  LLVMMemoryBufferRef *OutMemBuf,
+                                                  char **OutMessage);
+LLVMBool LLVMCreateMemoryBufferWithSTDIN(LLVMMemoryBufferRef *OutMemBuf,
+                                         char **OutMessage);
 void LLVMDisposeMemoryBuffer(LLVMMemoryBufferRef MemBuf);
 
 
@@ -956,23 +954,23 @@ LLVMPassManagerRef LLVMCreateFunctionPas
 /** Initializes, executes on the provided module, and finalizes all of the
     passes scheduled in the pass manager. Returns 1 if any of the passes
     modified the module, 0 otherwise. See llvm::PassManager::run(Module&). */
-int LLVMRunPassManager(LLVMPassManagerRef PM, LLVMModuleRef M);
+LLVMBool LLVMRunPassManager(LLVMPassManagerRef PM, LLVMModuleRef M);
 
 /** Initializes all of the function passes scheduled in the function pass
     manager. Returns 1 if any of the passes modified the module, 0 otherwise.
     See llvm::FunctionPassManager::doInitialization. */
-int LLVMInitializeFunctionPassManager(LLVMPassManagerRef FPM);
+LLVMBool LLVMInitializeFunctionPassManager(LLVMPassManagerRef FPM);
 
 /** Executes all of the function passes scheduled in the function pass manager
     on the provided function. Returns 1 if any of the passes modified the
     function, false otherwise.
     See llvm::FunctionPassManager::run(Function&). */
-int LLVMRunFunctionPassManager(LLVMPassManagerRef FPM, LLVMValueRef F);
+LLVMBool LLVMRunFunctionPassManager(LLVMPassManagerRef FPM, LLVMValueRef F);
 
 /** Finalizes all of the function passes scheduled in in the function pass
     manager. Returns 1 if any of the passes modified the module, 0 otherwise.
     See llvm::FunctionPassManager::doFinalization. */
-int LLVMFinalizeFunctionPassManager(LLVMPassManagerRef FPM);
+LLVMBool LLVMFinalizeFunctionPassManager(LLVMPassManagerRef FPM);
 
 /** Frees the memory of a pass pipeline. For function pipelines, does not free
     the module provider.

Modified: vendor/llvm/dist/include/llvm-c/ExecutionEngine.h
==============================================================================
--- vendor/llvm/dist/include/llvm-c/ExecutionEngine.h	Fri Jan 15 15:36:24 2010	(r202374)
+++ vendor/llvm/dist/include/llvm-c/ExecutionEngine.h	Fri Jan 15 15:37:28 2010	(r202375)
@@ -36,7 +36,7 @@ typedef struct LLVMOpaqueExecutionEngine
 
 LLVMGenericValueRef LLVMCreateGenericValueOfInt(LLVMTypeRef Ty,
                                                 unsigned long long N,
-                                                int IsSigned);
+                                                LLVMBool IsSigned);
 
 LLVMGenericValueRef LLVMCreateGenericValueOfPointer(void *P);
 
@@ -45,7 +45,7 @@ LLVMGenericValueRef LLVMCreateGenericVal
 unsigned LLVMGenericValueIntWidth(LLVMGenericValueRef GenValRef);
 
 unsigned long long LLVMGenericValueToInt(LLVMGenericValueRef GenVal,
-                                         int IsSigned);
+                                         LLVMBool IsSigned);
 
 void *LLVMGenericValueToPointer(LLVMGenericValueRef GenVal);
 
@@ -55,18 +55,18 @@ void LLVMDisposeGenericValue(LLVMGeneric
 
 /*===-- Operations on execution engines -----------------------------------===*/
 
-int LLVMCreateExecutionEngine(LLVMExecutionEngineRef *OutEE,
-                              LLVMModuleProviderRef MP,
-                              char **OutError);
-
-int LLVMCreateInterpreter(LLVMExecutionEngineRef *OutInterp,
-                          LLVMModuleProviderRef MP,
-                          char **OutError);
-
-int LLVMCreateJITCompiler(LLVMExecutionEngineRef *OutJIT,
-                          LLVMModuleProviderRef MP,
-                          unsigned OptLevel,
-                          char **OutError);
+LLVMBool LLVMCreateExecutionEngine(LLVMExecutionEngineRef *OutEE,
+                                   LLVMModuleProviderRef MP,
+                                   char **OutError);
+
+LLVMBool LLVMCreateInterpreter(LLVMExecutionEngineRef *OutInterp,
+                               LLVMModuleProviderRef MP,
+                               char **OutError);
+
+LLVMBool LLVMCreateJITCompiler(LLVMExecutionEngineRef *OutJIT,
+                               LLVMModuleProviderRef MP,
+                               unsigned OptLevel,
+                               char **OutError);
 
 void LLVMDisposeExecutionEngine(LLVMExecutionEngineRef EE);
 
@@ -86,12 +86,12 @@ void LLVMFreeMachineCodeForFunction(LLVM
 
 void LLVMAddModuleProvider(LLVMExecutionEngineRef EE, LLVMModuleProviderRef MP);
 
-int LLVMRemoveModuleProvider(LLVMExecutionEngineRef EE,
-                             LLVMModuleProviderRef MP,
-                             LLVMModuleRef *OutMod, char **OutError);
+LLVMBool LLVMRemoveModuleProvider(LLVMExecutionEngineRef EE,
+                                  LLVMModuleProviderRef MP,
+                                  LLVMModuleRef *OutMod, char **OutError);
 
-int LLVMFindFunction(LLVMExecutionEngineRef EE, const char *Name,
-                     LLVMValueRef *OutFn);
+LLVMBool LLVMFindFunction(LLVMExecutionEngineRef EE, const char *Name,
+                          LLVMValueRef *OutFn);
 
 LLVMTargetDataRef LLVMGetExecutionEngineTargetData(LLVMExecutionEngineRef EE);
 

Modified: vendor/llvm/dist/include/llvm-c/Target.h
==============================================================================
--- vendor/llvm/dist/include/llvm-c/Target.h	Fri Jan 15 15:36:24 2010	(r202374)
+++ vendor/llvm/dist/include/llvm-c/Target.h	Fri Jan 15 15:37:28 2010	(r202375)
@@ -26,8 +26,7 @@
 extern "C" {
 #endif
 
-enum { LLVMBigEndian, LLVMLittleEndian };
-typedef int LLVMByteOrdering;
+enum LLVMByteOrdering { LLVMBigEndian, LLVMLittleEndian };
 
 typedef struct LLVMOpaqueTargetData *LLVMTargetDataRef;
 typedef struct LLVMStructLayout *LLVMStructLayoutRef;
@@ -62,7 +61,7 @@ static inline void LLVMInitializeAllTarg
 /** LLVMInitializeNativeTarget - The main program should call this function to
     initialize the native target corresponding to the host.  This is useful 
     for JIT applications to ensure that the target gets linked in correctly. */
-static inline int LLVMInitializeNativeTarget() {
+static inline LLVMBool LLVMInitializeNativeTarget() {
   /* If we have a native target, initialize it to ensure it is linked in. */
 #ifdef LLVM_NATIVE_ARCH
 #define DoInit2(TARG) \
@@ -97,7 +96,7 @@ char *LLVMCopyStringRepOfTargetData(LLVM
 /** Returns the byte order of a target, either LLVMBigEndian or
     LLVMLittleEndian.
     See the method llvm::TargetData::isLittleEndian. */
-LLVMByteOrdering LLVMByteOrder(LLVMTargetDataRef);
+enum LLVMByteOrdering LLVMByteOrder(LLVMTargetDataRef);
 
 /** Returns the pointer size in bytes for a target.
     See the method llvm::TargetData::getPointerSize. */

Modified: vendor/llvm/dist/include/llvm/ADT/BitVector.h
==============================================================================
--- vendor/llvm/dist/include/llvm/ADT/BitVector.h	Fri Jan 15 15:36:24 2010	(r202374)
+++ vendor/llvm/dist/include/llvm/ADT/BitVector.h	Fri Jan 15 15:37:28 2010	(r202375)
@@ -95,6 +95,9 @@ public:
     delete[] Bits;
   }
 
+  /// empty - Tests whether there are no bits in this bitvector.
+  bool empty() const { return Size == 0; }
+
   /// size - Returns the number of bits in this bitvector.
   unsigned size() const { return Size; }
 
@@ -341,6 +344,12 @@ public:
     return *this;
   }
 
+  void swap(BitVector &RHS) {
+    std::swap(Bits, RHS.Bits);
+    std::swap(Size, RHS.Size);
+    std::swap(Capacity, RHS.Capacity);
+  }
+
 private:
   unsigned NumBitWords(unsigned S) const {
     return (S + BITWORD_SIZE-1) / BITWORD_SIZE;
@@ -406,4 +415,13 @@ inline BitVector operator^(const BitVect
 }
 
 } // End llvm namespace
+
+namespace std {
+  /// Implement std::swap in terms of BitVector swap.
+  inline void
+  swap(llvm::BitVector &LHS, llvm::BitVector &RHS) {
+    LHS.swap(RHS);
+  }
+}
+
 #endif

Added: vendor/llvm/dist/include/llvm/ADT/SmallBitVector.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ vendor/llvm/dist/include/llvm/ADT/SmallBitVector.h	Fri Jan 15 15:37:28 2010	(r202375)
@@ -0,0 +1,373 @@
+//===- llvm/ADT/SmallBitVector.h - 'Normally small' bit vectors -*- C++ -*-===//
+//
+//                     The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+//
+// This file implements the SmallBitVector class.
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef LLVM_ADT_SMALLBITVECTOR_H
+#define LLVM_ADT_SMALLBITVECTOR_H
+
+#include "llvm/ADT/BitVector.h"
+#include "llvm/ADT/PointerIntPair.h"
+#include "llvm/Support/MathExtras.h"
+#include <cassert>
+
+namespace llvm {
+
+/// SmallBitVector - This is a 'bitvector' (really, a variable-sized bit array),
+/// optimized for the case when the array is small.  It contains one
+/// pointer-sized field, which is directly used as a plain collection of bits
+/// when possible, or as a pointer to a larger heap-allocated array when
+/// necessary.  This allows normal "small" cases to be fast without losing
+/// generality for large inputs.
+///
+class SmallBitVector {
+  // TODO: In "large" mode, a pointer to a BitVector is used, leading to an
+  // unnecessary level of indirection. It would be more efficient to use a
+  // pointer to memory containing size, allocation size, and the array of bits.
+  PointerIntPair<BitVector *, 1, uintptr_t> X;
+
+  // The number of bits in this class.
+  static const size_t NumBaseBits = sizeof(uintptr_t) * CHAR_BIT;
+
+  // One bit is used to discriminate between small and large mode. The
+  // remaining bits are used for the small-mode representation.
+  static const size_t SmallNumRawBits = NumBaseBits - 1;
+
+  // A few more bits are used to store the size of the bit set in small mode.
+  // Theoretically this is a ceil-log2. These bits are encoded in the most
+  // significant bits of the raw bits.
+  static const size_t SmallNumSizeBits = (NumBaseBits == 32 ? 5 :
+                                          NumBaseBits == 64 ? 6 :
+                                          SmallNumRawBits);
+
+  // The remaining bits are used to store the actual set in small mode.
+  static const size_t SmallNumDataBits = SmallNumRawBits - SmallNumSizeBits;
+
+  bool isSmall() const {
+    return X.getInt();
+  }
+
+  void switchToSmall(uintptr_t NewSmallBits, size_t NewSize) {
+    X.setInt(true);
+    setSmallSize(NewSize);
+    setSmallBits(NewSmallBits);
+  }
+
+  void switchToLarge(BitVector *BV) {
+    X.setInt(false);
+    X.setPointer(BV);
+  }
+
+  // Return all the bits used for the "small" representation; this includes
+  // bits for the size as well as the element bits.
+  uintptr_t getSmallRawBits() const {
+    return reinterpret_cast<uintptr_t>(X.getPointer()) >> 1;
+  }
+
+  void setSmallRawBits(uintptr_t NewRawBits) {
+    return X.setPointer(reinterpret_cast<BitVector *>(NewRawBits << 1));
+  }
+
+  // Return the size.
+  size_t getSmallSize() const {
+    return getSmallRawBits() >> SmallNumDataBits;
+  }
+
+  void setSmallSize(size_t Size) {
+    setSmallRawBits(getSmallBits() | (Size << SmallNumDataBits));
+  }
+
+  // Return the element bits.
+  uintptr_t getSmallBits() const {
+    return getSmallRawBits() & ~(~uintptr_t(0) << SmallNumDataBits);
+  }
+
+  void setSmallBits(uintptr_t NewBits) {
+    setSmallRawBits((getSmallRawBits() & (~uintptr_t(0) << SmallNumDataBits)) |

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***


More information about the svn-src-vendor mailing list