svn commit: r219067 - in vendor/llvm/dist: . cmake/modules docs
include/llvm include/llvm/ADT include/llvm/Analysis
include/llvm/CodeGen include/llvm/MC include/llvm/MC/MCParser
include/llvm/Suppor...
Dimitry Andric
dim at FreeBSD.org
Sat Feb 26 22:03:51 UTC 2011
Author: dim
Date: Sat Feb 26 22:03:50 2011
New Revision: 219067
URL: http://svn.freebsd.org/changeset/base/219067
Log:
Vendor import of llvm trunk r126547:
http://llvm.org/svn/llvm-project/llvm/trunk@126547
Added:
vendor/llvm/dist/test/CodeGen/ARM/2009-10-16-Scope.ll
vendor/llvm/dist/test/CodeGen/ARM/2010-08-04-StackVariable.ll
vendor/llvm/dist/test/CodeGen/ARM/available_externally.ll
vendor/llvm/dist/test/CodeGen/X86/2009-10-16-Scope.ll
vendor/llvm/dist/test/CodeGen/X86/2010-08-04-StackVariable.ll
vendor/llvm/dist/test/CodeGen/X86/2011-02-21-VirtRegRewriter-KillSubReg.ll
vendor/llvm/dist/test/CodeGen/X86/2011-02-23-UnfoldBug.ll
vendor/llvm/dist/test/CodeGen/X86/phi-constants.ll
vendor/llvm/dist/test/CodeGen/X86/vec_anyext.ll
vendor/llvm/dist/test/CodeGen/X86/vec_sext.ll
vendor/llvm/dist/test/CodeGen/X86/vec_zext.ll
vendor/llvm/dist/test/CodeGen/XCore/events.ll
vendor/llvm/dist/test/FrontendC/2011-02-21-DATA-common.c
vendor/llvm/dist/test/MC/ARM/bracket-darwin.s
vendor/llvm/dist/test/MC/ARM/bracket-exprs.s
vendor/llvm/dist/test/MC/ARM/darwin-ARM-reloc.s
vendor/llvm/dist/test/MC/ARM/darwin-Thumb-reloc.s
vendor/llvm/dist/test/MC/ARM/full_line_comment.s
vendor/llvm/dist/test/MC/Disassembler/X86/enhanced.txt
vendor/llvm/dist/test/MC/ELF/bracket-exprs.s
vendor/llvm/dist/test/MC/ELF/bracket.s
vendor/llvm/dist/test/MC/ELF/org.s
vendor/llvm/dist/test/MC/ELF/pr9292.s
vendor/llvm/dist/test/MC/ELF/relocation-pc.s
vendor/llvm/dist/test/Transforms/InstCombine/or-xor.ll
vendor/llvm/dist/test/Transforms/LoopDeletion/multiple-exits.ll
vendor/llvm/dist/test/Transforms/SimplifyCFG/select-gep.ll
vendor/llvm/dist/utils/llvmbuild (contents, props changed)
Deleted:
vendor/llvm/dist/test/CodeGen/X86/codegen-dce.ll
vendor/llvm/dist/test/CodeGen/X86/dbg-live-in-location.ll
vendor/llvm/dist/test/CodeGen/X86/non-globl-eh-frame.ll
vendor/llvm/dist/test/DebugInfo/2009-03-03-deadstore.ll
vendor/llvm/dist/test/DebugInfo/2009-03-03-store-to-load-forward.ll
vendor/llvm/dist/test/DebugInfo/2009-10-16-Scope.ll
vendor/llvm/dist/test/DebugInfo/2010-08-04-StackVariable.ll
vendor/llvm/dist/test/MC/AsmParser/full_line_comment.s
vendor/llvm/dist/test/MC/AsmParser/paren.s
vendor/llvm/dist/test/MC/MachO/darwin-ARM-reloc.s
vendor/llvm/dist/test/MC/MachO/darwin-Thumb-reloc.s
vendor/llvm/dist/test/Transforms/InstCombine/2003-11-13-ConstExprCastCall.ll
Modified:
vendor/llvm/dist/CMakeLists.txt
vendor/llvm/dist/Makefile.rules
vendor/llvm/dist/cmake/modules/AddLLVM.cmake
vendor/llvm/dist/cmake/modules/CMakeLists.txt
vendor/llvm/dist/cmake/modules/HandleLLVMOptions.cmake
vendor/llvm/dist/cmake/modules/LLVM.cmake
vendor/llvm/dist/docs/GettingStartedVS.html
vendor/llvm/dist/docs/LangRef.html
vendor/llvm/dist/include/llvm/ADT/APInt.h
vendor/llvm/dist/include/llvm/ADT/ArrayRef.h
vendor/llvm/dist/include/llvm/ADT/ImmutableIntervalMap.h
vendor/llvm/dist/include/llvm/ADT/ImmutableMap.h
vendor/llvm/dist/include/llvm/Analysis/DIBuilder.h
vendor/llvm/dist/include/llvm/CMakeLists.txt
vendor/llvm/dist/include/llvm/CodeGen/AsmPrinter.h
vendor/llvm/dist/include/llvm/CodeGen/FunctionLoweringInfo.h
vendor/llvm/dist/include/llvm/CodeGen/MachineConstantPool.h
vendor/llvm/dist/include/llvm/CodeGen/MachineFunction.h
vendor/llvm/dist/include/llvm/CodeGen/MachineRegisterInfo.h
vendor/llvm/dist/include/llvm/IntrinsicsXCore.td
vendor/llvm/dist/include/llvm/MC/MCAsmInfo.h
vendor/llvm/dist/include/llvm/MC/MCParser/MCAsmParserExtension.h
vendor/llvm/dist/include/llvm/MC/MCStreamer.h
vendor/llvm/dist/include/llvm/Support/NoFolder.h
vendor/llvm/dist/include/llvm/Support/PathV1.h
vendor/llvm/dist/include/llvm/Target/TargetLowering.h
vendor/llvm/dist/include/llvm/Transforms/Utils/Local.h
vendor/llvm/dist/lib/Analysis/DIBuilder.cpp
vendor/llvm/dist/lib/Analysis/InstructionSimplify.cpp
vendor/llvm/dist/lib/CodeGen/AllocationOrder.h
vendor/llvm/dist/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
vendor/llvm/dist/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
vendor/llvm/dist/lib/CodeGen/BranchFolding.cpp
vendor/llvm/dist/lib/CodeGen/InlineSpiller.cpp
vendor/llvm/dist/lib/CodeGen/LowerSubregs.cpp
vendor/llvm/dist/lib/CodeGen/MachineFunction.cpp
vendor/llvm/dist/lib/CodeGen/MachineRegisterInfo.cpp
vendor/llvm/dist/lib/CodeGen/RegAllocBase.h
vendor/llvm/dist/lib/CodeGen/RegAllocBasic.cpp
vendor/llvm/dist/lib/CodeGen/RegAllocGreedy.cpp
vendor/llvm/dist/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
vendor/llvm/dist/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
vendor/llvm/dist/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
vendor/llvm/dist/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
vendor/llvm/dist/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
vendor/llvm/dist/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
vendor/llvm/dist/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
vendor/llvm/dist/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
vendor/llvm/dist/lib/CodeGen/SelectionDAG/TargetLowering.cpp
vendor/llvm/dist/lib/CodeGen/SplitKit.cpp
vendor/llvm/dist/lib/CodeGen/SplitKit.h
vendor/llvm/dist/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
vendor/llvm/dist/lib/CodeGen/VirtRegRewriter.cpp
vendor/llvm/dist/lib/MC/ELFObjectWriter.cpp
vendor/llvm/dist/lib/MC/MCAsmInfo.cpp
vendor/llvm/dist/lib/MC/MCAsmInfoDarwin.cpp
vendor/llvm/dist/lib/MC/MCDisassembler/EDOperand.cpp
vendor/llvm/dist/lib/MC/MCDisassembler/EDToken.cpp
vendor/llvm/dist/lib/MC/MCObjectStreamer.cpp
vendor/llvm/dist/lib/MC/MCParser/AsmParser.cpp
vendor/llvm/dist/lib/MC/MCParser/ELFAsmParser.cpp
vendor/llvm/dist/lib/MC/MCParser/MCAsmParserExtension.cpp
vendor/llvm/dist/lib/MC/MCSectionMachO.cpp
vendor/llvm/dist/lib/MC/MCStreamer.cpp
vendor/llvm/dist/lib/Support/APInt.cpp
vendor/llvm/dist/lib/Target/ARM/ARMBaseInstrInfo.h
vendor/llvm/dist/lib/Target/ARM/ARMFastISel.cpp
vendor/llvm/dist/lib/Target/ARM/ARMFrameLowering.cpp
vendor/llvm/dist/lib/Target/ARM/ARMHazardRecognizer.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.td
vendor/llvm/dist/lib/Target/ARM/ARMInstrNEON.td
vendor/llvm/dist/lib/Target/ARM/ARMInstrVFP.td
vendor/llvm/dist/lib/Target/ARM/ARMSubtarget.cpp
vendor/llvm/dist/lib/Target/ARM/MLxExpansionPass.cpp
vendor/llvm/dist/lib/Target/ARM/NEONMoveFix.cpp
vendor/llvm/dist/lib/Target/ARM/Thumb2InstrInfo.cpp
vendor/llvm/dist/lib/Target/Alpha/AlphaISelLowering.cpp
vendor/llvm/dist/lib/Target/Alpha/AlphaISelLowering.h
vendor/llvm/dist/lib/Target/Blackfin/BlackfinISelLowering.cpp
vendor/llvm/dist/lib/Target/Blackfin/BlackfinISelLowering.h
vendor/llvm/dist/lib/Target/CellSPU/SPUISelLowering.cpp
vendor/llvm/dist/lib/Target/CellSPU/SPUISelLowering.h
vendor/llvm/dist/lib/Target/MBlaze/MBlazeISelLowering.cpp
vendor/llvm/dist/lib/Target/MSP430/MSP430ISelLowering.cpp
vendor/llvm/dist/lib/Target/MSP430/MSP430ISelLowering.h
vendor/llvm/dist/lib/Target/PowerPC/PPCISelLowering.cpp
vendor/llvm/dist/lib/Target/PowerPC/PPCISelLowering.h
vendor/llvm/dist/lib/Target/README.txt
vendor/llvm/dist/lib/Target/Sparc/DelaySlotFiller.cpp
vendor/llvm/dist/lib/Target/Sparc/SparcISelLowering.cpp
vendor/llvm/dist/lib/Target/Sparc/SparcISelLowering.h
vendor/llvm/dist/lib/Target/Sparc/SparcInstrInfo.td
vendor/llvm/dist/lib/Target/SystemZ/SystemZISelLowering.cpp
vendor/llvm/dist/lib/Target/SystemZ/SystemZISelLowering.h
vendor/llvm/dist/lib/Target/X86/AsmParser/X86AsmParser.cpp
vendor/llvm/dist/lib/Target/X86/Disassembler/X86Disassembler.cpp
vendor/llvm/dist/lib/Target/X86/Disassembler/X86DisassemblerDecoder.h
vendor/llvm/dist/lib/Target/X86/README.txt
vendor/llvm/dist/lib/Target/X86/X86FastISel.cpp
vendor/llvm/dist/lib/Target/X86/X86ISelLowering.cpp
vendor/llvm/dist/lib/Target/X86/X86ISelLowering.h
vendor/llvm/dist/lib/Target/X86/X86InstrFormats.td
vendor/llvm/dist/lib/Target/X86/X86InstrInfo.cpp
vendor/llvm/dist/lib/Target/X86/X86InstrInfo.h
vendor/llvm/dist/lib/Target/X86/X86InstrInfo.td
vendor/llvm/dist/lib/Target/X86/X86InstrSystem.td
vendor/llvm/dist/lib/Target/X86/X86MCCodeEmitter.cpp
vendor/llvm/dist/lib/Target/X86/X86Subtarget.cpp
vendor/llvm/dist/lib/Target/X86/X86Subtarget.h
vendor/llvm/dist/lib/Target/XCore/XCoreISelLowering.cpp
vendor/llvm/dist/lib/Target/XCore/XCoreISelLowering.h
vendor/llvm/dist/lib/Target/XCore/XCoreInstrInfo.td
vendor/llvm/dist/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
vendor/llvm/dist/lib/Transforms/InstCombine/InstCombineCalls.cpp
vendor/llvm/dist/lib/Transforms/Scalar/LoopDeletion.cpp
vendor/llvm/dist/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
vendor/llvm/dist/lib/Transforms/Scalar/SimplifyLibCalls.cpp
vendor/llvm/dist/lib/Transforms/Utils/Local.cpp
vendor/llvm/dist/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
vendor/llvm/dist/lib/Transforms/Utils/SimplifyCFG.cpp
vendor/llvm/dist/test/CMakeLists.txt
vendor/llvm/dist/test/CodeGen/ARM/2011-01-19-MergedGlobalDbg.ll
vendor/llvm/dist/test/CodeGen/ARM/fcopysign.ll
vendor/llvm/dist/test/CodeGen/ARM/vstlane.ll
vendor/llvm/dist/test/CodeGen/SPARC/2011-01-19-DelaySlot.ll
vendor/llvm/dist/test/CodeGen/SPARC/2011-01-22-SRet.ll
vendor/llvm/dist/test/CodeGen/X86/2010-06-28-DbgEntryPC.ll
vendor/llvm/dist/test/CodeGen/X86/add.ll
vendor/llvm/dist/test/CodeGen/X86/break-sse-dep.ll
vendor/llvm/dist/test/CodeGen/X86/codegen-prepare-extload.ll
vendor/llvm/dist/test/CodeGen/X86/constant-pool-sharing.ll
vendor/llvm/dist/test/CodeGen/X86/ctpop-combine.ll
vendor/llvm/dist/test/CodeGen/X86/dbg-value-location.ll
vendor/llvm/dist/test/CodeGen/X86/divide-by-constant.ll
vendor/llvm/dist/test/CodeGen/X86/dll-linkage.ll
vendor/llvm/dist/test/CodeGen/X86/fast-isel-cmp-branch.ll
vendor/llvm/dist/test/CodeGen/X86/fast-isel-gep.ll
vendor/llvm/dist/test/CodeGen/X86/gather-addresses.ll
vendor/llvm/dist/test/CodeGen/X86/i128-ret.ll
vendor/llvm/dist/test/CodeGen/X86/lea.ll
vendor/llvm/dist/test/CodeGen/X86/lsr-overflow.ll
vendor/llvm/dist/test/CodeGen/X86/lsr-reuse-trunc.ll
vendor/llvm/dist/test/CodeGen/X86/memcmp.ll
vendor/llvm/dist/test/CodeGen/X86/movgs.ll
vendor/llvm/dist/test/CodeGen/X86/optimize-max-3.ll
vendor/llvm/dist/test/CodeGen/X86/pr9127.ll
vendor/llvm/dist/test/CodeGen/X86/red-zone.ll
vendor/llvm/dist/test/CodeGen/X86/remat-mov-0.ll
vendor/llvm/dist/test/CodeGen/X86/test-shrink.ll
vendor/llvm/dist/test/CodeGen/X86/use-add-flags.ll
vendor/llvm/dist/test/CodeGen/X86/vec_shuffle-37.ll
vendor/llvm/dist/test/CodeGen/X86/xor.ll
vendor/llvm/dist/test/CodeGen/XCore/resources.ll
vendor/llvm/dist/test/MC/AsmParser/exprs.s
vendor/llvm/dist/test/MC/X86/x86-32.s
vendor/llvm/dist/test/MC/X86/x86-64.s
vendor/llvm/dist/test/Transforms/InstCombine/call.ll
vendor/llvm/dist/test/lit.cfg
vendor/llvm/dist/tools/bugpoint/OptimizerDriver.cpp
vendor/llvm/dist/tools/gold/gold-plugin.cpp
vendor/llvm/dist/tools/llvm-config/CMakeLists.txt
vendor/llvm/dist/tools/llvm-mc/Disassembler.cpp
vendor/llvm/dist/tools/lto/LTOCodeGenerator.cpp
vendor/llvm/dist/tools/lto/LTOCodeGenerator.h
vendor/llvm/dist/tools/lto/LTOModule.cpp
vendor/llvm/dist/tools/lto/lto.cpp
vendor/llvm/dist/unittests/ADT/APIntTest.cpp
vendor/llvm/dist/unittests/CMakeLists.txt
vendor/llvm/dist/unittests/Transforms/Utils/Local.cpp
vendor/llvm/dist/utils/FileCheck/CMakeLists.txt
vendor/llvm/dist/utils/FileUpdate/CMakeLists.txt
vendor/llvm/dist/utils/KillTheDoctor/CMakeLists.txt
vendor/llvm/dist/utils/TableGen/AsmWriterEmitter.cpp
vendor/llvm/dist/utils/TableGen/AsmWriterEmitter.h
vendor/llvm/dist/utils/TableGen/CMakeLists.txt
vendor/llvm/dist/utils/TableGen/ClangSACheckersEmitter.cpp
vendor/llvm/dist/utils/TableGen/X86RecognizableInstr.cpp
vendor/llvm/dist/utils/buildit/GNUmakefile
vendor/llvm/dist/utils/buildit/build_llvm
vendor/llvm/dist/utils/count/CMakeLists.txt
vendor/llvm/dist/utils/not/CMakeLists.txt
vendor/llvm/dist/utils/valgrind/i386-pc-linux-gnu.supp
Modified: vendor/llvm/dist/CMakeLists.txt
==============================================================================
--- vendor/llvm/dist/CMakeLists.txt Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/CMakeLists.txt Sat Feb 26 22:03:50 2011 (r219067)
@@ -12,6 +12,8 @@ set(CMAKE_MODULE_PATH
set(PACKAGE_VERSION "2.9")
+set_property(GLOBAL PROPERTY USE_FOLDERS ON)
+
include(VersionFromVCS)
option(LLVM_APPEND_VC_REV
@@ -238,7 +240,6 @@ endif()
option(LLVM_BUILD_TESTS
"Build LLVM unit tests. If OFF, just generate build targes." OFF)
-option(LLVM_INCLUDE_TESTS "Generate build targets for the LLVM unit tests." ON)
if( LLVM_INCLUDE_TESTS )
add_subdirectory(test)
add_subdirectory(utils/unittest)
Modified: vendor/llvm/dist/Makefile.rules
==============================================================================
--- vendor/llvm/dist/Makefile.rules Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/Makefile.rules Sat Feb 26 22:03:50 2011 (r219067)
@@ -973,7 +973,9 @@ $(NativeExportsFile): $(EXPORTED_SYMBOL_
$(Verb) echo "{" > $@
$(Verb) grep -q "\<" $< && echo " global:" >> $@ || :
$(Verb) sed -e 's/$$/;/' -e 's/^/ /' < $< >> $@
+ifneq ($(HOST_OS),OpenBSD)
$(Verb) echo " local: *;" >> $@
+endif
$(Verb) echo "};" >> $@
clean-local::
-$(Verb) $(RM) -f $(NativeExportsFile)
Modified: vendor/llvm/dist/cmake/modules/AddLLVM.cmake
==============================================================================
--- vendor/llvm/dist/cmake/modules/AddLLVM.cmake Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/cmake/modules/AddLLVM.cmake Sat Feb 26 22:03:50 2011 (r219067)
@@ -5,7 +5,6 @@ macro(add_llvm_library name)
llvm_process_sources( ALL_FILES ${ARGN} )
add_library( ${name} ${ALL_FILES} )
set_property( GLOBAL APPEND PROPERTY LLVM_LIBS ${name} )
- set_property( GLOBAL APPEND PROPERTY LLVM_LIB_TARGETS ${name} )
if( LLVM_COMMON_DEPENDS )
add_dependencies( ${name} ${LLVM_COMMON_DEPENDS} )
endif( LLVM_COMMON_DEPENDS )
@@ -25,6 +24,7 @@ macro(add_llvm_library name)
if( CURRENT_LLVM_TARGET )
add_dependencies(${name} ${CURRENT_LLVM_TARGET})
endif()
+ set_target_properties(${name} PROPERTIES FOLDER "Libraries")
endmacro(add_llvm_library name)
@@ -55,6 +55,8 @@ ${name} ignored.")
LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
endif()
+
+ set_target_properties(${name} PROPERTIES FOLDER "Loadable modules")
endmacro(add_llvm_loadable_module name)
@@ -95,6 +97,7 @@ macro(add_llvm_tool name)
if( LLVM_BUILD_TOOLS )
install(TARGETS ${name} RUNTIME DESTINATION bin)
endif()
+ set_target_properties(${name} PROPERTIES FOLDER "Tools")
endmacro(add_llvm_tool name)
@@ -107,9 +110,16 @@ macro(add_llvm_example name)
if( LLVM_BUILD_EXAMPLES )
install(TARGETS ${name} RUNTIME DESTINATION examples)
endif()
+ set_target_properties(${name} PROPERTIES FOLDER "Examples")
endmacro(add_llvm_example name)
+macro(add_llvm_utility name)
+ add_llvm_executable(${name} ${ARGN})
+ set_target_properties(${name} PROPERTIES FOLDER "Utils")
+endmacro(add_llvm_utility name)
+
+
macro(add_llvm_target target_name)
if( TABLEGEN_OUTPUT )
add_custom_target(${target_name}Table_gen
@@ -120,6 +130,7 @@ macro(add_llvm_target target_name)
add_llvm_library(LLVM${target_name} ${ARGN} ${TABLEGEN_OUTPUT})
if ( TABLEGEN_OUTPUT )
add_dependencies(LLVM${target_name} ${target_name}Table_gen)
+ set_target_properties(${target_name}Table_gen PROPERTIES FOLDER "Tablegenning")
endif (TABLEGEN_OUTPUT)
set( CURRENT_LLVM_TARGET LLVM${target_name} )
endmacro(add_llvm_target)
Modified: vendor/llvm/dist/cmake/modules/CMakeLists.txt
==============================================================================
--- vendor/llvm/dist/cmake/modules/CMakeLists.txt Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/cmake/modules/CMakeLists.txt Sat Feb 26 22:03:50 2011 (r219067)
@@ -1,7 +1,6 @@
set(llvm_cmake_builddir "${LLVM_BINARY_DIR}/share/llvm/cmake")
get_property(llvm_libs GLOBAL PROPERTY LLVM_LIBS)
-get_property(llvm_lib_targets GLOBAL PROPERTY LLVM_LIB_TARGETS)
configure_file(
LLVM.cmake
Modified: vendor/llvm/dist/cmake/modules/HandleLLVMOptions.cmake
==============================================================================
--- vendor/llvm/dist/cmake/modules/HandleLLVMOptions.cmake Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/cmake/modules/HandleLLVMOptions.cmake Sat Feb 26 22:03:50 2011 (r219067)
@@ -159,3 +159,4 @@ endif( MSVC )
add_llvm_definitions( -D__STDC_LIMIT_MACROS )
add_llvm_definitions( -D__STDC_CONSTANT_MACROS )
+option(LLVM_INCLUDE_TESTS "Generate build targets for the LLVM unit tests." ON)
Modified: vendor/llvm/dist/cmake/modules/LLVM.cmake
==============================================================================
--- vendor/llvm/dist/cmake/modules/LLVM.cmake Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/cmake/modules/LLVM.cmake Sat Feb 26 22:03:50 2011 (r219067)
@@ -4,14 +4,14 @@ set(LLVM_PACKAGE_VERSION @PACKAGE_VERSIO
set(LLVM_COMMON_DEPENDS @LLVM_COMMON_DEPENDS@)
-set(llvm_libs @llvm_libs@)
-
-set(llvm_lib_targets @llvm_lib_targets@)
+set_property( GLOBAL PROPERTY LLVM_LIBS "@llvm_libs@")
set(LLVM_ALL_TARGETS @LLVM_ALL_TARGETS@)
set(LLVM_TARGETS_TO_BUILD @LLVM_TARGETS_TO_BUILD@)
+set(TARGET_TRIPLE "@TARGET_TRIPLE@")
+
set(LLVM_TOOLS_BINARY_DIR @LLVM_TOOLS_BINARY_DIR@)
set(LLVM_ENABLE_THREADS @LLVM_ENABLE_THREADS@)
Modified: vendor/llvm/dist/docs/GettingStartedVS.html
==============================================================================
--- vendor/llvm/dist/docs/GettingStartedVS.html Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/docs/GettingStartedVS.html Sat Feb 26 22:03:50 2011 (r219067)
@@ -348,8 +348,6 @@ out:</p>
<ul>
<li><a href="http://llvm.org/">LLVM homepage</a></li>
<li><a href="http://llvm.org/doxygen/">LLVM doxygen tree</a></li>
- <li><a href="http://llvm.org/docs/Projects.html">Starting a Project
- that Uses LLVM</a></li>
</ul>
</div>
@@ -365,7 +363,7 @@ out:</p>
<a href="mailto:jeffc at jolt-lang.org">Jeff Cohen</a><br>
<a href="http://llvm.org">The LLVM Compiler Infrastructure</a><br>
- Last modified: $Date: 2011-02-09 05:19:28 +0100 (Wed, 09 Feb 2011) $
+ Last modified: $Date: 2011-02-20 16:34:12 +0100 (Sun, 20 Feb 2011) $
</address>
</body>
</html>
Modified: vendor/llvm/dist/docs/LangRef.html
==============================================================================
--- vendor/llvm/dist/docs/LangRef.html Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/docs/LangRef.html Sat Feb 26 22:03:50 2011 (r219067)
@@ -4575,12 +4575,12 @@ entry:
type <tt>ty2</tt>.</p>
<h5>Arguments:</h5>
-<p>The '<tt>trunc</tt>' instruction takes a <tt>value</tt> to trunc, which must
- be an <a href="#t_integer">integer</a> type, and a type that specifies the
- size and type of the result, which must be
- an <a href="#t_integer">integer</a> type. The bit size of <tt>value</tt> must
- be larger than the bit size of <tt>ty2</tt>. Equal sized types are not
- allowed.</p>
+<p>The '<tt>trunc</tt>' instruction takes a value to trunc, and a type to trunc it to.
+ Both types must be of <a href="#t_integer">integer</a> types, or vectors
+ of the same number of integers.
+ The bit size of the <tt>value</tt> must be larger than
+ the bit size of the destination type, <tt>ty2</tt>.
+ Equal sized types are not allowed.</p>
<h5>Semantics:</h5>
<p>The '<tt>trunc</tt>' instruction truncates the high order bits
@@ -4590,9 +4590,10 @@ entry:
<h5>Example:</h5>
<pre>
- %X = trunc i32 257 to i8 <i>; yields i8:1</i>
- %Y = trunc i32 123 to i1 <i>; yields i1:true</i>
- %Z = trunc i32 122 to i1 <i>; yields i1:false</i>
+ %X = trunc i32 257 to i8 <i>; yields i8:1</i>
+ %Y = trunc i32 123 to i1 <i>; yields i1:true</i>
+ %Z = trunc i32 122 to i1 <i>; yields i1:false</i>
+ %W = trunc <2 x i16> <i16 8, i16 7> to <2 x i8> <i>; yields <i8 8, i8 7></i>
</pre>
</div>
@@ -4614,10 +4615,11 @@ entry:
<h5>Arguments:</h5>
-<p>The '<tt>zext</tt>' instruction takes a value to cast, which must be of
- <a href="#t_integer">integer</a> type, and a type to cast it to, which must
- also be of <a href="#t_integer">integer</a> type. The bit size of the
- <tt>value</tt> must be smaller than the bit size of the destination type,
+<p>The '<tt>zext</tt>' instruction takes a value to cast, and a type to cast it to.
+ Both types must be of <a href="#t_integer">integer</a> types, or vectors
+ of the same number of integers.
+ The bit size of the <tt>value</tt> must be smaller than
+ the bit size of the destination type,
<tt>ty2</tt>.</p>
<h5>Semantics:</h5>
@@ -4630,6 +4632,7 @@ entry:
<pre>
%X = zext i32 257 to i64 <i>; yields i64:257</i>
%Y = zext i1 true to i32 <i>; yields i32:1</i>
+ %Z = zext <2 x i16> <i16 8, i16 7> to <2 x i32> <i>; yields <i32 8, i32 7></i>
</pre>
</div>
@@ -4649,10 +4652,11 @@ entry:
<p>The '<tt>sext</tt>' sign extends <tt>value</tt> to the type <tt>ty2</tt>.</p>
<h5>Arguments:</h5>
-<p>The '<tt>sext</tt>' instruction takes a value to cast, which must be of
- <a href="#t_integer">integer</a> type, and a type to cast it to, which must
- also be of <a href="#t_integer">integer</a> type. The bit size of the
- <tt>value</tt> must be smaller than the bit size of the destination type,
+<p>The '<tt>sext</tt>' instruction takes a value to cast, and a type to cast it to.
+ Both types must be of <a href="#t_integer">integer</a> types, or vectors
+ of the same number of integers.
+ The bit size of the <tt>value</tt> must be smaller than
+ the bit size of the destination type,
<tt>ty2</tt>.</p>
<h5>Semantics:</h5>
@@ -4666,6 +4670,7 @@ entry:
<pre>
%X = sext i8 -1 to i16 <i>; yields i16 :65535</i>
%Y = sext i1 true to i32 <i>; yields i32:-1</i>
+ %Z = sext <2 x i16> <i16 8, i16 7> to <2 x i32> <i>; yields <i32 8, i32 7></i>
</pre>
</div>
@@ -7781,7 +7786,7 @@ LLVM</a>.</p>
<a href="mailto:sabre at nondot.org">Chris Lattner</a><br>
<a href="http://llvm.org">The LLVM Compiler Infrastructure</a><br>
- Last modified: $Date: 2011-02-09 17:44:44 +0100 (Wed, 09 Feb 2011) $
+ Last modified: $Date: 2011-02-24 22:01:34 +0100 (Thu, 24 Feb 2011) $
</address>
</body>
Modified: vendor/llvm/dist/include/llvm/ADT/APInt.h
==============================================================================
--- vendor/llvm/dist/include/llvm/ADT/APInt.h Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/include/llvm/ADT/APInt.h Sat Feb 26 22:03:50 2011 (r219067)
@@ -1193,6 +1193,12 @@ public:
/// @brief Count the number of leading one bits.
unsigned countLeadingOnes() const;
+ /// Computes the number of leading bits of this APInt that are equal to its
+ /// sign bit.
+ unsigned getNumSignBits() const {
+ return isNegative() ? countLeadingOnes() : countLeadingZeros();
+ }
+
/// countTrailingZeros - This function is an APInt version of the
/// countTrailingZeros_{32,64} functions in MathExtras.h. It counts
/// the number of zeros from the least significant bit to the first set bit.
Modified: vendor/llvm/dist/include/llvm/ADT/ArrayRef.h
==============================================================================
--- vendor/llvm/dist/include/llvm/ADT/ArrayRef.h Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/include/llvm/ADT/ArrayRef.h Sat Feb 26 22:03:50 2011 (r219067)
@@ -64,7 +64,10 @@ namespace llvm {
/*implicit*/ ArrayRef(const std::vector<T> &Vec)
: Data(Vec.empty() ? (T*)0 : &Vec[0]), Length(Vec.size()) {}
- // TODO: C arrays.
+ /// Construct an ArrayRef from a C array.
+ template <size_t N>
+ /*implicit*/ ArrayRef(const T (&Arr)[N])
+ : Data(Arr), Length(N) {}
/// @}
/// @name Simple Operations
Modified: vendor/llvm/dist/include/llvm/ADT/ImmutableIntervalMap.h
==============================================================================
--- vendor/llvm/dist/include/llvm/ADT/ImmutableIntervalMap.h Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/include/llvm/ADT/ImmutableIntervalMap.h Sat Feb 26 22:03:50 2011 (r219067)
@@ -215,7 +215,7 @@ public:
ImmutableIntervalMap add(ImmutableIntervalMap Old,
key_type_ref K, data_type_ref D) {
- TreeTy *T = F.add(Old.Root, std::make_pair<key_type, data_type>(K, D));
+ TreeTy *T = F.add(Old.Root, std::pair<key_type, data_type>(K, D));
return ImmutableIntervalMap(F.getCanonicalTree(T));
}
Modified: vendor/llvm/dist/include/llvm/ADT/ImmutableMap.h
==============================================================================
--- vendor/llvm/dist/include/llvm/ADT/ImmutableMap.h Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/include/llvm/ADT/ImmutableMap.h Sat Feb 26 22:03:50 2011 (r219067)
@@ -108,7 +108,7 @@ public:
ImmutableMap getEmptyMap() { return ImmutableMap(F.getEmptyTree()); }
ImmutableMap add(ImmutableMap Old, key_type_ref K, data_type_ref D) {
- TreeTy *T = F.add(Old.Root, std::make_pair<key_type,data_type>(K,D));
+ TreeTy *T = F.add(Old.Root, std::pair<key_type,data_type>(K,D));
return ImmutableMap(Canonicalize ? F.getCanonicalTree(T): T);
}
Modified: vendor/llvm/dist/include/llvm/Analysis/DIBuilder.h
==============================================================================
--- vendor/llvm/dist/include/llvm/Analysis/DIBuilder.h Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/include/llvm/Analysis/DIBuilder.h Sat Feb 26 22:03:50 2011 (r219067)
@@ -58,7 +58,7 @@ namespace llvm {
const MDNode *getCU() { return TheCU; }
enum ComplexAddrKind { OpPlus=1, OpDeref };
- /// CreateCompileUnit - A CompileUnit provides an anchor for all debugging
+ /// createCompileUnit - A CompileUnit provides an anchor for all debugging
/// information generated during this instance of compilation.
/// @param Lang Source programming language, eg. dwarf::DW_LANG_C99
/// @param File File name
@@ -72,67 +72,67 @@ namespace llvm {
/// by a tool analyzing generated debugging information.
/// @param RV This indicates runtime version for languages like
/// Objective-C.
- void CreateCompileUnit(unsigned Lang, StringRef File, StringRef Dir,
+ void createCompileUnit(unsigned Lang, StringRef File, StringRef Dir,
StringRef Producer,
bool isOptimized, StringRef Flags, unsigned RV);
- /// CreateFile - Create a file descriptor to hold debugging information
+ /// createFile - Create a file descriptor to hold debugging information
/// for a file.
- DIFile CreateFile(StringRef Filename, StringRef Directory);
+ DIFile createFile(StringRef Filename, StringRef Directory);
- /// CreateEnumerator - Create a single enumerator value.
- DIEnumerator CreateEnumerator(StringRef Name, uint64_t Val);
+ /// createEnumerator - Create a single enumerator value.
+ DIEnumerator createEnumerator(StringRef Name, uint64_t Val);
- /// CreateBasicType - Create debugging information entry for a basic
+ /// createBasicType - Create debugging information entry for a basic
/// type.
/// @param Name Type name.
/// @param SizeInBits Size of the type.
/// @param AlignInBits Type alignment.
/// @param Encoding DWARF encoding code, e.g. dwarf::DW_ATE_float.
- DIType CreateBasicType(StringRef Name, uint64_t SizeInBits,
+ DIType createBasicType(StringRef Name, uint64_t SizeInBits,
uint64_t AlignInBits, unsigned Encoding);
- /// CreateQualifiedType - Create debugging information entry for a qualified
+ /// createQualifiedType - Create debugging information entry for a qualified
/// type, e.g. 'const int'.
/// @param Tag Tag identifing type, e.g. dwarf::TAG_volatile_type
/// @param FromTy Base Type.
- DIType CreateQualifiedType(unsigned Tag, DIType FromTy);
+ DIType createQualifiedType(unsigned Tag, DIType FromTy);
- /// CreatePointerType - Create debugging information entry for a pointer.
+ /// createPointerType - Create debugging information entry for a pointer.
/// @param PointeeTy Type pointed by this pointer.
/// @param SizeInBits Size.
/// @param AlignInBits Alignment. (optional)
/// @param Name Pointer type name. (optional)
- DIType CreatePointerType(DIType PointeeTy, uint64_t SizeInBits,
+ DIType createPointerType(DIType PointeeTy, uint64_t SizeInBits,
uint64_t AlignInBits = 0,
StringRef Name = StringRef());
- /// CreateReferenceType - Create debugging information entry for a c++
+ /// createReferenceType - Create debugging information entry for a c++
/// style reference.
- DIType CreateReferenceType(DIType RTy);
+ DIType createReferenceType(DIType RTy);
- /// CreateTypedef - Create debugging information entry for a typedef.
+ /// createTypedef - Create debugging information entry for a typedef.
/// @param Ty Original type.
/// @param Name Typedef name.
/// @param File File where this type is defined.
/// @param LineNo Line number.
- DIType CreateTypedef(DIType Ty, StringRef Name, DIFile File,
+ DIType createTypedef(DIType Ty, StringRef Name, DIFile File,
unsigned LineNo);
- /// CreateFriend - Create debugging information entry for a 'friend'.
- DIType CreateFriend(DIType Ty, DIType FriendTy);
+ /// createFriend - Create debugging information entry for a 'friend'.
+ DIType createFriend(DIType Ty, DIType FriendTy);
- /// CreateInheritance - Create debugging information entry to establish
+ /// createInheritance - Create debugging information entry to establish
/// inheritance relationship between two types.
/// @param Ty Original type.
/// @param BaseTy Base type. Ty is inherits from base.
/// @param BaseOffset Base offset.
/// @param Flags Flags to describe inheritance attribute,
/// e.g. private
- DIType CreateInheritance(DIType Ty, DIType BaseTy, uint64_t BaseOffset,
+ DIType createInheritance(DIType Ty, DIType BaseTy, uint64_t BaseOffset,
unsigned Flags);
- /// CreateMemberType - Create debugging information entry for a member.
+ /// createMemberType - Create debugging information entry for a member.
/// @param Name Member name.
/// @param File File where this member is defined.
/// @param LineNo Line number.
@@ -141,12 +141,12 @@ namespace llvm {
/// @param OffsetInBits Member offset.
/// @param Flags Flags to encode member attribute, e.g. private
/// @param Ty Parent type.
- DIType CreateMemberType(StringRef Name, DIFile File,
+ DIType createMemberType(StringRef Name, DIFile File,
unsigned LineNo, uint64_t SizeInBits,
uint64_t AlignInBits, uint64_t OffsetInBits,
unsigned Flags, DIType Ty);
- /// CreateClassType - Create debugging information entry for a class.
+ /// createClassType - Create debugging information entry for a class.
/// @param Scope Scope in which this class is defined.
/// @param Name class name.
/// @param File File where this member is defined.
@@ -161,14 +161,14 @@ namespace llvm {
/// DW_AT_containing_type. See DWARF documentation
/// for more info.
/// @param TemplateParms Template type parameters.
- DIType CreateClassType(DIDescriptor Scope, StringRef Name, DIFile File,
+ DIType createClassType(DIDescriptor Scope, StringRef Name, DIFile File,
unsigned LineNumber, uint64_t SizeInBits,
uint64_t AlignInBits, uint64_t OffsetInBits,
unsigned Flags, DIType DerivedFrom,
DIArray Elements, MDNode *VTableHolder = 0,
MDNode *TemplateParms = 0);
- /// CreateStructType - Create debugging information entry for a struct.
+ /// createStructType - Create debugging information entry for a struct.
/// @param Scope Scope in which this struct is defined.
/// @param Name Struct name.
/// @param File File where this member is defined.
@@ -178,12 +178,12 @@ namespace llvm {
/// @param Flags Flags to encode member attribute, e.g. private
/// @param Elements Struct elements.
/// @param RunTimeLang Optional parameter, Objective-C runtime version.
- DIType CreateStructType(DIDescriptor Scope, StringRef Name, DIFile File,
+ DIType createStructType(DIDescriptor Scope, StringRef Name, DIFile File,
unsigned LineNumber, uint64_t SizeInBits,
uint64_t AlignInBits, unsigned Flags,
DIArray Elements, unsigned RunTimeLang = 0);
- /// CreateUnionType - Create debugging information entry for an union.
+ /// createUnionType - Create debugging information entry for an union.
/// @param Scope Scope in which this union is defined.
/// @param Name Union name.
/// @param File File where this member is defined.
@@ -193,12 +193,12 @@ namespace llvm {
/// @param Flags Flags to encode member attribute, e.g. private
/// @param Elements Union elements.
/// @param RunTimeLang Optional parameter, Objective-C runtime version.
- DIType CreateUnionType(DIDescriptor Scope, StringRef Name, DIFile File,
+ DIType createUnionType(DIDescriptor Scope, StringRef Name, DIFile File,
unsigned LineNumber, uint64_t SizeInBits,
uint64_t AlignInBits, unsigned Flags,
DIArray Elements, unsigned RunTimeLang = 0);
- /// CreateTemplateTypeParameter - Create debugging information for template
+ /// createTemplateTypeParameter - Create debugging information for template
/// type parameter.
/// @param Scope Scope in which this type is defined.
/// @param Name Type parameter name.
@@ -207,11 +207,11 @@ namespace llvm {
/// @param LineNo Line number.
/// @param ColumnNo Column Number.
DITemplateTypeParameter
- CreateTemplateTypeParameter(DIDescriptor Scope, StringRef Name, DIType Ty,
+ createTemplateTypeParameter(DIDescriptor Scope, StringRef Name, DIType Ty,
MDNode *File = 0, unsigned LineNo = 0,
unsigned ColumnNo = 0);
- /// CreateTemplateValueParameter - Create debugging information for template
+ /// createTemplateValueParameter - Create debugging information for template
/// value parameter.
/// @param Scope Scope in which this type is defined.
/// @param Name Value parameter name.
@@ -221,28 +221,28 @@ namespace llvm {
/// @param LineNo Line number.
/// @param ColumnNo Column Number.
DITemplateValueParameter
- CreateTemplateValueParameter(DIDescriptor Scope, StringRef Name, DIType Ty,
+ createTemplateValueParameter(DIDescriptor Scope, StringRef Name, DIType Ty,
uint64_t Value,
MDNode *File = 0, unsigned LineNo = 0,
unsigned ColumnNo = 0);
- /// CreateArrayType - Create debugging information entry for an array.
+ /// createArrayType - Create debugging information entry for an array.
/// @param Size Array size.
/// @param AlignInBits Alignment.
/// @param Ty Element type.
/// @param Subscripts Subscripts.
- DIType CreateArrayType(uint64_t Size, uint64_t AlignInBits,
+ DIType createArrayType(uint64_t Size, uint64_t AlignInBits,
DIType Ty, DIArray Subscripts);
- /// CreateVectorType - Create debugging information entry for a vector type.
+ /// createVectorType - Create debugging information entry for a vector type.
/// @param Size Array size.
/// @param AlignInBits Alignment.
/// @param Ty Element type.
/// @param Subscripts Subscripts.
- DIType CreateVectorType(uint64_t Size, uint64_t AlignInBits,
+ DIType createVectorType(uint64_t Size, uint64_t AlignInBits,
DIType Ty, DIArray Subscripts);
- /// CreateEnumerationType - Create debugging information entry for an
+ /// createEnumerationType - Create debugging information entry for an
/// enumeration.
/// @param Scope Scope in which this enumeration is defined.
/// @param Name Union name.
@@ -251,40 +251,40 @@ namespace llvm {
/// @param SizeInBits Member size.
/// @param AlignInBits Member alignment.
/// @param Elements Enumeration elements.
- DIType CreateEnumerationType(DIDescriptor Scope, StringRef Name,
+ DIType createEnumerationType(DIDescriptor Scope, StringRef Name,
DIFile File, unsigned LineNumber,
uint64_t SizeInBits,
uint64_t AlignInBits, DIArray Elements);
- /// CreateSubroutineType - Create subroutine type.
+ /// createSubroutineType - Create subroutine type.
/// @param File File in which this subroutine is defined.
/// @param ParamterTypes An array of subroutine parameter types. This
/// includes return type at 0th index.
- DIType CreateSubroutineType(DIFile File, DIArray ParameterTypes);
+ DIType createSubroutineType(DIFile File, DIArray ParameterTypes);
- /// CreateArtificialType - Create a new DIType with "artificial" flag set.
- DIType CreateArtificialType(DIType Ty);
+ /// createArtificialType - Create a new DIType with "artificial" flag set.
+ DIType createArtificialType(DIType Ty);
- /// CreateTemporaryType - Create a temporary forward-declared type.
- DIType CreateTemporaryType();
- DIType CreateTemporaryType(DIFile F);
+ /// createTemporaryType - Create a temporary forward-declared type.
+ DIType createTemporaryType();
+ DIType createTemporaryType(DIFile F);
- /// RetainType - Retain DIType in a module even if it is not referenced
+ /// retainType - Retain DIType in a module even if it is not referenced
/// through debug info anchors.
- void RetainType(DIType T);
+ void retainType(DIType T);
- /// CreateUnspecifiedParameter - Create unspeicified type descriptor
+ /// createUnspecifiedParameter - Create unspeicified type descriptor
/// for a subroutine type.
- DIDescriptor CreateUnspecifiedParameter();
+ DIDescriptor createUnspecifiedParameter();
- /// GetOrCreateArray - Get a DIArray, create one if required.
- DIArray GetOrCreateArray(Value *const *Elements, unsigned NumElements);
+ /// getOrCreateArray - Get a DIArray, create one if required.
+ DIArray getOrCreateArray(Value *const *Elements, unsigned NumElements);
- /// GetOrCreateSubrange - Create a descriptor for a value range. This
+ /// getOrCreateSubrange - Create a descriptor for a value range. This
/// implicitly uniques the values returned.
- DISubrange GetOrCreateSubrange(int64_t Lo, int64_t Hi);
+ DISubrange getOrCreateSubrange(int64_t Lo, int64_t Hi);
- /// CreateGlobalVariable - Create a new descriptor for the specified global.
+ /// createGlobalVariable - Create a new descriptor for the specified global.
/// @param Name Name of the variable.
/// @param File File where this variable is defined.
/// @param LineNo Line number.
@@ -293,11 +293,11 @@ namespace llvm {
/// externally visible or not.
/// @param Val llvm::Value of the variable.
DIGlobalVariable
- CreateGlobalVariable(StringRef Name, DIFile File, unsigned LineNo,
+ createGlobalVariable(StringRef Name, DIFile File, unsigned LineNo,
DIType Ty, bool isLocalToUnit, llvm::Value *Val);
- /// CreateStaticVariable - Create a new descriptor for the specified
+ /// createStaticVariable - Create a new descriptor for the specified
/// variable.
/// @param Conext Variable scope.
/// @param Name Name of the variable.
@@ -309,12 +309,12 @@ namespace llvm {
/// externally visible or not.
/// @param Val llvm::Value of the variable.
DIGlobalVariable
- CreateStaticVariable(DIDescriptor Context, StringRef Name,
+ createStaticVariable(DIDescriptor Context, StringRef Name,
StringRef LinkageName, DIFile File, unsigned LineNo,
DIType Ty, bool isLocalToUnit, llvm::Value *Val);
- /// CreateLocalVariable - Create a new descriptor for the specified
+ /// createLocalVariable - Create a new descriptor for the specified
/// local variable.
/// @param Tag Dwarf TAG. Usually DW_TAG_auto_variable or
/// DW_TAG_arg_variable.
@@ -326,14 +326,14 @@ namespace llvm {
/// @param AlwaysPreserve Boolean. Set to true if debug info for this
/// variable should be preserved in optimized build.
/// @param Flags Flags, e.g. artificial variable.
- DIVariable CreateLocalVariable(unsigned Tag, DIDescriptor Scope,
+ DIVariable createLocalVariable(unsigned Tag, DIDescriptor Scope,
StringRef Name,
DIFile File, unsigned LineNo,
DIType Ty, bool AlwaysPreserve = false,
unsigned Flags = 0);
- /// CreateComplexVariable - Create a new descriptor for the specified
+ /// createComplexVariable - Create a new descriptor for the specified
/// variable which has a complex address expression for its address.
/// @param Tag Dwarf TAG. Usually DW_TAG_auto_variable or
/// DW_TAG_arg_variable.
@@ -344,12 +344,12 @@ namespace llvm {
/// @param Ty Variable Type
/// @param Addr A pointer to a vector of complex address operations.
/// @param NumAddr Num of address operations in the vector.
- DIVariable CreateComplexVariable(unsigned Tag, DIDescriptor Scope,
+ DIVariable createComplexVariable(unsigned Tag, DIDescriptor Scope,
StringRef Name, DIFile F, unsigned LineNo,
DIType Ty, Value *const *Addr,
unsigned NumAddr);
- /// CreateFunction - Create a new descriptor for the specified subprogram.
+ /// createFunction - Create a new descriptor for the specified subprogram.
/// See comments in DISubprogram for descriptions of these fields.
/// @param Scope Function scope.
/// @param Name Function name.
@@ -363,7 +363,7 @@ namespace llvm {
/// This flags are used to emit dwarf attributes.
/// @param isOptimized True if optimization is ON.
/// @param Fn llvm::Function pointer.
- DISubprogram CreateFunction(DIDescriptor Scope, StringRef Name,
+ DISubprogram createFunction(DIDescriptor Scope, StringRef Name,
StringRef LinkageName,
DIFile File, unsigned LineNo,
DIType Ty, bool isLocalToUnit,
@@ -372,7 +372,7 @@ namespace llvm {
bool isOptimized = false,
Function *Fn = 0);
- /// CreateMethod - Create a new descriptor for the specified C++ method.
+ /// createMethod - Create a new descriptor for the specified C++ method.
/// See comments in DISubprogram for descriptions of these fields.
/// @param Scope Function scope.
/// @param Name Function name.
@@ -390,7 +390,7 @@ namespace llvm {
/// This flags are used to emit dwarf attributes.
/// @param isOptimized True if optimization is ON.
/// @param Fn llvm::Function pointer.
- DISubprogram CreateMethod(DIDescriptor Scope, StringRef Name,
+ DISubprogram createMethod(DIDescriptor Scope, StringRef Name,
StringRef LinkageName,
DIFile File, unsigned LineNo,
DIType Ty, bool isLocalToUnit,
@@ -401,55 +401,55 @@ namespace llvm {
bool isOptimized = false,
Function *Fn = 0);
- /// CreateNameSpace - This creates new descriptor for a namespace
+ /// createNameSpace - This creates new descriptor for a namespace
/// with the specified parent scope.
/// @param Scope Namespace scope
/// @param Name Name of this namespace
/// @param File Source file
/// @param LineNo Line number
- DINameSpace CreateNameSpace(DIDescriptor Scope, StringRef Name,
+ DINameSpace createNameSpace(DIDescriptor Scope, StringRef Name,
DIFile File, unsigned LineNo);
- /// CreateLexicalBlock - This creates a descriptor for a lexical block
+ /// createLexicalBlock - This creates a descriptor for a lexical block
/// with the specified parent context.
/// @param Scope Parent lexical scope.
/// @param File Source file
/// @param Line Line number
/// @param Col Column number
- DILexicalBlock CreateLexicalBlock(DIDescriptor Scope, DIFile File,
+ DILexicalBlock createLexicalBlock(DIDescriptor Scope, DIFile File,
unsigned Line, unsigned Col);
- /// InsertDeclare - Insert a new llvm.dbg.declare intrinsic call.
+ /// insertDeclare - Insert a new llvm.dbg.declare intrinsic call.
/// @param Storage llvm::Value of the variable
/// @param VarInfo Variable's debug info descriptor.
/// @param InsertAtEnd Location for the new intrinsic.
- Instruction *InsertDeclare(llvm::Value *Storage, DIVariable VarInfo,
+ Instruction *insertDeclare(llvm::Value *Storage, DIVariable VarInfo,
BasicBlock *InsertAtEnd);
- /// InsertDeclare - Insert a new llvm.dbg.declare intrinsic call.
+ /// insertDeclare - Insert a new llvm.dbg.declare intrinsic call.
/// @param Storage llvm::Value of the variable
/// @param VarInfo Variable's debug info descriptor.
/// @param InsertBefore Location for the new intrinsic.
- Instruction *InsertDeclare(llvm::Value *Storage, DIVariable VarInfo,
+ Instruction *insertDeclare(llvm::Value *Storage, DIVariable VarInfo,
Instruction *InsertBefore);
- /// InsertDbgValueIntrinsic - Insert a new llvm.dbg.value intrinsic call.
+ /// insertDbgValueIntrinsic - Insert a new llvm.dbg.value intrinsic call.
/// @param Val llvm::Value of the variable
/// @param Offset Offset
/// @param VarInfo Variable's debug info descriptor.
/// @param InsertAtEnd Location for the new intrinsic.
- Instruction *InsertDbgValueIntrinsic(llvm::Value *Val, uint64_t Offset,
+ Instruction *insertDbgValueIntrinsic(llvm::Value *Val, uint64_t Offset,
DIVariable VarInfo,
BasicBlock *InsertAtEnd);
- /// InsertDbgValueIntrinsic - Insert a new llvm.dbg.value intrinsic call.
+ /// insertDbgValueIntrinsic - Insert a new llvm.dbg.value intrinsic call.
/// @param Val llvm::Value of the variable
/// @param Offset Offset
/// @param VarInfo Variable's debug info descriptor.
/// @param InsertBefore Location for the new intrinsic.
- Instruction *InsertDbgValueIntrinsic(llvm::Value *Val, uint64_t Offset,
+ Instruction *insertDbgValueIntrinsic(llvm::Value *Val, uint64_t Offset,
DIVariable VarInfo,
Instruction *InsertBefore);
Modified: vendor/llvm/dist/include/llvm/CMakeLists.txt
==============================================================================
--- vendor/llvm/dist/include/llvm/CMakeLists.txt Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/include/llvm/CMakeLists.txt Sat Feb 26 22:03:50 2011 (r219067)
@@ -4,6 +4,7 @@ tablegen(Intrinsics.gen -gen-intrinsic)
add_custom_target(intrinsics_gen ALL
DEPENDS ${llvm_builded_incs_dir}/Intrinsics.gen)
+set_target_properties(intrinsics_gen PROPERTIES FOLDER "Tablegenning")
set(LLVM_COMMON_DEPENDS ${LLVM_COMMON_DEPENDS} intrinsics_gen PARENT_SCOPE)
@@ -16,4 +17,5 @@ if( MSVC_IDE OR XCODE )
# We need at least one source file:
${LLVM_MAIN_SRC_DIR}/lib/Transforms/Hello/Hello.cpp
${headers})
+ set_target_properties(llvm_headers_do_not_build PROPERTIES FOLDER "Misc")
endif()
Modified: vendor/llvm/dist/include/llvm/CodeGen/AsmPrinter.h
==============================================================================
--- vendor/llvm/dist/include/llvm/CodeGen/AsmPrinter.h Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/include/llvm/CodeGen/AsmPrinter.h Sat Feb 26 22:03:50 2011 (r219067)
@@ -445,7 +445,8 @@ namespace llvm {
/// EmitVisibility - This emits visibility information about symbol, if
/// this is suported by the target.
- void EmitVisibility(MCSymbol *Sym, unsigned Visibility) const;
+ void EmitVisibility(MCSymbol *Sym, unsigned Visibility,
+ bool IsDefinition = true) const;
void EmitLinkage(unsigned Linkage, MCSymbol *GVSym) const;
Modified: vendor/llvm/dist/include/llvm/CodeGen/FunctionLoweringInfo.h
==============================================================================
--- vendor/llvm/dist/include/llvm/CodeGen/FunctionLoweringInfo.h Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/include/llvm/CodeGen/FunctionLoweringInfo.h Sat Feb 26 22:03:50 2011 (r219067)
@@ -101,13 +101,16 @@ public:
#endif
struct LiveOutInfo {
- unsigned NumSignBits;
+ unsigned NumSignBits : 31;
+ bool IsValid : 1;
APInt KnownOne, KnownZero;
- LiveOutInfo() : NumSignBits(0), KnownOne(1, 0), KnownZero(1, 0) {}
+ LiveOutInfo() : NumSignBits(0), IsValid(true), KnownOne(1, 0),
+ KnownZero(1, 0) {}
};
-
- /// LiveOutRegInfo - Information about live out vregs.
- IndexedMap<LiveOutInfo, VirtReg2IndexFunctor> LiveOutRegInfo;
+
+ /// VisitedBBs - The set of basic blocks visited thus far by instruction
+ /// selection.
+ DenseSet<const BasicBlock*> VisitedBBs;
/// PHINodesToUpdate - A list of phi instructions whose operand list will
/// be updated after processing the current basic block.
@@ -143,12 +146,62 @@ public:
return R = CreateRegs(V->getType());
}
+ /// GetLiveOutRegInfo - Gets LiveOutInfo for a register, returning NULL if the
+ /// register is a PHI destination and the PHI's LiveOutInfo is not valid.
+ const LiveOutInfo *GetLiveOutRegInfo(unsigned Reg) {
+ if (!LiveOutRegInfo.inBounds(Reg))
+ return NULL;
+
+ const LiveOutInfo *LOI = &LiveOutRegInfo[Reg];
+ if (!LOI->IsValid)
+ return NULL;
+
+ return LOI;
+ }
+
+ /// GetLiveOutRegInfo - Gets LiveOutInfo for a register, returning NULL if the
+ /// register is a PHI destination and the PHI's LiveOutInfo is not valid. If
+ /// the register's LiveOutInfo is for a smaller bit width, it is extended to
+ /// the larger bit width by zero extension. The bit width must be no smaller
+ /// than the LiveOutInfo's existing bit width.
+ const LiveOutInfo *GetLiveOutRegInfo(unsigned Reg, unsigned BitWidth);
+
+ /// AddLiveOutRegInfo - Adds LiveOutInfo for a register.
+ void AddLiveOutRegInfo(unsigned Reg, unsigned NumSignBits,
+ const APInt &KnownZero, const APInt &KnownOne) {
+ // Only install this information if it tells us something.
+ if (NumSignBits == 1 && KnownZero == 0 && KnownOne == 0)
+ return;
+
+ LiveOutRegInfo.grow(Reg);
+ LiveOutInfo &LOI = LiveOutRegInfo[Reg];
+ LOI.NumSignBits = NumSignBits;
+ LOI.KnownOne = KnownOne;
+ LOI.KnownZero = KnownZero;
+ }
+
+ /// ComputePHILiveOutRegInfo - Compute LiveOutInfo for a PHI's destination
+ /// register based on the LiveOutInfo of its operands.
+ void ComputePHILiveOutRegInfo(const PHINode*);
+
+ /// InvalidatePHILiveOutRegInfo - Invalidates a PHI's LiveOutInfo, to be
+ /// called when a block is visited before all of its predecessors.
+ void InvalidatePHILiveOutRegInfo(const PHINode *PN) {
+ unsigned Reg = ValueMap[PN];
+ LiveOutRegInfo.grow(Reg);
+ LiveOutRegInfo[Reg].IsValid = false;
+ }
+
/// setByValArgumentFrameIndex - Record frame index for the byval
/// argument.
void setByValArgumentFrameIndex(const Argument *A, int FI);
/// getByValArgumentFrameIndex - Get frame index for the byval argument.
int getByValArgumentFrameIndex(const Argument *A);
+
+private:
+ /// LiveOutRegInfo - Information about live out vregs.
+ IndexedMap<LiveOutInfo, VirtReg2IndexFunctor> LiveOutRegInfo;
};
/// AddCatchInfo - Extract the personality and type infos from an eh.selector
Modified: vendor/llvm/dist/include/llvm/CodeGen/MachineConstantPool.h
==============================================================================
--- vendor/llvm/dist/include/llvm/CodeGen/MachineConstantPool.h Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/include/llvm/CodeGen/MachineConstantPool.h Sat Feb 26 22:03:50 2011 (r219067)
@@ -16,6 +16,7 @@
#ifndef LLVM_CODEGEN_MACHINECONSTANTPOOL_H
#define LLVM_CODEGEN_MACHINECONSTANTPOOL_H
+#include "llvm/ADT/DenseSet.h"
#include <cassert>
#include <climits>
#include <vector>
@@ -130,6 +131,8 @@ class MachineConstantPool {
const TargetData *TD; ///< The machine's TargetData.
unsigned PoolAlignment; ///< The alignment for the pool.
std::vector<MachineConstantPoolEntry> Constants; ///< The pool of constants.
+ /// MachineConstantPoolValues that use an existing MachineConstantPoolEntry.
+ DenseSet<MachineConstantPoolValue*> MachineCPVsSharingEntries;
public:
/// @brief The only constructor.
explicit MachineConstantPool(const TargetData *td)
Modified: vendor/llvm/dist/include/llvm/CodeGen/MachineFunction.h
==============================================================================
--- vendor/llvm/dist/include/llvm/CodeGen/MachineFunction.h Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/include/llvm/CodeGen/MachineFunction.h Sat Feb 26 22:03:50 2011 (r219067)
@@ -281,7 +281,7 @@ public:
/// addLiveIn - Add the specified physical register as a live-in value and
/// create a corresponding virtual register for it.
- unsigned addLiveIn(unsigned PReg, const TargetRegisterClass *RC, DebugLoc DL);
+ unsigned addLiveIn(unsigned PReg, const TargetRegisterClass *RC);
//===--------------------------------------------------------------------===//
// BasicBlock accessor functions.
Modified: vendor/llvm/dist/include/llvm/CodeGen/MachineRegisterInfo.h
==============================================================================
--- vendor/llvm/dist/include/llvm/CodeGen/MachineRegisterInfo.h Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/include/llvm/CodeGen/MachineRegisterInfo.h Sat Feb 26 22:03:50 2011 (r219067)
@@ -17,8 +17,6 @@
#include "llvm/Target/TargetRegisterInfo.h"
#include "llvm/ADT/BitVector.h"
#include "llvm/ADT/IndexedMap.h"
-#include "llvm/ADT/DenseMap.h"
-#include "llvm/Support/DebugLoc.h"
#include <vector>
namespace llvm {
@@ -66,10 +64,7 @@ class MachineRegisterInfo {
/// stored in the second element.
std::vector<std::pair<unsigned, unsigned> > LiveIns;
std::vector<unsigned> LiveOuts;
-
- /// LiveInLocs - Keep track of location livein registers.
- DenseMap<unsigned, DebugLoc> LiveInLocs;
-
+
MachineRegisterInfo(const MachineRegisterInfo&); // DO NOT IMPLEMENT
void operator=(const MachineRegisterInfo&); // DO NOT IMPLEMENT
public:
@@ -276,12 +271,7 @@ public:
LiveIns.push_back(std::make_pair(Reg, vreg));
}
void addLiveOut(unsigned Reg) { LiveOuts.push_back(Reg); }
-
- /// addLiveInLoc - Keep track of location info for live in reg.
- void addLiveInLoc(unsigned VReg, DebugLoc DL) {
- LiveInLocs[VReg] = DL;
- }
-
+
// Iteration support for live in/out sets. These sets are kept in sorted
// order by their register number.
typedef std::vector<std::pair<unsigned,unsigned> >::const_iterator
Modified: vendor/llvm/dist/include/llvm/IntrinsicsXCore.td
==============================================================================
--- vendor/llvm/dist/include/llvm/IntrinsicsXCore.td Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/include/llvm/IntrinsicsXCore.td Sat Feb 26 22:03:50 2011 (r219067)
@@ -33,4 +33,23 @@ let TargetPrefix = "xcore" in { // All
[NoCapture<0>]>;
def int_xcore_setc : Intrinsic<[],[llvm_anyptr_ty, llvm_i32_ty],
[NoCapture<0>]>;
+ def int_xcore_inshr : Intrinsic<[llvm_i32_ty],[llvm_anyptr_ty, llvm_i32_ty],
+ [NoCapture<0>]>;
+ def int_xcore_outshr : Intrinsic<[llvm_i32_ty],[llvm_anyptr_ty, llvm_i32_ty],
+ [NoCapture<0>]>;
+ def int_xcore_setpt : Intrinsic<[],[llvm_anyptr_ty, llvm_i32_ty],
+ [NoCapture<0>]>;
+ def int_xcore_getts : Intrinsic<[llvm_i32_ty],[llvm_anyptr_ty],
+ [NoCapture<0>]>;
+ def int_xcore_syncr : Intrinsic<[],[llvm_anyptr_ty],
+ [NoCapture<0>]>;
+ def int_xcore_settw : Intrinsic<[],[llvm_anyptr_ty, llvm_i32_ty],
+ [NoCapture<0>]>;
+ def int_xcore_setv : Intrinsic<[],[llvm_anyptr_ty, llvm_ptr_ty],
+ [NoCapture<0>]>;
+ def int_xcore_eeu : Intrinsic<[],[llvm_anyptr_ty], [NoCapture<0>]>;
+
+ // Intrinsics for events.
+ def int_xcore_waitevent : Intrinsic<[llvm_ptr_ty],[], [IntrReadMem]>;
+ def int_xcore_clre : Intrinsic<[],[],[]>;
}
Modified: vendor/llvm/dist/include/llvm/MC/MCAsmInfo.h
==============================================================================
--- vendor/llvm/dist/include/llvm/MC/MCAsmInfo.h Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/include/llvm/MC/MCAsmInfo.h Sat Feb 26 22:03:50 2011 (r219067)
@@ -246,6 +246,11 @@ namespace llvm {
/// declare a symbol as having hidden visibility.
MCSymbolAttr HiddenVisibilityAttr; // Defaults to MCSA_Hidden.
+ /// HiddenDeclarationVisibilityAttr - This attribute, if not MCSA_Invalid,
+ /// is used to declare an undefined symbol as having hidden visibility.
+ MCSymbolAttr HiddenDeclarationVisibilityAttr; // Defaults to MCSA_Hidden.
+
+
/// ProtectedVisibilityAttr - This attribute, if not MCSA_Invalid, is used
/// to declare a symbol as having protected visibility.
MCSymbolAttr ProtectedVisibilityAttr; // Defaults to MCSA_Protected
@@ -425,6 +430,9 @@ namespace llvm {
const char *getLinkOnceDirective() const { return LinkOnceDirective; }
MCSymbolAttr getHiddenVisibilityAttr() const { return HiddenVisibilityAttr;}
+ MCSymbolAttr getHiddenDeclarationVisibilityAttr() const {
+ return HiddenDeclarationVisibilityAttr;
+ }
MCSymbolAttr getProtectedVisibilityAttr() const {
return ProtectedVisibilityAttr;
}
Modified: vendor/llvm/dist/include/llvm/MC/MCParser/MCAsmParserExtension.h
==============================================================================
--- vendor/llvm/dist/include/llvm/MC/MCParser/MCAsmParserExtension.h Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/include/llvm/MC/MCParser/MCAsmParserExtension.h Sat Feb 26 22:03:50 2011 (r219067)
@@ -38,6 +38,8 @@ protected:
return (Obj->*Handler)(Directive, DirectiveLoc);
}
+ bool BracketExpressionsSupported;
+
public:
virtual ~MCAsmParserExtension();
@@ -68,6 +70,8 @@ public:
const AsmToken &getTok() { return getParser().getTok(); }
+ bool HasBracketExpressions() const { return BracketExpressionsSupported; }
+
/// @}
};
Modified: vendor/llvm/dist/include/llvm/MC/MCStreamer.h
==============================================================================
--- vendor/llvm/dist/include/llvm/MC/MCStreamer.h Sat Feb 26 21:27:41 2011 (r219066)
+++ vendor/llvm/dist/include/llvm/MC/MCStreamer.h Sat Feb 26 22:03:50 2011 (r219067)
@@ -57,13 +57,10 @@ namespace llvm {
MCDwarfFrameInfo *getCurrentFrameInfo();
void EnsureValidFrame();
- /// CurSectionStack - This is stack of CurSection values saved by
- /// PushSection.
- SmallVector<const MCSection *, 4> CurSectionStack;
-
- /// PrevSectionStack - This is stack of PrevSection values saved by
- /// PushSection.
- SmallVector<const MCSection *, 4> PrevSectionStack;
+ /// SectionStack - This is stack of current and previous section
+ /// values saved by PushSection.
+ SmallVector<std::pair<const MCSection *,
+ const MCSection *>, 4> SectionStack;
protected:
MCStreamer(MCContext &Ctx);
@@ -117,16 +114,16 @@ namespace llvm {
/// getCurrentSection - Return the current section that the streamer is
/// emitting code to.
const MCSection *getCurrentSection() const {
- if (!CurSectionStack.empty())
- return CurSectionStack.back();
+ if (!SectionStack.empty())
+ return SectionStack.back().first;
return NULL;
}
/// getPreviousSection - Return the previous section that the streamer is
/// emitting code to.
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
More information about the svn-src-all
mailing list