Date: Sat, 6 Jun 2009 08:20:30 +0000 (UTC) From: Ed Schouten <ed@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r193574 - in vendor/llvm/dist: . autoconf cmake cmake/modules docs include/llvm include/llvm-c include/llvm/Analysis include/llvm/CodeGen include/llvm/Config include/llvm/ExecutionEngin... Message-ID: <200906060820.n568KU0x053149@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: ed Date: Sat Jun 6 08:20:29 2009 New Revision: 193574 URL: http://svn.freebsd.org/changeset/base/193574 Log: Import LLVM, at r72995. We should now have support for #pragma weak. Added: vendor/llvm/dist/lib/CodeGen/ELF.h vendor/llvm/dist/test/CodeGen/ARM/2009-06-04-MissingLiveIn.ll vendor/llvm/dist/test/CodeGen/CBackend/fneg.ll vendor/llvm/dist/test/CodeGen/Generic/2009-06-03-UnreachableSplitPad.ll vendor/llvm/dist/test/CodeGen/X86/2009-06-03-Win64DisableRedZone.ll vendor/llvm/dist/test/CodeGen/X86/2009-06-03-Win64SpillXMM.ll vendor/llvm/dist/test/CodeGen/X86/2009-06-04-VirtualLiveIn.ll vendor/llvm/dist/test/CodeGen/X86/2009-06-05-ScalarToVectorByteMMX.ll vendor/llvm/dist/test/CodeGen/X86/2009-06-05-VZextByteShort.ll vendor/llvm/dist/test/CodeGen/X86/2009-06-05-VariableIndexInsert.ll vendor/llvm/dist/test/CodeGen/X86/2009-06-05-sitofpCrash.ll vendor/llvm/dist/test/CodeGen/X86/2009-06-06-ConcatVectors.ll vendor/llvm/dist/test/CodeGen/X86/fmul-zero.ll vendor/llvm/dist/test/CodeGen/X86/red-zone2.ll vendor/llvm/dist/test/Other/2009-06-05-no-implicit-float.ll Modified: vendor/llvm/dist/CMakeLists.txt vendor/llvm/dist/Makefile.rules vendor/llvm/dist/autoconf/configure.ac vendor/llvm/dist/cmake/config-ix.cmake vendor/llvm/dist/cmake/modules/AddLLVM.cmake vendor/llvm/dist/cmake/modules/AddPartiallyLinkedObject.cmake vendor/llvm/dist/cmake/modules/LLVMConfig.cmake vendor/llvm/dist/configure vendor/llvm/dist/docs/CMake.html vendor/llvm/dist/docs/GoldPlugin.html vendor/llvm/dist/docs/LangRef.html vendor/llvm/dist/include/llvm-c/lto.h vendor/llvm/dist/include/llvm/Analysis/Dominators.h vendor/llvm/dist/include/llvm/Analysis/ScalarEvolutionExpander.h vendor/llvm/dist/include/llvm/Attributes.h vendor/llvm/dist/include/llvm/CodeGen/JITCodeEmitter.h vendor/llvm/dist/include/llvm/CodeGen/MachineCodeEmitter.h vendor/llvm/dist/include/llvm/Config/config.h.cmake vendor/llvm/dist/include/llvm/Constants.h vendor/llvm/dist/include/llvm/ExecutionEngine/JITMemoryManager.h vendor/llvm/dist/include/llvm/InstrTypes.h vendor/llvm/dist/include/llvm/Instruction.def vendor/llvm/dist/include/llvm/Support/ConstantFolder.h vendor/llvm/dist/include/llvm/Support/IRBuilder.h vendor/llvm/dist/include/llvm/Support/NoFolder.h vendor/llvm/dist/include/llvm/Support/PatternMatch.h vendor/llvm/dist/include/llvm/Support/StandardPasses.h vendor/llvm/dist/include/llvm/Support/TargetFolder.h vendor/llvm/dist/include/llvm/Support/raw_ostream.h vendor/llvm/dist/include/llvm/System/Process.h vendor/llvm/dist/include/llvm/Target/TargetELFWriterInfo.h vendor/llvm/dist/include/llvm/Target/TargetLowering.h vendor/llvm/dist/include/llvm/Target/TargetOptions.h vendor/llvm/dist/lib/Analysis/InstCount.cpp vendor/llvm/dist/lib/Analysis/LoopInfo.cpp vendor/llvm/dist/lib/Analysis/ScalarEvolution.cpp vendor/llvm/dist/lib/Analysis/ScalarEvolutionExpander.cpp vendor/llvm/dist/lib/Analysis/ValueTracking.cpp vendor/llvm/dist/lib/AsmParser/LLLexer.cpp vendor/llvm/dist/lib/AsmParser/LLParser.cpp vendor/llvm/dist/lib/AsmParser/LLToken.h vendor/llvm/dist/lib/Bitcode/Reader/BitcodeReader.cpp vendor/llvm/dist/lib/Bitcode/Writer/BitcodeWriter.cpp vendor/llvm/dist/lib/CodeGen/AsmPrinter/DwarfDebug.cpp vendor/llvm/dist/lib/CodeGen/AsmPrinter/DwarfPrinter.cpp vendor/llvm/dist/lib/CodeGen/ELFCodeEmitter.cpp vendor/llvm/dist/lib/CodeGen/ELFCodeEmitter.h vendor/llvm/dist/lib/CodeGen/ELFWriter.cpp vendor/llvm/dist/lib/CodeGen/ELFWriter.h vendor/llvm/dist/lib/CodeGen/MachineInstr.cpp vendor/llvm/dist/lib/CodeGen/RegAllocLinearScan.cpp vendor/llvm/dist/lib/CodeGen/SelectionDAG/DAGCombiner.cpp vendor/llvm/dist/lib/CodeGen/SelectionDAG/FastISel.cpp vendor/llvm/dist/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp vendor/llvm/dist/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp vendor/llvm/dist/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp vendor/llvm/dist/lib/CodeGen/SelectionDAG/SelectionDAG.cpp vendor/llvm/dist/lib/CodeGen/SelectionDAG/SelectionDAGBuild.cpp vendor/llvm/dist/lib/CodeGen/SelectionDAG/SelectionDAGBuild.h vendor/llvm/dist/lib/CodeGen/SelectionDAG/TargetLowering.cpp vendor/llvm/dist/lib/CodeGen/VirtRegRewriter.cpp vendor/llvm/dist/lib/ExecutionEngine/ExecutionEngine.cpp vendor/llvm/dist/lib/ExecutionEngine/Interpreter/Execution.cpp vendor/llvm/dist/lib/ExecutionEngine/JIT/JITEmitter.cpp vendor/llvm/dist/lib/ExecutionEngine/JIT/JITMemoryManager.cpp vendor/llvm/dist/lib/Support/raw_ostream.cpp vendor/llvm/dist/lib/System/Unix/Process.inc vendor/llvm/dist/lib/System/Win32/Process.inc vendor/llvm/dist/lib/Target/ARM/ARMConstantPoolValue.cpp vendor/llvm/dist/lib/Target/ARM/ARMLoadStoreOptimizer.cpp vendor/llvm/dist/lib/Target/ARM/ARMMachineFunctionInfo.h vendor/llvm/dist/lib/Target/ARM/ARMRegisterInfo.td vendor/llvm/dist/lib/Target/Alpha/AlphaMachineFunctionInfo.h vendor/llvm/dist/lib/Target/CBackend/CBackend.cpp vendor/llvm/dist/lib/Target/CppBackend/CPPBackend.cpp vendor/llvm/dist/lib/Target/IA64/IA64MachineFunctionInfo.h vendor/llvm/dist/lib/Target/MSIL/MSILWriter.cpp vendor/llvm/dist/lib/Target/MSP430/MSP430MachineFunctionInfo.h vendor/llvm/dist/lib/Target/PIC16/PIC16ISelLowering.cpp vendor/llvm/dist/lib/Target/PowerPC/PPCISelLowering.cpp vendor/llvm/dist/lib/Target/PowerPC/PPCISelLowering.h vendor/llvm/dist/lib/Target/PowerPC/PPCMachineFunctionInfo.h vendor/llvm/dist/lib/Target/PowerPC/PPCRegisterInfo.cpp vendor/llvm/dist/lib/Target/TargetMachine.cpp vendor/llvm/dist/lib/Target/X86/X86ELFWriterInfo.cpp vendor/llvm/dist/lib/Target/X86/X86ELFWriterInfo.h vendor/llvm/dist/lib/Target/X86/X86ISelLowering.cpp vendor/llvm/dist/lib/Target/X86/X86ISelLowering.h vendor/llvm/dist/lib/Target/X86/X86InstrInfo.cpp vendor/llvm/dist/lib/Target/X86/X86InstrMMX.td vendor/llvm/dist/lib/Target/X86/X86InstrSSE.td vendor/llvm/dist/lib/Target/X86/X86MachineFunctionInfo.h vendor/llvm/dist/lib/Target/X86/X86RegisterInfo.cpp vendor/llvm/dist/lib/Target/X86/X86TargetMachine.cpp vendor/llvm/dist/lib/Target/XCore/XCoreMachineFunctionInfo.h vendor/llvm/dist/lib/Transforms/Scalar/GVN.cpp vendor/llvm/dist/lib/Transforms/Scalar/GVNPRE.cpp vendor/llvm/dist/lib/Transforms/Scalar/IndVarSimplify.cpp vendor/llvm/dist/lib/Transforms/Scalar/InstructionCombining.cpp vendor/llvm/dist/lib/Transforms/Scalar/LoopStrengthReduce.cpp vendor/llvm/dist/lib/Transforms/Scalar/SimplifyLibCalls.cpp vendor/llvm/dist/lib/Transforms/Utils/SimplifyCFG.cpp vendor/llvm/dist/lib/VMCore/Attributes.cpp vendor/llvm/dist/lib/VMCore/ConstantFold.cpp vendor/llvm/dist/lib/VMCore/Constants.cpp vendor/llvm/dist/lib/VMCore/Instruction.cpp vendor/llvm/dist/lib/VMCore/Instructions.cpp vendor/llvm/dist/lib/VMCore/Verifier.cpp 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/trip-count4.ll vendor/llvm/dist/test/Assembler/2002-04-07-HexFloatConstants.ll vendor/llvm/dist/test/Assembler/2002-04-07-InfConstant.ll vendor/llvm/dist/test/CodeGen/ARM/2007-01-19-InfiniteLoop.ll vendor/llvm/dist/test/CodeGen/ARM/2008-11-19-ScavengerAssert.ll vendor/llvm/dist/test/CodeGen/ARM/2009-02-27-SpillerBug.ll vendor/llvm/dist/test/CodeGen/ARM/2009-03-07-SpillerBug.ll vendor/llvm/dist/test/CodeGen/ARM/2009-04-08-FloatUndef.ll vendor/llvm/dist/test/CodeGen/ARM/cse-libcalls.ll vendor/llvm/dist/test/CodeGen/ARM/fixunsdfdi.ll vendor/llvm/dist/test/CodeGen/ARM/fnmul.ll vendor/llvm/dist/test/CodeGen/ARM/fparith.ll vendor/llvm/dist/test/CodeGen/ARM/fpmem.ll vendor/llvm/dist/test/CodeGen/ARM/illegal-vector-bitcast.ll vendor/llvm/dist/test/CodeGen/ARM/lsr-scale-addr-mode.ll vendor/llvm/dist/test/CodeGen/ARM/memcpy-inline.ll vendor/llvm/dist/test/CodeGen/ARM/str_pre-2.ll vendor/llvm/dist/test/CodeGen/ARM/vfp.ll vendor/llvm/dist/test/CodeGen/CBackend/2006-12-11-Float-Bitcast.ll vendor/llvm/dist/test/CodeGen/CBackend/2008-10-21-PPCLongDoubleConstant.ll vendor/llvm/dist/test/CodeGen/CBackend/vectors.ll vendor/llvm/dist/test/CodeGen/CellSPU/dp_farith.ll vendor/llvm/dist/test/CodeGen/CellSPU/fneg-fabs.ll vendor/llvm/dist/test/CodeGen/CellSPU/sp_farith.ll vendor/llvm/dist/test/CodeGen/Generic/2006-07-03-schedulers.ll vendor/llvm/dist/test/CodeGen/Generic/2007-05-15-InfiniteRecursion.ll vendor/llvm/dist/test/CodeGen/Generic/2008-02-04-ExtractSubvector.ll vendor/llvm/dist/test/CodeGen/Generic/2008-02-25-NegateZero.ll vendor/llvm/dist/test/CodeGen/Generic/2008-02-26-NegatableCrash.ll vendor/llvm/dist/test/CodeGen/Generic/fneg-fabs.ll vendor/llvm/dist/test/CodeGen/Generic/print-arith-fp.ll vendor/llvm/dist/test/CodeGen/Generic/select.ll vendor/llvm/dist/test/CodeGen/Generic/storetrunc-fp.ll vendor/llvm/dist/test/CodeGen/Generic/v-split.ll vendor/llvm/dist/test/CodeGen/Generic/vector.ll vendor/llvm/dist/test/CodeGen/MSP430/2009-05-19-DoubleSplit.ll vendor/llvm/dist/test/CodeGen/Mips/2008-07-06-fadd64.ll vendor/llvm/dist/test/CodeGen/Mips/2008-07-22-Cstpool.ll vendor/llvm/dist/test/CodeGen/Mips/2008-07-23-fpcmp.ll vendor/llvm/dist/test/CodeGen/Mips/2008-08-03-fabs64.ll vendor/llvm/dist/test/CodeGen/Mips/2008-11-10-xint_to_fp.ll vendor/llvm/dist/test/CodeGen/PowerPC/2006-01-11-darwin-fp-argument.ll vendor/llvm/dist/test/CodeGen/PowerPC/2006-10-11-combiner-aa-regression.ll vendor/llvm/dist/test/CodeGen/PowerPC/2007-03-30-SpillerCrash.ll vendor/llvm/dist/test/CodeGen/PowerPC/2007-11-19-VectorSplitting.ll vendor/llvm/dist/test/CodeGen/PowerPC/2008-07-15-Fabs.ll vendor/llvm/dist/test/CodeGen/PowerPC/2008-07-17-Fneg.ll vendor/llvm/dist/test/CodeGen/PowerPC/2008-09-12-CoalescerBug.ll vendor/llvm/dist/test/CodeGen/PowerPC/2008-10-28-UnprocessedNode.ll vendor/llvm/dist/test/CodeGen/PowerPC/2008-10-28-f128-i32.ll vendor/llvm/dist/test/CodeGen/PowerPC/buildvec_canonicalize.ll vendor/llvm/dist/test/CodeGen/PowerPC/fma.ll vendor/llvm/dist/test/CodeGen/PowerPC/fnabs.ll vendor/llvm/dist/test/CodeGen/PowerPC/fneg.ll vendor/llvm/dist/test/CodeGen/PowerPC/int-fp-conv-1.ll vendor/llvm/dist/test/CodeGen/PowerPC/itofp128.ll vendor/llvm/dist/test/CodeGen/PowerPC/mem-rr-addr-mode.ll vendor/llvm/dist/test/CodeGen/PowerPC/multiple-return-values.ll vendor/llvm/dist/test/CodeGen/PowerPC/ppcf128-1-opt.ll vendor/llvm/dist/test/CodeGen/PowerPC/ppcf128-1.ll vendor/llvm/dist/test/CodeGen/PowerPC/ppcf128-2.ll vendor/llvm/dist/test/CodeGen/PowerPC/ppcf128-4.ll vendor/llvm/dist/test/CodeGen/PowerPC/return-val-i128.ll vendor/llvm/dist/test/CodeGen/PowerPC/unsafe-math.ll vendor/llvm/dist/test/CodeGen/PowerPC/vec_fneg.ll vendor/llvm/dist/test/CodeGen/PowerPC/vec_splat.ll vendor/llvm/dist/test/CodeGen/PowerPC/vec_zero.ll vendor/llvm/dist/test/CodeGen/PowerPC/vector.ll vendor/llvm/dist/test/CodeGen/SPARC/2006-01-22-BitConvertLegalize.ll vendor/llvm/dist/test/CodeGen/X86/2005-05-08-FPStackifierPHI.ll vendor/llvm/dist/test/CodeGen/X86/2006-05-25-CycleInDAG.ll vendor/llvm/dist/test/CodeGen/X86/2007-01-08-InstrSched.ll vendor/llvm/dist/test/CodeGen/X86/2007-01-13-StackPtrIndex.ll vendor/llvm/dist/test/CodeGen/X86/2007-03-01-SpillerCrash.ll vendor/llvm/dist/test/CodeGen/X86/2007-04-11-InlineAsmVectorResult.ll vendor/llvm/dist/test/CodeGen/X86/2007-04-24-VectorCrash.ll vendor/llvm/dist/test/CodeGen/X86/2007-06-29-VecFPConstantCSEBug.ll vendor/llvm/dist/test/CodeGen/X86/2007-07-10-StackerAssert.ll vendor/llvm/dist/test/CodeGen/X86/2007-09-18-ShuffleXformBug.ll vendor/llvm/dist/test/CodeGen/X86/2007-10-12-SpillerUnfold1.ll vendor/llvm/dist/test/CodeGen/X86/2007-11-02-BadAsm.ll vendor/llvm/dist/test/CodeGen/X86/2007-11-06-InstrSched.ll vendor/llvm/dist/test/CodeGen/X86/2007-11-30-LoadFolding-Bug.ll vendor/llvm/dist/test/CodeGen/X86/2007-12-11-FoldImpDefSpill.ll vendor/llvm/dist/test/CodeGen/X86/2008-01-16-FPStackifierAssert.ll vendor/llvm/dist/test/CodeGen/X86/2008-02-06-LoadFoldingBug.ll vendor/llvm/dist/test/CodeGen/X86/2008-02-08-LoadFoldingBug.ll vendor/llvm/dist/test/CodeGen/X86/2008-02-27-DeadSlotElimBug.ll vendor/llvm/dist/test/CodeGen/X86/2008-02-27-PEICrash.ll vendor/llvm/dist/test/CodeGen/X86/2008-03-18-CoalescerBug.ll vendor/llvm/dist/test/CodeGen/X86/2008-03-25-TwoAddrPassBug.ll vendor/llvm/dist/test/CodeGen/X86/2008-07-19-movups-spills.ll vendor/llvm/dist/test/CodeGen/X86/2008-07-23-VSetCC.ll vendor/llvm/dist/test/CodeGen/X86/2008-08-23-X86-64AsmBug.ll vendor/llvm/dist/test/CodeGen/X86/2008-10-27-CoalescerBug.ll vendor/llvm/dist/test/CodeGen/X86/2008-11-03-F80VAARG.ll vendor/llvm/dist/test/CodeGen/X86/2008-12-05-SpillerCrash.ll vendor/llvm/dist/test/CodeGen/X86/2009-01-16-UIntToFP.ll vendor/llvm/dist/test/CodeGen/X86/2009-02-12-SpillerBug.ll vendor/llvm/dist/test/CodeGen/X86/2009-02-25-CommuteBug.ll vendor/llvm/dist/test/CodeGen/X86/2009-03-03-BitcastLongDouble.ll vendor/llvm/dist/test/CodeGen/X86/2009-03-09-SpillerBug.ll vendor/llvm/dist/test/CodeGen/X86/2009-03-12-CPAlignBug.ll vendor/llvm/dist/test/CodeGen/X86/2009-03-23-MultiUseSched.ll vendor/llvm/dist/test/CodeGen/X86/abi-isel.ll vendor/llvm/dist/test/CodeGen/X86/break-anti-dependencies.ll vendor/llvm/dist/test/CodeGen/X86/coalescer-commute1.ll vendor/llvm/dist/test/CodeGen/X86/coalescer-commute2.ll vendor/llvm/dist/test/CodeGen/X86/coalescer-commute4.ll vendor/llvm/dist/test/CodeGen/X86/complex-fca.ll vendor/llvm/dist/test/CodeGen/X86/constant-pool-remat-0.ll vendor/llvm/dist/test/CodeGen/X86/dagcombine-buildvector.ll vendor/llvm/dist/test/CodeGen/X86/extract-combine.ll vendor/llvm/dist/test/CodeGen/X86/fabs.ll vendor/llvm/dist/test/CodeGen/X86/fast-isel.ll vendor/llvm/dist/test/CodeGen/X86/fold-pcmpeqd-0.ll vendor/llvm/dist/test/CodeGen/X86/fold-pcmpeqd-2.ll vendor/llvm/dist/test/CodeGen/X86/fp-in-intregs.ll vendor/llvm/dist/test/CodeGen/X86/fp-stack-compare.ll vendor/llvm/dist/test/CodeGen/X86/fp_constant_op.ll vendor/llvm/dist/test/CodeGen/X86/fp_load_fold.ll vendor/llvm/dist/test/CodeGen/X86/fsxor-alignment.ll vendor/llvm/dist/test/CodeGen/X86/full-lsr.ll vendor/llvm/dist/test/CodeGen/X86/ga-offset.ll vendor/llvm/dist/test/CodeGen/X86/illegal-vector-args-return.ll vendor/llvm/dist/test/CodeGen/X86/inline-asm-fpstack.ll vendor/llvm/dist/test/CodeGen/X86/inline-asm-mrv.ll vendor/llvm/dist/test/CodeGen/X86/inline-asm-x-scalar.ll vendor/llvm/dist/test/CodeGen/X86/iv-users-in-other-loops.ll vendor/llvm/dist/test/CodeGen/X86/masked-iv-safe.ll vendor/llvm/dist/test/CodeGen/X86/masked-iv-unsafe.ll vendor/llvm/dist/test/CodeGen/X86/multiple-return-values.ll vendor/llvm/dist/test/CodeGen/X86/neg_fp.ll vendor/llvm/dist/test/CodeGen/X86/negate-add-zero.ll vendor/llvm/dist/test/CodeGen/X86/negative-sin.ll vendor/llvm/dist/test/CodeGen/X86/peep-test-0.ll vendor/llvm/dist/test/CodeGen/X86/peep-test-1.ll vendor/llvm/dist/test/CodeGen/X86/phys_subreg_coalesce.ll vendor/llvm/dist/test/CodeGen/X86/pr2656.ll vendor/llvm/dist/test/CodeGen/X86/pr3154.ll vendor/llvm/dist/test/CodeGen/X86/pr3457.ll vendor/llvm/dist/test/CodeGen/X86/pre-split1.ll vendor/llvm/dist/test/CodeGen/X86/pre-split10.ll vendor/llvm/dist/test/CodeGen/X86/pre-split4.ll vendor/llvm/dist/test/CodeGen/X86/pre-split5.ll vendor/llvm/dist/test/CodeGen/X86/pre-split6.ll vendor/llvm/dist/test/CodeGen/X86/pre-split7.ll vendor/llvm/dist/test/CodeGen/X86/pre-split8.ll vendor/llvm/dist/test/CodeGen/X86/pre-split9.ll vendor/llvm/dist/test/CodeGen/X86/remat-constant.ll vendor/llvm/dist/test/CodeGen/X86/shrink-fp-const1.ll vendor/llvm/dist/test/CodeGen/X86/small-byval-memcpy.ll vendor/llvm/dist/test/CodeGen/X86/soft-fp.ll vendor/llvm/dist/test/CodeGen/X86/sse-align-0.ll vendor/llvm/dist/test/CodeGen/X86/sse-align-2.ll vendor/llvm/dist/test/CodeGen/X86/sse-fcopysign.ll vendor/llvm/dist/test/CodeGen/X86/sse41-extractps-bitcast-1.ll vendor/llvm/dist/test/CodeGen/X86/sse41-pmovx.ll vendor/llvm/dist/test/CodeGen/X86/stack-align.ll vendor/llvm/dist/test/CodeGen/X86/storetrunc-fp.ll vendor/llvm/dist/test/CodeGen/X86/stride-reuse.ll vendor/llvm/dist/test/CodeGen/X86/twoaddr-coalesce-2.ll vendor/llvm/dist/test/CodeGen/X86/vec_extract.ll vendor/llvm/dist/test/CodeGen/X86/vec_fneg.ll vendor/llvm/dist/test/CodeGen/X86/vec_ins_extract.ll vendor/llvm/dist/test/CodeGen/X86/vec_insert.ll vendor/llvm/dist/test/CodeGen/X86/vec_logical.ll vendor/llvm/dist/test/CodeGen/X86/vec_select.ll vendor/llvm/dist/test/CodeGen/X86/vec_shuffle-27.ll vendor/llvm/dist/test/CodeGen/X86/vec_shuffle-3.ll vendor/llvm/dist/test/CodeGen/X86/vec_shuffle-5.ll vendor/llvm/dist/test/CodeGen/X86/vec_splat.ll vendor/llvm/dist/test/CodeGen/X86/vec_ss_load_fold.ll vendor/llvm/dist/test/CodeGen/X86/vec_zero.ll vendor/llvm/dist/test/CodeGen/X86/vector.ll vendor/llvm/dist/test/CodeGen/X86/widen_arith-6.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/XCore/2009-01-14-Remat-Crash.ll vendor/llvm/dist/test/CodeGen/XCore/fneg.ll vendor/llvm/dist/test/ExecutionEngine/2003-01-10-FUCOM.ll vendor/llvm/dist/test/ExecutionEngine/test-fp.ll vendor/llvm/dist/test/ExecutionEngine/test-setcond-fp.ll vendor/llvm/dist/test/Feature/ppcld.ll vendor/llvm/dist/test/Feature/sparcld.ll vendor/llvm/dist/test/Feature/x86ld.ll vendor/llvm/dist/test/FrontendC/2009-01-20-k8.c vendor/llvm/dist/test/FrontendC/2009-05-04-EnumInreg.c vendor/llvm/dist/test/Other/2004-08-16-PackedSelect.ll vendor/llvm/dist/test/Other/2004-08-16-PackedSimple.ll vendor/llvm/dist/test/Other/2004-08-20-PackedControlFlow.ll vendor/llvm/dist/test/Transforms/ConstProp/calls.ll vendor/llvm/dist/test/Transforms/DeadStoreElimination/2006-06-27-AST-Remove.ll vendor/llvm/dist/test/Transforms/GVNPRE/2007-06-18-ConstantInPhi.ll vendor/llvm/dist/test/Transforms/GlobalOpt/2008-01-29-VolatileGlobal.ll vendor/llvm/dist/test/Transforms/GlobalOpt/2008-04-26-SROA-Global-Align.ll vendor/llvm/dist/test/Transforms/GlobalOpt/constantexpr-dangle.ll vendor/llvm/dist/test/Transforms/IndVarSimplify/2006-12-10-BitCast.ll vendor/llvm/dist/test/Transforms/IndVarSimplify/2008-11-03-Floating.ll vendor/llvm/dist/test/Transforms/IndVarSimplify/2008-11-17-Floating.ll vendor/llvm/dist/test/Transforms/IndVarSimplify/2008-11-25-APFloatAssert.ll vendor/llvm/dist/test/Transforms/IndVarSimplify/2009-04-27-Floating.ll vendor/llvm/dist/test/Transforms/IndVarSimplify/iv-zext.ll vendor/llvm/dist/test/Transforms/InstCombine/2006-10-26-VectorReassoc.ll vendor/llvm/dist/test/Transforms/InstCombine/2006-12-01-BadFPVectorXform.ll vendor/llvm/dist/test/Transforms/InstCombine/2008-07-16-fsub.ll vendor/llvm/dist/test/Transforms/InstCombine/add-sitofp.ll vendor/llvm/dist/test/Transforms/InstCombine/dce-iterate.ll vendor/llvm/dist/test/Transforms/InstCombine/fpextend.ll vendor/llvm/dist/test/Transforms/InstCombine/mul.ll vendor/llvm/dist/test/Transforms/InstCombine/multi-use-or.ll vendor/llvm/dist/test/Transforms/InstCombine/shufflemask-undef.ll vendor/llvm/dist/test/Transforms/InstCombine/signed-comparison.ll vendor/llvm/dist/test/Transforms/InstCombine/sitofp.ll vendor/llvm/dist/test/Transforms/InstCombine/vec_demanded_elts.ll vendor/llvm/dist/test/Transforms/InstCombine/vec_narrow.ll vendor/llvm/dist/test/Transforms/InstCombine/zero-point-zero-add.ll vendor/llvm/dist/test/Transforms/LCSSA/2007-07-12-LICM-2.ll vendor/llvm/dist/test/Transforms/LCSSA/2007-07-12-LICM-3.ll vendor/llvm/dist/test/Transforms/LCSSA/2007-07-12-LICM.ll vendor/llvm/dist/test/Transforms/LoopIndexSplit/2007-09-24-UpdateIterationSpace.ll vendor/llvm/dist/test/Transforms/LoopIndexSplit/2007-09-25-UpdateIterationSpace-2.ll vendor/llvm/dist/test/Transforms/Mem2Reg/PromoteMemToRegister.ll vendor/llvm/dist/test/Transforms/MemCpyOpt/memcpy.ll vendor/llvm/dist/test/Transforms/MemCpyOpt/sret.ll vendor/llvm/dist/test/Transforms/PruneEH/2008-09-05-CGUpdate.ll vendor/llvm/dist/test/Transforms/Reassociate/2006-04-27-ReassociateVector.ll vendor/llvm/dist/test/Transforms/SCCP/2006-12-04-PackedType.ll vendor/llvm/dist/test/Transforms/SCCP/apint-ipsccp4.ll vendor/llvm/dist/test/Transforms/ScalarRepl/2009-03-17-CleanUp.ll vendor/llvm/dist/test/Transforms/ScalarRepl/copy-aggregate.ll vendor/llvm/dist/test/Transforms/ScalarRepl/memcpy-from-global.ll vendor/llvm/dist/test/Transforms/ScalarRepl/vector_promote.ll vendor/llvm/dist/test/Transforms/SimplifyCFG/2006-10-29-InvokeCrash.ll vendor/llvm/dist/test/Transforms/SimplifyCFG/2008-01-02-hoist-fp-add.ll vendor/llvm/dist/test/Transforms/SimplifyCFG/2008-04-27-MultipleReturnCrash.ll vendor/llvm/dist/test/Transforms/SimplifyCFG/2009-05-12-externweak.ll vendor/llvm/dist/test/Transforms/SimplifyLibCalls/half-powr.ll vendor/llvm/dist/tools/CMakeLists.txt vendor/llvm/dist/tools/llc/llc.cpp vendor/llvm/dist/tools/llvm-ld/Optimize.cpp vendor/llvm/dist/tools/lto/LTOCodeGenerator.cpp vendor/llvm/dist/tools/lto/LTOCodeGenerator.h vendor/llvm/dist/tools/lto/lto.cpp vendor/llvm/dist/tools/lto/lto.exports vendor/llvm/dist/utils/llvm.grm vendor/llvm/dist/utils/vim/llvm.vim Modified: vendor/llvm/dist/CMakeLists.txt ============================================================================== --- vendor/llvm/dist/CMakeLists.txt Sat Jun 6 07:29:19 2009 (r193573) +++ vendor/llvm/dist/CMakeLists.txt Sat Jun 6 08:20:29 2009 (r193574) @@ -58,13 +58,22 @@ endif( MSVC ) option(LLVM_ENABLE_THREADS "Use threads if available." ON) if( uppercase_CMAKE_BUILD_TYPE STREQUAL "RELEASE" ) - option(LLVM_ENABLE_ASSERTS "Enable asserts" OFF) + option(LLVM_ENABLE_ASSERTIONS "Enable assertions" OFF) else() - option(LLVM_ENABLE_ASSERTS "Enable asserts" ON) + option(LLVM_ENABLE_ASSERTIONS "Enable assertions" ON) endif() -if( LLVM_ENABLE_ASSERTS ) - add_definitions( -D_DEBUG -UNDEBUG ) +if( LLVM_ENABLE_ASSERTIONS ) + add_definitions( -D_DEBUG ) + # On Release builds cmake automatically defines NDEBUG, so we + # explicitly undefine it: + if( uppercase_CMAKE_BUILD_TYPE STREQUAL "RELEASE" ) + add_definitions( -UNDEBUG ) + endif() +else() + if( NOT uppercase_CMAKE_BUILD_TYPE STREQUAL "RELEASE" ) + add_definitions( -DNDEBUG ) + endif() endif() if( LLVM_TARGETS_TO_BUILD STREQUAL "all" ) @@ -81,6 +90,24 @@ endforeach(c) set(llvm_builded_incs_dir ${LLVM_BINARY_DIR}/include/llvm) +# The USE_EXPLICIT_DEPENDENCIES variable will be TRUE to indicate that +# we should use the library dependencies explicitly specified in the +# CMakeLists.txt files rather than those determined by +# llvm-config. This value must be true for non-make and IDE +# generators. +if (MSVC_IDE) + set(DEFAULT_USE_EXPLICIT_DEPENDENCIES ON) +elseif (XCODE) + set(DEFAULT_USE_EXPLICIT_DEPENDENCIES ON) +else () + set(DEFAULT_USE_EXPLICIT_DEPENDENCIES OFF) +endif () + +option(USE_EXPLICIT_DEPENDENCIES + "Use explicit dependencies instead of llvm-config" + ${DEFAULT_USE_EXPLICIT_DEPENDENCIES}) +mark_as_advanced(USE_EXPLICIT_DEPENDENCIES) + # Add path for custom modules set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} @@ -123,11 +150,13 @@ include(config-ix) option(LLVM_ENABLE_PIC "Build Position-Independent Code" OFF) +set(ENABLE_PIC 0) if( LLVM_ENABLE_PIC ) if( SUPPORTS_FPIC_FLAG ) message(STATUS "Building with -fPIC") add_llvm_definitions(-fPIC) - else( SUPPORTS_FPIC_FLAG ) + set(ENABLE_PIC 1) + else( SUPPORTS_FPIC_FLAG ) message(STATUS "Warning: -fPIC not supported.") endif() endif() Modified: vendor/llvm/dist/Makefile.rules ============================================================================== --- vendor/llvm/dist/Makefile.rules Sat Jun 6 07:29:19 2009 (r193573) +++ vendor/llvm/dist/Makefile.rules Sat Jun 6 08:20:29 2009 (r193574) @@ -1066,7 +1066,7 @@ all-local:: $(LibName.O) $(LibName.O): $(ObjectsO) $(LibDir)/.dir $(Echo) Linking $(BuildMode) Object Library $(notdir $@) - $(Verb) $(Relink) -Wl,-r -nodefaultlibs -nostdlib -nostartfiles -o $@ $(ObjectsO) + $(Verb) $(Relink) -r -nodefaultlibs -nostdlib -nostartfiles -o $@ $(ObjectsO) clean-local:: ifneq ($(strip $(LibName.O)),) Modified: vendor/llvm/dist/autoconf/configure.ac ============================================================================== --- vendor/llvm/dist/autoconf/configure.ac Sat Jun 6 07:29:19 2009 (r193573) +++ vendor/llvm/dist/autoconf/configure.ac Sat Jun 6 08:20:29 2009 (r193574) @@ -279,7 +279,7 @@ dnl===---------------------------------- dnl --enable-optimized : check whether they want to do an optimized build: AC_ARG_ENABLE(optimized, AS_HELP_STRING( - [--enable-optimized,Compile with optimizations enabled (default is NO)]),,enableval=$optimize) + --enable-optimized,[Compile with optimizations enabled (default is NO)]),,enableval=$optimize) if test ${enableval} = "no" ; then AC_SUBST(ENABLE_OPTIMIZED,[[]]) else @@ -288,7 +288,7 @@ fi dnl --enable-profiling : check whether they want to do a profile build: AC_ARG_ENABLE(profiling, AS_HELP_STRING( - [--enable-profiling,Compile with profiling enabled (default is NO)]),,enableval="no") + --enable-profiling,[Compile with profiling enabled (default is NO)]),,enableval="no") if test ${enableval} = "no" ; then AC_SUBST(ENABLE_PROFILING,[[]]) else @@ -297,7 +297,7 @@ fi dnl --enable-assertions : check whether they want to turn on assertions or not: AC_ARG_ENABLE(assertions,AS_HELP_STRING( - [--enable-assertions,Compile with assertion checks enabled (default is YES)]),, enableval="yes") + --enable-assertions,[Compile with assertion checks enabled (default is YES)]),, enableval="yes") if test ${enableval} = "yes" ; then AC_SUBST(DISABLE_ASSERTIONS,[[]]) else @@ -306,7 +306,7 @@ fi dnl --enable-expensive-checks : check whether they want to turn on expensive debug checks: AC_ARG_ENABLE(expensive-checks,AS_HELP_STRING( - [--enable-expensive-checks,Compile with expensive debug checks enabled (default is NO)]),, enableval="no") + --enable-expensive-checks,[Compile with expensive debug checks enabled (default is NO)]),, enableval="no") if test ${enableval} = "yes" ; then AC_SUBST(ENABLE_EXPENSIVE_CHECKS,[[ENABLE_EXPENSIVE_CHECKS=1]]) AC_SUBST(EXPENSIVE_CHECKS,[[yes]]) @@ -317,7 +317,7 @@ fi dnl --enable-debug-runtime : should runtime libraries have debug symbols? AC_ARG_ENABLE(debug-runtime, - AS_HELP_STRING([--enable-debug-runtime,Build runtime libs with debug symbols (default is NO)]),,enableval=no) + AS_HELP_STRING(--enable-debug-runtime,[Build runtime libs with debug symbols (default is NO)]),,enableval=no) if test ${enableval} = "no" ; then AC_SUBST(DEBUG_RUNTIME,[[]]) else @@ -553,6 +553,16 @@ if test "x$WITH_BINUTILS_INCDIR" != xdef fi fi +dnl --enable-libffi : check whether the user wants to turn off libffi: +AC_ARG_ENABLE(libffi,AS_HELP_STRING( + --enable-libffi,[Check for the presence of libffi (default is YES)]),, + enableval=yes) +case "$enableval" in + yes) llvm_cv_enable_libffi="yes" ;; + no) llvm_cv_enable_libffi="no" ;; + *) AC_MSG_ERROR([Invalid setting for --enable-libffi. Use "yes" or "no"]) ;; +esac + dnl===-----------------------------------------------------------------------=== dnl=== dnl=== SECTION 4: Check for programs we need and that they are the right version @@ -769,9 +779,11 @@ AC_SEARCH_LIBS(dlopen,dl,AC_DEFINE([HAVE AC_MSG_WARN([dlopen() not found - disabling plugin support])) dnl libffi is optional; used to call external functions from the interpreter -AC_SEARCH_LIBS(ffi_call,ffi,AC_DEFINE([HAVE_FFI_CALL],[1], - [Define if libffi is available on this platform.]), - AC_MSG_WARN([libffi not found - disabling external calls from interpreter])) +if test "$llvm_cv_enable_libffi" = "yes" ; then + AC_SEARCH_LIBS(ffi_call,ffi,AC_DEFINE([HAVE_FFI_CALL],[1], + [Define if libffi is available on this platform.]), + AC_MSG_WARN([libffi not found - disabling external calls from interpreter])) +fi dnl mallinfo is optional; the code can compile (minus features) without it AC_SEARCH_LIBS(mallinfo,malloc,AC_DEFINE([HAVE_MALLINFO],[1], @@ -836,7 +848,9 @@ else fi dnl Try to find ffi.h. -AC_CHECK_HEADERS([ffi.h ffi/ffi.h]) +if test "$llvm_cv_enable_libffi" = "yes" ; then + AC_CHECK_HEADERS([ffi.h ffi/ffi.h]) +fi dnl===-----------------------------------------------------------------------=== dnl=== Modified: vendor/llvm/dist/cmake/config-ix.cmake ============================================================================== --- vendor/llvm/dist/cmake/config-ix.cmake Sat Jun 6 07:29:19 2009 (r193573) +++ vendor/llvm/dist/cmake/config-ix.cmake Sat Jun 6 08:20:29 2009 (r193574) @@ -1,6 +1,7 @@ # include checks include(CheckIncludeFile) +check_include_file(alloca.h HAVE_ALLOCA_H) check_include_file(argz.h HAVE_ARGZ_H) check_include_file(assert.h HAVE_ASSERT_H) check_include_file(dirent.h HAVE_DIRENT_H) @@ -34,6 +35,7 @@ check_include_file(sys/resource.h HAVE_S check_include_file(sys/stat.h HAVE_SYS_STAT_H) check_include_file(sys/time.h HAVE_SYS_TIME_H) check_include_file(sys/types.h HAVE_SYS_TYPES_H) +check_include_file(sys/wait.h HAVE_SYS_WAIT_H) check_include_file(termios.h HAVE_TERMIOS_H) check_include_file(unistd.h HAVE_UNISTD_H) check_include_file(utime.h HAVE_UTIME_H) @@ -47,6 +49,7 @@ check_library_exists(dl dlopen "" HAVE_L # function checks include(CheckSymbolExists) include(CheckFunctionExists) +check_symbol_exists(alloca alloca.h HAVE_ALLOCA) check_symbol_exists(getpagesize unistd.h HAVE_GETPAGESIZE) check_symbol_exists(getrusage sys/resource.h HAVE_GETRUSAGE) check_symbol_exists(setrlimit sys/resource.h HAVE_SETRLIMIT) @@ -58,6 +61,8 @@ check_symbol_exists(isnan math.h HAVE_IS check_symbol_exists(ceilf math.h HAVE_CEILF) check_symbol_exists(floorf math.h HAVE_FLOORF) check_symbol_exists(mallinfo malloc.h HAVE_MALLINFO) +check_symbol_exists(malloc_zone_statistics malloc/malloc.h + HAVE_MALLOC_ZONE_STATISTICS) check_symbol_exists(pthread_mutex_lock pthread.h HAVE_PTHREAD_MUTEX_LOCK) check_symbol_exists(strtoll stdlib.h HAVE_STRTOLL) Modified: vendor/llvm/dist/cmake/modules/AddLLVM.cmake ============================================================================== --- vendor/llvm/dist/cmake/modules/AddLLVM.cmake Sat Jun 6 07:29:19 2009 (r193573) +++ vendor/llvm/dist/cmake/modules/AddLLVM.cmake Sat Jun 6 08:20:29 2009 (r193574) @@ -26,11 +26,11 @@ macro(add_llvm_executable name) if( LLVM_LINK_COMPONENTS ) llvm_config(${name} ${LLVM_LINK_COMPONENTS}) endif( LLVM_LINK_COMPONENTS ) - if( MSVC ) + if( USE_EXPLICIT_DEPENDENCIES ) target_link_libraries(${name} ${llvm_libs}) - else( MSVC ) + else( ) add_dependencies(${name} llvm-config.target) - endif( MSVC ) + endif( ) get_system_libs(llvm_system_libs) if( llvm_system_libs ) target_link_libraries(${name} ${llvm_system_libs}) Modified: vendor/llvm/dist/cmake/modules/AddPartiallyLinkedObject.cmake ============================================================================== --- vendor/llvm/dist/cmake/modules/AddPartiallyLinkedObject.cmake Sat Jun 6 07:29:19 2009 (r193573) +++ vendor/llvm/dist/cmake/modules/AddPartiallyLinkedObject.cmake Sat Jun 6 08:20:29 2009 (r193574) @@ -1,18 +1,18 @@ include(LLVMProcessSources) macro(target_name_of_partially_linked_object lib var) - if( MSVC ) + if( USE_EXPLICIT_DEPENDENCIES ) set(${var} ${lib}) - else( MSVC ) + else( ) set(${var} ${lib}_pll) - endif( MSVC ) + endif( ) endmacro(target_name_of_partially_linked_object lib var) macro(add_partially_linked_object lib) - if( MSVC ) + if( USE_EXPLICIT_DEPENDENCIES ) add_llvm_library( ${lib} ${ARGN}) - else( MSVC ) + else( ) set(pll ${CMAKE_ARCHIVE_OUTPUT_DIRECTORY}/${CMAKE_CFG_INTDIR}/${lib}.o) set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/temp_lib) set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/temp_lib) @@ -36,7 +36,7 @@ macro(add_partially_linked_object lib) add_custom_target(${tnplo} ALL DEPENDS ${pll}) set( llvm_libs ${llvm_libs} ${pll} PARENT_SCOPE) set( llvm_lib_targets ${llvm_lib_targets} ${tnplo} PARENT_SCOPE ) - endif( MSVC ) + endif( ) install(FILES ${pll} DESTINATION lib) endmacro(add_partially_linked_object lib) Modified: vendor/llvm/dist/cmake/modules/LLVMConfig.cmake ============================================================================== --- vendor/llvm/dist/cmake/modules/LLVMConfig.cmake Sat Jun 6 07:29:19 2009 (r193573) +++ vendor/llvm/dist/cmake/modules/LLVMConfig.cmake Sat Jun 6 08:20:29 2009 (r193574) @@ -21,36 +21,40 @@ endfunction(get_system_libs) macro(llvm_config executable) # extra args is the list of link components. - if( MSVC ) - msvc_llvm_config(${executable} ${ARGN}) - else( MSVC ) + if( USE_EXPLICIT_DEPENDENCIES ) + explicit_llvm_config(${executable} ${ARGN}) + else( ) nix_llvm_config(${executable} ${ARGN}) - endif( MSVC ) + endif( ) endmacro(llvm_config) -function(msvc_llvm_config executable) +function(explicit_llvm_config executable) set( link_components ${ARGN} ) - if( CMAKE_CL_64 ) - set(include_lflag "/INCLUDE:") - else( CMAKE_CL_64 ) - set(include_lflag "/INCLUDE:_") - endif() - foreach(c ${link_components}) - if( c STREQUAL "jit" ) - set(lfgs "${lfgs} ${include_lflag}X86TargetMachineModule") - endif( c STREQUAL "jit" ) - list(FIND LLVM_TARGETS_TO_BUILD ${c} idx) - if( NOT idx LESS 0 ) - set(lfgs "${lfgs} ${include_lflag}${c}TargetMachineModule") - list(FIND LLVM_ASMPRINTERS_FORCE_LINK ${c} idx) + + set(lfgs) + if (MSVC) + if( CMAKE_CL_64 ) + set(include_lflag "/INCLUDE:") + else( CMAKE_CL_64 ) + set(include_lflag "/INCLUDE:_") + endif() + foreach(c ${link_components}) + if( c STREQUAL "jit" ) + set(lfgs "${lfgs} ${include_lflag}X86TargetMachineModule") + endif( c STREQUAL "jit" ) + list(FIND LLVM_TARGETS_TO_BUILD ${c} idx) if( NOT idx LESS 0 ) - set(lfgs "${lfgs} ${include_lflag}${c}AsmPrinterForceLink") + set(lfgs "${lfgs} ${include_lflag}${c}TargetMachineModule") + list(FIND LLVM_ASMPRINTERS_FORCE_LINK ${c} idx) + if( NOT idx LESS 0 ) + set(lfgs "${lfgs} ${include_lflag}${c}AsmPrinterForceLink") + endif() endif() - endif() - endforeach(c) + endforeach(c) + endif () - msvc_map_components_to_libraries(LIBRARIES ${link_components}) + explicit_map_components_to_libraries(LIBRARIES ${link_components}) target_link_libraries(${executable} ${LIBRARIES}) if( lfgs ) @@ -58,10 +62,10 @@ function(msvc_llvm_config executable) PROPERTIES LINK_FLAGS ${lfgs}) endif() -endfunction(msvc_llvm_config) +endfunction(explicit_llvm_config) -function(msvc_map_components_to_libraries out_libs) +function(explicit_map_components_to_libraries out_libs) set( link_components ${ARGN} ) foreach(c ${link_components}) # add codegen/asmprinter @@ -121,7 +125,7 @@ function(msvc_map_components_to_librarie endwhile( ${curr_idx} LESS ${lst_size} ) list(REMOVE_DUPLICATES result) set(${out_libs} ${result} PARENT_SCOPE) -endfunction(msvc_map_components_to_libraries) +endfunction(explicit_map_components_to_libraries) macro(nix_llvm_config executable) Modified: vendor/llvm/dist/configure ============================================================================== --- vendor/llvm/dist/configure Sat Jun 6 07:29:19 2009 (r193573) +++ vendor/llvm/dist/configure Sat Jun 6 08:20:29 2009 (r193574) @@ -1533,12 +1533,15 @@ if test -n "$ac_init_help"; then Optional Features: --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --enable-optimized - --enable-profiling - --enable-assertions + --enable-optimized Compile with optimizations enabled (default is NO) + --enable-profiling Compile with profiling enabled (default is NO) + --enable-assertions Compile with assertion checks enabled (default is + YES) --enable-expensive-checks - - --enable-debug-runtime + Compile with expensive debug checks enabled (default + is NO) + --enable-debug-runtime Build runtime libs with debug symbols (default is + NO) --enable-jit Enable Just In Time Compiling (default is YES) --enable-doxygen Build doxygen documentation (default is NO) --enable-threads Use threads if available (default is YES) @@ -1550,6 +1553,7 @@ Optional Features: %a (default is YES) --enable-bindings Build specific language bindings: all,auto,none,{binding-name} (default=auto) + --enable-libffi Check for the presence of libffi (default is YES) --enable-ltdl-install install libltdl --enable-shared[=PKGS] build shared libraries [default=yes] @@ -5111,6 +5115,21 @@ echo "$as_me: error: Invalid path to dir fi fi +# Check whether --enable-libffi was given. +if test "${enable_libffi+set}" = set; then + enableval=$enable_libffi; +else + enableval=yes +fi + +case "$enableval" in + yes) llvm_cv_enable_libffi="yes" ;; + no) llvm_cv_enable_libffi="no" ;; + *) { { echo "$as_me:$LINENO: error: Invalid setting for --enable-libffi. Use \"yes\" or \"no\"" >&5 +echo "$as_me: error: Invalid setting for --enable-libffi. Use \"yes\" or \"no\"" >&2;} + { (exit 1); exit 1; }; } ;; +esac + ac_ext=c ac_cpp='$CPP $CPPFLAGS' @@ -10575,7 +10594,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 10578 "configure" +#line 10597 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -12719,7 +12738,7 @@ ia64-*-hpux*) ;; *-*-irix6*) # Find out which ABI we are using. - echo '#line 12722 "configure"' > conftest.$ac_ext + echo '#line 12741 "configure"' > conftest.$ac_ext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -14437,11 +14456,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:14440: $lt_compile\"" >&5) + (eval echo "\"\$as_me:14459: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:14444: \$? = $ac_status" >&5 + echo "$as_me:14463: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -14705,11 +14724,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:14708: $lt_compile\"" >&5) + (eval echo "\"\$as_me:14727: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:14712: \$? = $ac_status" >&5 + echo "$as_me:14731: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -14809,11 +14828,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:14812: $lt_compile\"" >&5) + (eval echo "\"\$as_me:14831: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:14816: \$? = $ac_status" >&5 + echo "$as_me:14835: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -17261,7 +17280,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 17264 "configure" +#line 17283 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -17361,7 +17380,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 17364 "configure" +#line 17383 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -19729,11 +19748,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:19732: $lt_compile\"" >&5) + (eval echo "\"\$as_me:19751: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:19736: \$? = $ac_status" >&5 + echo "$as_me:19755: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -19833,11 +19852,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:19836: $lt_compile\"" >&5) + (eval echo "\"\$as_me:19855: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:19840: \$? = $ac_status" >&5 + echo "$as_me:19859: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -21403,11 +21422,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:21406: $lt_compile\"" >&5) + (eval echo "\"\$as_me:21425: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:21410: \$? = $ac_status" >&5 + echo "$as_me:21429: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -21507,11 +21526,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:21510: $lt_compile\"" >&5) + (eval echo "\"\$as_me:21529: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:21514: \$? = $ac_status" >&5 + echo "$as_me:21533: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -23742,11 +23761,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:23745: $lt_compile\"" >&5) + (eval echo "\"\$as_me:23764: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:23749: \$? = $ac_status" >&5 + echo "$as_me:23768: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -24010,11 +24029,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:24013: $lt_compile\"" >&5) + (eval echo "\"\$as_me:24032: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:24017: \$? = $ac_status" >&5 + echo "$as_me:24036: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -24114,11 +24133,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:24117: $lt_compile\"" >&5) + (eval echo "\"\$as_me:24136: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:24121: \$? = $ac_status" >&5 + echo "$as_me:24140: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -27473,7 +27492,8 @@ echo "$as_me: WARNING: dlopen() not foun fi -{ echo "$as_me:$LINENO: checking for library containing ffi_call" >&5 +if test "$llvm_cv_enable_libffi" = "yes" ; then + { echo "$as_me:$LINENO: checking for library containing ffi_call" >&5 echo $ECHO_N "checking for library containing ffi_call... $ECHO_C" >&6; } if test "${ac_cv_search_ffi_call+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -27579,6 +27599,7 @@ else echo "$as_me: WARNING: libffi not found - disabling external calls from interpreter" >&2;} fi +fi { echo "$as_me:$LINENO: checking for library containing mallinfo" >&5 echo $ECHO_N "checking for library containing mallinfo... $ECHO_C" >&6; } @@ -29824,6 +29845,7 @@ else fi +if test "$llvm_cv_enable_libffi" = "yes" ; then for ac_header in ffi.h ffi/ffi.h @@ -29994,6 +30016,7 @@ fi done +fi Modified: vendor/llvm/dist/docs/CMake.html ============================================================================== --- vendor/llvm/dist/docs/CMake.html Sat Jun 6 07:29:19 2009 (r193573) +++ vendor/llvm/dist/docs/CMake.html Sat Jun 6 08:20:29 2009 (r193574) @@ -248,8 +248,8 @@ <dt><b>LLVM_ENABLE_THREADS</b>:BOOL</dt> <dd>Build with threads support, if available. Defaults to ON.</dd> - <dt><b>LLVM_ENABLE_ASSERTS</b>:BOOL</dt> - <dd>Enables code asserts. Defaults to ON if and only if + <dt><b>LLVM_ENABLE_ASSERTIONS</b>:BOOL</dt> + <dd>Enables code assertions. Defaults to ON if and only if CMAKE_BUILD_TYPE is <i>Release</i>.</dd> <dt><b>LLVM_ENABLE_PIC</b>:BOOL</dt> Modified: vendor/llvm/dist/docs/GoldPlugin.html ============================================================================== --- vendor/llvm/dist/docs/GoldPlugin.html Sat Jun 6 07:29:19 2009 (r193573) +++ vendor/llvm/dist/docs/GoldPlugin.html Sat Jun 6 08:20:29 2009 (r193574) @@ -153,12 +153,21 @@ $ llvm-gcc -use-gold-plugin a.o b.o -o m <pre class="doc_code"> export CC="$PREFIX/bin/llvm-gcc -use-gold-plugin" export CXX="$PREFIX/bin/llvm-g++ -use-gold-plugin" -export AR="$PREFIX/bin/ar --plugin libLLVMgold.so" -export NM="$PREFIX/bin/nm --plugin libLLVMgold.so" +export AR="$PREFIX/bin/ar" +export NM="$PREFIX/bin/nm" export RANLIB=/bin/true #ranlib is not needed, and doesn't support .bc files in .a export CFLAGS="-O4" </pre> </li> + <li>Or you can just set your path: + <pre class="doc_code"> +export PATH="$PREFIX/bin:$PATH" +export CC="llvm-gcc -use-gold-plugin" +export CXX="llvm-g++ -use-gold-plugin" +export RANLIB=/bin/true +export CFLAGS="-O4" + </pre> + </li> <li>Configure & build the project as usual: <tt>./configure && make && make check</tt> </li> </ul> <p> The environment variable settings may work for non-autotooled projects Modified: vendor/llvm/dist/docs/LangRef.html ============================================================================== --- vendor/llvm/dist/docs/LangRef.html Sat Jun 6 07:29:19 2009 (r193573) +++ vendor/llvm/dist/docs/LangRef.html Sat Jun 6 08:20:29 2009 (r193574) @@ -89,8 +89,11 @@ <li><a href="#binaryops">Binary Operations</a> <ol> <li><a href="#i_add">'<tt>add</tt>' Instruction</a></li> + <li><a href="#i_fadd">'<tt>fadd</tt>' Instruction</a></li> <li><a href="#i_sub">'<tt>sub</tt>' Instruction</a></li> + <li><a href="#i_fsub">'<tt>fsub</tt>' Instruction</a></li> <li><a href="#i_mul">'<tt>mul</tt>' Instruction</a></li> + <li><a href="#i_fmul">'<tt>fmul</tt>' Instruction</a></li> <li><a href="#i_udiv">'<tt>udiv</tt>' Instruction</a></li> <li><a href="#i_sdiv">'<tt>sdiv</tt>' Instruction</a></li> <li><a href="#i_fdiv">'<tt>fdiv</tt>' Instruction</a></li> @@ -2503,16 +2506,15 @@ The result value has the same type as it <h5>Arguments:</h5> <p>The two arguments to the '<tt>add</tt>' instruction must be <a - href="#t_integer">integer</a>, <a href="#t_floating">floating point</a>, or - <a href="#t_vector">vector</a> values. Both arguments must have identical - types.</p> + href="#t_integer">integer</a> or + <a href="#t_vector">vector</a> of integer values. Both arguments must + have identical types.</p> <h5>Semantics:</h5> -<p>The value produced is the integer or floating point sum of the two -operands.</p> +<p>The value produced is the integer sum of the two operands.</p> -<p>If an integer sum has unsigned overflow, the result returned is the +<p>If the sum has unsigned overflow, the result returned is the mathematical result modulo 2<sup>n</sup>, where n is the bit width of the result.</p> @@ -2527,6 +2529,39 @@ instruction is appropriate for both sign </div> <!-- _______________________________________________________________________ --> <div class="doc_subsubsection"> + <a name="i_fadd">'<tt>fadd</tt>' Instruction</a> +</div> + +<div class="doc_text"> + +<h5>Syntax:</h5> + +<pre> + <result> = fadd <ty> <op1>, <op2> <i>; yields {ty}:result</i> +</pre> + +<h5>Overview:</h5> + +<p>The '<tt>fadd</tt>' instruction returns the sum of its two operands.</p> + +<h5>Arguments:</h5> + +<p>The two arguments to the '<tt>fadd</tt>' instruction must be +<a href="#t_floating">floating point</a> or <a href="#t_vector">vector</a> of +floating point values. Both arguments must have identical types.</p> + +<h5>Semantics:</h5> + +<p>The value produced is the floating point sum of the two operands.</p> + +<h5>Example:</h5> + +<pre> + <result> = fadd float 4.0, %var <i>; yields {float}:result = 4.0 + %var</i> +</pre> +</div> +<!-- _______________________________________________________________________ --> +<div class="doc_subsubsection"> <a name="i_sub">'<tt>sub</tt>' Instruction</a> </div> @@ -2550,16 +2585,14 @@ representations.</p> <h5>Arguments:</h5> <p>The two arguments to the '<tt>sub</tt>' instruction must be <a - href="#t_integer">integer</a>, <a href="#t_floating">floating point</a>, - or <a href="#t_vector">vector</a> values. Both arguments must have identical - types.</p> + href="#t_integer">integer</a> or <a href="#t_vector">vector</a> of + integer values. Both arguments must have identical types.</p> <h5>Semantics:</h5> -<p>The value produced is the integer or floating point difference of -the two operands.</p> +<p>The value produced is the integer difference of the two operands.</p> -<p>If an integer difference has unsigned overflow, the result returned is the +<p>If the difference has unsigned overflow, the result returned is the mathematical result modulo 2<sup>n</sup>, where n is the bit width of the result.</p> @@ -2575,6 +2608,45 @@ instruction is appropriate for both sign <!-- _______________________________________________________________________ --> <div class="doc_subsubsection"> + <a name="i_fsub">'<tt>fsub</tt>' Instruction</a> +</div> + +<div class="doc_text"> + +<h5>Syntax:</h5> + +<pre> + <result> = fsub <ty> <op1>, <op2> <i>; yields {ty}:result</i> +</pre> + +<h5>Overview:</h5> + +<p>The '<tt>fsub</tt>' instruction returns the difference of its two +operands.</p> + +<p>Note that the '<tt>fsub</tt>' instruction is used to represent the +'<tt>fneg</tt>' instruction present in most other intermediate +representations.</p> + +<h5>Arguments:</h5> + +<p>The two arguments to the '<tt>fsub</tt>' instruction must be <a + <a href="#t_floating">floating point</a> or <a href="#t_vector">vector</a> + of floating point values. Both arguments must have identical types.</p> + +<h5>Semantics:</h5> + +<p>The value produced is the floating point difference of the two operands.</p> + +<h5>Example:</h5> +<pre> + <result> = fsub float 4.0, %var <i>; yields {float}:result = 4.0 - %var</i> + <result> = fsub float -0.0, %val <i>; yields {float}:result = -%var</i> +</pre> +</div> + +<!-- _______________________________________________________________________ --> +<div class="doc_subsubsection"> <a name="i_mul">'<tt>mul</tt>' Instruction</a> </div> @@ -2590,16 +2662,14 @@ operands.</p> <h5>Arguments:</h5> <p>The two arguments to the '<tt>mul</tt>' instruction must be <a -href="#t_integer">integer</a>, <a href="#t_floating">floating point</a>, -or <a href="#t_vector">vector</a> values. Both arguments must have identical -types.</p> +href="#t_integer">integer</a> or <a href="#t_vector">vector</a> of integer +values. Both arguments must have identical types.</p> <h5>Semantics:</h5> -<p>The value produced is the integer or floating point product of the -two operands.</p> +<p>The value produced is the integer product of the two operands.</p> -<p>If the result of an integer multiplication has unsigned overflow, +<p>If the result of the multiplication has unsigned overflow, the result returned is the mathematical result modulo 2<sup>n</sup>, where n is the bit width of the result.</p> <p>Because LLVM integers use a two's complement representation, and the @@ -2614,6 +2684,35 @@ width of the full product.</p> </div> <!-- _______________________________________________________________________ --> +<div class="doc_subsubsection"> + <a name="i_fmul">'<tt>fmul</tt>' Instruction</a> +</div> + +<div class="doc_text"> + +<h5>Syntax:</h5> +<pre> <result> = fmul <ty> <op1>, <op2> <i>; yields {ty}:result</i> +</pre> +<h5>Overview:</h5> +<p>The '<tt>fmul</tt>' instruction returns the product of its two +operands.</p> + +<h5>Arguments:</h5> + +<p>The two arguments to the '<tt>fmul</tt>' instruction must be +<a href="#t_floating">floating point</a> or <a href="#t_vector">vector</a> +of floating point values. Both arguments must have identical types.</p> + +<h5>Semantics:</h5> + +<p>The value produced is the floating point product of the two operands.</p> + +<h5>Example:</h5> +<pre> <result> = fmul float 4.0, %var <i>; yields {float}:result = 4.0 * %var</i> +</pre> +</div> + +<!-- _______________________________________________________________________ --> <div class="doc_subsubsection"> <a name="i_udiv">'<tt>udiv</tt>' Instruction </a></div> <div class="doc_text"> @@ -7110,7 +7209,7 @@ declare void @llvm.stackprotector( i8* & <a href="mailto:sabre@nondot.org">Chris Lattner</a><br> <a href="http://llvm.org">The LLVM Compiler Infrastructure</a><br> - Last modified: $Date: 2009-06-03 12:20:10 +0200 (Wed, 03 Jun 2009) $ + Last modified: $Date: 2009-06-05 00:49:04 +0200 (Fri, 05 Jun 2009) $ </address> </body> Modified: vendor/llvm/dist/include/llvm-c/lto.h ============================================================================== --- vendor/llvm/dist/include/llvm-c/lto.h Sat Jun 6 07:29:19 2009 (r193573) +++ vendor/llvm/dist/include/llvm-c/lto.h Sat Jun 6 08:20:29 2009 (r193574) @@ -19,6 +19,8 @@ #include <stdbool.h> #include <stddef.h> +#define LTO_API_VERSION 3 + typedef enum { LTO_SYMBOL_ALIGNMENT_MASK = 0x0000001F, /* log2 of alignment */ LTO_SYMBOL_PERMISSIONS_MASK = 0x000000E0, @@ -208,6 +210,14 @@ lto_codegen_set_gcc_path(lto_code_gen_t /** + * Sets the location of the assembler tool to run. If not set, libLTO + * will use gcc to invoke the assembler. + */ +extern void +lto_codegen_set_assembler_path(lto_code_gen_t cg, const char* path); + + +/** * Adds to a list of all global symbols that must exist in the final * generated code. If a function is not listed, it might be * inlined into every usage and optimized away. Modified: vendor/llvm/dist/include/llvm/Analysis/Dominators.h ============================================================================== --- vendor/llvm/dist/include/llvm/Analysis/Dominators.h Sat Jun 6 07:29:19 2009 (r193573) +++ vendor/llvm/dist/include/llvm/Analysis/Dominators.h Sat Jun 6 08:20:29 2009 (r193574) @@ -270,12 +270,17 @@ protected: NewBBIDom = PredBlocks[i]; break; } - assert(i != PredBlocks.size() && "No reachable preds?"); + + // It's possible that none of the predecessors of NewBB are reachable; + // in that case, NewBB itself is unreachable, so nothing needs to be + // changed. + if (!NewBBIDom) + return; + for (i = i + 1; i < PredBlocks.size(); ++i) { if (DT.isReachableFromEntry(PredBlocks[i])) NewBBIDom = DT.findNearestCommonDominator(NewBBIDom, PredBlocks[i]); } - assert(NewBBIDom && "No immediate dominator found??"); // Create the new dominator tree node... and set the idom of NewBB. DomTreeNodeBase<NodeT> *NewBBNode = DT.addNewBlock(NewBB, NewBBIDom); Modified: vendor/llvm/dist/include/llvm/Analysis/ScalarEvolutionExpander.h ============================================================================== --- vendor/llvm/dist/include/llvm/Analysis/ScalarEvolutionExpander.h Sat Jun 6 07:29:19 2009 (r193573) +++ vendor/llvm/dist/include/llvm/Analysis/ScalarEvolutionExpander.h Sat Jun 6 08:20:29 2009 (r193574) @@ -60,12 +60,7 @@ namespace llvm { /// canonical induction variable of the specified type for the specified /// loop (inserting one if there is none). A canonical induction variable /// starts at zero and steps by one on each iteration. - Value *getOrInsertCanonicalInductionVariable(const Loop *L, const Type *Ty){ - assert(Ty->isInteger() && "Can only insert integer induction variables!"); - SCEVHandle H = SE.getAddRecExpr(SE.getIntegerSCEV(0, Ty), - SE.getIntegerSCEV(1, Ty), L); - return expand(H); - } + Value *getOrInsertCanonicalInductionVariable(const Loop *L, const Type *Ty); /// addInsertedValue - Remember the specified instruction as being the /// canonical form for the specified SCEV. Modified: vendor/llvm/dist/include/llvm/Attributes.h ============================================================================== --- vendor/llvm/dist/include/llvm/Attributes.h Sat Jun 6 07:29:19 2009 (r193573) +++ vendor/llvm/dist/include/llvm/Attributes.h Sat Jun 6 08:20:29 2009 (r193574) @@ -54,13 +54,17 @@ const Attributes Alignment = 31<<16; /// // stored as log2 of alignment with +1 bias // 0 means unaligned different from align 1 const Attributes NoCapture = 1<<21; ///< Function creates no aliases of pointer +const Attributes NoRedZone = 1<<22; /// disable redzone +const Attributes NoImplicitFloat = 1<<23; /// disable implicit floating point + /// instructions. /// @brief Attributes that only apply to function parameters. const Attributes ParameterOnly = ByVal | Nest | StructRet | NoCapture; /// @brief Attributes that only apply to function. const Attributes FunctionOnly = NoReturn | NoUnwind | ReadNone | ReadOnly | - NoInline | AlwaysInline | OptimizeForSize | StackProtect | StackProtectReq; + NoInline | AlwaysInline | OptimizeForSize | StackProtect | StackProtectReq | + NoRedZone | NoImplicitFloat; /// @brief Parameter attributes that do not apply to vararg call arguments. const Attributes VarArgsIncompatible = StructRet; Modified: vendor/llvm/dist/include/llvm/CodeGen/JITCodeEmitter.h ============================================================================== --- vendor/llvm/dist/include/llvm/CodeGen/JITCodeEmitter.h Sat Jun 6 07:29:19 2009 (r193573) +++ vendor/llvm/dist/include/llvm/CodeGen/JITCodeEmitter.h Sat Jun 6 08:20:29 2009 (r193574) @@ -89,7 +89,7 @@ public: /// emitByte - This callback is invoked when a byte needs to be written to the /// output stream. /// - void emitByte(unsigned char B) { + void emitByte(uint8_t B) { if (CurBufferPtr != BufferEnd) *CurBufferPtr++ = B; } @@ -99,10 +99,10 @@ public: /// void emitWordLE(unsigned W) { if (4 <= BufferEnd-CurBufferPtr) { - *CurBufferPtr++ = (unsigned char)(W >> 0); - *CurBufferPtr++ = (unsigned char)(W >> 8); - *CurBufferPtr++ = (unsigned char)(W >> 16); - *CurBufferPtr++ = (unsigned char)(W >> 24); + *CurBufferPtr++ = (uint8_t)(W >> 0); + *CurBufferPtr++ = (uint8_t)(W >> 8); + *CurBufferPtr++ = (uint8_t)(W >> 16); + *CurBufferPtr++ = (uint8_t)(W >> 24); } else { CurBufferPtr = BufferEnd; } @@ -113,10 +113,10 @@ public: /// void emitWordBE(unsigned W) { if (4 <= BufferEnd-CurBufferPtr) { - *CurBufferPtr++ = (unsigned char)(W >> 24); - *CurBufferPtr++ = (unsigned char)(W >> 16); - *CurBufferPtr++ = (unsigned char)(W >> 8); - *CurBufferPtr++ = (unsigned char)(W >> 0); + *CurBufferPtr++ = (uint8_t)(W >> 24); + *CurBufferPtr++ = (uint8_t)(W >> 16); + *CurBufferPtr++ = (uint8_t)(W >> 8); + *CurBufferPtr++ = (uint8_t)(W >> 0); } else { CurBufferPtr = BufferEnd; } @@ -127,14 +127,14 @@ public: /// void emitDWordLE(uint64_t W) { if (8 <= BufferEnd-CurBufferPtr) { - *CurBufferPtr++ = (unsigned char)(W >> 0); - *CurBufferPtr++ = (unsigned char)(W >> 8); - *CurBufferPtr++ = (unsigned char)(W >> 16); - *CurBufferPtr++ = (unsigned char)(W >> 24); - *CurBufferPtr++ = (unsigned char)(W >> 32); - *CurBufferPtr++ = (unsigned char)(W >> 40); - *CurBufferPtr++ = (unsigned char)(W >> 48); - *CurBufferPtr++ = (unsigned char)(W >> 56); + *CurBufferPtr++ = (uint8_t)(W >> 0); + *CurBufferPtr++ = (uint8_t)(W >> 8); + *CurBufferPtr++ = (uint8_t)(W >> 16); + *CurBufferPtr++ = (uint8_t)(W >> 24); + *CurBufferPtr++ = (uint8_t)(W >> 32); + *CurBufferPtr++ = (uint8_t)(W >> 40); + *CurBufferPtr++ = (uint8_t)(W >> 48); *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200906060820.n568KU0x053149>