Date: Sat, 27 Jun 2009 10:44:34 +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: r195098 - in vendor/llvm/dist: . autoconf bindings/ocaml/analysis bindings/ocaml/bitreader bindings/ocaml/bitwriter bindings/ocaml/executionengine bindings/ocaml/llvm bindings/ocaml/tar... Message-ID: <200906271044.n5RAiYqi075541@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: ed Date: Sat Jun 27 10:44:33 2009 New Revision: 195098 URL: http://svn.freebsd.org/changeset/base/195098 Log: Import LLVM r74383. Added: vendor/llvm/dist/docs/ReleaseNotes-2.6.html vendor/llvm/dist/include/llvm/Analysis/LoopDependenceAnalysis.h vendor/llvm/dist/include/llvm/CompilerDriver/BuiltinOptions.h vendor/llvm/dist/include/llvm/CompilerDriver/ForceLinkage.h vendor/llvm/dist/include/llvm/CompilerDriver/ForceLinkageMacros.h vendor/llvm/dist/include/llvm/ExecutionEngine/JITEventListener.h vendor/llvm/dist/include/llvm/MC/MCContext.h vendor/llvm/dist/include/llvm/MC/MCSection.h vendor/llvm/dist/include/llvm/MC/MCStreamer.h vendor/llvm/dist/include/llvm/MC/MCSymbol.h vendor/llvm/dist/include/llvm/MC/MCValue.h vendor/llvm/dist/include/llvm/System/ThreadLocal.h vendor/llvm/dist/lib/Analysis/LoopDependenceAnalysis.cpp vendor/llvm/dist/lib/ExecutionEngine/JIT/MacOSJITEventListener.cpp vendor/llvm/dist/lib/MC/ vendor/llvm/dist/lib/MC/CMakeLists.txt vendor/llvm/dist/lib/MC/MCAsmStreamer.cpp vendor/llvm/dist/lib/MC/MCContext.cpp vendor/llvm/dist/lib/MC/MCStreamer.cpp vendor/llvm/dist/lib/MC/Makefile vendor/llvm/dist/lib/System/ThreadLocal.cpp vendor/llvm/dist/lib/System/Unix/ThreadLocal.inc vendor/llvm/dist/lib/System/Win32/ThreadLocal.inc vendor/llvm/dist/lib/Target/ARM/ThumbInstrInfo.cpp vendor/llvm/dist/lib/Target/ARM/ThumbInstrInfo.h vendor/llvm/dist/test/Analysis/ScalarEvolution/trip-count6.ll vendor/llvm/dist/test/CodeGen/ARM/bic.ll vendor/llvm/dist/test/CodeGen/ARM/carry.ll vendor/llvm/dist/test/CodeGen/Thumb/ vendor/llvm/dist/test/CodeGen/Thumb/2007-01-31-RegInfoAssert.ll vendor/llvm/dist/test/CodeGen/Thumb/2007-02-02-JoinIntervalsCrash.ll vendor/llvm/dist/test/CodeGen/Thumb/2007-03-06-AddR7.ll vendor/llvm/dist/test/CodeGen/Thumb/2007-05-05-InvalidPushPop.ll vendor/llvm/dist/test/CodeGen/Thumb/2009-06-18-ThumbCommuteMul.ll vendor/llvm/dist/test/CodeGen/Thumb/dg.exp vendor/llvm/dist/test/CodeGen/Thumb/dyn-stackalloc.ll vendor/llvm/dist/test/CodeGen/Thumb/fpconv.ll vendor/llvm/dist/test/CodeGen/Thumb/fpow.ll vendor/llvm/dist/test/CodeGen/Thumb/frame_thumb.ll vendor/llvm/dist/test/CodeGen/Thumb/iabs.ll vendor/llvm/dist/test/CodeGen/Thumb/inlineasm-imm-thumb.ll vendor/llvm/dist/test/CodeGen/Thumb/ispositive.ll vendor/llvm/dist/test/CodeGen/Thumb/large-stack.ll vendor/llvm/dist/test/CodeGen/Thumb/ldr_ext.ll vendor/llvm/dist/test/CodeGen/Thumb/ldr_frame.ll vendor/llvm/dist/test/CodeGen/Thumb/long-setcc.ll vendor/llvm/dist/test/CodeGen/Thumb/long.ll vendor/llvm/dist/test/CodeGen/Thumb/select.ll vendor/llvm/dist/test/CodeGen/Thumb/stack-frame.ll vendor/llvm/dist/test/CodeGen/Thumb/thumb-imm.ll vendor/llvm/dist/test/CodeGen/Thumb/tst_teq.ll vendor/llvm/dist/test/CodeGen/Thumb/unord.ll vendor/llvm/dist/test/CodeGen/Thumb/vargs.ll vendor/llvm/dist/test/CodeGen/Thumb2/ vendor/llvm/dist/test/CodeGen/Thumb2/carry.ll vendor/llvm/dist/test/CodeGen/Thumb2/dg.exp vendor/llvm/dist/test/CodeGen/Thumb2/load-global.ll vendor/llvm/dist/test/CodeGen/Thumb2/pic-jtbl.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-adc.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-adc2.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-add.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-add2.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-add3.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-add4.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-add5.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-add6.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-and.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-and2.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-asr.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-asr2.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-bfc.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-bic.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-bic2.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-clz.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-cmn2.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-cmp.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-cmp2.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-eor.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-eor2.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-lsl.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-lsl2.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-lsr.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-lsr2.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-mla.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-mls.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-mov.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-mov2.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-mov3.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-mov4.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-mul.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-mvn.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-mvn2.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-neg.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-orn.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-orn2.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-orr.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-orr2.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-rev.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-ror.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-ror2.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-rsb.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-rsb2.ll vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-shifter.ll vendor/llvm/dist/test/CodeGen/X86/constpool.ll vendor/llvm/dist/test/CodeGen/X86/inline-asm-modifier-n.ll vendor/llvm/dist/test/CodeGen/X86/inline-asm-tied.ll vendor/llvm/dist/test/CodeGen/X86/scev-interchange.ll vendor/llvm/dist/test/Feature/mdnode.ll vendor/llvm/dist/test/MC/ vendor/llvm/dist/test/MC/AsmParser/ vendor/llvm/dist/test/MC/AsmParser/assignment.s vendor/llvm/dist/test/MC/AsmParser/dg.exp vendor/llvm/dist/test/MC/AsmParser/directive_ascii.s vendor/llvm/dist/test/MC/AsmParser/directive_fill.s vendor/llvm/dist/test/MC/AsmParser/directive_org.s vendor/llvm/dist/test/MC/AsmParser/directive_set.s vendor/llvm/dist/test/MC/AsmParser/directive_space.s vendor/llvm/dist/test/MC/AsmParser/directive_values.s vendor/llvm/dist/test/Transforms/IndVarSimplify/loop-invariant-step.ll vendor/llvm/dist/test/Transforms/IndVarSimplify/loop_evaluate7.ll vendor/llvm/dist/test/Transforms/IndVarSimplify/loop_evaluate8.ll vendor/llvm/dist/test/Transforms/IndVarSimplify/phi-uses-value-multiple-times.ll vendor/llvm/dist/test/Transforms/LCSSA/invoke-dest.ll vendor/llvm/dist/unittests/ExecutionEngine/ vendor/llvm/dist/unittests/ExecutionEngine/JIT/ vendor/llvm/dist/unittests/ExecutionEngine/JIT/JITEventListenerTest.cpp vendor/llvm/dist/unittests/ExecutionEngine/JIT/Makefile vendor/llvm/dist/unittests/ExecutionEngine/Makefile vendor/llvm/dist/unittests/MC/ vendor/llvm/dist/unittests/MC/AsmStreamerTest.cpp vendor/llvm/dist/unittests/MC/Makefile Deleted: vendor/llvm/dist/include/llvm/MC/MCImm.h vendor/llvm/dist/test/CodeGen/ARM/2007-01-31-RegInfoAssert.ll vendor/llvm/dist/test/CodeGen/ARM/2007-02-02-JoinIntervalsCrash.ll vendor/llvm/dist/test/CodeGen/ARM/2007-03-06-AddR7.ll vendor/llvm/dist/test/CodeGen/ARM/2007-05-05-InvalidPushPop.ll vendor/llvm/dist/test/CodeGen/ARM/2009-06-18-ThumbCommuteMul.ll vendor/llvm/dist/test/CodeGen/ARM/frame_thumb.ll vendor/llvm/dist/test/CodeGen/ARM/inlineasm-imm-thumb.ll vendor/llvm/dist/test/CodeGen/ARM/thumb-imm.ll vendor/llvm/dist/test/CodeGen/ARM/thumb2-add.ll vendor/llvm/dist/test/CodeGen/ARM/thumb2-mov.ll vendor/llvm/dist/test/CodeGen/ARM/thumb2-mov2.ll vendor/llvm/dist/test/CodeGen/ARM/thumb2-shifter.ll vendor/llvm/dist/test/CodeGen/ARM/vargs2.ll Modified: vendor/llvm/dist/CMakeLists.txt vendor/llvm/dist/Makefile.rules vendor/llvm/dist/autoconf/configure.ac vendor/llvm/dist/bindings/ocaml/analysis/Makefile vendor/llvm/dist/bindings/ocaml/bitreader/Makefile vendor/llvm/dist/bindings/ocaml/bitwriter/Makefile vendor/llvm/dist/bindings/ocaml/executionengine/Makefile vendor/llvm/dist/bindings/ocaml/executionengine/executionengine_ocaml.c vendor/llvm/dist/bindings/ocaml/llvm/Makefile vendor/llvm/dist/bindings/ocaml/target/Makefile vendor/llvm/dist/cmake/config-ix.cmake vendor/llvm/dist/cmake/modules/AddLLVM.cmake vendor/llvm/dist/cmake/modules/TableGen.cmake vendor/llvm/dist/configure vendor/llvm/dist/docs/CommandGuide/llvmc.pod vendor/llvm/dist/docs/CompilerDriver.html vendor/llvm/dist/docs/SourceLevelDebugging.html vendor/llvm/dist/docs/TestingGuide.html vendor/llvm/dist/include/llvm-c/ExecutionEngine.h vendor/llvm/dist/include/llvm-c/Target.h vendor/llvm/dist/include/llvm/ADT/Statistic.h vendor/llvm/dist/include/llvm/ADT/Trie.h vendor/llvm/dist/include/llvm/Analysis/DebugInfo.h vendor/llvm/dist/include/llvm/Analysis/LoopInfo.h vendor/llvm/dist/include/llvm/Analysis/LoopPass.h vendor/llvm/dist/include/llvm/Analysis/Passes.h vendor/llvm/dist/include/llvm/Analysis/ProfileInfoLoader.h vendor/llvm/dist/include/llvm/Analysis/ScalarEvolution.h vendor/llvm/dist/include/llvm/Analysis/ScalarEvolutionExpander.h vendor/llvm/dist/include/llvm/CodeGen/AsmPrinter.h vendor/llvm/dist/include/llvm/CodeGen/IntrinsicLowering.h vendor/llvm/dist/include/llvm/CodeGen/MachineInstrBuilder.h vendor/llvm/dist/include/llvm/CodeGen/MachineOperand.h vendor/llvm/dist/include/llvm/CodeGen/SelectionDAG.h vendor/llvm/dist/include/llvm/CodeGen/SelectionDAGNodes.h vendor/llvm/dist/include/llvm/CodeGen/ValueTypes.h vendor/llvm/dist/include/llvm/CompilerDriver/Main.inc vendor/llvm/dist/include/llvm/Config/Targets.def.in vendor/llvm/dist/include/llvm/Config/config.h.cmake vendor/llvm/dist/include/llvm/Config/config.h.in vendor/llvm/dist/include/llvm/Constants.h vendor/llvm/dist/include/llvm/ExecutionEngine/ExecutionEngine.h vendor/llvm/dist/include/llvm/ExecutionEngine/Interpreter.h vendor/llvm/dist/include/llvm/ExecutionEngine/JIT.h vendor/llvm/dist/include/llvm/IntrinsicsARM.td vendor/llvm/dist/include/llvm/LinkAllPasses.h vendor/llvm/dist/include/llvm/MC/MCInst.h vendor/llvm/dist/include/llvm/Support/DOTGraphTraits.h vendor/llvm/dist/include/llvm/Support/GraphWriter.h vendor/llvm/dist/include/llvm/Support/Timer.h vendor/llvm/dist/include/llvm/System/Atomic.h vendor/llvm/dist/include/llvm/Target/TargetLowering.h vendor/llvm/dist/include/llvm/Target/TargetSelect.h vendor/llvm/dist/include/llvm/Transforms/Utils/Local.h vendor/llvm/dist/include/llvm/Type.h vendor/llvm/dist/lib/Analysis/CFGPrinter.cpp vendor/llvm/dist/lib/Analysis/CMakeLists.txt vendor/llvm/dist/lib/Analysis/DbgInfoPrinter.cpp vendor/llvm/dist/lib/Analysis/DebugInfo.cpp vendor/llvm/dist/lib/Analysis/IPA/Andersens.cpp vendor/llvm/dist/lib/Analysis/ProfileInfoLoader.cpp vendor/llvm/dist/lib/Analysis/ScalarEvolution.cpp vendor/llvm/dist/lib/Analysis/ScalarEvolutionExpander.cpp vendor/llvm/dist/lib/CodeGen/AsmPrinter/AsmPrinter.cpp vendor/llvm/dist/lib/CodeGen/AsmPrinter/DIE.cpp vendor/llvm/dist/lib/CodeGen/AsmPrinter/DIE.h vendor/llvm/dist/lib/CodeGen/AsmPrinter/DwarfDebug.cpp vendor/llvm/dist/lib/CodeGen/AsmPrinter/DwarfDebug.h vendor/llvm/dist/lib/CodeGen/AsmPrinter/DwarfException.h vendor/llvm/dist/lib/CodeGen/AsmPrinter/DwarfWriter.cpp vendor/llvm/dist/lib/CodeGen/AsmPrinter/Makefile vendor/llvm/dist/lib/CodeGen/CMakeLists.txt vendor/llvm/dist/lib/CodeGen/ELF.h 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/IfConversion.cpp vendor/llvm/dist/lib/CodeGen/IntrinsicLowering.cpp vendor/llvm/dist/lib/CodeGen/LiveInterval.cpp vendor/llvm/dist/lib/CodeGen/LiveIntervalAnalysis.cpp vendor/llvm/dist/lib/CodeGen/MachineFunction.cpp vendor/llvm/dist/lib/CodeGen/MachineInstr.cpp vendor/llvm/dist/lib/CodeGen/ScheduleDAGPrinter.cpp vendor/llvm/dist/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp vendor/llvm/dist/lib/CodeGen/SelectionDAG/LegalizeTypes.h vendor/llvm/dist/lib/CodeGen/SelectionDAG/Makefile vendor/llvm/dist/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodesEmit.cpp vendor/llvm/dist/lib/CodeGen/SelectionDAG/SelectionDAG.cpp vendor/llvm/dist/lib/CodeGen/SelectionDAG/SelectionDAGPrinter.cpp vendor/llvm/dist/lib/CodeGen/SelectionDAG/TargetLowering.cpp vendor/llvm/dist/lib/CodeGen/Spiller.cpp vendor/llvm/dist/lib/CodeGen/VirtRegRewriter.h vendor/llvm/dist/lib/CompilerDriver/Action.cpp vendor/llvm/dist/lib/CompilerDriver/CompilationGraph.cpp vendor/llvm/dist/lib/CompilerDriver/Plugin.cpp vendor/llvm/dist/lib/CompilerDriver/Tool.cpp vendor/llvm/dist/lib/ExecutionEngine/Interpreter/Execution.cpp vendor/llvm/dist/lib/ExecutionEngine/Interpreter/Interpreter.cpp vendor/llvm/dist/lib/ExecutionEngine/Interpreter/Interpreter.h vendor/llvm/dist/lib/ExecutionEngine/JIT/CMakeLists.txt vendor/llvm/dist/lib/ExecutionEngine/JIT/JIT.cpp vendor/llvm/dist/lib/ExecutionEngine/JIT/JIT.h vendor/llvm/dist/lib/ExecutionEngine/JIT/JITEmitter.cpp vendor/llvm/dist/lib/Makefile vendor/llvm/dist/lib/Support/Annotation.cpp vendor/llvm/dist/lib/Support/CMakeLists.txt vendor/llvm/dist/lib/Support/PrettyStackTrace.cpp vendor/llvm/dist/lib/Support/Statistic.cpp vendor/llvm/dist/lib/Support/Timer.cpp vendor/llvm/dist/lib/System/Atomic.cpp vendor/llvm/dist/lib/System/CMakeLists.txt vendor/llvm/dist/lib/System/DynamicLibrary.cpp vendor/llvm/dist/lib/System/Win32/DynamicLibrary.inc vendor/llvm/dist/lib/Target/ARM/ARM.h vendor/llvm/dist/lib/Target/ARM/ARMCodeEmitter.cpp vendor/llvm/dist/lib/Target/ARM/ARMISelDAGToDAG.cpp vendor/llvm/dist/lib/Target/ARM/ARMISelLowering.cpp vendor/llvm/dist/lib/Target/ARM/ARMInstrFormats.td vendor/llvm/dist/lib/Target/ARM/ARMInstrInfo.cpp vendor/llvm/dist/lib/Target/ARM/ARMInstrInfo.h 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/ARMTargetAsmInfo.cpp vendor/llvm/dist/lib/Target/ARM/ARMTargetAsmInfo.h vendor/llvm/dist/lib/Target/ARM/ARMTargetMachine.cpp vendor/llvm/dist/lib/Target/ARM/ARMTargetMachine.h vendor/llvm/dist/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp vendor/llvm/dist/lib/Target/ARM/AsmPrinter/CMakeLists.txt vendor/llvm/dist/lib/Target/ARM/CMakeLists.txt vendor/llvm/dist/lib/Target/ARM/README.txt vendor/llvm/dist/lib/Target/Alpha/AlphaJITInfo.cpp vendor/llvm/dist/lib/Target/Alpha/AlphaJITInfo.h vendor/llvm/dist/lib/Target/Alpha/AlphaRegisterInfo.cpp vendor/llvm/dist/lib/Target/Alpha/AlphaRegisterInfo.h vendor/llvm/dist/lib/Target/Alpha/AlphaTargetMachine.cpp vendor/llvm/dist/lib/Target/Alpha/AsmPrinter/AlphaAsmPrinter.cpp vendor/llvm/dist/lib/Target/Alpha/AsmPrinter/CMakeLists.txt vendor/llvm/dist/lib/Target/CBackend/CBackend.cpp vendor/llvm/dist/lib/Target/CellSPU/AsmPrinter/CMakeLists.txt vendor/llvm/dist/lib/Target/CellSPU/AsmPrinter/SPUAsmPrinter.cpp vendor/llvm/dist/lib/Target/CellSPU/SPUTargetMachine.cpp vendor/llvm/dist/lib/Target/CppBackend/CPPBackend.cpp vendor/llvm/dist/lib/Target/IA64/AsmPrinter/CMakeLists.txt vendor/llvm/dist/lib/Target/IA64/AsmPrinter/IA64AsmPrinter.cpp vendor/llvm/dist/lib/Target/IA64/IA64TargetMachine.cpp vendor/llvm/dist/lib/Target/MSIL/MSILWriter.cpp vendor/llvm/dist/lib/Target/MSP430/MSP430TargetMachine.cpp vendor/llvm/dist/lib/Target/Mips/AsmPrinter/CMakeLists.txt vendor/llvm/dist/lib/Target/Mips/AsmPrinter/MipsAsmPrinter.cpp vendor/llvm/dist/lib/Target/Mips/MipsTargetMachine.cpp vendor/llvm/dist/lib/Target/PIC16/PIC16DebugInfo.cpp vendor/llvm/dist/lib/Target/PIC16/PIC16ISelLowering.cpp vendor/llvm/dist/lib/Target/PIC16/PIC16MemSelOpt.cpp vendor/llvm/dist/lib/Target/PIC16/PIC16TargetMachine.cpp vendor/llvm/dist/lib/Target/PowerPC/AsmPrinter/CMakeLists.txt vendor/llvm/dist/lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp vendor/llvm/dist/lib/Target/PowerPC/PPCTargetMachine.cpp vendor/llvm/dist/lib/Target/Sparc/AsmPrinter/CMakeLists.txt vendor/llvm/dist/lib/Target/Sparc/AsmPrinter/SparcAsmPrinter.cpp vendor/llvm/dist/lib/Target/Sparc/SparcTargetMachine.cpp vendor/llvm/dist/lib/Target/X86/AsmPrinter/CMakeLists.txt vendor/llvm/dist/lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.cpp vendor/llvm/dist/lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.h vendor/llvm/dist/lib/Target/X86/AsmPrinter/X86ATTInstPrinter.cpp vendor/llvm/dist/lib/Target/X86/AsmPrinter/X86AsmPrinter.cpp 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/X86ISelDAGToDAG.cpp vendor/llvm/dist/lib/Target/X86/X86ISelLowering.cpp vendor/llvm/dist/lib/Target/X86/X86Instr64bit.td vendor/llvm/dist/lib/Target/X86/X86InstrBuilder.h 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/X86InstrMMX.td vendor/llvm/dist/lib/Target/X86/X86RegisterInfo.td vendor/llvm/dist/lib/Target/X86/X86Subtarget.cpp vendor/llvm/dist/lib/Target/X86/X86Subtarget.h vendor/llvm/dist/lib/Target/X86/X86TargetMachine.cpp vendor/llvm/dist/lib/Target/X86/X86TargetMachine.h vendor/llvm/dist/lib/Target/XCore/XCoreAsmPrinter.cpp vendor/llvm/dist/lib/Target/XCore/XCoreTargetMachine.cpp vendor/llvm/dist/lib/Transforms/IPO/StripSymbols.cpp vendor/llvm/dist/lib/Transforms/Scalar/CMakeLists.txt vendor/llvm/dist/lib/Transforms/Scalar/IndVarSimplify.cpp vendor/llvm/dist/lib/Transforms/Scalar/LoopRotation.cpp vendor/llvm/dist/lib/Transforms/Scalar/LoopStrengthReduce.cpp vendor/llvm/dist/lib/Transforms/Scalar/PredicateSimplifier.cpp vendor/llvm/dist/lib/Transforms/Utils/CMakeLists.txt vendor/llvm/dist/lib/Transforms/Utils/LCSSA.cpp vendor/llvm/dist/lib/Transforms/Utils/Local.cpp vendor/llvm/dist/lib/VMCore/Constants.cpp vendor/llvm/dist/lib/VMCore/Mangler.cpp vendor/llvm/dist/lib/VMCore/Pass.cpp vendor/llvm/dist/projects/sample/lib/sample/Makefile vendor/llvm/dist/test/CodeGen/ARM/dyn-stackalloc.ll vendor/llvm/dist/test/CodeGen/ARM/fpconv.ll vendor/llvm/dist/test/CodeGen/ARM/fpow.ll vendor/llvm/dist/test/CodeGen/ARM/iabs.ll vendor/llvm/dist/test/CodeGen/ARM/ispositive.ll vendor/llvm/dist/test/CodeGen/ARM/large-stack.ll vendor/llvm/dist/test/CodeGen/ARM/ldr_ext.ll vendor/llvm/dist/test/CodeGen/ARM/ldr_frame.ll vendor/llvm/dist/test/CodeGen/ARM/long-setcc.ll vendor/llvm/dist/test/CodeGen/ARM/long.ll vendor/llvm/dist/test/CodeGen/ARM/long_shift.ll vendor/llvm/dist/test/CodeGen/ARM/mul.ll vendor/llvm/dist/test/CodeGen/ARM/select.ll vendor/llvm/dist/test/CodeGen/ARM/stack-frame.ll vendor/llvm/dist/test/CodeGen/ARM/tst_teq.ll vendor/llvm/dist/test/CodeGen/ARM/unord.ll vendor/llvm/dist/test/CodeGen/PowerPC/int-fp-conv-0.ll vendor/llvm/dist/test/CodeGen/X86/pic-1.ll vendor/llvm/dist/test/CodeGen/X86/pic-jtbl.ll vendor/llvm/dist/test/CodeGen/X86/pic_jumptable.ll vendor/llvm/dist/test/CodeGen/X86/pr3495.ll vendor/llvm/dist/test/CodeGen/X86/remat-constant.ll vendor/llvm/dist/test/CodeGen/X86/tls3.ll vendor/llvm/dist/test/CodeGen/X86/x86-64-pic-6.ll vendor/llvm/dist/test/CodeGen/X86/x86-64-pic-7.ll vendor/llvm/dist/test/CodeGen/X86/x86-64-pic-9.ll vendor/llvm/dist/test/DebugInfo/printdbginfo.ll vendor/llvm/dist/test/Makefile vendor/llvm/dist/tools/gold/Makefile vendor/llvm/dist/tools/lli/lli.cpp vendor/llvm/dist/tools/llvm-mc/AsmLexer.cpp vendor/llvm/dist/tools/llvm-mc/AsmLexer.h vendor/llvm/dist/tools/llvm-mc/AsmParser.cpp vendor/llvm/dist/tools/llvm-mc/AsmParser.h vendor/llvm/dist/tools/llvm-mc/CMakeLists.txt vendor/llvm/dist/tools/llvm-mc/Makefile vendor/llvm/dist/tools/llvm-mc/llvm-mc.cpp vendor/llvm/dist/tools/llvmc/doc/LLVMC-Reference.rst vendor/llvm/dist/tools/llvmc/driver/Makefile vendor/llvm/dist/tools/llvmc/example/Skeleton/Makefile vendor/llvm/dist/tools/llvmc/example/Skeleton/driver/Makefile vendor/llvm/dist/tools/llvmc/example/mcc16/Makefile vendor/llvm/dist/tools/llvmc/example/mcc16/driver/Makefile vendor/llvm/dist/tools/lto/LTOCodeGenerator.cpp vendor/llvm/dist/tools/lto/Makefile vendor/llvm/dist/tools/lto/lto.cpp vendor/llvm/dist/tools/opt/GraphPrinters.cpp vendor/llvm/dist/unittests/Makefile vendor/llvm/dist/utils/NewNightlyTest.pl vendor/llvm/dist/utils/TableGen/CodeGenDAGPatterns.cpp vendor/llvm/dist/utils/TableGen/LLVMCConfigurationEmitter.cpp Modified: vendor/llvm/dist/CMakeLists.txt ============================================================================== --- vendor/llvm/dist/CMakeLists.txt Sat Jun 27 10:30:28 2009 (r195097) +++ vendor/llvm/dist/CMakeLists.txt Sat Jun 27 10:44:33 2009 (r195098) @@ -236,6 +236,7 @@ add_subdirectory(lib/Transforms/Hello) add_subdirectory(lib/Linker) add_subdirectory(lib/Analysis) add_subdirectory(lib/Analysis/IPA) +add_subdirectory(lib/MC) set(LLVM_ENUM_ASM_PRINTERS "") foreach(t ${LLVM_TARGETS_TO_BUILD}) Modified: vendor/llvm/dist/Makefile.rules ============================================================================== --- vendor/llvm/dist/Makefile.rules Sat Jun 27 10:30:28 2009 (r195097) +++ vendor/llvm/dist/Makefile.rules Sat Jun 27 10:44:33 2009 (r195098) @@ -198,6 +198,7 @@ install-bytecode:: install-bytecode-loca ifdef LLVMC_PLUGIN LIBRARYNAME := $(patsubst %,plugin_llvmc_%,$(LLVMC_PLUGIN)) +CPP.Flags += -DLLVMC_PLUGIN_NAME=$(LLVMC_PLUGIN) REQUIRES_EH := 1 # Build a dynamic library if the user runs `make` directly from the plugin @@ -213,6 +214,49 @@ endif endif # LLVMC_PLUGIN +ifdef LLVMC_BASED_DRIVER + +TOOLNAME = $(LLVMC_BASED_DRIVER) +LLVMLIBS = CompilerDriver.a +LINK_COMPONENTS = support system +REQUIRES_EH := 1 + +# Preprocessor magic that generates references to static variables in built-in +# plugins. +ifneq ($(LLVMC_BUILTIN_PLUGINS),) + +USEDLIBS += $(patsubst %,plugin_llvmc_%.a,$(LLVMC_BUILTIN_PLUGINS)) + +LLVMC_BUILTIN_PLUGIN_1 = $(word 1, $(LLVMC_BUILTIN_PLUGINS)) +LLVMC_BUILTIN_PLUGIN_2 = $(word 2, $(LLVMC_BUILTIN_PLUGINS)) +LLVMC_BUILTIN_PLUGIN_3 = $(word 3, $(LLVMC_BUILTIN_PLUGINS)) +LLVMC_BUILTIN_PLUGIN_4 = $(word 4, $(LLVMC_BUILTIN_PLUGINS)) +LLVMC_BUILTIN_PLUGIN_5 = $(word 5, $(LLVMC_BUILTIN_PLUGINS)) + +ifneq ($(LLVMC_BUILTIN_PLUGIN_1),) +CPP.Flags += -DLLVMC_BUILTIN_PLUGIN_1=$(LLVMC_BUILTIN_PLUGIN_1) +endif + +ifneq ($(LLVMC_BUILTIN_PLUGIN_2),) +CPP.Flags += -DLLVMC_BUILTIN_PLUGIN_2=$(LLVMC_BUILTIN_PLUGIN_2) +endif + +ifneq ($(LLVMC_BUILTIN_PLUGIN_3),) +CPP.Flags += -DLLVMC_BUILTIN_PLUGIN_3=$(LLVMC_BUILTIN_PLUGIN_3) +endif + +ifneq ($(LLVMC_BUILTIN_PLUGIN_4),) +CPP.Flags += -DLLVMC_BUILTIN_PLUGIN_4=$(LLVMC_BUILTIN_PLUGIN_4) +endif + +ifneq ($(LLVMC_BUILTIN_PLUGIN_5),) +CPP.Flags += -DLLVMC_BUILTIN_PLUGIN_5=$(LLVMC_BUILTIN_PLUGIN_5) +endif + +endif + +endif # LLVMC_BASED_DRIVER + ############################################################################### # VARIABLES: Set up various variables based on configuration data ############################################################################### Modified: vendor/llvm/dist/autoconf/configure.ac ============================================================================== --- vendor/llvm/dist/autoconf/configure.ac Sat Jun 27 10:30:28 2009 (r195097) +++ vendor/llvm/dist/autoconf/configure.ac Sat Jun 27 10:44:33 2009 (r195098) @@ -829,6 +829,9 @@ if test "$ENABLE_THREADS" -eq 1 ; then AC_SEARCH_LIBS(pthread_rwlock_init,pthread, AC_DEFINE([HAVE_PTHREAD_RWLOCK_INIT],[1], [Have pthread_rwlock_init])) + AC_SEARCH_LIBS(pthread_getspecific,pthread, + AC_DEFINE([HAVE_PTHREAD_GETSPECIFIC],[1], + [Have pthread_getspecific])) fi dnl Allow extra x86-disassembler library Modified: vendor/llvm/dist/bindings/ocaml/analysis/Makefile ============================================================================== --- vendor/llvm/dist/bindings/ocaml/analysis/Makefile Sat Jun 27 10:30:28 2009 (r195097) +++ vendor/llvm/dist/bindings/ocaml/analysis/Makefile Sat Jun 27 10:44:33 2009 (r195098) @@ -13,7 +13,6 @@ LEVEL := ../../.. LIBRARYNAME := llvm_analysis -DONT_BUILD_RELINKED := 1 UsedComponents := analysis UsedOcamlInterfaces := llvm Modified: vendor/llvm/dist/bindings/ocaml/bitreader/Makefile ============================================================================== --- vendor/llvm/dist/bindings/ocaml/bitreader/Makefile Sat Jun 27 10:30:28 2009 (r195097) +++ vendor/llvm/dist/bindings/ocaml/bitreader/Makefile Sat Jun 27 10:44:33 2009 (r195098) @@ -13,7 +13,6 @@ LEVEL := ../../.. LIBRARYNAME := llvm_bitreader -DONT_BUILD_RELINKED := 1 UsedComponents := bitreader UsedOcamlInterfaces := llvm Modified: vendor/llvm/dist/bindings/ocaml/bitwriter/Makefile ============================================================================== --- vendor/llvm/dist/bindings/ocaml/bitwriter/Makefile Sat Jun 27 10:30:28 2009 (r195097) +++ vendor/llvm/dist/bindings/ocaml/bitwriter/Makefile Sat Jun 27 10:44:33 2009 (r195098) @@ -13,7 +13,6 @@ LEVEL := ../../.. LIBRARYNAME := llvm_bitwriter -DONT_BUILD_RELINKED := 1 UsedComponents := bitwriter UsedOcamlInterfaces := llvm Modified: vendor/llvm/dist/bindings/ocaml/executionengine/Makefile ============================================================================== --- vendor/llvm/dist/bindings/ocaml/executionengine/Makefile Sat Jun 27 10:30:28 2009 (r195097) +++ vendor/llvm/dist/bindings/ocaml/executionengine/Makefile Sat Jun 27 10:44:33 2009 (r195098) @@ -13,7 +13,6 @@ LEVEL := ../../.. LIBRARYNAME := llvm_executionengine -DONT_BUILD_RELINKED := 1 UsedComponents := executionengine jit interpreter native UsedOcamlInterfaces := llvm llvm_target Modified: vendor/llvm/dist/bindings/ocaml/executionengine/executionengine_ocaml.c ============================================================================== --- vendor/llvm/dist/bindings/ocaml/executionengine/executionengine_ocaml.c Sat Jun 27 10:30:28 2009 (r195097) +++ vendor/llvm/dist/bindings/ocaml/executionengine/executionengine_ocaml.c Sat Jun 27 10:44:33 2009 (r195098) @@ -16,6 +16,7 @@ \*===----------------------------------------------------------------------===*/ #include "llvm-c/ExecutionEngine.h" +#include "llvm-c/Target.h" #include "caml/alloc.h" #include "caml/custom.h" #include "caml/fail.h" @@ -23,6 +24,12 @@ #include <string.h> #include <assert.h> +/* Force the LLVM interpreter, JIT, and native target to be linked in. */ +void llvm_initialize(void) { + LLVMLinkInInterpreter(); + LLVMLinkInJIT(); + LLVMInitializeNativeTarget(); +} /* Can't use the recommended caml_named_value mechanism for backwards compatibility reasons. This is largely equivalent. */ Modified: vendor/llvm/dist/bindings/ocaml/llvm/Makefile ============================================================================== --- vendor/llvm/dist/bindings/ocaml/llvm/Makefile Sat Jun 27 10:30:28 2009 (r195097) +++ vendor/llvm/dist/bindings/ocaml/llvm/Makefile Sat Jun 27 10:44:33 2009 (r195098) @@ -13,7 +13,6 @@ LEVEL := ../../.. LIBRARYNAME := llvm -DONT_BUILD_RELINKED := 1 UsedComponents := core UsedOcamLibs := llvm Modified: vendor/llvm/dist/bindings/ocaml/target/Makefile ============================================================================== --- vendor/llvm/dist/bindings/ocaml/target/Makefile Sat Jun 27 10:30:28 2009 (r195097) +++ vendor/llvm/dist/bindings/ocaml/target/Makefile Sat Jun 27 10:44:33 2009 (r195098) @@ -13,7 +13,6 @@ LEVEL := ../../.. LIBRARYNAME := llvm_target -DONT_BUILD_RELINKED := 1 UsedComponents := target UsedOcamlInterfaces := llvm Modified: vendor/llvm/dist/cmake/config-ix.cmake ============================================================================== --- vendor/llvm/dist/cmake/config-ix.cmake Sat Jun 27 10:30:28 2009 (r195097) +++ vendor/llvm/dist/cmake/config-ix.cmake Sat Jun 27 10:44:33 2009 (r195098) @@ -64,6 +64,8 @@ check_symbol_exists(mallinfo malloc.h HA 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(pthread_rwlock_init pthread.h HAVE_PTHREAD_RWLOCK_INIT) +check_symbol_exists(pthread_getspecific pthread.h HAVE_PTHREAD_GETSPECIFIC) check_symbol_exists(strtoll stdlib.h HAVE_STRTOLL) check_symbol_exists(__GLIBC__ stdio.h LLVM_USING_GLIBC) Modified: vendor/llvm/dist/cmake/modules/AddLLVM.cmake ============================================================================== --- vendor/llvm/dist/cmake/modules/AddLLVM.cmake Sat Jun 27 10:30:28 2009 (r195097) +++ vendor/llvm/dist/cmake/modules/AddLLVM.cmake Sat Jun 27 10:44:33 2009 (r195098) @@ -58,4 +58,7 @@ macro(add_llvm_target target_name) endif( TABLEGEN_OUTPUT ) include_directories(BEFORE ${CMAKE_CURRENT_BINARY_DIR}) add_llvm_library(LLVM${target_name} ${ARGN} ${TABLEGEN_OUTPUT}) + if ( TABLEGEN_OUTPUT ) + add_dependencies(LLVM${target_name} ${target_name}Table_gen) + endif (TABLEGEN_OUTPUT) endmacro(add_llvm_target) Modified: vendor/llvm/dist/cmake/modules/TableGen.cmake ============================================================================== --- vendor/llvm/dist/cmake/modules/TableGen.cmake Sat Jun 27 10:30:28 2009 (r195097) +++ vendor/llvm/dist/cmake/modules/TableGen.cmake Sat Jun 27 10:44:33 2009 (r195098) @@ -20,4 +20,6 @@ macro(tablegen ofn) COMMENT "Building ${ofn}..." ) set(TABLEGEN_OUTPUT ${TABLEGEN_OUTPUT} ${CMAKE_CURRENT_BINARY_DIR}/${ofn}) + set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/${ofn} + PROPERTIES GENERATED 1) endmacro(tablegen) Modified: vendor/llvm/dist/configure ============================================================================== --- vendor/llvm/dist/configure Sat Jun 27 10:30:28 2009 (r195097) +++ vendor/llvm/dist/configure Sat Jun 27 10:44:33 2009 (r195098) @@ -28034,6 +28034,109 @@ _ACEOF fi + { echo "$as_me:$LINENO: checking for library containing pthread_getspecific" >&5 +echo $ECHO_N "checking for library containing pthread_getspecific... $ECHO_C" >&6; } +if test "${ac_cv_search_pthread_getspecific+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_func_search_save_LIBS=$LIBS +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char pthread_getspecific (); +int +main () +{ +return pthread_getspecific (); + ; + return 0; +} +_ACEOF +for ac_lib in '' pthread; do + if test -z "$ac_lib"; then + ac_res="none required" + else + ac_res=-l$ac_lib + LIBS="-l$ac_lib $ac_func_search_save_LIBS" + fi + rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_search_pthread_getspecific=$ac_res +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext + if test "${ac_cv_search_pthread_getspecific+set}" = set; then + break +fi +done +if test "${ac_cv_search_pthread_getspecific+set}" = set; then + : +else + ac_cv_search_pthread_getspecific=no +fi +rm conftest.$ac_ext +LIBS=$ac_func_search_save_LIBS +fi +{ echo "$as_me:$LINENO: result: $ac_cv_search_pthread_getspecific" >&5 +echo "${ECHO_T}$ac_cv_search_pthread_getspecific" >&6; } +ac_res=$ac_cv_search_pthread_getspecific +if test "$ac_res" != no; then + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + +cat >>confdefs.h <<\_ACEOF +#define HAVE_PTHREAD_GETSPECIFIC 1 +_ACEOF + +fi + fi Modified: vendor/llvm/dist/docs/CommandGuide/llvmc.pod ============================================================================== --- vendor/llvm/dist/docs/CommandGuide/llvmc.pod Sat Jun 27 10:30:28 2009 (r195097) +++ vendor/llvm/dist/docs/CommandGuide/llvmc.pod Sat Jun 27 10:44:33 2009 (r195098) @@ -65,8 +65,11 @@ name. Hidden option, useful for debuggin =item B<--save-temps> -Write temporary files to the current directory and do not delete them -on exit. Hidden option, useful for debugging. +Write temporary files to the current directory and do not delete them on +exit. This option can also take an argument: the I<--save-temps=obj> switch will +write files into the directory specified with the I<-o> option. The +I<--save-temps=cwd> and I<--save-temps> switches are both synonyms for the +default behaviour. =item B<--help> Modified: vendor/llvm/dist/docs/CompilerDriver.html ============================================================================== --- vendor/llvm/dist/docs/CompilerDriver.html Sat Jun 27 10:30:28 2009 (r195097) +++ vendor/llvm/dist/docs/CompilerDriver.html Sat Jun 27 10:44:33 2009 (r195098) @@ -109,6 +109,11 @@ until the next -x option.</li> <li><tt class="docutils literal"><span class="pre">-load</span> <span class="pre">PLUGIN_NAME</span></tt> - Load the specified plugin DLL. Example: <tt class="docutils literal"><span class="pre">-load</span> <span class="pre">$LLVM_DIR/Release/lib/LLVMCSimple.so</span></tt>.</li> <li><tt class="docutils literal"><span class="pre">-v</span></tt> - Enable verbose mode, i.e. print out all executed commands.</li> +<li><tt class="docutils literal"><span class="pre">--save-temps</span></tt> - Write temporary files to the current directory and do not +delete them on exit. This option can also take an argument: the +<tt class="docutils literal"><span class="pre">--save-temps=obj</span></tt> switch will write files into the directory specified with +the <tt class="docutils literal"><span class="pre">-o</span></tt> option. The <tt class="docutils literal"><span class="pre">--save-temps=cwd</span></tt> and <tt class="docutils literal"><span class="pre">--save-temps</span></tt> switches are +both synonyms for the default behaviour.</li> <li><tt class="docutils literal"><span class="pre">--check-graph</span></tt> - Check the compilation for common errors like mismatched output/input language names, multiple default edges and cycles. Because of plugins, these checks can't be performed at compile-time. Exit with code zero @@ -122,8 +127,6 @@ directory with the compilation graph des to the file used by the <tt class="docutils literal"><span class="pre">--view-graph</span></tt> option). The <tt class="docutils literal"><span class="pre">-o</span></tt> option can be used to set the output file name. Hidden option, useful for debugging LLVMC plugins.</li> -<li><tt class="docutils literal"><span class="pre">--save-temps</span></tt> - Write temporary files to the current directory -and do not delete them on exit. Hidden option, useful for debugging.</li> <li><tt class="docutils literal"><span class="pre">--help</span></tt>, <tt class="docutils literal"><span class="pre">--help-hidden</span></tt>, <tt class="docutils literal"><span class="pre">--version</span></tt> - These options have their standard meaning.</li> </ul> @@ -642,7 +645,7 @@ errors as its status code.</p> <a href="mailto:foldr@codedgers.com">Mikhail Glushenkov</a><br /> <a href="http://llvm.org">LLVM Compiler Infrastructure</a><br /> -Last modified: $Date: 2009-06-17 02:56:48 +0000 (Wed, 17 Jun 2009) $ +Last modified: $Date: 2009-06-25 20:21:10 +0200 (Thu, 25 Jun 2009) $ </address></div> </div> </div> Added: vendor/llvm/dist/docs/ReleaseNotes-2.6.html ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/llvm/dist/docs/ReleaseNotes-2.6.html Sat Jun 27 10:44:33 2009 (r195098) @@ -0,0 +1,777 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" + "http://www.w3.org/TR/html4/strict.dtd"> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <link rel="stylesheet" href="llvm.css" type="text/css"> + <title>LLVM 2.6 Release Notes</title> +</head> +<body> + +<div class="doc_title">LLVM 2.6 Release Notes</div> + +<ol> + <li><a href="#intro">Introduction</a></li> + <li><a href="#subproj">Sub-project Status Update</a></li> + <li><a href="#externalproj">External Projects Using LLVM 2.6</a></li> + <li><a href="#whatsnew">What's New in LLVM 2.6?</a></li> + <li><a href="GettingStarted.html">Installation Instructions</a></li> + <li><a href="#portability">Portability and Supported Platforms</a></li> + <li><a href="#knownproblems">Known Problems</a></li> + <li><a href="#additionalinfo">Additional Information</a></li> +</ol> + +<div class="doc_author"> + <p>Written by the <a href="http://llvm.org">LLVM Team</a></p> +</div> + +<!-- *********************************************************************** --> +<div class="doc_section"> + <a name="intro">Introduction</a> +</div> +<!-- *********************************************************************** --> + +<div class="doc_text"> + +<p>This document contains the release notes for the LLVM Compiler +Infrastructure, release 2.6. Here we describe the status of LLVM, including +major improvements from the previous release and significant known problems. +All LLVM releases may be downloaded from the <a +href="http://llvm.org/releases/">LLVM releases web site</a>.</p> + +<p>For more information about LLVM, including information about the latest +release, please check out the <a href="http://llvm.org/">main LLVM +web site</a>. If you have questions or comments, the <a +href="http://mail.cs.uiuc.edu/mailman/listinfo/llvmdev">LLVM Developer's Mailing +List</a> is a good place to send them.</p> + +<p>Note that if you are reading this file from a Subversion checkout or the +main LLVM web page, this document applies to the <i>next</i> release, not the +current one. To see the release notes for a specific release, please see the +<a href="http://llvm.org/releases/">releases page</a>.</p> + +</div> + +<!-- Unfinished features in 2.5: + Machine LICM + Machine Sinking + target-specific intrinsics + gold lto plugin + pre-alloc splitter, strong phi elim + <tt>llc -enable-value-prop</tt>, propagation of value info + (sign/zero ext info) from one MBB to another + debug info for optimized code + interpreter + libffi + postalloc scheduler: anti dependence breaking, hazard recognizer? + +initial support for debug line numbers when optimization enabled, not useful in + 2.5 but will be for 2.6. + + --> + + <!-- for announcement email: + --> + +<!-- *********************************************************************** --> +<div class="doc_section"> + <a name="subproj">Sub-project Status Update</a> +</div> +<!-- *********************************************************************** --> + +<div class="doc_text"> +<p> +The LLVM 2.6 distribution currently consists of code from the core LLVM +repository —which roughly includes the LLVM optimizers, code generators +and supporting tools — and the llvm-gcc repository. In addition to this +code, the LLVM Project includes other sub-projects that are in development. The +two which are the most actively developed are the <a href="#clang">Clang +Project</a> and the <a href="#vmkit">VMKit Project</a>. +</p> + +</div> + + +<!--=========================================================================--> +<div class="doc_subsection"> +<a name="clang">Clang: C/C++/Objective-C Frontend Toolkit</a> +</div> + +<div class="doc_text"> + +<p>The <a href="http://clang.llvm.org/">Clang project</a> is an effort to build +a set of new 'LLVM native' front-end technologies for the LLVM optimizer and +code generator. While Clang is not included in the LLVM 2.6 release, it is +continuing to make major strides forward in all areas. Its C and Objective-C +parsing and code generation support is now very solid. For example, it is +capable of successfully building many real-world applications for X86-32 +and X86-64, +including the <a href="http://wiki.freebsd.org/BuildingFreeBSDWithClang">FreeBSD +kernel</a> and <a href="http://gcc.gnu.org/gcc-4.2/">gcc 4.2</a>. C++ is also +making <a href="http://clang.llvm.org/cxx_status.html">incredible progress</a>, +and work on templates has recently started. If you are +interested in fast compiles and good diagnostics, we encourage you to try it out +by <a href="http://clang.llvm.org/get_started.html">building from mainline</a> +and reporting any issues you hit to the <a +href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev">Clang front-end mailing +list</a>.</p> + +<p>In the LLVM 2.6 time-frame, the Clang team has made many improvements:</p> + +<ul> +<li>Something wonderful!</li> +<li>Many many bugs are fixed and many features have been added.</li> +</ul> +</div> + +<!--=========================================================================--> +<div class="doc_subsection"> +<a name="clangsa">Clang Static Analyzer</a> +</div> + +<div class="doc_text"> + +<p>Previously announced in the 2.4 LLVM release, the Clang project also +includes an early stage static source code analysis tool for <a +href="http://clang.llvm.org/StaticAnalysis.html">automatically finding bugs</a> +in C and Objective-C programs. The tool performs a growing set of checks to find +bugs that occur on a specific path within a program.</p> + +<p>In the LLVM 2.6 time-frame there have been many significant improvements to +XYZ.</p> + +<p>The set of checks performed by the static analyzer continues to expand, and +future plans for the tool include full source-level inter-procedural analysis +and deeper checks such as buffer overrun detection. There are many opportunities +to extend and enhance the static analyzer, and anyone interested in working on +this project is encouraged to get involved!</p> + +</div> + +<!--=========================================================================--> +<div class="doc_subsection"> +<a name="vmkit">VMKit: JVM/CLI Virtual Machine Implementation</a> +</div> + +<div class="doc_text"> +<p> +The <a href="http://vmkit.llvm.org/">VMKit project</a> is an implementation of +a JVM and a CLI Virtual Machines (Microsoft .NET is an +implementation of the CLI) using the Just-In-Time compiler of LLVM.</p> + +<p>Following LLVM 2.6, VMKit has its XYZ release that you can find on its +<a href="http://vmkit.llvm.org/releases/">webpage</a>. The release includes +bug fixes, cleanup and new features. The major changes are:</p> + +<ul> + +<li>Something wonderful!</li> + +</ul> +</div> + +<!-- *********************************************************************** --> +<div class="doc_section"> + <a name="externalproj">External Projects Using LLVM 2.6</a> +</div> +<!-- *********************************************************************** --> + +<!--=========================================================================--> +<div class="doc_subsection"> +<a name="pure">Pure</a> +</div> + +<div class="doc_text"> +<p> +<a href="http://pure-lang.googlecode.com/">Pure</a> +is an algebraic/functional programming language based on term rewriting. +Programs are collections of equations which are used to evaluate expressions in +a symbolic fashion. Pure offers dynamic typing, eager and lazy evaluation, +lexical closures, a hygienic macro system (also based on term rewriting), +built-in list and matrix support (including list and matrix comprehensions) and +an easy-to-use C interface. The interpreter uses LLVM as a backend to + JIT-compile Pure programs to fast native code.</p> + +<p>In addition to the usual algebraic data structures, Pure also has +MATLAB-style matrices in order to support numeric computations and signal +processing in an efficient way. Pure is mainly aimed at mathematical +applications right now, but it has been designed as a general purpose language. +The dynamic interpreter environment and the C interface make it possible to use +it as a kind of functional scripting language for many application areas. +</p> +</div> + + +<!--=========================================================================--> +<div class="doc_subsection"> +<a name="ldc">LLVM D Compiler</a> +</div> + +<div class="doc_text"> +<p> +<a href="http://www.dsource.org/projects/ldc">LDC</a> is an implementation of +the D Programming Language using the LLVM optimizer and code generator. +The LDC project works great with the LLVM 2.6 release. General improvements in +this +cycle have included new inline asm constraint handling, better debug info +support, general bugfixes, and better x86-64 support. This has allowed +some major improvements in LDC, getting us much closer to being as +fully featured as the original DMD compiler from DigitalMars. +</p> +</div> + +<!--=========================================================================--> +<div class="doc_subsection"> +<a name="RoadsendPHP">Roadsend PHP</a> +</div> + +<div class="doc_text"> +<p><a href="http://code.roadsend.com/rphp">Roadsend PHP</a> (rphp) is an open +source implementation of the PHP programming +language that uses LLVM for its optimizer, JIT, and static compiler. This is a +reimplementation of an earlier project that is now based on LLVM.</p> +</div> + +<!--=========================================================================--> +<div class="doc_subsection"> +<a name="Unladen Swallow">Unladen Swallow</a> +</div> + +<div class="doc_text"> +<p><a href="http://code.google.com/p/unladen-swallow/">Unladen Swallow</a> is a +branch of <a href="http://python.org/">Python</a> intended to be fully +compatible and significantly faster. It uses LLVM's optimization passes and JIT +compiler.</p> +</div> + +<!--=========================================================================--> +<div class="doc_subsection"> +<a name="Rubinius">Rubinius</a> +</div> + +<div class="doc_text"> +<p><a href="http://github.com/evanphx/rubinius">Rubinius</a> is a new virtual +machine for Ruby. It leverages LLVM to dynamically compile Ruby code down to +machine code using LLVM's JIT.</p> +</div> + + +<!-- *********************************************************************** --> +<div class="doc_section"> + <a name="whatsnew">What's New in LLVM 2.6?</a> +</div> +<!-- *********************************************************************** --> + +<div class="doc_text"> + +<p>This release includes a huge number of bug fixes, performance tweaks, and +minor improvements. Some of the major improvements and new features are listed +in this section. +</p> +</div> + +<!--=========================================================================--> +<div class="doc_subsection"> +<a name="majorfeatures">Major New Features</a> +</div> + +<div class="doc_text"> + +<p>LLVM 2.6 includes several major new capabilities:</p> + +<ul> +<li>Something wonderful!</li> +</ul> + +</div> + + +<!--=========================================================================--> +<div class="doc_subsection"> +<a name="llvm-gcc">llvm-gcc 4.2 Improvements</a> +</div> + +<div class="doc_text"> + +<p>LLVM fully supports the llvm-gcc 4.2 front-end, which marries the GCC +front-ends and driver with the LLVM optimizer and code generator. It currently +includes support for the C, C++, Objective-C, Ada, and Fortran front-ends.</p> + +<ul> +<li>Something wonderful!</li> +</ul> + +</div> + + +<!--=========================================================================--> +<div class="doc_subsection"> +<a name="coreimprovements">LLVM IR and Core Improvements</a> +</div> + +<div class="doc_text"> +<p>LLVM IR has several new features that are used by our existing front-ends and +can be useful if you are writing a front-end for LLVM:</p> + +<ul> +<li>Something wonderful!</li> +</ul> + +</div> + +<!--=========================================================================--> +<div class="doc_subsection"> +<a name="optimizer">Optimizer Improvements</a> +</div> + +<div class="doc_text"> + +<p>In addition to a large array of bug fixes and minor performance tweaks, this +release includes a few major enhancements and additions to the optimizers:</p> + +<ul> + +<li>Something wonderful!</li> + +</ul> + +</div> + +<!--=========================================================================--> +<div class="doc_subsection"> +<a name="codegen">Target Independent Code Generator Improvements</a> +</div> + +<div class="doc_text"> + +<p>We have put a significant amount of work into the code generator +infrastructure, which allows us to implement more aggressive algorithms and make +it run faster:</p> + +<ul> + +<li>Something wonderful!</li> +</ul> +</div> + +<!--=========================================================================--> +<div class="doc_subsection"> +<a name="x86">X86-32 and X86-64 Target Improvements</a> +</div> + +<div class="doc_text"> +<p>New features of the X86 target include: +</p> + +<ul> + +<li>Something wonderful!</li> +</ul> + +</div> + +<!--=========================================================================--> +<div class="doc_subsection"> +<a name="pic16">PIC16 Target Improvements</a> +</div> + +<div class="doc_text"> +<p>New features of the PIC16 target include: +</p> + +<ul> +<li>Something wonderful!</li> +</ul> + +<p>Things not yet supported:</p> + +<ul> +<li>Floating point.</li> +<li>Passing/returning aggregate types to and from functions.</li> +<li>Variable arguments.</li> +<li>Indirect function calls.</li> +<li>Interrupts/programs.</li> +<li>Debug info.</li> +</ul> + +</div> + + +<!--=========================================================================--> +<div class="doc_subsection"> +<a name="llvmc">Improvements in LLVMC</a> +</div> + +<div class="doc_text"> +<p>New features include:</p> + +<ul> +<li>Something wonderful!</li> +</ul> + +</div> + + +<!--=========================================================================--> +<div class="doc_subsection"> +<a name="changes">Major Changes and Removed Features</a> +</div> + +<div class="doc_text"> + +<p>If you're already an LLVM user or developer with out-of-tree changes based +on LLVM 2.4, this section lists some "gotchas" that you may run into upgrading +from the previous release.</p> + +<ul> + +<li>Something horrible!</li> + +</ul> + + +<p>In addition, many APIs have changed in this release. Some of the major LLVM +API changes are:</p> + +<ul> +<li>The <tt>getABITypeSize</tt> methods are now called <tt>getAllocSize</tt>.</li> +</ul> + +</div> + + + +<!-- *********************************************************************** --> +<div class="doc_section"> + <a name="portability">Portability and Supported Platforms</a> +</div> +<!-- *********************************************************************** --> + +<div class="doc_text"> + +<p>LLVM is known to work on the following platforms:</p> + +<ul> +<li>Intel and AMD machines (IA32, X86-64, AMD64, EMT-64) running Red Hat +Linux, Fedora Core and FreeBSD (and probably other unix-like systems).</li> +<li>PowerPC and X86-based Mac OS X systems, running 10.3 and above in 32-bit +and 64-bit modes.</li> +<li>Intel and AMD machines running on Win32 using MinGW libraries (native).</li> +<li>Intel and AMD machines running on Win32 with the Cygwin libraries (limited + support is available for native builds with Visual C++).</li> +<li>Sun UltraSPARC workstations running Solaris 10.</li> +<li>Alpha-based machines running Debian GNU/Linux.</li> +<li>Itanium-based (IA64) machines running Linux and HP-UX.</li> +</ul> + +<p>The core LLVM infrastructure uses GNU autoconf to adapt itself +to the machine and operating system on which it is built. However, minor +porting may be required to get LLVM to work on new platforms. We welcome your +portability patches and reports of successful builds or error messages.</p> + +</div> + +<!-- *********************************************************************** --> +<div class="doc_section"> + <a name="knownproblems">Known Problems</a> +</div> +<!-- *********************************************************************** --> + +<div class="doc_text"> + +<p>This section contains significant known problems with the LLVM system, +listed by component. If you run into a problem, please check the <a +href="http://llvm.org/bugs/">LLVM bug database</a> and submit a bug if +there isn't already one.</p> + +</div> + +<!-- ======================================================================= --> +<div class="doc_subsection"> + <a name="experimental">Experimental features included with this release</a> +</div> + +<div class="doc_text"> + +<p>The following components of this LLVM release are either untested, known to +be broken or unreliable, or are in early development. These components should +not be relied on, and bugs should not be filed against them, but they may be +useful to some people. In particular, if you would like to work on one of these +components, please contact us on the <a +href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev">LLVMdev list</a>.</p> + +<ul> +<li>The MSIL, IA64, Alpha, SPU, MIPS, and PIC16 backends are experimental.</li> +<li>The <tt>llc</tt> "<tt>-filetype=asm</tt>" (the default) is the only + supported value for this option.</li> +</ul> + +</div> + +<!-- ======================================================================= --> +<div class="doc_subsection"> + <a name="x86-be">Known problems with the X86 back-end</a> +</div> + +<div class="doc_text"> + +<ul> + <li>The X86 backend does not yet support + all <a href="http://llvm.org/PR879">inline assembly that uses the X86 + floating point stack</a>. It supports the 'f' and 't' constraints, but not + 'u'.</li> + <li>The X86 backend generates inefficient floating point code when configured + to generate code for systems that don't have SSE2.</li> + <li>Win64 code generation wasn't widely tested. Everything should work, but we + expect small issues to happen. Also, llvm-gcc cannot build the mingw64 + runtime currently due + to <a href="http://llvm.org/PR2255">several</a> + <a href="http://llvm.org/PR2257">bugs</a> and due to lack of support for + the + 'u' inline assembly constraint and for X87 floating point inline assembly.</li> + <li>The X86-64 backend does not yet support the LLVM IR instruction + <tt>va_arg</tt>. Currently, the llvm-gcc and front-ends support variadic + argument constructs on X86-64 by lowering them manually.</li> +</ul> + +</div> + +<!-- ======================================================================= --> +<div class="doc_subsection"> + <a name="ppc-be">Known problems with the PowerPC back-end</a> +</div> + +<div class="doc_text"> + +<ul> +<li>The Linux PPC32/ABI support needs testing for the interpreter and static +compilation, and lacks support for debug information.</li> +</ul> + +</div> + +<!-- ======================================================================= --> +<div class="doc_subsection"> + <a name="arm-be">Known problems with the ARM back-end</a> +</div> + +<div class="doc_text"> + +<ul> +<li>Thumb mode works only on ARMv6 or higher processors. On sub-ARMv6 +processors, thumb programs can crash or produce wrong +results (<a href="http://llvm.org/PR1388">PR1388</a>).</li> +<li>Compilation for ARM Linux OABI (old ABI) is supported but not fully tested. +</li> +<li>There is a bug in QEMU-ARM (<= 0.9.0) which causes it to incorrectly + execute +programs compiled with LLVM. Please use more recent versions of QEMU.</li> +</ul> + +</div> + +<!-- ======================================================================= --> +<div class="doc_subsection"> + <a name="sparc-be">Known problems with the SPARC back-end</a> +</div> + +<div class="doc_text"> + +<ul> +<li>The SPARC backend only supports the 32-bit SPARC ABI (-m32); it does not + support the 64-bit SPARC ABI (-m64).</li> +</ul> + +</div> + +<!-- ======================================================================= --> +<div class="doc_subsection"> + <a name="mips-be">Known problems with the MIPS back-end</a> +</div> + +<div class="doc_text"> + +<ul> +<li>The O32 ABI is not fully supported.</li> +<li>64-bit MIPS targets are not supported yet.</li> +</ul> + +</div> + +<!-- ======================================================================= --> +<div class="doc_subsection"> + <a name="alpha-be">Known problems with the Alpha back-end</a> +</div> + +<div class="doc_text"> + +<ul> + +<li>On 21164s, some rare FP arithmetic sequences which may trap do not have the +appropriate nops inserted to ensure restartability.</li> + +</ul> +</div> + +<!-- ======================================================================= --> +<div class="doc_subsection"> + <a name="ia64-be">Known problems with the IA64 back-end</a> +</div> + +<div class="doc_text"> + +<ul> +<li>The Itanium backend is highly experimental and has a number of known + issues. We are looking for a maintainer for the Itanium backend. If you + are interested, please contact the LLVMdev mailing list.</li> +</ul> + +</div> + +<!-- ======================================================================= --> +<div class="doc_subsection"> + <a name="c-be">Known problems with the C back-end</a> +</div> + +<div class="doc_text"> + +<ul> +<li><a href="http://llvm.org/PR802">The C backend has only basic support for + inline assembly code</a>.</li> +<li><a href="http://llvm.org/PR1658">The C backend violates the ABI of common + C++ programs</a>, preventing intermixing between C++ compiled by the CBE and + C++ code compiled with <tt>llc</tt> or native compilers.</li> *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200906271044.n5RAiYqi075541>