Squashed 'llvm/' changes from 4232f4e..05388f2

05388f2 R600/SI: Clean up some of the unused REGISTER_{LOAD,STORE} code
3280804 R600/SI: Use scratch memory for large private arrays
c912b10 R600/SI: Specify wavefront size for SI and CI
59b8363 R600/SI: Remove vaddr operand from BUFFER_LOAD_*_OFFSET instructions
2479def [mips] Do not emit '.module fp=...' unless we really need to.
aac33cf [SKX] Enabling SKX target and AVX512BW, AVX512DQ, AVX512VL features.
9f276b7 docs: Update relaease documents to include the patch number in the RELEASE tags
285c821 Export LLVM_ENABLE_ASSERTIONS in LLVMConfig.cmake so clients know if the version of LLVM they are trying to use was built with or without assertions.
b664d47 R600/SI: Store constant initializer data in constant memory
b97240d R600/SI: Add isCFDepth0 Predicate to SALU addc pattern
54a2540 R600/SI: Use VALU for i1 XOR
ad9769a R600/SI: Use a custom encoding method for simm16 in SOPP branch instructions
efb733c R600/SI: Rename SOPP operands to match the encoding fields
6816d66 [mips] Add MipsOptionRecord abstraction and use it to implement .reginfo/.MIPS.options
4950ae5 TableGen: Allow AddedComplexity values to be negative
8db585a Move the CapturesBefore tracker from AA into CaptureTracking
6dbe7b1 This declaration has no definition, which is causing MSVC to emit several "no suitable definition provided for explicit template instantiation request" C4661 warnings.
bb9fd2c Fixing an MSVC conversion warning about implicitly converting the shift results to 64-bits. No functional change intended.
43b1259 Move isIdentifiedFunctionLocal from BasicAA to AA
34e6588 [mips] Try to fix the test/ExecutionEngine tests on a MIPS host.
8ecdc6d [mips] Do not emit '.module [no]oddspreg' unless we really need to.
80a15c2 FileCheck-ize a test.
f8d927f CodeGen: emit IR-level f16 conversion intrinsics as fptrunc/fpext
d4cde86 [SDAG,cleanup] Switch the DAG combiner over to use the spelling 'Worklist' consistently rather than a deeply confusing mixture of 'WorkList' and 'Worklist'.
0c991ec [SDAG] Rather than using a narrow test against the one dummy node on the stack, filter all handle nodes from the DAG combiner worklist.
19e39c6 [DAGCombiner] Improve the shuffle-vector folding logic.
3d1975d [DAG] Refactor some logic. No functional change.
10437f6 Fix for regression: [Bug 20369] wrong code at -O3 on x86_64-linux-gnu in 64-bit mode
d4542a8 [PowerPC] ELFv2 aggregate passing support
970c019 [PowerPC] ELFv2 explicit CFI for CR fields
68b292b [PowerPC] ELFv2 dynamic loader support
7fc5011 [PowerPC] ELFv2 stack space reduction
edfd4f1 [PowerPC] ELFv2 function call changes
07d4e55 [LoopVectorize] Remove an unused private AA pointer
76fcace [MC] Pass MCSymbolData to needsRelocateWithSymbol
160f9b9 [LoopVectorize] Use AA to partition potential dependency checks
5ee5fc4 [PowerPC] ELFv2 MC support for .localentry directive
0d9bcaa [PowerPC] ELFv2 MC support for .abiversion directive
675c967 [PowerPC] Refactor byval handling in LowerFormalArguments_64SVR4
e4b2165 [PowerPC] Fix FrameIndex handling in SelectAddressRegImm
c543b26 Namespace cleanup (no functional change)
7a3c3e9 SIISelLowering.cpp: Define _USE_MATH_DEFINES to let M_PI provided on MS <cmath>.
1d55cc6 MachineRegionInfo.cpp: Another fix on MachineRegionInfo::MachineRegionInfo::recalculate() to appease msc17.
e5166cc Remove braces around single-statement block and rangify outer loop.
a4697da [C++11] Add predecessors(BasicBlock *) / successors(BasicBlock *) iterator ranges.
83a385a R600: Add missing test for concat_vectors
af1797f R600: Remove unused function
eb957bf R600/SI: Remove dead code and add missing tests.
06bc9c4 Fix msc17 build. RegionInfo::RegionInfo::recalculate() doesn't make sense.
8f64ffd Fix -Asserts build introduced since r213456.
60e681a Sure up ownership passing of the PBQPBuilder by passing unique_ptrs by value rather than lvalue reference.
ac1b5f1 MC: permit emitting a symbol value as section relative
f7a4b7a Revert accidentally committed r213459
a80d6a0 Fix build with GCC.
7f36bf5 XXX - Increase unroll threshold
18ecf3f R600/SI: implement range reduction for sin/cos
5e1c96a Templatify RegionInfo so it works on MachineBasicBlocks
fd22980 R600: Implement a few simple TTI queries.
4df6569 [LoopVectorize] Use CreateAligned(Load|Store)
2350e9f [LoopVectorize] Propagate known metadata to vectorized instructions
5bc21c3 [x86] Fix wrong shuffle mask in test 'combine-vec-shuffle-3.ll'. No functional change.
07adbf3 Handle AddrSpaceCast in stripAndAccumulateInBoundsConstantOffsets
f707267 MergedLoadStoreMotion.cpp: Fix msc17 build. Member initializer is unavailable.
7c11695 Make Value::isDereferenceablePointer handle offsets to pointer types with dereferenceable attributes
b0a5225 ARM: correct WoA __builtin_alloca handling on O0
ec31a30 Remove uses of the redundant ".reset(nullptr)" of unique_ptr, in favor of ".reset()"
e8cfb59 [MCJIT] Add a 'decodeAddend' method to RuntimeDyldMachO and teach getBasicRelocationEntry to use this rather than 'memcpy' to get the relocation addend. Targets with non-trivial addend encodings (E.g. AArch64) can override decodeAddend to handle immediates with interesting encodings.
db98ac6 Revert "Reapply "DebugInfo: Ensure that all debug location scope chains from instructions within a function, lead to the function itself.""""
ec3b0fe Fundamentally change the MipsSubtarget replacement machinery:
0ce4f58 FrameLowering depends only upon the Subtarget, so only take a subtarget during initialization.
d644d17 [PowerPC] 32-bit ELF PIC support
286fbd1 In preparation for replacing the whole subtarget on the target machine, have target lowering take the subtarget explicitly.
a002a91 Make InstrInfo depend only upon the Subtarget getting passed in rather than the TargetMachine.
555be2c The subtarget in MipsTargetLowering isn't going to change and so doesn't need to be a pointer, but a reference.
775dd6e Avoid caching the relocation model on the subtarget, this is for two reasons:
fa034b8 Remove commented out code.
277c0d6 Clean up some style and formatting issues.
d2e8729 DebugInfo: Assert that all abstract scopes are subprograms, rather than conditionalizing.
5fcb6fd Fix build breakage introduced with r213412.
354f2af Remove unroll pragma metadata after it is used.
68a7bfa Fix a couple of formatting and style issues.
7b1a0fd [MCJIT] [AArch64] Make sure to propegate ARM64_RELOC_ADDEND values into the RelocationEntry.
394e6d2 Make non-module passes unconditionally added in the pass manager for mips, and early exit if we don't want to do anything because of the current subtarget.
bd9c6c0 Add tests for atomic adds on floats.
8530b6e Rename DiagnosticInfoOptimizationWarning to DiagnosticInfoOptimizationFailure so the severity of the message is not part of the type name.
6a33571 Use CHECK-LABEL where appropriate in this test.
8ec1546 Add loop unrolling metadata descriptions to docs/LangRef.rst.
d94715e MergedLoadStoreMotion pass
63d9456 Reapply "DebugInfo: Ensure that all debug location scope chains from instructions within a function, lead to the function itself."""
bb10524 Fix build failure on windows
12f33da MC: support different sized constants in constant pools
11af4b4 Add a dereferenceable attribute
a11bf68 Add MIPS Technologies to the vendors in llvm::Triple.
e72ff88 AArch64: implement efficient f16 bitcasts
b41b1d4 NVPTX: support fpext/fptrunc to and from f16.
7714a60 R600: support fpext/fptrunc operations to and from f16.
1a8bcdb AArch64: support f16 extend/trunc operations.
e683321 X86: support fpext/fptrunc operations to and from 16-bit floats.
4413539 ARM: support legalisation of "fptrunc ... to half" operations.
0afed03 CodeGen: soften f16 type by default instead of marking legal.
dc80347 Suppress 'not handled in switch' warning
7cd0201 [ARM] Add earlyclobber constraint to pre/post-indexed ARM STR instructions.
03ac7db Refactor ARM subarchitecture parsing
11c2058 extracting swapStruct into include/llvm/Support/MachO.h (no functional change)
f811b28 R600: rename misleading fp16 test.
cc03227 R600: support f16 -> f64 conversion intrinsic.
7bbf578 NVPTX: support direct f16 <-> f64 conversions via intrinsics.
d026168 Rename AlignAttribute to IntAttribute
a32c319 R600: Implement TTI:getPopcntSupport
c6058e2 X86: Constant fold converting vector setcc results to float.
f4e104f AArch64: Constant fold converting vector setcc results to float.
f2c19f6 Revert "[x86] Fold extract_vector_elt of a load into the Load's address computation."
f0b9d0b Reset the Subtarget in the AsmPrinter for each machine function and add explanatory comment about dual initialization. Fix use of the Subtarget to grab the information off of the target machine.
a1fa640 Avoid resetting the UseSoftFloat and FloatABIType on the TargetMachine Options struct and move the comment to inMips16HardFloat. Use the fact that we now know whether or not we cared about soft float to set the libcalls. Accordingly rename mipsSEUsesSoftFloat to abiUsesSoftFloat and propagate since it's no longer CPU specific.
353cec5 [MCJIT] Fix the alignment requirements for ARM and AArch64 which were mistakenly relaxed in the big RuntimeDyldMachO cleanup of r213293.
79785e4 Tweak formating to match what clang-format would be for llvm-nm.cpp . No functional change.
c61aa02 Add printing of Mach-O stabs in llvm-nm.
5d83e5b Remove rules against std::function from the programmer's manual
c1ef24c ms inline asm: Don't add x86 segment registers to the clobber list.
822f1b1 Make myself code owner of MCJIT.
3cf9f37 Drop the udis86 wrapper from llvm::sys
55ebcf3 TableGen: Add 'static' to a large array to avoid a huge stack allocation
08f689e [AArch64] Cleanup AsmParser: no need to use dyn_cast + assert. cast does it for us.
adf8ae4 Rectify r213231. Use proper version of 'ComputeNumSignBits'.
be406de [MCJIT] Significantly refactor the RuntimeDyldMachO class.
30ea429 [ASan] Don't instrument load/stores with !nosanitize metadata.
c636a42 Typo: exists -> exits
11ae250 [NVPTX] Improve handling of FP fusion
15865af Fix typos
345cb09 [BUG] Due to a typo introduced in r199933  and r200027 two tests for FMA were never even started.
6ae2941 [X86] AVX512: Add disassembler support for compressed displacement
f166cc1 [X86] AVX512: Rename EVEX_CD8V to CD8_Form
5c6e7de [X86] AVX512: Use the TD version of CD8_Scale in the assembler
ccba802 [X86] AVX512: Move compressed displacement logic to TD
30cced1 [TableGen] Allow shift operators to take bits<n>
07bc0b6 [NVPTX] Add missing .v4 qualifier on vector store instruction
7be793b MC: correct DWARF header for PE/COFF assembly input
a056166 MC: fix MCAsmInfo usage for windows-itanium
1919bea MC: collapse emission of producer
b26ede0 [NVPTX] Flag surface/texture query instructions with IsTexSurfQuery
d6663f5 [NVPTX] Add more surface/texture intrinsics, including CUDA unified texture fetch
58589ce ARM: support direct f16 <-> f64 conversions
df50f41 [TABLEGEN] Do not crash on intrinsics with names longer than 40 characters
6c701b9 CodeGen: generate single libcall for fptrunc -> f16 operations.
ed05086 X86: support double extension of f16 type.
3e61ccd CodeGen: extend f16 conversions to permit types > float.
f33a30c Port memory barriers intrinsics to AArch64
8f69856 [mips] .reginfo is 8 byte aligned on N32.
3da6527 [mips] Correct ELF e_flags for the N32 ABI when using a mips-* triple rather than a mips64-* triple
0a342e9 [mips] Correct .MIPS.abiflags for -mfpxx on MIPS32r6
4b5e754 [mips] Fix ELF e_flags related to -mabicalls and -mplt.
ad591b3 Fix the prefix for arm64 triple
e1287f5 [msan] Avoid redundant origin stores.
c84f22a Move ashr optimization from InstCombineShift to InstSimplify. Refactor code, no functionality change, test case moved from instcombine to instsimplify.
21a9a66 Use range for
df4663b R600: Short circuit alloca check if address space isn't private.
50a9cd7 Fix Typo (first commit to test commit access)
d409968 [lit] Add --show-unsupported flag to LIT
adcb2d1 MC: make WinEH opcode an opaque value
8f60969 Improve BasicAA CS-CS queries (redux)
1d56cda Partially revert r210444 due to performance regression
07b294a Fixed formatting, removed bug reference, renamed testcase
22441c3 [FastISel] Local values shouldn't be alive across an inline asm call with side effects.
04fc9ae [MCJIT] Improve a RuntimeDyldChecker diagnostic.
e0fd412 Fix a typo in the inalloca description
889a136 trivial fix for PR20314
8758b72 Remove Atom references in description.
d6b3165 Utilize CastInst::CreatePointerBitCastOrAddrSpaceCast here.
ec7a144 [RegisterCoalescer] Moving the RegisterCoalescer subtarget hook onto the TargetRegisterInfo instead of the TargetSubtargetInfo.
a1535e3 [NVPTX] Honor alignment on vector loads/stores
5c3e016 CHECK-LABEL-ize one test
15f2c50 Add the "-x" flag to llvm-nm for Mach-O files that prints the fields of a symbol in hex. (generally use for debugging the tools).  This is same functionality as darwin’s nm(1) "-x" flag.
53b0a2d Remove unnecessary/redundant std::move
49feabc Track clang r213171
4722b28 Added documentation for SizeMultiplier in the ARM subtarget hook for register coalescing. Also fixed some 80 col violations.
7e65651 [NVPTX] Rename registers %fl -> %fd and %rl -> %rd
1cafa00 CodeGen: don't form illegail EXTLOAD operations.
80221b9 Convert test to CHECK-LABEL
663e484 [mips][fp64a] Temporarily disable odd-numbered double-precision registers when using the FP64A ABI.
35f6e97 [X86] Add a check for 'isMOVHLPSMask' within method 'isShuffleMaskLegal'.
8fa83af unittests: Actually test reverse iterators in Path tests
55a421f Roundtrip the inalloca bit on allocas through bitcode
99ecd0b Fix comment in InstCombiner::visitAddrSpaceCast.
b464ec0 Perform wildcard expansion in Process::GetArgumentVector on Windows (PR17098)
77f0304 Emit warnings if vectorization is forced and fails.
7e752a3 Remove TLI from isInTailCallPosition's arguments. NFC.
a27bf37 R600/SI: Allow using f32 rcp / rsq when denormals not handled.
6f7532b X86: Simplify X86WindowsTargetObjectFile::getSectionForConstant
f7e0423 Move Post RA Scheduling flag bit into SchedMachineModel
110748b [dfsan] Introduce further optimization to reduce the number of union queries.
427c5cb CMake: avoid a reconfigure loop from r213091
7929c13 R600/SI: Fix select on i1
b930de1 Try out FileCheck's new (in r212810) -implicit-check-not in a DebugInfo test.
9bc72a3 CMake: fix cross-compilation with external source directories
c12ce2b ADT: Add MapVector::remove_if
4b0a7f3 R600/SI: Implement less wrong f32 fdiv
e4c6241 R600: Add predicate for UnsafeFPMath
fc7ff2a R600: Remove intrinsics that appear to be unused
58d03b3 [RuntimeDyld] Revert r211652 - MachO object GDB registration support.
d9ebc59 ADT: Fix MapVector::erase()
9f865ed ADT: Add "end namespace" comment
01d861124 [RegisterCoalescer] Add new subtarget hook allowing targets to opt-out of coalescing.
2dade43 [AArch64] Add negative tests for the SIMD & FP LDP instructions.
ef88687 Revert r213070. It's breaking the build in MCELFStreamer::EmitInstToData(...).
7b5f8a5 R600: Implement zero undef variants of ctlz/cttz
6d6a055 [mips] Correct .MIPS.abiflags fp_abi field for -mfpxx and without .module
160c4cb Add x86 patterns to match a specific add-with-carry.
224ffa2 [DAGCombiner] Add more rules to fold shuffles.
3ee5fc8 Prune Redundant libdeps in CMake's target_link_libraries and LLVMBuild.txt.
a34d957 Silence a warning in conditional expression.
99904d2 MergeFunc patch from Björn Steinbrink. Phabricator ticket: D4246, Don't merge functions with different range metadata on call/invoke. Thanks!
fbb6311 AArch64: fall back to generic code for out of range extract/insert.
218f127 Fix typo in comment
cce1bd7 [FastISel][X86] Remove no longer needed functions.
1b0266d [FastISel][X86] Implement the FastLowerIntrinsicCall hook.
566afe2 [FastISel][X86] Implement the FastLowerCall hook.
a107ebd Revert "[FastISel][X86] Remove no longer needed functions." Revert "[FastISel][X86] Implement the FastLowerIntrinsicCall hook." Revert "[FastISel][X86] Implement the FastLowerCall hook."
f32aa7a [dfsan] Introduce an optimization to reduce the number of union queries.
9e0e564 [dfsan] Move combineShadows to DFSanFunction in preparation for it to use a domtree.
ca3c5b8 Give SplitBlockAndInsertIfThen the ability to update a domtree.
0ff9c3a Some targets don't prefix private symbols with dot
f51bbb8 Specify a more specific triple for constant-pool-remat-0.ll
2067d91 Relax tests expecting to see CPI symbols
cdc1044 CodeGen: Handle ConstantVector and undef in WinCOFF constant pools
3c07374 [FastISel][X86] Remove no longer needed functions.
a7d1d3a [FastISel][X86] Implement the FastLowerIntrinsicCall hook.
805486c [FastISel][X86] Implement the FastLowerCall hook.
7a04202 [FastISel] Insert patchpoint instruction before the target generated call instruction.
b90f1fd [FastISel] Fix patchpoint lowering to set the result register.
5fbf09a R600: Add dag combine for copy of an illegal type.
832e3ff Teach computeKnownBits to look through addrspacecast.
e3c3920 Improve test 'CodeGen/X86/combine-vec-shuffle-3.ll'. Now functions 'test4', 'test9', 'test14' and 'test19' correctly perform a move of two packed values from the high quadword of vector %b to the low quadword of vector %a (movhlps idiom).
cbebdef Document the maximum LLVM IR alignment, which is 1 << 29 or 0.5 GiB
7137eb3 Teach GetUnderlyingObject / BasicAA about addrspacecast
5508cfd Revert r212572 "improve BasicAA CS-CS queries", it causes PR20303.
2639f77 Convert test to FileCheck.
217cd186 [DAGCombiner] Avoid calling method 'isShuffleMaskLegal' on illegal vector types.
b7df516 R600: Add denormal handling subtarget features.
5b70c8a R600/SI: Default to no single precision denormals.
afa0ba1 Revert "Revert "Move clang feature flags settings out of LLVM core and into cfe""
a8940be [RuntimeDyld] Handle endiannes differences between the host and target while reading MachO files magic numbers in RuntimeDyld.
3afd71f [X86] Specify all TSFlags bit-offsets symbolically
38d8be1 CodeGen: Stick constant pool entries in COMDAT sections for WinCOFF
e077a90 Revert "Move clang feature flags settings out of LLVM core and into cfe"
9988c29 Fix a -Wunused-local-typedefs warning
7847229 [DAGCombiner] Add more rules to combine shuffle vector dag nodes.
ff985d4 Look through addrspacecast in IsConstantOffsetFromGlobal
19d44f6 Look through addrspacecast in GetPointerBaseWithConstantOffset
18c3a47 Move clang feature flags settings out of LLVM core and into cfe
a539d7b CodeGen: Add a getSectionKind method to MachineConstantPoolEntry
26a4201 Convert test to FileCheck
74cb271 ADT: Surface LowerCase argument for utohexstr
c41eb0d removed circular definitions in comments
f66fc53 Support: Fix option handling when using cl::Required with aliasopt
d615588 Fix a test broken in r212981
312646b InstSimplify: Correct sdiv x / -1
e0a56a0 fixed link
7ceba3a InstSimplify: The upper bound of X / C was missing a rounding step
497ba6c Support: Use a range-based for
97555d1 Look through addrspacecast when checking isDereferenceablePointer
bd5603c Don't eliminate memcpy's when the address of the pointer may itself be relevant. Fixes PR18304. Patch by David Wiberg!
e31c059 Unify the lowering of arguments during SjLj prepare.
9cfe4c2 fixed typo
547d3e9 Use pointer type cast helpers.
9f40cd7 Add CreatePointerBitCastOrAddrSpaceCast to IRBuilder and co.
e51c737 Update comments to include addrspacecast
8e44dbb Remove GCC 3.3 workaround
5335b49 X86: correct 64-bit atomics on 32-bit
f8cc317 CodeGen: add missing include
e3aafcc llvm-objdump: Handle BSS sections larger than the object file
9e251d6 X86: remove temporary atomicrmw used during lowering.
52a51e1 Re-commit: [mips] Correct section alignments and EntrySizes for .bss, .text, .data, .reginfo, .MIPS.options, and .MIPS.abiflags
b70b489 Revert: [mips] Correct section alignments and EntrySizes for .bss, .text, .data, .reginfo, .MIPS.options, and .MIPS.abiflags
05aee6b [mips] Correct section alignments and EntrySizes for .bss, .text, .data, .reginfo, .MIPS.options, and .MIPS.abiflags
c4ce78e [mips] For the FP64A ABI, odd-numbered double-precision moves must not use mtc1/mfc1.
543f70b [mips] Use MFHC1 when it is available (MIPS32r2 and later) for both FP32 and FP64 moves
f51fbcb [CMake][Win32.DLL] Let llvm_add_library(SHARED) link dependent libraries as PRIVATE.
26012ce AArch64: remove unnecessary pseudo-instruction.
e99ebb9 [mips] Correct the AFL_FLAGS1_ODDSPREG flag in .MIPS.abiflags when no '.module oddspreg' is used
fce699d [mips] Expand BuildPairF64 to a spill and reload when the O32 FPXX ABI is enabled and mthc1 and dmtc1 are not available (e.g. on MIPS32r1)
5388e6f Support lowering of empty aggregates.
13764f7 [CMake] LINK_COMPONENTS: Add also corresponding MCTargetDesc and TargetInfo as well, when target names or "nativecodegen" are specified.
a84c1fb [CMake] Update libdeps.
95d3cfc NVPTX/LLVMBuild.txt: Add "Scalar" to required_libraries. It is really referenced.
1340def Object/LLVMBuild.txt: Sort required_libraries by alphabetical order.
124ce3a [DAGCombiner] Fix a crash caused by a missing check for legal type when trying to fold shuffles.
083db8b MC: make MCWin64EHInstruction a POD-like struct
117ff62 MC: make helper function be more const-correct
1f1e6e7 MC: make DWARF and Windows unwinding handling more similar
97528c5 Add forgotten `break` statement.
b2b56ed [Mips] Support SHT_MIPS_ABIFLAGS section type flag in the llvm-readobj, obj2yaml and yaml2obj tools.
d74d9b3 [CMake] Enable loadable modules, aka plugins, with BUILD_SHARED_LIBS on cygming.
4a8dd7c [CMake] Add LLVM_LINK_COMPONENTS to loadable modules, LLVMHello and BugpointPasses, on Win32.
adad0d5 [CMake] Introduce moddir for MODULE -- corresponding to LIBRARY_OUTPUT_DIRECTORY.
eddc485 bugpoint/ToolRunner.cpp: ProcessFailure(): Close ErrorFD immediately, or it couldn't be reopened on Win32.
e8d826b IR: Allow comdats to be applied to globals with internal linkage
f803b3d MC: Let non-temporary COFF aliases be in symtab
0ed2017 Remove unused include
74c9fe2 R600: Use range for and fix missing consts.
bb098a4 R600: Make ShaderType private
98c2299 R600: Run more tests with promote alloca disabled.
ff71f3d R600: Run private-memory test with and without alloca promote
8e53751 R600: Add option to disable promote alloca
8ef1fa7 Try to fix MSVC warning.
bf9b767 Try to fix MSVC build
4118913 Try to fix MSVC build
661ca49 Templatify DominanceFrontier.
01c06d7 AArch64: add support for llvm.aarch64.hint intrinsic
1bbed94 MC: remove use of unnecessary variable
8e69909 MC: rename MCW64UnwindInfo to MCWinFrameInfo
dafce2c [ELFYAML] Group ELF section type flags to target specific blocks. Recognize only flags which correspond to the current target.
452bd5f Fix an issue with the MergeBasicBlockIntoOnlyPred() helper function where it did not properly handle the case where the predecessor block was the entry block to the function.  The only in-tree client of this is JumpThreading, which worked around the issue in its own code.  This patch moves the solution into the helper so that JumpThreading (and other clients) do not have to replicate the same fix everywhere.
b2d2590 [ASan] Collect unmangled names of global variables in Clang to print them in error reports.
cc6a418 R600: Add missing tests for some intrinsics
8ff8772 BFI: Add constructor for Weight
d164a16 BFI: Clean up BlockMass
e2729b9 Option: Propagate flags from groups to options in each group
f7d3052 [RuntimeDyld] Fix stub size and offset for AArch64 in RuntimeDyldMachO.h.
b233e0e Avoid a warning from MSVC on "*/" in this code by inserting a space
1c224d8 BFI: Mark the end of namespaces
75ac35d [RuntimeDyld] Add GOT support for AArch64 to RuntimeDyldMachO.
b2e9db4 Revert "[FastISel][X86] Implement the FastLowerIntrinsicCall hook."
83772af [FastISel][X86] Implement the FastLowerIntrinsicCall hook.
bdfa6b0 [ASan] Introduce a struct representing the layout of metadata entry in llvm.asan.globals.
30f9ff4 [FastISel] Add target-independent patchpoint intrinsic support. WIP.
324b3fc [FastISel] Add basic infrastructure to support a target-independent call lowering hook in FastISel. WIP
af6721b When we sink an instruction, this can open up opportunity for the operands to be sunk - add them to the worklist
41a6ddb Move the API and implementation of clang::driver::getARMCPUForMArch() to llvm::Triple::getARMCPUForArch().
56b7de6 [FastISel] Make isInTailCallPosition independent of SelectionDAG.
2f58a51 [FastISel] Breakout intrinsic lowering into a separate function and add a target-hook.
7f50100 Add the "-s" flag to llvm-nm for Mach-O files that prints symbols only in the specified section.  This is same functionality as darwin’s nm(1) "-s" flag.
1736df6 Simplify the raw_svector_ostream tweak from r212816
c345ba8 [MC] Constify MCELF::GetVisibility and MCELF::getOther
edb2718 [PowerPC] Fix invalid displacement created by LocalStackAlloc
438e1f2 R600/SI: Use i32 vectors for resources and samplers
5a35fdc R600/SI: add sample and image intrinsics exposing all instruction fields
4071d6f R600/SI: fix shadow mapping for 1D and 2D array textures
cc00568 Add a test case for r212596
9d03442 llvm/test/BugPoint/compile-custom.ll: Use explicit %python to invoke a test script, compile-custom.ll.py, for shebang-incapable hosts.
ffbe320 llvm/test/lit.cfg: Let %python available.
c1a060c [CMake] add_llvm_library: Add "RUNTIME DESTINATION bin" to install(). It affects add_library(SHARED) for Win32.DLL.
81bc6fb raw_svector_ostream: grow and reserve atomically
cb047f2 ARM: Allow __fp16 as a function arg or return type for AArch64
c58b079 Add FileCheck -implicit-check-not option to allow stricter tests without adding too many CHECK-NOTs manually.
52c50f5 [X86] Fix the inversion of low and high bits for the lowering of MUL_LOHI. Also add a few comments.
ca4b180 Added test for commit r212802 that was missing
a533de6 Fixup PHIs in LowerSwitch when a Leaf node is not emitted.
11c9a50 [X86] AVX512: Improve readability of isCDisp8
fcc56eb [X86] AVX512: Simplify logic in isCDisp8
181826c Revert "Reapply "DebugInfo: Ensure that all debug location scope chains from instructions within a function, lead to the function itself.""
9853f94 Partially fix PR20058: reduce compile time for loop unrolling with very high count by reducing calls to SE->forgetLoop
eb2fff6 [RuntimeDyld] Replace a crufty old ARM RuntimeDyld test with a new one that uses RuntimeDyldChecker.
5cfcad1 [RuntimeDyld] Improve error diagnostic in RuntimeDyldChecker.
e14048c Reapply "DebugInfo: Ensure that all debug location scope chains from instructions within a function, lead to the function itself."
9fe4d6b This test case doesn't actually need the inliner to reproduce the input.
865527a R600: Implement float to long/ulong
bb917c2 SelectionDAG: Factor FP_TO_SINT lower code out of DAGLegalizer
e39f7f9 Use the integrated assembler by default on OpenBSD.
fc6a659 [mips] Emit two CFI offset directives per double precision SDC1/LDC1 instead of just one for FR=1 registers Differential Revision: http://reviews.llvm.org/D4310
4d3b613 Extend the test coverage in combine-vec-shuffle-2.ll adding some negative tests.
b730c3d Revert "Revert r212640, "Add trunc (select c, a, b) -> select c (trunc a), (trunc b) combine.""
3996e52 [DAG] Further improve the logic in DAGCombiner that folds a pair of shuffles into a single shuffle if the resulting mask is legal.
60079c1 [X86] Mark pseudo instruction TEST8ri_NOEREX as hasSIdeEffects=0.
b5a006e Add the CSR company and the Kalimba DSP processor to Triple.
282eda9 Make it possible for the Subtarget to change between function passes in the mips back end. This, unfortunately, required a bit of churn in the various predicates to use a pointer rather than a reference.
5b8419d InstCombine: Fix a crash in Descale for multiply-by-zero
c1a6d65 IR: Aliases don't belong to an explicit comdat
b1beb01 Feeding isSafeToSpeculativelyExecute its DataLayout pointer (in Sink)
9478f0a Mips: Silence a -Wcovered-switch-default
0ef4711 [mips] Added FPXX modeless calling convention. Differential Revision: http://reviews.llvm.org/D4293
a9af055 [AArch64] Add logical alias instructions to MC AsmParser
73118c4 Feeding isSafeToSpeculativelyExecute its DataLayout pointer
6b0ac2a AArch64: correctly fast-isel i8 & i16 multiplies
24a071b [mips] Add support for -modd-spreg/-mno-odd-spreg
a2bc403 [x32] Add AsmBackend for X32 which uses ELF32 with x86_64 (the author is Pavel Chupin).
cdbdfa2 [x86,SDAG] Introduce any- and sign-extend-vector-inreg nodes analogous to the zero-extend-vector-inreg node introduced previously for the same purpose: manage the type legalization of widened extend operations, especially to support the experimental widening mode for x86.
35dda8a [SystemZ] Use SystemZCallingConv.td to define callee-saved registers
2f7fa89 SpecialCaseList.h: Fix -Wdocumentation with \code.
e93de7f llvm/test/CodeGen/X86/shift-parts.ll: FileCheck-ize. (from r212640)
5290734 Revert r212640, "Add trunc (select c, a, b) -> select c (trunc a), (trunc b) combine."
446067b [SystemZ] Tweak instruction format classifications
a4e7f05 [x86] Add another combine that is particularly useful for the new vector shuffle lowering: match shuffle patterns equivalent to an unpcklwd or unpckhwd instruction.
9aa8beb [SystemZ] Add MC support for LEDBRA, LEXBRA and LDXBRA
beefa3a [SystemZ] Avoid using i8 constants for immediate fields
b350ec7 [SystemZ] Fix FPR dwarf numbering
b0b3161 Make it possible for ints/floats to return different values from getBooleanContents()
977aab5 [x86] Expand the target DAG combining for PSHUFD nodes to be able to combine into half-shuffles through unpack instructions that expand the half to a whole vector without messing with the dword lanes.
dc90a3a [x86] Tweak the v16i8 single input special case lowering for shuffles that splat i8s into i16s.
8892dbf A test case for not asserting in isDereferenceablePointer upon unsized types
5ee0267 Fix isDereferenceablePointer not to try to take the size of an unsized type.
a739834 Allow isDereferenceablePointer to look through some bitcasts
3445179 MC: modernise for loop
09f505a MC: add and use an accessor for WinCFI
141d3e3 Remove move assignment operator to appease older GCCs.
95b14b0 [x86] Initial improvements to the new shuffle lowering for v16i8 shuffles specifically for cases where a small subset of the elements in the input vector are actually used.
ac37f73 Explicitly define move constructor and move assignment operator to appease MSVC.
0f29cef SpecialCaseList: use std::unique_ptr.
a3c15c1 [AArch64]Fix an assertion failure in DAG Combiner about concating 2 build_vector.
425ef82 R600/SI: Add support for llvm.convert.{to|from}.fp16
985d66c Fix types in documentation.
c478879 [x86] Refactor some of the new code for lowering v16i8 shuffles to remove duplication and make it easier to select different strategies.
706cbb3 [dfsan] Handle bitcast aliases.
515f228 [SDAG] Make the new zext-vector-inreg node default to expand so targets don't need to set it manually.
eff0c67 Recommit r212203: Don't try to construct debug LexicalScopes hierarchy for functions that do not have top level debug information.
3e51f75 Decouple llvm::SpecialCaseList text representation and its LLVM IR semantics.
bdd9df4 Use simpler constructor for range adapter.
3e8ed89 Add trunc (select c, a, b) -> select c (trunc a), (trunc b) combine.
a3edd6a AArch64: Better codegen for storing to __fp16.
f634247 Change an assert() to a diagnostic.
08b75dd TargetRegisterInfo: Remove function that fell out of use years ago.
9753da1 Update ReleaseNotes to mention Atomic NAND semantic changes.
074b752 [X86] AVX512: Enable it in the Loop Vectorizer
479af7c Make AArch64FastISel::EmitIntExt explicitly check its source and destination types
90df187 removed duplicate testcase
296cb7b Fix for PR20059 (instcombine reorders shufflevector after instruction that may trap)
6a65566 Add Imagination Technologies to the vendors in llvm::Triple
7fba8d7 Generic: add range-adapter for option parsing.
4c27c85 [x86] Fix a bug in my new zext-vector-inreg DAG trickery where we were not widening the input type to the node sufficiently to let the ext take place in a register.
f4fcb0c Sink two variables only used in an assert into the assert itself. Should fix the release builds with Werror.
4afbd3e X86: When lowering v8i32 himuls use the correct shuffle masks for AVX2.
ce184e9 [x86] Add a ZERO_EXTEND_VECTOR_INREG DAG node and use it when widening vector types to be legal and a ZERO_EXTEND node is encountered.
1285b31 [mips][mips64r6] Correct select patterns that have the condition or true/false values backwards
3887046 [mips][mips64r6] Correct cond names in the cmp.cond.[ds] instructions
a2a8a72 [x86] Initialize a pointer to null to fix a bug in r212602.
f08bcb9 [mips][mips64r6] Use JALR for indirect branches instead of JR (which is not available on MIPS32r6/MIPS64r6)
7c2ef82 [mips][mips64r6] Use JALR for returns instead of JR (which is not available on MIPS32r6/MIPS64r6)
3b52084 Add ability to emit internal instruction representation to CodeGen assembly output.
98eac0a [x86] Re-apply a variant of the x86 side of r212324 now that the rest has settled without incident, removing the x86-specific and overly strict 'isVectorSplat' routine in favor of generic and more powerful splat detection.
0b3c7cb [ASan/Win] Don't instrument COMDAT globals. Properly fixes PR20244.
7b39c06 SourceMgr: consistently use 'unsigned' for the memory buffer ID type
2bd8e0c Prospective -fsanitize=memory build fix following r212586
215b356 Use correct memeber when displaying StringMap's size.
d87c2fc CMake: make __DATE__, __TIME__ etc. macro usage an error
b1d6b8e CMake: fix compiler feature detection
d0de986 [SDAG] At the suggestion of Hal, switch to an output parameter that tracks which elements of the build vector are in fact undef.
bab04b5 [ms-coff] Add a test for proper handling of full Windows path names in the .drectve section
717c9da MipsTargetStreamer.h: Avoid "using" to appease msc17.
e3108d3 Changed the lvm-nm alias "-s" for -print-armap to "-M". This will allow the "-s" flag to implemented in the future as it is in darwin’s nm(1) to list symbols only in the specified section.
05bb7c5 AArch64: Better codegen for loading from __fp16.
04fe990 Improve BasicAA CS-CS queries
22e324d DominanceInfo is strongly preferred over RegionInfo
d2ae115 Add support for BSD format Archive map symbols (aka the table of contents from a __.SYMDEF or "__.SYMDEF SORTED" archive member).
54bca0c Revert "GlobalDCE: Delete available_externally initializers if it allows removing the value the initializer is referring to."
b7fdc7f [PowerPC] Implement atomic NAND operations as actual NAND
b8245a4 [DAG] Teach how to combine a pair of shuffles into a single shuffle if the resulting mask is legal.
e63aae5 Fix some Twine locals.
986392e [ASan/Win] Don't instrument private COMDAT globals until PR20244 is properly fixed
7a16d24 [mips] Fixed struct/class mismatch introduced in r212522.
3c6b29c Fix r212522 - [mips] Improve encapsulation of the .MIPS.abiflags implementation and limit scope of related enums
fbdb8e1 [mips] Improve encapsulation of the .MIPS.abiflags implementation and limit scope of related enums
aebcee6 Revert "Refactor ARM subarchitecture parsing"
60d8767 Truncate the immediate in logical operation to the register width
ffbc2a1 Mips.abiflags is a new implicitly generated section that  will be present on all new modules. The section contains a versioned data structure which represents essentially information to allow a program loader to determine the requirements of the application. This patch implements mips.abiflags section and provides test cases for it.
25b7d54 [x86,SDAG] Sink the logic for folding shuffles of splats more aggressively from the x86 shuffle lowering to the generic SDAG vector shuffle formation code.
5b0b023 [SDAG] Actually check for a non-constant splat and clarify comments around the handling of UNDEF lanes in boolean vector content analysis.
9b187c9 [SDAG] Build up a more rich set of APIs for querying build-vector SDAG nodes about whether they are splats. This is factored out and improved from r212324 which got reverted as it was far too aggressive. The new API should help more conservatively handle buildvectors that are a mixture of splatted and undef values.
f78f9fd [ASan] Completely remove sanitizer blacklist file from instrumentation pass.
f189d9c [X86] AVX512: Only allow k1-k7 as predicates to vpcmp*
4642522 Kill unnecessary include
cfb83b7 [x86] Fix assertion failure caused by a wrong combine of PSHUFD nodes with different types.
7cdff79 fixed some typos
1154be8 [FastISel][X86] Fix smul.with.overflow.i8 lowering.
e7f8191 Allow AArch64FastISel to degrade graceully in the presence of an MVT::i128
80c193d Fix for PR17073 ( http://llvm.org/pr17073 ), simplifycfg illegally hoists an operation in a phi node that can trap.
b6b12e5 Use raw_fd_ostream instead of std::ofstream.
7b4a688 Refactor ARM subarchitecture parsing
50e7295 [PowerPC] Fix testcase regression
b053ddc [PowerPC] Fix no-assert build
bf7bfe3 [PowerPC] Fix "byval align" arguments
7fcb422 [x86] Revert r212324 which was too aggressive w.r.t. allowing undef lanes in vector splats.
0e1619e R600: Fix mishandling of load / store chains.
7b1c5f5 Fix typo, weird indentation
041e0da [testing]: lld generally lives in tools/, so fix llvm-lit.
0e278ad Make helper functions static.
a15d703 X86: revert unintentional change to X86FastISel.
5ba71b0 [asan] Generate asm instrumentation in MC.
e3bf8ea [msan] Fix handling of phi in blacklisted functions.
8632e40 InstCombine: Simplify code, no functionality change.
36ad61f [x86] Teach the new vector shuffle lowering code to handle what is essentially a DAG combine that never gets a chance to run.
3e16b02 CodeGen: it turns out that NAND is not the same thing as BIC. At all.
682e019 ARM: properly lower dllimport'ed global values
ecacffa ARM: correctly mangle dllimport symbols
f12de41 ARM: unify symbol name retrieval
307e97d [AArch64] Normalize all constants to build a vector.
466769d fixed typos in comments
5fd556e fixed some typos in comments
36019bb AArch64: whitespace cleanup
c789ae2 These should be EXPECT_TRUE, not EXPECT_FALSE. Amends r212415.
d08df5a Fixing compile errors related to changes with MemoryBuffer::getFile.
7cba2a9 Update the MemoryBuffer API to use ErrorOr.
04e43e6 Declare variable on first use.
245fbdf This only needs a StringRef.
26a84a6 This only needs a StringRef.
bb7ad61 Fix the MSVC build following r212382
1508c82 SourceMgr: make valid buffer IDs start from one
1a5e5e3 Don't use StringRef iterator functions for data access
e45100f Remove IntrusiveRefCntPtr::getPtr() function
f92e09e Use cast<> instead of dyn_cast + assert
9363b58 Fix grammar
6d1c237 ARM: mark matching ARM intrinsics as MSBuiltin
61b3d72 Revert r212375 because of test failures
1ca7c65 Add a test case for the tilde operator in Microsoft inline assembly
ad720cf [llvm-readobj] Fix output of MIPS GOT without local and global entries.
db8cb22 This only needs a StringRef. No functionality change.
38dbb02 ADT: Add a drop_back() helper to ArrayRef
22b4918 Deprecate IntrusiveRefCntPtr::getPtr() in favour of get()
8be7306 MC: make MCSymbolData::dump work on const objects
ad0bf36 Make a helper function static. No functionality change.
980c67a MC: Correct comment in ExportSymbol
b472eb7 MC: Cleanup COFFAsmParser::ParseSectionFlags
0560884 Make RecordStreamer.h private.
76735fb IR: Fold away compares between GV GEPs and GVs
483d89b Fix a bug in the conversion to ErrorOr.
c77a774 Revert "Convert a few std::strings to StringRef."
d492123 fixed typos
e97c25b Ignore llvm specific symbols in the LTOModule.
ca57933 Add support for parsing the not operator in Microsoft inline assembly
8089fee Ignore llvm.* globals.
bb5f622 TableGen: introduce support for MSBuiltin
1c9687e Implement LTOModule on top of IRObjectFile.
2291f8c Avoid mangling names twice. No functionality change.
40b9d67 Mark intrinsic functions as llvm-specific.
2093081 [mips][mips64r6] Set ELF e_flags for MIPS32r6/MIPS64r6. Also do MIPS-I to MIPS-V
8ce13cf [mips] Add tests for the 'ret', 'call', and 'indirectbr' LLVM IR instruction.
ada0f6a Don't include llvm.metadata variables in archive symbol tables.
a593909 Change LTOModule`s getTargetTriple and setTargetTriple to use c++ types.
9f72a18 Convert a few std::strings to StringRef.
2d1f275 Convert these functions to use ErrorOr.
82a599a Remove unused old-style error handling.
5b55a47 GlobalDCE: Delete available_externally initializers if it allows removing the value the initializer is referring to.
f3f355d llvm/test/CodeGen/XCore/dwarf_debug.ll: Fix not to be affected by *-win32.
4a183c6 llvm/test/CodeGen/X86/vector-gep.ll: Appease to add -mtriple=i686-linux.
0f9d1b3 ARM: when falling back to scattered relocs, keep the type.
5b003bb llvm-readobj: fix MachO relocatoin printing a bit.
9c1df91 InstCombine: Strength reduce sadd.with.overflow into a regular nsw add if we can prove that it cannot overflow.
a39d3ab [mips][mips64r6] Correct the encoding of dmuh, dmuhu, dmul, and dmulu.
2856d23 Phabricator doc: Explicit the fact that the patch needs to be there before the commit
f9749ed [x86] Relax the line in this check to pacify build bots.
b2a3131 [x86] Move some check lines to be slightly easier for me to find.
a46e60e [x86] Generalize BuildVectorSDNode::getConstantSplatValue to work for any constant, constant FP, or undef splat and to tolerate any undef lanes in a splat, then replace all uses of isSplatVector in X86's lowering with it.
c5bc152 Add an explicit bool operator to SDValue to make it easier to test for a non-null node. In particular, this makes it easier to use condition variables with SDValues, etc.
1bd30dc [X86] Limit maximum nop length on Silvermont
546cfbf XCore target: remove incorrect DebugLoc entries from prologue
f8be6fb Let test/Unit/lit.cfg add config.shlibdir to $PATH on DLL platforms like cygming.
7ca91f9 [CMake] Introduce LLVM_ENABLE_PLUGINS as an internal option. BUILD_SHARED_LIBS may not control enable/disable plugins.
1f8525a [CMake] Introduce LLVM_SHLIB_OUTPUT_INTDIR.
a84cb68 [CMake] Fix set_output_directory to do nothing if *_OUTPUT_INTDIR was not given.
e6b4407 Fix prefix comparison from r212308
1baa5d8 Move function dependent resetting of a subtarget variable out of the subtarget. This involved having the movt predicate take the current function - since we care about size in instruction selection for whether or not to use movw/movt take the function so we can check the attributes. This required adding the current MachineFunction to FastISel and propagating through.
2255dc7 Sink undesirable LTO functions into the old C API
0042887 InstSimplify: Fix a bug when INT_MIN is in a sdiv
5c58257 Modify LTOModule::isTargetMatch to take a StringRef instead of a MemoryBuffer.
59349ad gold plugin: move target initialization to the top of the onload function.
1e64b30 LTO: rename the various makeLTOModule overloads.
ab419e6 Move createIRObjectFile to the IRObjectFile class and return the concrete type.
040dd45 [x86] Clarify that this lowering only applies to vectors and is only used when we have SSE2.
8b5ac4f Use std::unique_ptr to manage memory. No functionality change.
3a39415 Temporarily revert "Don't try to construct debug LexicalScopes hierarchy for functions that do not have top level debug information." as it appears to be breaking some LTO constructs.
3c58743 Remove caching of the target machine and initialization of the subtarget from ARMISelDAGtoDAG. The former is unnecessary and the latter is initialized on each runOnMachineFunction.
60e9a53 [CostModel][x86] Improved cost model for alternate shuffles.
26272de Add the -just-symbol-name (aka -j) flag to llvm-nm to just print the symbol’s name.  On darwin the -j flag is used (often in combinations with other flags) to produce a complete list of symbol names which than can then be reorder and used with ld(1)’s -order_file.
d4167d0 [X86] Add ISel patterns to select 'f32_to_f16' and 'f16_to_f32' dag nodes.
bc04f3c Expand the note about llvm-ar now that inline asm works.
95c1ba6 Move test since it now depends on the x86 backend.
f47a706 LTO depends on Object now.
96052a8 Add support for inline asm symbols in llvm-ar.
dfb53d2 Run interprocedural const prop before global optimizer
c029b2b fix configure+make build
0a7a2ef Add support for inline asm symbols to IRObjectFile.
c150516 Add the -U flag to llvm-nm as an alias to -defined-only as darwin’s nm(1) uses -U for this functionality.
0e1e88e fixed typo in comment
8234268 IR: cleanup Module::dropReferences
090a8f4 [ARM] Implement ISB memory barrier intrinsic
1a699b6 bug fix for PR20020: anti-dependency-breaker causes miscompilation
1ef2cec Fix ppcf128 component access on little-endian systems
76a2f8d [msan] Stop propagating shadow in blacklisted functions.
1bb48fa [msan] Add missing attributes in MemorySanitizer tests.
7bf5a63 Revert of r212265.
7b605fc [msan] Stop propagating shadow in blacklisted functions.
a8f7c5c Minor stylistic fix in SimplifyCFG (test commit)
693b9ee Let llvm/test/CodeGen/X86/lower-bitcast.ll tolerant of win32 calling convention.
90ac572 [x86] Fix the completely broken vector widening legalization of bswap.
7e924a6 [x86] Fix crashes in lowering bitcast instructions with the widening mode.
c179202 [aarch64] Add a test that should have been in r212242 but I forgot to add it. Sorry about that.
fa9ca85 Add new lines to debugging information.
0795d30 [x86] Based on a long conversation between myself, Jim Grosbach, Hal Finkel, Eric Christopher, and a bunch of other people I'm probably forgetting (sorry), add an option to the x86 backend to widen vectors during type legalization rather than promote them.
7413fef Invert the MC -> Object dependency.
af457ab Make these preprocessor directives match all of the others in the port.
53616b4 Remove dead code.
7096836 [codegen,aarch64] Add a target hook to the code generator to control vector type legalization strategies in a more fine grained manner, and change the legalization of several v1iN types and v1f32 to be widening rather than scalarization on AArch64.
1ccffdf Move subtarget dependent features into the subtarget from the target machine. Includes a fix for a subtarget initialization for hard floating point on mips16.
ba0f074 So that we can include frame lowering in the subtarget, remove include circular dependency with the subtarget by inlining accessor methods and outlining a routine.
1faddea Add the -reverse-sort flag (aka -r) to llvm-nm which exists in other Unix nm(1)’s.
be453c5 So that we can include target lowering in the subtarget, remove include circular dependency with the subtarget by inlining accessor methods and outlining a routine.
bd29877 Update comment and include guard.
2c95cdc [OCaml] Documentation improvements.
9c05de8 Fix typos.
231537a Revert "DebugInfo: Ensure that all debug location scope chains from instructions within a function, lead to the function itself."
fddd7ad Move the data layout and selection dag info from the mips target machine down to the subtarget.
998743e [X86] AVX512: Allow writemask argument in vpermt* intrinsics
31d2114 [X86] AVX512: Generate Pat<>'s for the vpermt2* intrinsics via multiclass
df5d431 [X86] AVX512: Add writemask variants for vperm*2*
fad0de3 R600: Add a comment that llvm.AMDGPU.trunc is a legacy intrinsic
4a70647 R600/SI: Use a ComplexPattern for ADDR64 addressing of MUBUF loads
1378871 R600: Promote i64 loads to v2i32
b48c8c4 R600/SI: Adjsut SGPR live ranges before register allocation
a75d388 R600/SI: Add verifier check for immediates in register operands.
7950cae Remove non-static field initializer to appease MSVC
773d63e Fix configure+make build.
cca0887 Move CFG building code to a new lib/MC/MCAnalysis library.
a422113 DebugInfo: Ensure that all debug location scope chains from instructions within a function, lead to the function itself.
5599fde [RegAllocGreedy] Provide a subtarget hook to disable the local reassignment heuristic. By default, no functionality change. This is a follow-up of r212099.
f9b6d03 Don't try to construct debug LexicalScopes hierarchy for functions that do not have top level debug information.
8446d2d Constify the Function pointers in the result of makeSubprogramMap
9b4509a AArch64: Re-enable AArch64AddressTypePromotion
a952530 AArch64: Remove unnecessary parens
b1fb2ba R600: Fix crashes when an illegal type load or store is not handled.
411b036 Just adding a getHalfTy method to IRBuilder for completeness.
8ec4365 AArch64: Merge isa with dyn_cast
0c4d7a1 XFAIL the test to go with r202189
2a56dd8 AArch64: Temporarily disable AArch64AddressTypePromotion
1b6333c [ASan] Print exact source location of global variables in error reports.
5ee1c8f Revert "Revert "MachineScheduler: better book-keeping for asserts.""
6508430 Also document the 'arc commit' commands in the 'Committing a change' section of the Phabricator doc
11be760 X86: When combining shuffles just remove shuffles that are completely redundant.
a3af27a Undefine R2, R4, R6 after use.
0780b6d AVX-512: dec/inc instructions are slow on KNL After Alexey Volkov, I'm adding the same property for KNL, that prefers ADD/SUB instead of INC/DEC. Added a test.
f5ec1bd Move operator[] to DomTreeNodeBase
d0fb0f4 Fix missing const
3e01ae9 InstCombine: Optimize x/INT_MIN to x==INT_MIN
5f8c844 [cleanup] Hoist an if-else chain on ISD opcodes (really designed for switches) into a switch, and sink them into a dispatch function that can return the result rather than awkward variable setting with breaks.
35f5448 InstCombine: Add a vector variant test for PR20186
5f5939c InstCombine: Don't turn -(x/INT_MIN) -> x/INT_MIN
90fdedc Add range for-loop iterator adapter for cases in SwitchInst.
8f91084 aarch64: support target-specific .req assembler directive
b80dce0 [cleanup] Remove dead 'break;' statements that I meant to nuke in r212158 but missed.
5c65424 [cleanup] Hoist the promotion dispatch logic into the promote function so that we can use return to express it more cleanly and avoid so many nested switch statements.
42caaf8 [cleanup] Nuke the 'VectorOp' bit of the promote method names.
75af7b3 [x86] Clean up and modernize the doxygen and API comments for the vector operation legalization code.
290a59d Break out subtarget initialization that dependent variables need into a separate function and clean up calling convention for helper function.
110493f Unify these two lines.
b40edb9 Move MipsJITInfo to the subtarget rather than the target machine.
d5c4b1a Remove unnecessary include.
fe1686d Remove the cached InstrItineraryData on the TargetMachine, it's unnecessary.
6dfd006 Remove the recommendation against using std::function
65e0e46 Move the subtarget dependent features from XCoreTargetMachine down to the subtarget.
9223ec2 Make XCoreSelectionDAGInfo take a DataLayout since it only needs that information.
6239974 Also run clang-format on llvm-nm.cpp to tidy things up. No functional changes.
9c23bd0 Run clang-format on llvm-size.cpp to tidy things up. No functional changes.
f260397 [FastISel] Factor out stackmap intrinsic selection code into a dedicated helper method. NFCI.
115f366 X86: remove atomic instructions *after* we've iterated through them.
7590926 [DAG] Pass the argument list to the CallLoweringInfo via move semantics. NFCI.
99ec36c X86: delegate expanding atomic libcalls to generic code.
3ca3826 Optimize InstCombine stack memory consumption
a96332b Move remaining LLVM_ENABLE_DUMP conditionals out of the headers
49ec6e9 DebugInfo: Keep track of subprograms who's arguments have been promoted.
d7ffdcd Move the subtarget dependent features from SystemZTargetMachine down to the subtarget. Add an initialization routine to assist.
389c2dd Remove the use and initialization of the target machine and subtarget from SystemZFrameLowering.
f652ec5 DebugInfo: Provide a utility for building a mapping from llvm::Function*s to llvm::DISubprograms
4f5fa35 AArch64: fix comment typo
5c8b83e X86: expand atomics in IR instead of as MachineInstrs.
a454a5d [docs] Fix a mangled sentence.
6cb0af5 [docs] Remove stray HTML tag.
1cbd129 [X86] AVX512: Allow writemasks with vpcmp
4fd1c54 [X86] AVX512: Factor generating the AsmString into avx512_icmp_cc
582dd1e Revert "MachineScheduler: better book-keeping for asserts."
adaa88e Add the -arch flag support to llvm-size like what was done to llvm-nm to select the slice out of a Mach-O universal file.  This also includes support for -arch all, selecting the host architecture by default from a universal file and checking if -arch is used with a standard Mach-O it matches that architecture.
4797c30 [PeepholeOptimzer] Fix a typo in a comment. Spotted by Amara Emerson.
58d452b Remove unused typedef. GCC warns about this.
f44809c GlobalOpt: Don't swap private for internal linkage
553b2c9 GlobalOpt: FileCheck-ize test

git-subtree-dir: llvm
git-subtree-split: 05388f25d7d280a58f13770b03986d44432628bb
Merge with LLVM.
Squashed 'llvm/tools/clang/' changes from 4dfce5a..e559847

e559847 [OPENMP] Initial parsing and sema analysis for 'flush' directive.
76fc5c5 [OPENMP] Parsing/Sema of the OpenMP directive 'critical'.
88b9e43 Trivial doc fixes: add missing whitespace, and s/overriden/overridden/g.
441ac42 Add clang::DesignatedInitExpr::designators() for range-based access, with overloads for designators_range and designators_const_range.
6bc037c Add missing initialization found due to a valgrind false positive. This field is never inspected in the object state initialized by this constructor; however, initializing it seems reasonable, since it has a meaningful value.
d3e7a20 [modules] Fix some of the confusion when computing the override set for a macro introduced by finalization. This is still not entirely correct; more fixes to follow.
05fbd2d [OPENMP] Added several test cases for clauses 'ordered' and 'nowait': if there are more than one 'nowait' or 'ordered' clause an error message is expected.
8dae99b [PowerPC] Optimize passing certain aggregates by value
3e86dfc [PowerPC] Support the ELFv2 ABI
c323166 If a module build reports errors, don't try to load it
bbc8979 Revert D3908 due to issues on Mac platforms
884314b Cleanup comparisons to VariableArrayType::Static for non-VLAs
4390075 TypePrinter should not ignore IndexTypeCVRQualifiers on constant-sized arrays
ec38564 Use the dereferenceable attribute on C99 array parameters with static
4b691c5 PR20356: Fix all Sema warnings with mismatched ext_/warn_ versus ExtWarn/Warnings. Mostly the name of the warning was changed to match the semantics, but in the PR20356 cases, the warning was about valid code, so the diagnostic was changed from ExtWarn to Warning instead.
d8a87ff clang/test/Misc/backend-optimization-failure.cpp: Appease to add -triple=x86_64.
1614d5c Remove uses of the redundant ".reset(nullptr)" of unique_ptr, in favor of ".reset()"
e7fa63a [MS-ABI] Assign SEH handler indices to __try blocks Assigns indices to try blocks. These indices will used in constructing tables that the mscrt function __except_handler3 reads during SEH. Testing will occur once we actually emit the tables, in a subsequent patch.
efe0575 CodeGen: Properly null-check typeid expressions
41b1c73 Revert r213415, "Merge two lines". It broke tests in -Asserts builds.
05e95a9 [X86 inline-asm] Error out on inline-asm constraint "=f".
170c2dd TypePrinter should not omit the static keyword in array parameter declarators
8fe24af Objective-C. Patch to warn if the result of calling a property getter is unused (this is match behavior when property-dot syntax is used to use same getter). rdar://17514245 Patch by Anders Carlsson with minor refactoring by me.
23f37c4 Reinstate r213348, reverted in r213395, with an additional bug fix and more thorough tests.
d098c02 Merge two lines
15bbd9f Revert "CodeGen: Properly null-check typeid expressions"
3606220 Address Richard's latest feedback.
b7b8b12 Address Richard's comments
595a314 Address Richard's comments.
5999ae2 CodeGen: Properly null-check typeid expressions
f123d90 Recommit: Handle diagnostic warnings in Frontend diagnostic handler.
a627c56 Revert "[modules] Fix macro hiding bug exposed if:"
415913b [UBsan] Skip -fsanitize=vptr instrumentations when the pointer value is null.
82b49e4 Make sure globals created by UBSan are not instrumented by ASan.
edb71bd For i386, gcc 4.9 under Debian (at least) updated its paths to i586-linux-gnu (i486-linux-gnu previously). Adding this triple to the list of search. Also impacts clang 3.4.2
4cdf252 Mark C++ reference parameters as dereferenceable
d100f97 [mips] Use Triple::getVendor() instead of Triple::getVendorName() to identify 'mti' vendor triples.
4704b08 Revert "Emit lifetime.start / lifetime.end markers for unnamed temporary objects."
dbf785a Emit lifetime.start / lifetime.end markers for unnamed temporary objects.
6590426 Moved 25 flags to clang_ignored_gcc_optimization_f_Group. Will display a warning to the user if they try to pass those optimizations. The revision for this patch is here: http://reviews.llvm.org/D4474. This patch will fix many errors in the rebuild of Debian with clang. Here is a link to the page for unknown arguments: http://clang.debian.net/status.php?version=3.4.2&key=UNKNOWN_ARG
9a1024b ARM: Add test for ACLE memory barrier intrinsics
570d14d [OPENMP] Initial parsing and sema analysis for 'taskwait' directive.
3ea0be6 [OPENMP] Initial parsing and sema analysis for 'barrier' directive.
2ef74c1 [ARM] Fix AAPCS regression caused by r211898
27b4c37 [OPENMP] Initial parsing and sema analysis of 'taskyield' directive.
08942b4 [AArch64] Implement Clang CLI interface proposal about "-march".
8a0ed00 Parse: Diagnose malformed 'message' arguments for 'availability' attr
6b5f89d Add dump() for MacroDirective and MacroInfo.
fdee4dc [modules] Fix macro hiding bug exposed if:
e0eea0c Cleanup: remove essentially unused variable.
9d06d6c Mark the vtable used when defining implicit copy and move ctors
9e7299c SemaInit.cpp: Fix a warning with -Asserts. [-Wunused-variable]
fadb218 Fix parsing certain kinds of strings in the MS section pragmas
8746483 Check-labelize ubsan tests
bfd892e PR20346: fix aggregate initialization / template instantiation bug:
cc6546f clang/test/CodeGen/ms-inline-asm.c: Fix for -Asserts.
80bfbba Revert "unique_ptr-ify ownership of ASTConsumers"
9a8dc24 Prune empty directories.
4d15e34 unique_ptr-ify ownership of ASTConsumers
6042ad3 Add a test for PR20343 after llvm r213303.
49582c4 MS compatibility: always emit dllexported in-class initialized static data members (PR20140)
0d120a4 If char/short are shorter than int, do not use U as suffix for constants. Comparing int against a constant of the given type like UINT8_MAX will otherwise force a promotion to unsigned int, which is typically not expected.
e240b41 Always set the C suffix macro, even if it is empty.
823c2c3 clang-cl: Flush stdout after writing the /showIncludes output
f35aa78 [UBSan] Add !nosanitize metadata to the code generated by UBSan.
fa80ad7 Provide __SIG_ATOMIC_MAX__ next to __SIG_ATOMIC_WIDTH__.
861ef17 Wrap a comment to 80 columns, no code change.
a237105 Objective-C. deprecated attribute is not inherited on methods overriden in interfaces and protocols (this is already the case for properties). rdar://16068470
85b8c02 Handle __assume in the VoidExprEvaluator
ab2d838 Add an __assume side-effects warning
3c57879 Using a std::string instead of a StringRef because the Default case synthesizes a temporary std::string from a Twine. Assigning that into a StringRef causes the StringRef to refer to a temporary, and bad things happen.
f342252 [OPENMP] Initial parsing and sema analysis of 'mergeable' clause.
8aee075 ARM: Add ACLE memory barrier intrinsic mapping
a05c42b Revert "Handle diagnostic warnings in Frontend diagnostic handler."
5d44f97 Fixing the objc_runtine_name documentation so that the code block is properly generated.
381ccdd clang-format: Fix parsing of conditional expressions.
738204e [OPENMP] Initial support for parsing and sema analysis of 'untied' clause.
6aa8d6a Upstream an MS inline assembly test from Mozilla's inline assembly code
cd6c621 Port memory barriers intrinsics to AArch64
7f65af4 IR: update Clang to use polymorphic __fp16 conversion intrinsics.
d462e61 [mips] Pass the ABI to the integrated assembler and add tests the existing arguments.
0b17b9e [OPENMP] Parsing/Sema analysis of directive 'master'
fc48dfd Consistency on the tab/space
f29418d Fix Bug 14061 -  scan-build crashes during postprocessing if BUGFILE no longer exists Experienced with Thunderbird build
ff45f69 [OPENMP] Initial parsing and sema analysis for 'final' clause.
01ee2dc Track the difference between
94b8686 Fix FriendDecl source location and range for class templates and function declarations that don't start with 'friend' keyword. Add more unittests.
1c5822a MS ABI: Padding injected between empty vbases doesn't up required align
bf0b1aa DebugInfo: Forward HandleTagDeclRequiredDefinition through MultiplexConsumer to fix debug info emission in the presence of plugins.
08d6bbe Revert "Stuff"
cf25fe2 DebugInfo: Ensure the ASTConsumer "HandleTagDeclRequireDefinition" callback path is tested.
0c982c2 Stuff
e85f0ef Add basic (noop) CodeGen support for __assume
cb74325 When list-initializing an object of class type, if we pick an initializer list constructor (and pass it an implicitly-generated std::initializer_list object), be sure to mark the resulting construction as list-initialization. This fixes an assert in template instantiation where we previously thought we'd got direct non-list initialization without any parentheses.
e8b35e1 Typically linker options are protected with -Xlinker or -Wl, however certain sloppy Makefiles pass -z options directly to the compiler. This patch enables clang to recognize these options (because -z is not used by clang itself).
7b183ff Specifying the diagnostic argument through the attribute table generator instead of having to enter it manually as part of the attribute subject list. This only affects attributes appertaining to ObjC interfaces and protocols.
906f34c Objective-C. Modify text of documentation for objc_runtime_name attribute.
6cdcc74 Removing a FIXME from the attribute parsing code by now passing along the scope and syntax information for attributes with custom parsing. It turns out not to matter too much because the FIXME wasn't quite true -- none of these attributes have a C++11 spelling. However, it's still a good change (for instance, we may add an attribute with a type arg in the future for which this code now behaves properly).
d818762 Objective-C. Changes per A. Ballman's comment for my last patch. // rdar://17631257
6bee63f Remove whitespace from test commit.
ef294b6 Test commit.
c922902 Add the --target option to clang-cl and use it to fix a test.
a73298a Don't use -msse2 in test/Driver/cl-options.c
6ce57c7 Simplify memory management in NestedNameSpecifierLocBuilder.
c308e86e [Driver][Mips] If CPU name is not provided to the driver explicitly use multilibs from the FSFS toolchain corresponding to the mips32r2/mips64r2 CPUs.
6c4abb1 Make clang's rewrite engine a core feature
9a14d87 clang-cl: expand test coverage for "core" options
29eea29 Objective-C. Introducing __attribute__((objc_runtime_name("runtimename")) to be applied to class or protocols. This will direct IRGen for Objective-C metadata to use the new name in various places where class and protocol names are needed. rdar:// 17631257
00bd3a1 Expand the wildcard expansion test to also cover '?'
0b8edfd clang-cl: make sure we still parse -fms-version= after r213119
7d78fb0 Revert "clang/test/Driver/crash-report.c: This requires rewriter for -frewrite-includes. [PR20321]"
2d3dce1 [ASTMatchers] Add a usingDirectiveDecl matcher.
e33fc34 clang/test/Driver/crash-report.c: This requires rewriter for -frewrite-includes. [PR20321]
47f74a0 clang/test: Introduce the feature "rewriter" for --enable-clang-rewriter.
50ff53f Move clang/test/Frontend/rewrite-*.c to clang/test/Frontend/Rewriter/
5caf4c5 Trailing linefeed.
8f3316b [Driver][Mips] Reduce code duplication - use existing function getMipsCPUAndABI() to get MIPS ABI name during multi-library selection.
35cba27 [Driver][Mips] Remove flags which is not used in multi-library selection.
a77c304 [Driver][Mips] Reduce code duplication. Remove static isMipsNan2008() function. Use the tools::mips::isNaN2008() routine instead.
8e19f98 clang/test: Introduce the feature "staticanalyzer" for --enable-clang-static-analyzer.
89b7149 clang/test/Sema/warn-documentation-almost-trailing.c: Rewrite checks with @LINE.
6f4b4a8 [mips] Correct the invocation of GAS in several cases.
d219ccb [mips] Add support for -mfpxx and -mno-fpxx.
8eb4914 Don't add -Bsymbolic by default on Android.
07a2449 MS ABI: Up the required alignment after inserting padding between vbases
cf23bae AST: Convert a SmallPtrSet to a SmallPtrSetImpl in RecordLayoutBuilder
756e0a9 AST: Cleanup RecordLayoutBuilder
e5e1acf Improve error recovery around colon.
c074185 Driver: bifurcate extended and basic MSC versioning
8aec443 Add a test for wildcard expansion on Windows
1d32c78 Handle diagnostic warnings in Frontend diagnostic handler.
f61e71d Avoid referencing the vtable when calling the ctor without emitting it
14edde6 Use the integrated assembler by default on OpenBSD/sparc.
7257a70 Switching some iterator-based for loops to use range-based for loops. No functional changes intended.
7ed5600 Add __INTMAX_C_SUFFIX__ and __UINTMAX_C_SUFFIX__.
87caff7 Added the pack_elements range accessor. Refactoring some for loops to use range-based for loops instead. No functional changes intended.
a1c5477 clang-cl: Implement the -arch flag
fc675fb Improve test of my previous patch. rdar://17633301
e20f08b Add codegen for more R600 builtins
5f5ba36 Objective-C IRGen. Fixes an inconsistant linkage of ObC's metaclass metadata with its class metadata which results in an assert. rdar://17633301
3c09317 Don't create non-temporary twines.
2c6c327 Make sure int64_t and uint64_t are consistent.
a3e118e Prune Redundant libdeps in CMake's target_link_libraries and LLVMBuild.txt.
70138bc Provide builtin macros as template for PRIab and SCNab, matching the underlaying types.
0398cdf clang-format: Improve heuristic around avoiding bad line breaks.
03f233f AST: Don't walk all redeclarations when looking for a uuid attr
f984658 [modules] Rearrange and unify the way we determine if we need to pull in redeclaration chains when pulling in a declaration. We need the redecl chain unless we know some other declaration will trigger it to be pulled in; that happens if our originally-canonical declaration had all the knowledge that we have (and isn't us).
3d33678 [OPENMP] Several cosmetic fixes in comments, tests and the code for '#pragma omp single'.
7afe89e Don't get confused on the number of braces when braces start after the first __asm
9e5a027 VirtualFileSystem: Correctly generate the mapping for an empty VFS
a1f3ec3 PR19751: (T())++ is not a cast-expression.
8106487 AST: Fix __uuidof for template specializations
a8a6d06 Revert "Revert "Move clang feature flags settings out of LLVM core and into cfe""
654728d Remove dead code.
c3d50b0 Define ENABLE_CLANG_ARCMT in the legacy build system too
1f1cd79 AST: Cleanup __uuidof related code
d3a379f Revert "Move clang feature flags settings out of LLVM core and into cfe"
972dfa6 Continue parsing an expression list even after an error is encountered.
4653154 Move clang feature flags settings out of LLVM core and into cfe
a6f7538 Fix build with various feature flag combinations
8a534e0 Fix the !CLANG_ENABLE_ARCMT build
738e858 Try harder to supress the test from r212975 on Windows
cdc2489 Drop separate UIntMaxType and just derive it from IntMaxType.
cc82b49 Introduce getCorrespondingUnsignedType() in TargetInfo to work like the corresponding AST context function, only restricted to basic integer types. Use this to ensure getUIntPtrType() gives types consistent with getIntPtrType(). Fix NVPTX backend to give signed intptr_t.
8ef0e08 XFAIL test that doesn't work on Windows yet
d7d2678 In C++98, if an rvalue reference binds to a function lvalue (or an xvalue or an array prvalue), treat that as a direct binding. Only the class prvalue case needs to be excluded here; the rest are extensions anyway, so we can treat them as we would in C++11.
74261e3 Fix case-sensitivity of inferred framework modules
c7645b9 Fix typos
8e53f7b Avoid non-attributive uses of 'unsupported' in diagnostics
2b35438 Document the forward of the -u option (r211756)
b6c2002 Document the warning triggered by the unsupported gcc optimization flags (r212805)
a4ea60f Revert "Improve error recovery around colon."
b78ef28 Change the diagnostic group for unsupported gcc optimizations added r212805
69e17f8 Improve error recovery around colon.
f685eac CodeGen: Let arrays be inputs to inline asm
5573271 ARM: Add NOP intrinsic mapping in arm_acle.h
dbc52fa ARM: Implement __builtin_arm_nop intrinsic
9bb9a71 [ASTMatchers] Make hasOverloadedOperatorName also match freestanding overloads.
2188f45 clang-format: Improve cast detection (fix false positive).
8c86694 [x32] Add __ILP32__ macro for ILP32 platforms
7904f8c [CMake] Update libdeps.
918cbcd [CMake] Reorder libdeps by alphabetical order.
a1f8d5a Superficial fix for PR20218: binding a function lvalue to a const reference to a function pointer is neither better nor worse than binding a function lvalue to a function rvalue reference. Don't get confused and think that both bindings are binding to a function lvalue (which would make the lvalue form win); the const reference is binding to an rvalue.
03fb337 Remove trailing spaces
351be02 Add test cases for AArch64 hints codegen
d7f8623 [CMake] Give explicit dependencies to a couple of modules, PrintFunctionNames and SampleAnalyzerPlugin, for Win32.DLL.
8a8e287 PrintFunctionNames/CMakeLists.txt: Fix a comment.
1fef4d1 MS ABI: Stick internal vftables in a comdat if they have RTTI data
ca1863e tests: use a more precise target for tests
71f06af Headers: add hint intrinsics to arm_acle.h
8338236 CodeGen: support hint intrinsics from ACLE on AArch64
d5b9b66 Improve comments of ARM ACLE header file and tests
853001f Add nonnull in CodeGen for __attribute__((returns_nonnull))
a9b243c [ASan] Collect unmangled names of global variables in Clang to print them in error reports.
689cbf5 Require an x86 registered target for this test by splitting it out
f7c672d clang-cl: Make all x86 CPU feature flags available, such as -msse3
9e49262 Form a CallExpr from __noop without parens
37cf385 [Driver] clang::driver::getARMCPUForMArch() moved to llvm::Triple::getARMCPUForArch().
aed9b33 Consolidate header inclusion diagnostics
4ad1987 CodeGen: Don't emit a thread-wrapper if we can't touch the backing variable
7162d25 oops. correct the prefix.
4cc2802 MS extension: Make __noop be the integer zero, not void
7992a8c Handle SPARC float command line parameters for SPARCv9.
f518205 [modules] When merging a class template, also merge the definition of its pattern.
785c093 Add nonnull in CodeGen for __attribute__((nonnull))
6735f36 Test for warning being silenced
e6d998b The returns_nonnull attribute does not require a function prototype because it affects only the return value, not any arguments. In turn, asking for a function or method result type should not require a function prototype either, so getFunctionOrMethodResultType has been relaxed.
a3953a1 Instantiate llvm::Registry<clang::PluginASTAction> in FrontendAction.cpp.
4257081 [PATCH] [x32] Introduce -mx32 flag enforcing x32 mode for other triplets. By Pavel Chupin (@pavel.v.chupin).
acf4f85 Tiny improvement in a test (missing quote)
e2b3273 GCC compatibility: Create a Group to ignore unsupported optimization.
3e0fef6 [OPENMP] Parsing and sema analysis for 'omp task' directive.
35bd5e0 Don't assume StringRef.data() is null-terminated
82d2244 TestAfterDivZeroChecker.cpp: Avoid member initializer. It is unsupported in msc17.
15fd318 [modules] Don't try to merge template specializations by performing name lookup into their container; we won't find them there. These things are already being merged when they're added to their primary template's folding set, so this merging is redundant (and causes us to reject-valid because we think we've found an odr violation).
b882439 clang/test/CodeGenCXX/PR20038.cpp: Appease targeting msvc due to incompatibility of dw.
39e61f3 Return a FixItHint instead of taking a diagnostic builder
019a53f MSVC compat: Allow lookup of friend types in enclosing namespaces
adc3bbe Enable -gcolumn-info by default.
42a30a2 Add AST dumping for VarDecl init kind.
5e57138 [UBSan] Introduce type-based blacklisting.
2b1d509 Be more specific about return types of some methods.
47e86a8 PR20256: don't accidentally instantiate non-dependent default-initialization as value-initialization.
f691c0f Fix the dtor location issues in PR20038 harder.
800e59f Fix (and reenable) ppc64-align-struct.c test for non-assert builds.
ce245b6 Remove use of uniform initialization ({}) introduced in r212725 since this isn't supported in MSVC.
669295c Avoid definining more GCC specific predefined macros in clang-cl
9d6be45 Quick (attempted) fix for non-asserts builds for a test introduced in r212743.
c5cc701 [Driver/Unittests] Follow up for r212666, add unit test for the newly exposed getARMCPUForMArch() function.
ec81a0d [PowerPC] ABI support for aligned by-value aggregates
5ebac2a Provide -verify support to match "any" line for diagnostics in included files.
9208996 [PowerPC] ABI support for non-Altivec vector types
ca8175a Fix clang tests to be compliant with LLVM IR aliases
00a1ef8 [analyzer] Check for code testing a variable for 0 after using it as a denominator.
1ad1932 [Codestyle][x32] Cosmetic codestyle fix.
85809dc [x32] Adding X32 target support to driver, including TargetInfo,DescriptionString, flags, paths lookup, etc. Cover changes with new tests. The author of the patch is Pavel Chupin (@pavel.v.chupin). The changes enable "hello world" on x32 target (x86_64-*-linux-gnux32). s/isX32/IsX32/ also fixed.
411e236 [mips][mips64r6] Add support for mips-img-linux-gnu GCC toolchains
82f92cf [mips] Add support for -modd-spreg/-mno-odd-spreg
5f9d646 Add clang headers that fix machine-dependent definitions on FreeBSD 9.2 Differential Revision: http://reviews.llvm.org/D3908
1c09ec2 Prevent link warnings due to -Wframe-larger-than=
10ee117 MS ABI: Fix __fastcall methods that return structs
ec29bf6 Cleanup. No functionality change.
a478bb9 [Driver] Expose getARMCPUForMArch() function in the Driver API; NFC.
e21afe1 Decouple llvm::SpecialCaseList text representation and its LLVM IR semantics.
48f80aa Sema: Allow aliases to have incomplete type
4a3ff91 [mips][mips64r6] Implement -mips32r6 and -mips64r6 aliases to -march=mips32r6 and -march=mips64r6
4d67e11 Prospective legacy build system fix following r212620
42a2919 Remove dead code from r212620
f91334a Fix 'source-level' hyphenations
5114f4f cc1as: consolidate option flags with cc1 and eliminate duplication
c1fd3f5 [mips][mips64r6] Define _MIPS_FPSET, __mips_fpr, and __mips_nan2008 correctly on MIPS32r6/MIPS64r6
51435da [mips] clz is defined to give 32 for zero. Similarly, dclz gives 64.
fa308e3 clang-format: Fix behavior around pointer-to-member invocations.
9ec2f37 Fixed incompatibility with MSVC builds in range-based for loops in DataRecursiveASTVisitor and RecursiveASTVisitor for OpenMP constructs.
e2e8e7d Revert commit 212599.
75fe0fd [OPENMP] Fixed incompatibility in [Data]RecursiveASTVisitor::TraverseOMPExecutableDirective method with MSVC for range-based loops.
e25cedc ARM: use LLVM's atomicrmw instructions when ldrex/strex are available.
bdfb538 clang-format: Add new option to indent wrapped function declarations.
7f43bfc clang-format: Update flag documentation.
3bfd0a7 [OPENMP] Improved code of DataRecursiveASTVisitor and RecursiveASTVisitor for OpenMP constructs per Tobias Grosser comments.
93dad34 clang-format: Revamp function declaration/definition indentation.
fce1b28 Fix typos.
0035057 clang-interpreter: don't check input file existence, we're in-process
4228571 Simplify warning flag value handling from r206826
f2c1fe0 rewrap to 80 cols, no behavior change
038f445 rewrap to 80 cols, no behavior change
16251bd MS compat: Allow lookup of types from dependent bases in functions
e5274ba Remove unnecessary check for NULL
8ae2cf6 test: merge arm-intrin into ms-intrin, fix invocation
3df7e8e Allow more lookup of types in dependent base classes
9ed6e68 Don't pull in setjmp.h in -ffreestanding compiles.
38dbf7d Replace a few // comments with /**/ comments in headers, for consistency.
914aefe Sema: Don't allow CVR qualifiers before structors
0d54d89 PR20227: materialize a temporary when dynamic_casting a class prvalue to a reference type.
480be66 Update unit test for signature change.
68aa908 Turn some Twine locals into const char * variables.
87e7bf9 Improve memory ownership of vfs::Files in the FileSystemStatCache by using std::unique_ptr
6f64411 [OPENMP] Allow ‘reduction’ clause on ‘omp simd’ directive.
3d90267 Move misplaced x86_32 ABI code
61d27f1 [OPENMP] Parsing and sema analysis for 'omp parallel sections' directive.
9eb8a68 Headers: conditionalise more declarations
7569f62 Headers: mark arm_acle.h with extern "C"
7e57cd2 MS ABI: "Fix" passing non-POD structs by value to variadic functions
b6f5499 [ASan] Completely remove sanitizer blacklist file from instrumentation pass.
a1b4c60 Rename static function to better describe its purpose
36ed909 [Sanitizer] Remove brittle cache variable and slightly simplify blacklisting code. Now CodeGenFunction is responsible for looking at sanitizer blacklist (in CodeGenFunction::StartFunction) and turning off instrumentation, if necessary.
a7f5538 [Sanitizer] Reduce the usage of sanitizer blacklist in CodeGenModule
7da527a libclang: pass return code out argument by reference
5c688ad ASTContext: Factor 'getObjCEncodingForPropertyType' as its own method.
077afe0 PlistSupport: make utility functions non-static inline to encourage linker dedup
8a6d0bb Driver: Produce crash diagnostics more often on Windows
4b58e15 Driver: Fix think-o in adding -ivfsoverlay flag to crashdumps
c12d3d3 Use temporary module cache in test
dab00ab Fix memory leak in FileSystemStatCache.
d31b4b9 Handle __builtin_clzs and __builtin_ctzs in the constant expression evaluator.
8af96c5 MS ABI: Don't unnecessarily use CGM abstraction
9965f00 Fix comment typo.
c785591 PTHInternals.rst: PCH is now a thing, update docs to reflect it
9bd9cc7 PTH: use a variable instead of a macro
36046a8 [OPENMP] Added initial support for 'omp parallel for'.
62700eb Increase argument limit of anyOf, allOf and eachOf from 5 to 9.
67d62bc Move ChainedIncludesSource into the implementation
1e2908f ChainedIncludesSource: avoid copying n*(n+1)/2 file contents into memory
3bf4498 PointerLoc does not exist anymore. SourceLocation is available from TypeLoc member functions.
6e1a697 Revert "Add lib/Codgen/[CGRTTI|MicrosoftRTTI].cpp to CMakeLists.txt (r212445)"
eb5bd06 Add lib/Codgen/[CGRTTI|MicrosoftRTTI].cpp to CMakeLists.txt
e9a2e9d Switch over a few uses of param_begin() to parameters()
5676ff3 Remove unused sys/stat.h includes
926f58b CodeGen: Cleanup MS ABI RTTI LLVM IR
57b86d0 Peel away old-style file remapping typedefs and cruft
032b0da Fix an iterator invalidation issue: deserializing a key function can write to the key functions table. Don't hold references to anything within that table across such an access.
1d944f5 StaticAnalyzer: Silence a warning
4269ad9 CodeGen: Refactor RTTI emission
d4689bb Fix layering of file remapping and header search initialization
841710b Add an explicit diagnostic for the case where an expression is not a constant expression because it uses 'this'. Inspired by PR20219 comment#2.
c89ca8a Cleanup. No functionality change intended.
3d44bd8 libclang: refactor handling of unsaved_files
d044b4f Update internals manual on how to add AST nodes.
2a5e840 Add an AST node for __leave statements, hook it up.
f16104c Sema: Check that __leave is contained in a __try block.
695370c Add parser support for __leave (sema and onward still missing).
8991359 Giving this test a triple to satisfy the build bots.
8cbb217 The MicrosoftExtensions.c test file should not rely on -x objective-c++. Removed that from the RUN line, fixed obvious C++isms in the code, and moved some C++ tests into MicrosoftExtensions.cpp instead. As a drive-by, changed the line endings for MicrosoftExtensions.c to be LF instead of CRLF.
06c45a6 This test case does not require -Wno-missing-declarations or -x objective-c++.
82deeaf Move InterlockedBitTestAndSet into its own test file
860df57 Update for llvm api change.
bdb203a Fix typo in comment.
d187d2b PlistSupport.h: avoid gcc 'defined but not used' warning
0a9f133 libclang: make darwin pthread hacks conditional on LLVM_ENABLE_THREADS
8d331d4 Modernize a couple of loops
5064872 Fix the MicrosoftExtensions.c target
6d55e30 Enable the InterlockedBitTestAndSet test
eb5c870 Add support for nested blocks in Microsoft inline assembly
1088db3 Use non-intrusive refcounting for TargetOptions
3e84eb7 Use non-intrusive refcounting for LangOptions
f7445e6 Constify a read-only parameter and give function a better name
94c392c writeARCDiagsToPlist(): make sure all diag levels get handled
e62c5d9 Use PlistSupport in a few more places
ed779c5 clang-cl: /showIncludes output should go to stdout, not stderr. Fixes PR20217.
f8dfdda Remove leftovers of '-arcmt-modify-in-memory' from r133315
f5933da CodeGen: add support for a few MSVC ARM intrinsics
b514dc7 Add a test case for the tilde operator in Microsoft inline assembly
c556f81 Track IntrusiveRefCntPtr::get() changes from LLVM r212366
a6f7638 CodeGen: add support for MSBuiltin aliases
5936356 Prune some ignored warning options
67eada0 Fix up the test that expects the failure fixed in r212352
396ae5c [Driver][Mips] Support one more MIPS CPU name - octeon.
416e589 [Driver][Mips] Support more MIPS CPU names: mips1 - mips5.
ed9c679 gcc comptability: silent -fdefer-pop & -fno-defer-pop
c905855 Let test/Unit/lit.cfg add config.shlibdir to $PATH on DLL platforms like cygming.
c4db1cd Trailing linefeed
e536f44 Fixed test CodeGen/captured-statements.c for powerpc64-linux.
94066cf Make a small crash preventing change.
846404f Restore global static array in test case
2a67eb1 The RTTI fallback is no more. Remove outdated diagnostic.
57e6028 [ARM] Implement ISB memory barrier intrinsic
a9f8b07 Add the __qdbl intrinsic to the arm_acle.h header
1b4002a Move the calling of emitTargetMD() later.
59a3055 refactor for-loop as range-loop before making changes.
90c138b ARMEB: Fix function result return for composite types
c1f371f [Driver][Mips] Check MIPS CPU name provided to the Clang driver.
d2e599c MS ABI: Get linkage of RTTI data correct
512e9c0 ARM: rename ARM builtins to use __builtin_arm prefix
af80d72 Address review feedback for r212238.
31ebd38 Enable clang to continue to parse libstdc++4.6 and stlport after r210091.
df463229 Update the MSVC compatibilty document for class template parsing
2e13025 Fix linkage bug that miscompiled variable templates instantiated from similarly named local types. In essence, this bug ensures that the x<Foo> specialization in function foo() defined as follows differs between two distinct translation units.     static int &foo() {        struct Foo { };        return x<Foo>;     }
ab528a3 More editorial issues in MSVCCompatibility.rst
0d0dedd Fix Typo in MSVCCompatibility.rst Also removed a sentance that was no longer relevant.
c181d71 Fixup typo in MSVCCompatibility.rst
38b6a39 CodeGen: make target builtins support languages
d2aaf2f Update the MSVC Compatibility document
3cb5e19 ARCMigrate: simplify diagnostic handling
5129a09 [ASan] Print exact source location of global variables in error reports.
6ae449d Added standard macro guard. In case __GNUC_VA_LIST was not defined or defined identically before there will not be any change in functionality.
fe2a635 [mips] Added additional test cases for passing -mabi to the assembler.
b3a64c5 [mips] Make FileCheck prefixes match the CPU they check
482e103 [Driver][Mips] If ABI name is not provided deduce it from the target triple not from the CPU name. This approach is closer to the method used by gcc driver.
ce437d1 ARM: add support for v8 ldaex/stlex builtins.
862a959 Make FunctionDecl::getReturnTypeSourceRange() support non-builtin types
f789c57 X86: inline all atomic operations up to 128-bits.
c533089 Don't accept qualified 'int' main return types in C++ or standard C mode
025330a Added test for capturing VLA types if the captured variable is a function parameter.
7a02dd6 [OPENMP, C++11] Improve code of InitVLACaptures function.
a262c94 Prevent Clang from crashing on template code.
645fd98 [OPENMP] Fixed error message reporting for nesting of regions
3535d21 Introduce a FunctionDecl::getReturnTypeSourceRange() utility
4a0faa1 clang/test/CodeGenCXX/microsoft-no-rtti-data.cpp: Relax an expression for -Asserts.
fabc740 CodeGen: Add some comments describing VFTable CG
8780c0d CodeGenCXX: Add tests for RTTI in VFTables
1d38bd7 Driver: Handle /GR- in a compatible way with MSVC
aa7c54e Win64: Disable uwtable until we fix .pdata emission in LLVM
998ac07 AST: Small simplification in VTableBuilder
31dc433 MS ABI: Reference MSVC RTTI from the VFTable
59819d4 clang-cl: Ignore /Zc:inline and /Zc:rvalueCast
e3a5fc3 GCC compatibility: Ignore -finput_charset=UTF-8 argument. It is the default in Clang. Currently, we fail with an error.

git-subtree-dir: llvm/tools/clang
git-subtree-split: e559847c3d4cf821fee268eafee4ac355ca834cd
Finish merge with Clang.
Squashed 'llvm/tools/lldb/' changes from 587afb8..aa63810

aa63810 build: silence GCC warning on Linux
2a919b5 Update CMakeLists.txt and Makefiles for building/linking the Hexagon ABI and Dynamic Loader
a94b332 Add the Hexagon DSP breakpoint opcode to PlatformWindows and PlatformLinux
3057177 ABI for the Hexagon DSP
861ec91 Dynamic loader for the Hexagon DSP
d18c815 Rename dosep.ty to dosep.py
4c4f4e1 Remove spurious debugging message from CMake.
af7a438 linux process: silence GCC switch coverage warning
48049f7 build: fix cmake warning with newer CMake
fb183ff Add the ability to suppress the creation of a persistent result variable and use in in "Process::LoadImage" so that, for instance, "process load" doesn't increment the return variable number.
9ab6460 In Process::LoadImage, use the same function call both to call dlopen and to collect the error if there is one.
2c0a5c5 LLDB now correctly handles virtual inheritance.
b9807d6 Allow the user to override the LLDB_TEST_COMPILER at CMake level.
613f1d6 Test commit.  Having trouble committing from one machine but not another, attempting to fix it.
9274d45 Fix a bug with order of operations.
71158e2 Make lldb -P work on Windows.
9bd6cd1 Fixing warnings shouldn't introduce a crasher.
ebeb21a Use PRIx64.
7df49a1 Use the designated PYTHON_EXECUTABLE during build.
5e053d3 Fixes a number of issue related to test portability on Windows.
104369d Fixed the objective C symbol parsing in ObjectFileMachO.
067a046 ReadPointedString takes a Stream not a DataBuffer.
b84a8a0 Create an _d suffixed symlink when doing a debug Windows build.
e0cfdf6 In Process::LoadImage, if dlopen returns 0x0 fetch the error with dlerror and report that in the returned Error.
0f25b24 Fixed our install-headers script to set version numbers correctly.
e5da87b Two fixes in the Objective-C language runtime:
fd99572 Modify the EFI KDP debugging to not use any dynamic loader since it does manual dynamic loading itself via python modules.
69c39f5 ^C wasn't interrupting an expression during a long evaluation or deadlock.
851dca4 Fix some warnings in the Windows build.
812eb3a Add Host::MAX_THREAD_NAME_LENGTH constant.
3125f2e Fix build broken as a result of r213171.
aeff268 gdb-remote test noise suppression on MacOSX.
3c80d7b Add kalimba as a platform.
3a1c21d Fixed the an objective C test case so it passes correctly.
ed0126a TestObjCMethods.FoundationTestCase was failing due to an error, fixed now.
12f524f Fix compile warning.
04c6d92 The following files:
d04c70e Any commands that are executed through the public interface using SBCommandInterpreter::HandleCommand() are assumed to be in non-interactive mode.
15057f2 If Process::Finalize() has been called, don't track process state changes.
231f331 lldb.LLDB_ARCH_DEFAULT now works correctly on Macs with haswell enabled kernels.
f514708 Modified gdb-remote tests to run with automatically-chosen ports.
4218d73 Fix lldb-gdbserver build
104b435 llgs: modify to accept --native-regs flag.
cf27edd Add FreeBSD failure decorator for TestCallStopAndContinue
81b63e5 Add FreeBSD decorator for TestMultipleDebuggers
241531c llgs: implement --setsid.
2997c85 lldb needs to support DW_op_piece masks for values in subregister and also to be able to piece together a value that is spread across multiple registers.
4cac99a Allow generic ARM cores to match any more specific ARM architecture.
36fd863 Remove assert now that we have a 'i' character that might come through as well as the 'q' character on the interrupt pipe.
dea3817 Added llgs --named-pipe support and program_name-version_number printout support.
f64e73c Don't crash when a SBType is handed out through the API and later used after the module that owns the type is deleted.
e9038cf Don't use "lldb." global variables in LLDB commands.
52113c6 Modify ObjectFileELF::GetArchitecture() to avoid calling ParseSectionHeaders() when we have headers.
f14f2d7 Prevent ObjectFileELF::GetSectionHeaderInfo() from reparsing section headers.
c04aa93 Enable the ability to enable debug info generation when evaluating expressions.
8e82ad1 Remove code that was merged incorrectly.
de67f09 Get the python scripting interface working on Windows.
82de616 Cleanup the iOS simulator code.
50edadf Flipped intermittent test failures from skip to XFAIL.
a84412b Move the post-build step that creates lldb.py.
4f3c5ab Add better logging to the new Python-based SWIG generation scripts.
45d0d02 Reapply typo fix.
13a556e Get the inferior binary's name via the command line argument instead of hardcoding it.
132e4c8 Fix test name.
150b0ea Fix a type mismatch in NativeProcessLinux that shows up in 32-bit builds.
818d326 Fixes for broken Debian build - g++ 4.7 support.
adf6d06 Add a new 'stresstest' category, set the api/multiple-debuggers test case as a stresstest.
d4c1924 Add a new test in api/multiple-debuggers which tries to create 50 debug sessions simultaneously to expose race conditoin/locking issues.
94d77b5 Skip tests that are intermittent on Linux, fix gdb-remote port-grabbing code.
04a3ad0 Skip TestCallStopAndContinue and TestCallThatRestarts on Darwin.
b6cc3ca Marked TestTargetAPI.test_launch_new_process_and_redirect_stdout_with_* as XFAIL on Darwin.
b06104e TestRealDefinition tests marked XFAIL on Darwin.
5e49d9a Marked failing TestObjCDynamicValue tests as XFAIL on Darwin.
15e01b4 Marked failing TestObjCDynamicSBType tests XFAIL on Darwin.
53d1966 Marked failing TestHiddenIvars tests as XFAIL on Darwin.
c58eb2a Marked TestObjCMethods failing tests XFAIL, fixed cleanup code, removed now-passing expected failure markers.
df90411 Marked failing test XFAIL for TestRegisterVariables.test_with_dsym_and_run_command on Darwin
c7ca308 Marked failing Darwin TestProcessLaunch tests as XFAIL
fc3803b TestDataFormatterStdVector.test_with_dsym_and_run_command marked XFAIL on Darwin
b23f88e Disable TestDataFormatterStdMap.test_with_dsym_and_run_command on Darwin
a79ca18 Make sure the "command regex add" has a unique name for editline history purposes.
ef92c46 Mark failing tests in TestDataFormatterObjC on Darwin as XFAIL
d5baa71 Dont' use a random probe & alloc strategy for the IRMemoryMap.
154364b Fix tests broken by the OptionValidator changes.
af2672d Revert "Fix broken tests due to new error output."
5e99fb1 __arm64__ and __aarch64__ #ifdef adjustments
de14ca1 Correct indentation level for one line.
31915c9 Tweak for lldb coding style consistency.
220155f Make sure that qProcessInfo packet returns correct cpu type/subtype for processes on Haswell machines with a Haswell enabled kernel.
71aab4b Add the ability to provide a "count" option to the various "thread step-*" operations.  Only step-inst and step-inst are currently supported, the rest just warn that they are not supported if you try to provide a count.
dff956f Document the "thread.completed-expression" feature in the "expression" command help.
ddbac88 Revert accidental change to Xcode project.
f83d94f Fix typos.
71211c21 Simplify Host::GetOSVersion() on macosx.
1fa6987 Remove hack from dotest.py to fix extra output on -P command, and fix MacOSX multi-threaded test run collisions on crashlog.dylib.
ec7c94f8e Fix broken tests due to new error output.
a1cf1f7 Fix broken MacOSX Xcode build for CommandOptionValidators.cpp.
9299068 Enable multi-process testing for MacOSX.
0d1ee4b Implment "platform process list" for Windows.
576f3e7 Fix a compilation failure caused by a non-const reference.
522892c Add docs for the "thread.completed-expression" format entry.
3b213d9 If a hand-called function is interrupted by hitting a breakpoint, then when you continue to finish off the function call, the expression result will be included as part of the thread stop info.
ca366a2 Invalidate process UID/GID-related command options on Windows.
982ea05 Mark test_watchpoint_multiple_threads_with_dwarf as XFAIL on Linux/clang.
c596cc5 Mark Radar9974002DataFormatterTestCase test XFAIL on Linux.
3ecd389 Marked TestLongjmp.py tests XFAIL for Linux.
5cfeb9c Marked TestFormatters.py XFAIL on Linux per pr20230.
ebbe578 Allow specification of no source display on stop.
379896a CMake: Let LLDB build with CMake 3
c835542 llvm::IntrusiveRefCntPtr => std::shared_ptr to match the changes in clang r212388
3acf359 remove trailing whitespace + remove some useless comments
b3cfa23 Update lldb  code to match the change in clang r212386
a105ee0 Track changes from clang r212388
c07a91d Track IntrusiveRefCntPtr::get() changes from LLVM r212366
c7910ff Windows build fixes and removal of endlessly recursive termination function.
c3d494b Fix Windows build when python is not explicitly enabled
0bf34bf Fix OptionDefinition break from r212290.
f1c0c8e Fix -Wnull-conversion warning.
e6c6514 Adds the notion of an OptionValidator.
05bf10d Fix compilation errors introduced by host Pipe abstraction on Windows.
904c50f Add enumerations for additional languages from DWARF spec updates.
8f6e4e6 lldb - problem with some PTRACE_* constants in NativeProcessLinux.cpp file
95228ba Add host layer support for pipes.
3c72e4d Make LLDB.framework link again on Yosemite.
badd998 Removing Carbon dependency by removing obsolete code. The only part using Carbon is a function in Host.mm used to open a file in Xcode. That code is broken and it is no longer useful as Xcode supports LLDB natively.
5a045dc If a breakpoint gets deleted, any SBBreakpoints representing that breakpoint should return false from IsValid.
6201a1a Start converting usages of off_t to other types.
8e37021 Replace uint32_t by lldb::RegisterKing in register context API.
1de27ee Add Kalimba support to ArchSpec.
92ce94a Fix typos.
20425cc Terminate italics tag.
196b77c Minumum -> Minimum.
4ede499 This creates a valid Python API for Windows, pending some issues. The changes included are -
39359cc Use native ::pid_t in Linux ProcessMonitor (local debugging).

git-subtree-dir: llvm/tools/lldb
git-subtree-split: aa63810a839cd097f121653e00cdcd98cff60e5e
Merge with LLDB.
Merge commit '42becce046e7b0df6c83b152fef18a511daf902a' into devel
Squashed 'llvm/' changes from 05388f2..7ed655d

7ed655d R600: silence GCC warning
163d8ce R600/SI: Refactor VOP3 instruction definitions
3ee2c33 R600/SI: Separate encoding and operand definitions into their own classes
8c4cf40 Replace the result usages while legalizing cmpxchg.
d7858af R600/SI: Initailize encoding fields of unused VOP3 modifiers to 0
0794af8 R600/SI: Initialize unused VOP3 sources to 0 instead of SIOperand.ZERO
facdfc6 Revert "[C++11] Add predecessors(BasicBlock *) / successors(BasicBlock *) iterator ranges."
9787e8c R600/SI: Add instruction shrinking pass
cef5388 Fix Sphinx warnings.
df99a7f R600/SI: VOPC instructions explicitly define VCC
95689f0 Correct the ownership passing semantics of object::createBinary and make them explicit in the type system.
d8fa929 Remove unnecessary use of unique_ptr::release() used to construct another unique_ptr.
0c466c8 Remove unused variable.

git-subtree-dir: llvm
git-subtree-split: 7ed655da8c0629b70d7f7f9928ebc126c86284c5
Merge commit '0b3a986dbd2b848553e7a585f539ce5267204b64' into devel
Squashed 'llvm/tools/clang/' changes from e559847..d756524

d756524 Fix build breakage caused by use of std::to_string(int).  Replace with raw_string_ostream.
dfd6013 Emit lifetime.start / lifetime.end markers for unnamed temporary objects.
3097423 Add support for '#pragma unroll'.
d2b971a Sema: Handle C11 atomics when diagnosing out of range comparisons

git-subtree-dir: llvm/tools/clang
git-subtree-split: d75652426799d60e671d178de054309840312997
Squashed 'llvm/' changes from 7ed655d..43b471c

43b471c Treat warnings in Sphinx as errors. The reasons for doing this are...
d883110 Fix Sphinx warning.
acdcb37 [OCaml] Don't truncate constants over 32 bits in Llvm.const_int.
f8b83e3 [mips] Fix two patterns that select i32's (for MIPS32r6) / i64's (for MIPS64r6) from setne comparison with an i32.
bf348c4 AVX-512: Fixed intrinsic of VSQRTPS/PD instructions. I set number and types of parameters according to GCC intrinsics.
8e80aa5 fixed typo in comment
3f1ae7f [SDAG] Refactor the code for inserting a newly allocated SDNode into the DAG into a helper function.
3c249a5 [SDAG] Remove a giant pile of asserts that may have helped track down a bug in 2010 when they were added but are adding no value today.
4a913e0 Add openmp to the list of tagged things.
434f0e3 Revert of r213521. This change introduced a non-hermetic test (depending on a file not in the test/ area). Backing out now so that this test isn't part of the 3.5 branch.
bc7f1ab Rename metadata llvm.loop.vectorize.unroll to llvm.loop.vectorize.interleave.
07efe87 Add some tests for NVPTX lowering of cmpxchg
9da65a8 Match semantics of PointerMayBeCapturedBefore to its name by default
5291652 Revert "Recommit r212203: Don't try to construct debug LexicalScopes hierarchy for functions that do not have top level debug information."
6892361 test-release.sh: Add support for dot releases

git-subtree-dir: llvm
git-subtree-split: 43b471c45eb359d6c2220a0c93b1a9456c7b24f0
Merge commit '5026133f7f248e969d587016f9c37eaac84a5161' into devel
Squashed 'llvm/tools/clang/' changes from d756524..83859db

83859db remove hardcoded metadata numbers from tests
cd46364 Improve the checkUInt32Argument() helper function so that it diagnoses integer constants larger than 32-bits.
c88e65d Provide extra information in the "integer constant is too large" diagnostic. This will be used to improve other diagnostics.
979388e Adding a heading to the loop hint attributes so that attribute documentation can be generated again.
54dc186 Escaping an RST character to correct a Sphinx warning.
5b3d931 Disallowing GNU-style attributes in new expressions, since they are prohibited by GCC as well.
b1d079b [OPENMP] Tests for nesting of regions for 'atomic' directive.
3a5a26a AVX-512: I added new headers to makefiles. It should resolve tests fail. If it will not, I'm reverting the both commits.
0d9772d AVX-512: Added intrinsics to clang. The set is small, that what I have right now. Everybody is welcome to add more.
a005bab [OPENMP] Initial parsing and sema analysis for 'atomic' directive.
116c37c [OPENMP] Initial parsing and sema analysis for 'ordered' directive.
95dcc5d Fix '&' printing for template arguments in parentheses in template diffing.
9d1015f More gracefully handle parentheses in templare arguments in template diffing.
da336e8 Fix a template diffing problem were an '&' is unexpectedly printed in a template argument.
c61a708 Sema: correct handling for __va_start for WoA
9115f72 Avoid crash if default argument parsed with errors.
e6de71d -fms-extensions: Implement half of #pragma init_seg
8a16cb1 clang-cl: ignore /showIncludes when combined with /E (PR20336)
90cd700 Rename metadata llvm.loop.vectorize.unroll to llvm.loop.vectorize.interleave.
4ae9fc5 clang-format vs plugin: set version number from cmake (PR20307)
e055412 Revert "Emit lifetime.start / lifetime.end markers for unnamed temporary objects."

git-subtree-dir: llvm/tools/clang
git-subtree-split: 83859dbfb6aab3463bd6a31c5fb749e9f6a41a56
Merge commit '9172c00fbf641b0ee071c9a614b1d14241683fe1' into devel
Squashed 'llvm/tools/lldb/' changes from aa63810..9ebe97c

9ebe97c Fix an issue where an entry point of 0x00 would cause LLDB to think that the ELF is not executable without checking for ET_EXEC
ee580b1 Fix the warnings introduced
013d18f Improve LLDB's embedded C++ demangler by addressing the following two issues:

git-subtree-dir: llvm/tools/lldb
git-subtree-split: 9ebe97cf16c92b123a420bd2ce8620172e22d8d4
Merge commit '4ee9670f5fdc004df035431d7195ac56871341dd' into devel
Fix issues related to LLDB.