Squashed 'llvm/' changes from fb59c03..5bf7bcf

5bf7bcf [Hexagon] Adding add64 and sub64 instructions.
7c45f13 Reverting 222792
9980f8c [Hexagon] Adding compare with immediate instructions.
c688fdb [Hexagon] Adding NOP encoding bits.
5a4bf22 Go bindings: add DIBuilder.InsertValueAtEnd
c9d99b5 R600/SI: Only use one DEBUG()
823f3d2 This test requires asserts because of -stats.
2fbbd7a gold plugin: call llvm_shutdown so that -stats works.
9f4bb04 [AVX512] Add 512b integer shift by variable intrinsics and patterns.
fb73fbf [Hexagon] [NFC] Adding trailing whitespace to test files.
609c7fa [Hexagon] Adding C2_mux instruction.
68766c3 Remove unncessary check for Int_* and *_Int in AsmMatcherEmitter. These are all marked isCodeGenOnly these days.
f78e333 Use range-based for loops.
5d7f978 Remove dead code.
a22c3ef Remove unused MaxSize variable.
72f7001 Move a vector instead of copying it.
690b962 Remove space before tab in all AVX512 mnemonic strings.
ca5ffd5 Remove useless rdar:// comment from switch_to_lookup_table.ll test.
a95af5c [Hexagon] Replacing cmp* instructions with ones that contain encoding bits.
04871e9 Cleaning out google tests from MC.
4d48c3f1 LazyValueInfo: Actually re-visit partially solved block-values in solveBlockValue()
f71e0f8 Small model and JIT generally don't go well with each other. On LP64 platforms, it will work or not depending on the choosen memory layout, so neither PASS nor XFAIL is appropiate. As UNSUPPORTED as per-test target doesn't exist (yet), remove the test instead to unbreak the builds.
b4e2bdb Set the body of a new struct as soon as it is created.
ccac3a0 [msan] Annotate zlib functions for MemorySanitizer.
b3d06a0 Misc style fixes. NFC.
21bcdeb Reapply 222538 and update tests to explicitly request small code model and PIC:
e97049e Mark as explicit failing on x86-64 -- small memory model doesn't agree with default address selections.
b959a30 Remove a bit of duplicated code.
d8022cd Revert r222746: That commit did not update any tests and caused two R600 tests to start failing.
137c475 [mips][micromips] Use call instructions with short delay slots Differential Revision: http://reviews.llvm.org/D6338
333d5c9 [InstCombine] Change LLVM To canonicalize toward the value type being stored rather than the pointer type.
0ab565a R600/SI: Disable commutativity for MIN/MAX_LEGACY
94c465c Correctly handle Tag_CPU_arch_profile.
faab0cf Change the test case file to use FileCheck instead of grep. NFC. Change by Ankur Garg.
a87c354 Revert r220349 to re-instate r220277 with a fix for PR21330 -- quite clearly only exactly equal width ptrtoint and inttoptr casts are no-op casts, it says so right there in the langref. Make the code agree.
87926df R600/SI: Fix allocating flat_scr_lo / flat_scr_hi
c3da97a Forgot to add a file for r222734
c891fc3 COFF: Add back an assertion that is superseded by r222124
333c958 COFF: Add another test for r222124
95f8931 Use a range loop. NFC.
8665715 Style fix: don't indent inside a namemespace.
fbc90b1 Remove a nested anonymous namespace.
842d2b6 Fix overly aggressive type merging.
c5e9bf5 [Object][Mips] Return address of MIPS symbol with cleared microMIPS indicator bit
453ce91 Link the type of aliases.
5c51153 Don't repeat name in comment or duplicate comment. NFC.
2db795c Use range loops. NFC.
a4ebd33 [FastISel][AArch64] Fix and extend the tbz/tbnz pattern matching.
e5aa5ce Add an interesting test that we already get right. NFC.
044b644 InstSimplify: Handle some simple tautological comparisons
25efc8d Revert "unique_ptrify LLVMContextImpl::CAZConstants"
bf3afab unique_ptrify LLVMContextImpl::CAZConstants
b932ed3 [PowerPC] Add the 'attn' instruction
5d6f185 [PowerPC] Implement combineRepeatedFPDivisors
521c9dc Factor check for the assume intrinsic out of checks in computeKnownBitsFromAssume
4e89fd0 Incorporate review comments from r221742
2543acd Bug 21610: Canonicalize min/max fcmp selects to use ordered comparisons
3ff3cb7 Convert test to FileCheck and use CHECK-LABEL
d1940dc Clarify wording in the LangRef around !invariant.load
f1ca1d4 Add a disable-output option to the gold plugin.
7fe9d46 Remove the unused FindUsedTypes pass.
468d2fc Add and use Type::subtypes. NFC.
d8e637e Pass the .ll files to llvm-link directly. NFC.
cd64ace Correct path to regression tests in ExtendingLLVM
6b3c567 [AArch64] Fix clobber computation in A57LoadBalancing pass.
5a6b6744 Removing unused variable.
678af17 [asan/coverage] change the way asan coverage instrumentation is done: instead of setting the guard to 1 in the generated code, pass the pointer to guard to __sanitizer_cov and set it there. No user-visible functionality change expected
edc6a13 [PowerPC] Fix PR 21652 - copy st_other bits on symbol assignment
2dc4746 More long path name support on Windows, this time in program execution. Allows long paths for the executable and redirected stdin/stdout/stderr. Addresses PR21563.
5de3458 [Hexagon] Adding asrh instruction, removing unused multiclasses.
c1c7be0 [Hexagon] Adding aslh instruction.
f309d8e [Hexagon] Adding zxth instruction.
9f1b025 Adding const iterator to MCInst. http://reviews.llvm.org/D6359
a723df0 [Hexagon] Adding zxtb instruction.
a17a9dc InstCombine: Don't create an unused instruction
c195267 [mips][microMIPS] Fix JRADDIUSP instruction
de089dd Added comment about llvm_execute_on_thread waiting for thread to complete.
b955bed [mips][microMIPS] Implement LBU16, LHU16, LW16, SB16, SH16 and SW16 instructions
d49e74e [mips][microMIPS] Implement 16-bit instructions registers including ZERO instead of S0
39e9ec3 [Mips] Update MIPS relocations list
170c95f Replace a comment that says 'unreachable' with llvm_unreachable in TableGen AsmWriter output.
8d6f6a2 Removing a variable that is initialized but never read. The original author has been alerted to the warning, in case this variable is meant to be used. Fixes -Werror builds in the meantime.
18700de [mips][microMIPS] Implement disassembler support for 16-bit instructions
a1e1f01 [X86] Improved target specific combine on VSELECT dag nodes.
4a9d304 InstCombine: Don't assume DataLayout is always available
5deb1bf Support: Add *cast_or_null<> for pointer wrappers
84d3252 Detect best type for some static index tables instead of just using uint32_t to reduce total data size.
30f7474 Converted back to Unix format (after my last commit 222632)
d539147 [X86] Fixes bug in build_vector v4x32 lowering
71777d1 Add missing override keywords.
e4d91ca Tablegen output formatting fixes.
ae1ae2c Masked Vector Load and Store Intrinsics. Introduced new target-independent intrinsics in order to support masked vector loads and stores. The loop vectorizer optimizes loops containing conditional memory accesses by generating these intrinsics for existing targets AVX2 and AVX-512. The vectorizer asks the target about availability of masked vector loads and stores. Added SDNodes for masked operations and lowering patterns for X86 code generator. Examples: <16 x i32> @llvm.masked.load.v16i32(i8* %addr, <16 x i32> %passthru, i32 4 /* align */, <16 x i1> %mask) declare void @llvm.masked.store.v8f64(i8* %addr, <8 x double> %value, i32 4, <8 x i1> %mask)
4f5aa59 R600: Fix extloads of i1 on R600/Evergreen
716ce08 R600: Fix assert on copy of an i1 on pre-SI
2be9044 R600/SI: Add additional tests for i1 loads
5cd4913 R600/SI: Fix broken check lines and modernize prefixes
0233113 R600/SI: Fix missing -verify-machineinstrs on a test
369d8fa InstCombine: Propagate exact for (sdiv X, Pow2) -> (udiv X, Pow2)
89bcfdb InstCombine: Propagate exact for (sdiv X, Y) -> (udiv X, Y)
91349ee InstCombine: Propagate exact for (sdiv -X, C) -> (sdiv X, -C)
53a43d3 Tidied up target triple OS detection. NFC
2b76e1a Reduce size of some tables in tablegen register info output.
218fe23 InstCombine: Propagate exact in (udiv (lshr X,C1),C2) -> (udiv x,C1<<C2)
e915b4b [x86] Teach the vector shuffle yet another step of canonicalization.
8ff39c5 InstCombine: Propagate NSW/NUW for X*(1<<Y) -> X<<Y
082eff6 InstCombine: Propagate NSW for -X * -Y -> X * Y
7eca618 InstSimplify: Simplify (sub 0, X) -> X if it's NUW
1c4abdb InstCombine: Silence a parenthesis warning
06a07da [x86] Add some tests for a common unpack pattern of vector shuffle that has a remarkably unique and efficient lowering.
fc1c5ba InstCombine: Preserve nsw when folding X*(2^C) -> X << C
156d6ec InstCombine: Preserve nsw/nuw for ((X << C2)*C1) -> (X * (C1 << C2))
0f89917 InstCombine: Preserve nsw for (mul %V, -1) -> (sub 0, %V)
5182ad5 [InstCombine] Re-commit of  r218721 (Optimize icmp-select-icmp sequence)
0b1407b Fix transformation of add with pc argument to adr for non-immediate arguments.
57cd7cd [asan] remove old experimental code
739dfb1 R600/SI: Add a failing test case for offset order in ds_read2 instructions
bad4e7b R600/SI: Add an s_mov_b32 to patterns which use the M0RegClass
573630a R600/SI: Emit s_mov_b32 m0, -1 before every DS instruction
edcd88c R600/SI: Add SIFoldOperands pass
d9accc1 [mips][microMIPS] This patch implements functionality in MIPS delay slot filler such as if delay slot filler have to put NOP instruction into the delay slot of microMIPS BEQ or BNE instruction which uses the register $0, then instead of emitting NOP this instruction is replaced by the corresponding microMIPS compact branch instruction, i.e. BEQZC or BNEZC.
e83cdb9 R600/SI: Mark s_mov_b32 and s_mov_b64 as rematerializable
9a85cc1 R600/SI: Use hex notation for constant in test
88109da [Hexagon] Adding sxth instruction.
326816c [Hexagon] Adding sxtb instruction.  Renaming some identically named classes that will be removed after converting referencing defs.
598c08c [asan] add statistic counter to dynamic alloca instrumentation
a3b0670 [Hexagon] Removing SUB_rr and replacing with A2_sub.
7a3eed6 Remove duplication of relocation names in lib/Object/ELFYAML.cpp
0ce0e2c Remove duplication of relocation names in lib/Object/ELF.cpp
9d5d711 Split ELF relocation defintions into per-architecture .def files
b179c6a Debug Info: revert r222195, r222210 and r222239.
9bd3723 Disable header duplication at -Oz in loop-rotate pass.
ea692ff Debug Info: add an assertion that the context field of a global variable can not be a DIType with identifier.
7e19efd [Objective-C] Support a new special module flag that will be put into the objc_imageinfo struct.
b4401e3 LazyValueInfo: range'ify some for-loops. No functional change.
0b835fc Add params() to FunctionType. NFC.
e8f6119 Don't repeat class/function/variable names in comments. NFC.
36c3fc5 LazyValueInfo: fix some typos and indentation, etc. NFC.
633e968 Add and use a helper elements() to StructType. NFC.
1f69d31 Allow multiple -debug-only args
d1510d9 Less space; NFC
093aa45 Fix formatting. NFC.
28660d4 Add a feature flag for slow 32-byte unaligned memory accesses [x86].
95bafa2 Revert "Allow FDE references outside the +/-2GB range supported by PC relative offsets for code models other than small/medium. For JIT application, memory layout is less controlled and can result in truncations otherwise."
46c5a97 [x86] Restructure the checking patterns for v16 and v32 avx2 vector shuffle lowering to allow much better blend matching.
28a6263 Allow FDE references outside the +/-2GB range supported by PC relative offsets for code models other than small/medium. For JIT application, memory layout is less controlled and can result in truncations otherwise.
0889d65 [x86] Make the previous logic significantly less conservative and get a bunch more improvements.
607099b [DAG] Teach how to turn a build_vector into a shuffle if some of the operands are zero.
bd35758 [x86] Teach the x86 vector shuffle lowering to detect mergable 128-bit lanes.
a5f4576 [x86] Remove more windows line endings that slipped into this file...
d8d3a95 [x86] Add a bunch of test cases to 256-bit shuffles that exercise merging 128-bit subvectors and also shuffling all the elements of those subvectors. Currently we generate pretty bad code for many of these, but I'm testing a patch that should dramatically improve this in addition to making the shuffle lowering robust to other changes.
04fab61 [DAG] Refactor the shuffle combining logic in DAGCombiner. NFC.
d0d0424 [X86] For Silvermont CPU use 16-bit division instead of 64-bit for small positive numbers
432ade7 [asan] Add new hidden compile-time flag asan-instrument-allocas to sanitize variable-sized dynamic allocas. Patch by Max Ostapenko.
3bc8b4b Add LLVMScalarOpts to LLVMPowerPCCodeGen.
09ad94d DAGCombiner: Allow the DAGCombiner to combine multiple FDIVs with the same divisor info FMULs by the reciprocal. E.g., ( a / D; b / D ) -> ( recip = 1.0 / D; a * recip; b * recip)
e0ed7df Remove a bunch of unnecessary typecasts to 'const TargetRegisterClass *'
9130e76 Add extra new line and remove some trailing whitespace from tablegen RegisterInfo output file.
ed46a2c Fix a silly bug in StreamingMemoryObject.cpp.
361eafa [PPC] Use SeparateConstOffsetFromGEP
c670d3b Add accessor marcos to ConstantPlaceHolder, similar to those in the base class.
dac753c This Reassociate change unintentionally slipped in r222499
9970214 SROA: The alloca type isn't a candidate promotion type for vectors
57ec3b5 Clarify the description of the noalias attribute
d90eb55 [MCJIT] Remove JITEventListener::NotifyFreeingMachineCode. This method is dead now that the old JIT has been removed.
0c0661c Add curly braces to workaround an MSVC bug.
c91f34a [X86] Do not custom lower UINT_TO_FP when the target type does not match the custom lowering.
c8ef21f Verifier: Check that all instructions have their parent pointers set up correctly. This helps with catching problems caused by IRBuilder abuse such as the one fixed in CFE r222487.
9c39088 Fix more instances of -Wsentinel on Windows with s/NULL/nullptr/
d124340 Add out of line virtual destructors to all LLVMTargetMachine subclasses
10754c2 Update Makefile following directory removal in r222466
517842e SimplifyCFG: Refactor GatherConstantCompares() result in a struct
30b8590 [Hexagon] [NFC] Deleting empty directory.
a3712a1 [Hexagon] [NFC] Merging InstPrinter directory in to MCTargetDesc since they have a circular dependency.
6041716 [MCJIT] Remove JITEventListener::NotifyFunctionEmitted - this method is dead now that the legacy JIT has been removed.
4e7b10b Fix a trip-count overflow issue in LoopUnroll.
d23f04a Compilation test for PostOrderIterator.
deb068a Update template specialization to reflect API changes.
e6c1fc9 X86: use the correct alloca symbol for Windows Itanium
12385e6 Make DWARFAcceleratorTable::dump() const.
d239f8c Add missing copyright headers.
594bf48 Do not create a replaceable Variables MDNode for function forward decls.
0cb85a3 MCJIT tests passing on ARM after r222414 fixed the relocation
4b8337e Revert r222416, r222422, r222426: the former revision had problems and fixing them introduced bugs
6a490ac Fix a typo
f9f464d SimplifyCFG.cpp: Tweak to let msc17 compliant.
b3e705e SimplifyCFG: Refactor GatherConstantCompares() result in a struct
dc0b300 [ELF] Prevent ARM ELF object writer from generating deprecated relocation code R_ARM_PLT32
9dda78f Add a test for r221870
136d5ae Fix a typo in a comment.
2bf028b Remove unnecessary extra spaces from tablegen register info output.
8a3ec67 Use array_lengthof instead of sizeof(array)/sizeof(element) in a tablegen output.
88dc43f Remove support for undocumented SpecialCaseList entries.
e8cdd17 [Hexagon] Adding A2_xor instruction with IR selection pattern and test.
503ec98 Revert "[Reassociate] As the expression tree is rewritten make sure the operands are"
fb1c650 [Hexagon] Adding A2_or instruction with IR selection pattern and test.
d871594 gold-plugin: Fix typo in error message
61fd8ea [CMake] Update GetSVN.cmake to use LLVM version control helper scripts.
06f9f40 ADT: windows itanium targets msvcrt.dll
660bac6 Try to fix MSVS build after r222384. No intended behavior change.
32f8e05 Fix Use-of-uninitialized-value for adrp_addr and adrp_inst in MachODump.cpp
30bd0c7 SimplifyCFG: turn recursive GatherConstantCompares into iterative
6e0f244 RegisterCoalescer: Improve debug messages
f5522a6 Add a print and verify pass after the RegisterCoalescer
4a7e073 MachineVerifier: Report register for bad liveranges
c754d58 Introduce register dump helper
a44c501 AliasSet: Simplify mergeSetIn
53daaff [X86] Improved lowering of v4x32 build_vector dag nodes.
58c62e1 [ADT] Fix PR20728 - Incorrect APFloat::fusedMultiplyAdd results for x86_fp80.
e0bb2f3 [llvm-readobj][NFC] Appeasing mingw without C++11 std::to_string
334ebf3 R600/SI: Make SIInstrInfo::isOperandLegal() more strict
d67cd80 [mips][micromips] Implement SWM32 and LWM32 instructions Differential Revision: http://reviews.llvm.org/D5519
ca72bef Vectorize a reduction chain feeding into a 'return' statement. e.x return (a[0]+b[0]) + (a[1]+b[1])
9fece51 [mips][microMIPS] Fix opcodes of MFHC1 and MTHC1 instructions.
beeec32 Fix tail recursion elimination
e4e84b2 [mips][microMIPS] Implement CodeGen support for 16-bit instruction ADDIUR2.
5c6c7e3 [mips][microMIPS] Implement CodeGen support for ADDIUS5 instruction.
3629d75 [mips][microMIPS] Add disassembler tests for new microMIPS 32-bit instructions: LWXS, BGEZALS, BLTZALS, BEQZC, BNEZC, JALS and JALRS.
43ae00e [mips][microMIPS] Implement LWXS instruction.
baf97d8 [mips][microMIPS] Implement SDBBP and RDHWR instructions.
0e2f3ce Use ninja pools to limit the number of concurrent compile/link jobs.
a6943ff [X86][SSE] pslldq/psrldq byte shifts/rotation for SSE2
f47d325 AliasSetTracker: UnknownInsts should contribute to the refcount
c580826 Add missing header
5401ba7 Update SetVector to rely on the underlying set's insert to return a pair<iterator, bool>
0e8675a [AArch64] Disable useAA for Cortex-A57. Using AA during CodeGen is very useful for in-order cores. It is less useful for ooo cores. Also I find enabling useAA for Cortex-A57 may generate worse code for some test cases. If useAA in codegen is improved and benefical for ooo cores, we can enable it again.
8db9fbf [AArch64] Enable SeparateConstOffsetFromGEP, EarlyCSE and LICM passes on AArch64 backend. SeparateConstOffsetFromGEP can gives more optimizaiton opportunities related to GEPs, which benefits EarlyCSE and LICM. By enabling these passes we can have better address calculations and generate a better addressing mode. Some SPEC 2006 benchmarks (astar, gobmk, namd) have obvious improvements on Cortex-A57.
eb52f38 [SeparateConstOffsetFromGEP] Allow SeparateConstOffsetFromGEP pass to lower GEPs. If LowerGEP is enabled, it can lower a GEP with multiple indices into GEPs with a single index or arithmetic operations. Lowering GEPs can always extract structure indices. Lowering GEPs can also give use more optimization opportunities. It can benefit passes like CSE, LICM and CGP.
1d4f28c Remove StringMap::GetOrCreateValue in favor of StringMap::insert
fb44491 Teach llvm-build to avoid touching LibraryDependencies.inc unless the contents change. This saves us from rebuilding llvm-config each time we reconfigure.
2dea1fe Expose LLVM version string via macro in llvm-config.h, and modify Go bindings to make use of it.
8f4a49f Make StringSet::insert return pair<iterator, bool> like other self-associative containers
3977e2f llvm-readobj: fix off-by-one error in COFFDumper
28b45aa Use a memcpy so that type based alias analysis sees the change.
d8e31c7 [Aarch64] Customer lowering of CTPOP to SIMD should check for NEON availability
0dd5e22 [asan] add experimental basic-block tracing to asan-coverage; also fix -fsanitize-coverage=3 which was broken by r221718
6272b8c llvm-readobj: teach it how to dump COFF base relocation table
f82e60f Introduce llvm::SplitAllCriticalEdges
2b82868 Revert r222039 because of bot failure.
1bd96c5 R600/SI: Implement areMemAccessesTriviallyDisjoint
b556213 R600/SI: Set hasSideEffects = 0 on load and store instructions.
e6d1a26 [X86][AVX] 256-bit vector stack unaligned load/stores identification
642bb08 [Hexagon] Adding A2_and instruction.
32dc2de [FastISel][AArch64] Also allow folding of sign-/zero-extend and arithmetic shift-right for booleans (i1).
5e3288f [FastISel][AArch64] Also allow folding of sign-/zero-extend and logical shift-right for booleans (i1).
d3635f0 Fix an inaccurate comment
643bef9 InstCombine: Fix another infinite loop caused by visitFPTrunc
ed37b1e [Hexagon] Adding A2_sub instruction Renaming test files.
063e542 Revert "Revert r222040 because of bot failure."
ad49f98 Add support for LLVM_USE_SANITIZER=Thread
52e0f75 [FastISel][AArch64] Follow-up fix for "Fix shift-immediate emission for "zero" shifts."
a140448 R600/SI: Move SIFixSGPRCopies to inst selector passes
50fa2ff [AArch64] Don't optimize all compare instructions.
b39e517 Fix an incorrect chain operand when expanding INSERT_VECTOR operations through the stack.
891e9e7 R600/SI: Make sure resource descriptors are always stored in SGPRs
5759f0f [Reassociate] Use test cases that can actually be optimized to verify optional flags are cleared.  The reassociation pass was just reordering the leaf nodes in the previous test cases.
b7927f1 [Hexagon] Converting from ADD_rr to A2_add which has encoding bits. Adding test to show correct instruction selection and encoding.
3980c54 [Reassociate] Rename local variable to not use same name as a member variable. NFC.
8b62d78 [FastISel][AArch64] Fix shift-immediate emission for "zero" shifts.
c8ec320 Test commit to verify that commit access works.
0814bd8 Tweak EarlyCSE to recognize series of dead stores
086dc8a Remove triple in testing case to recover an arm bot.
3b16af8 CallGraphTest.cpp: Remove invalid tests. ++S might step over F if S == F.
0ede3a2 InstCombine: Fold away tautological masked compares
2c906a4 InstCombine: Clean up foldLogOpOfMaskedICmps
0d7de42 docs: Modernize some examples in WritingAnLLVMPass
9804c41 docs: Fix a couple of typo-ish errors in WritingAnLLVMPass
60a8349 Allow DwarfCompileUnit::constructImportedEntityDIE to instanciate a GlobalVariable DIE.
f0e7ccc llvm-readobj: Don't print the Characteristics field as the Subsystem
9ba744b SimplifyCFG: Range'ify some for-loops. No functional change.
1ade0f0 IndVarSimplify: Allow LFTR to fire more often
5d8a792 IR: Sink MDNode::Hash down to GenericMDNode::Hash
023c72e IR: Move MDNode operands from the back to the front
8c4418a Update testing case that was accidently duplicated.
182856d Fix covered switch warning
b9f39bc Support ELF files of unknown type.
2c38b00 IR: Split MDNode into GenericMDNode and MDNodeFwdDecl
8ce3535 Revert r222040 because of bot failure.
b05098b Debug Info: In DIBuilder, the context field of a global variable is updated to use DIScopeRef.
66a2b05 IR: Simplify uniquing for MDNode
8083adc Revert "ADT: correctly report isMSVCEnvironment for windows itanium"
9e092ac Revert "Improve memory ownership/management in TableGen by unique_ptrifying TreePattern's Tree member."
3941c30 Improve memory ownership/management in TableGen by unique_ptrifying TreePattern's Tree member.
5b9a46b CMake: Use the new USES_TERMINAL option for test suite targets when available.
2bd09db ADT: correctly report isMSVCEnvironment for windows itanium
84230f9 R600/SI: Don't copy flags when extracting subreg
6a95eb0 R600/SI: Assume SIFixSGPRCopies makes changes
8a19009 Fix the autoconf build.
c4fe4e9 Factor common code it Linker::init.
dfeee31 Pass a reference to ValueEnumerator.
18db81a [SimplifyCFG] Make the value type of the hole check bitmask a power-of-2.
d5b5eb6 Revert commits r222146 and r222137.
95764ec Fix GraphTraits for "const CallGraphNode *" and "const CallGraph *"
29e8a62 Avoid undefined behavior by masking the shift amount.
14915fe [Reassociate] As the expression tree is rewritten make sure the operands are emitted in canonical form.
19e8fe0 [X86] Use ADD/SUB instead of INC/DEC for Haswell and Broadwell CPUs
ae3738f [Reassociate] Canonicalize constants to RHS operand.
6e61dd2 Use a more canonical way of computing a mask with N trailing 1s. NFC.
18e5ce0 Fix ARM triple parsing
2014c91 ScalarEvolution: Construct SCEVDivision's Derived type instead of itself
8f832fc [Thumb1] Re-write emitThumbRegPlusImmediate
a18e46c Object, COFF: Tighten the object file parser
d9d2703 Fix optimisations of SELECT_CC which assumed result is boolean
c2eafa1 silence gcc 4.9.1 warning in /llvm/lib/Support/Windows/Path.inc:564:39: warning: suggest parentheses around assignment used as truth value [-Wparentheses]    if (ec = widenPath(path, path_utf16))
72a1394 Optimize switch lookup tables with linear mapping.
17e95ea Fix CR/LF line endings in test case.
dbd7366 Add missing semicolon from r222118.
a5babc8 Move register class name strings to a single array in MCRegisterInfo to reduce static table size and number of relocation entries.
daa09d0 Add back r222061 with a fix.
b06648f Implement MachODumper::printFileHeaders
cac2f22 Replace a couple asserts with static_asserts.
43b38ac Fix typo
56391dd Convert some EVTs to MVTs where only a SimpleValueType is needed.
2aad1e3 ScalarEvolution: Introduce SCEVSDivision and SCEVUDivision
ec3cfb0 [DependenceAnalysis] Allow subscripts of different types
a51382a [x86] Remove two redundant isel patterns. They equivalent already exists in the instruction pattern.
62baa59 ScalarEvolution: HowFarToZero was wrongly using signed division
f5dc5ae InstSimplify: Optimize ICmpInst xform that uses computeKnownBits
37f645c [DAG] Improved target independent vector shuffle folding logic.
01e3934 [X86][SSE] Improve legal SHUFP and PSHUFD shuffle matching
f04ce0e Dispose disassembler after use in unit test.
96c8ba6 Provide missing definition of uppercase_CMAKE_BUILD_TYPE in HandleLLVMOptions module
c093062 R600: Permute operands when selecting legacy min/max
f85959e yaml2obj, COFF: Consider the DOS stub when laying out section headers
bfabc8f Revert "Don't make assumptions about the name of private global variables."
be11bdf R600: Fix 64-bit integer division
57b2b0c R600: Factor i64 UDIVREM lowering into its own fuction
e787301 DIBuilder: Use Constant instead of Value
d7e69b2 DIBuilder: Change private helper function to static, NFC
4462c14 IR: Remove MDString logic for Value::hasName()
d463d34 DIBuilder: Cleanup access control style, NFC
f4d2109 DI: Use Metadata for DITypeRef and DIScopeRef
0737b4e Rename EH related stuff to be more precise
e2eb8b6 Don't make assumptions about the name of private global variables.
52e7618 ARM: refactor .cfi_def_cfa_offset emission.
d96893f ARM: correctly calculate the offset of FP in its push.
9aa6fd5 ARM: simplify test.
f056c0e Rerun AutoRegen.sh.
6141b4a Turn a leaked object into a stack variable instead.
61ab3a1 Add the code and test cases for 64-bit ARM to llvm-objdump’s Mach-O symbolizer.
d19999b Add a test for r222029 that doesn't rely on the default target being a COFF platform.
9019a60 InstCombine: Fix infinite loop caused by visitFPTrunc
1523db7 Reapply r221924: "[GVN] Perform Scalar PRE on gep indices that feed loads before doing Load PRE"
6536b83 Change order of tablegen generated fast-isel instruction code to be based on instruction complexity
99b3234 R600/SI: Mark s_movk_i32 as rematerializable
6beb81d R600/SI: Fix spilling of m0 register
f6c436e COFF: Add support for Dwarf accelerator tables.
24e874a R600/SI: Combine min3/max3 instructions
a9d6942 yaml2obj, COFF: Correctly calculate SizeOfImage and SizeOfHeaders
4ad9e9b [dwarfdump] Handle relocations in Dwarf accelerator tables
7ffaebf Remove redundant virtual on overriden functions.
6bc59dc IR: Make MDString inherit from Metadata
848d922 R600/SI: Fix verifier error from a branch on IMPLICIT_DEF
e9b30c7 IR: Take an LLVMContext in Metadata::Metadata()
24593ac Add a blank line, NFC
3dd7f86 Fix unused variable warning without asserts
01213b1 R600/SI: Match integer min / max instructions
8fd3b90 R600/SI: Use S_BFE_I64 for 64-bit sext_inreg
5c76b3d [Reassociate] Canonicalize the operands of all binary operators.
e968287 Tentatively appease the bots.
1298a29 [Reassociate] Canonicalize operands of vector binary operators.
7e61b1f [Reassociate] Canonicalize constants to RHS operand.
e26d793 Reapply "[dwarfdump] Add support for dumping accelerator tables."
b3625eb [AVX512] Add 512b masked integer shift by immediate patterns.
1945dcf [Reassociate] Improve rank debug information. NFC.
239d523 R600/SI: Fix assembly names for exec_hi and exec_lo
19cb35b R600/SI: Start implementing an assembler
40b0f5d [PowerPC] Add VSX builtins for vec_div
080c5fe Calm down build bots
237544b obj2yaml, yaml2obj: Add support for COFF executables
dada992 Use size_type for operator[].
5d94c2a SearchForAddressOfSymbol(): Disable 3 symbols, copysignf, fminf, and fmaxf, on msc17. *These were added in VS 2013*
d9cd6cf R600/SI: Make constant array static
d24e90a llvm-cov: Sink some reporting logic into CoverageMapping
4a7bbf4 X86: use getConstant rather than getTargetConstant behind BUILD_VECTOR.
ed7bdca IR: Rewrite uniquing and creation of MDString
7987683 StringMap: Test and finish off supporting perfectly forwarded values in StringMap operations.
6775064 Fix 80 cols caught by the linter...
4f3c985 Fix build of Mips code with MSVC by using our macro instead of __attribute__((unused)) directly
98c86d7 Allow the use of functions as typeinfo in landingpad clauses
0dfb75c CodeGen: assert an instruction is being inserted with the correct iterator.
f4742f4 IR: Make MDString::getName() private
53c7d53 Fix the VS 2012 build
198bb22 First stage of call lowering for Mips fast-isel
016f651 Fix symbol resolution of floating point libc builtins in MCJIT
4dc6aa2 ADT: Use perfect forwarding in StringMapEntry::Create()

git-subtree-dir: llvm
git-subtree-split: 5bf7bcf6b36f94da769952f98b04f6f526622ea4
Merge commit '71bcea7fdd621db0795dafd2472e98a4e1c70ef3' into devel
Squashed 'llvm/tools/clang/' changes from 739237c..68d4a96

68d4a96 Try to fix a ppc64 bot.  What is this 'signext' stuff anyway? No wonder most people use specific triples.
b3cf7e2 Re-apply r222646 (was reverted in r222667). Adding 4 ASTMatchers: typedefDecl, isInMainFile, isInSystemFile, isInFileMatchingName
6e0cba8 Update Clang tests that run the LLVM optimizer to reflect the changed canonicalization in r222748. No interesting functionality changed here.
2d96dc8 clang-format: Refactoring.
4acb6a7 Add flag -f(no-)modules-implicit-maps.
6abc4fc Add a missing override, caught by clang's inconsistent override warning.
2285ade [ARM] Define __ARM_FEATURE_DSP macro for CPUs that have DSP instructions
6e4ce46 MS ABI: Add CodeGen support for rethrowing MS C++ exceptions
abd0d9f docs: Update the MSVCCompatibility doc for changes to debug info
34bec83 CodeGen: further simplify assertion
273e81f See if this fixes Mips bot; ignore contents of parameter lists.
362892d Remove unnecessary environment switch
8ba9076 Force the correction of delayed typos in casts in non-C++ code.
6d49f69 Filter the toplevel matchers by kind.
23c0fce testing: make test use FileCheck
a7cdf1d Correctly remove OptimizeForSize from functions marked OptimizeNone. This allows using __attribute__((optnone)) and the -Os/-Oz options. Fixes PR21604.
7c6f3ff CodeGen: make i686-windows-itanium more similar to msvc
112d814 CodeGen: use a range-based for loop
14951ec Reverting r222646; the tests do not pass on Windows. Also reverts r222664, which was required for r222646 to compile with Visual Studio 2012.
e5f5ee6 Fix line endings
b808520 Fix crash when using __if_exists in C mode
2b231aa Unbreaking the MSVC 2012 build; however, these tests still fail on Windows.
64b76d5 Reverting r222638; it broke the MSVC build bots because Visual Studio 2012 does not support variadic templates. Also reverting r222641 because it was relying on 222638.
c07700a Adding 4 ASTMatchers: typedefDecl, isInMainFile, isInSystemFile, isInFileMatchingName
fb768e1 clang-format: Make short case labels work with #ifs
0389421 clang-format: [Java] Treat 'instanceof' like other binary operators.
4efe2c9 clang-format: [Java] Space before array initializers.
c26dc84 clang-format: Improve ObjC blocks with return type.
394c2aa clang-format: Refactoring.
44c8f33 clang-format: [JS] Support Closure's module statements.
2205147 CodeGen: tweak struct ABI handling
dcb0d5b Support matching signext attribute in the parallel_num_threads_codegen test to appease clang-cmake-mips builder.
c09b981 Support matching signext attribute in vla-lambda-capturing test to appease clang-cmake-mips builder.
8cb8ee2 CodeGen: Make atomic operations play nice with address spaces
10a1654 Simplify MicrosoftMangleContextImpl::shouldMangleStringLiteral
01f8e7c Delay checking overrides for exception specifications if the overridden specification has not yet been parsed.
a144208 MS ABI: Mangle u8 string literals
84f615d Objective-C ARC. Fixes a crash when checking for 'weak' propery whose base is not an expression. rdar://19053620
8b69126 Sema: Don't permit variably modified types in typeid
a919076 Implement -Wcast-qual, fixing #13772.
cf426329 MS ABI: Mangle char16_t and char32_t string literals
6b00604 Add an assertion for detecting missed/uncorrected TypoExprs.
7bd108b Enable ActOnIdExpression to use delayed typo correction for non-C++ code when calling DiagnoseEmptyLookup.
b108f09 Properly correct initializer expressions based on whether they would be valid.
7f0ea0a Use the full-Expr filter to disambiguate equidistant correction candidates.
b643cf9 clang-format: Understand more lambda return types.
8228889 clang-format: Use nested block special case for all languages.
ca95dc4 Fix test after r222526.
407d05f clang-format: Handle comments in short case labels.
29bc9e5 clang-format: [Java] Support more Java keywords.
d05198d clang: do not add -pie for tsan
18faea6 clang-format: [Java] Basic lambda support.
f0b7008 [OPENMP] Disable CapturedStmt generation for standalone directives. No functional changes, just code improvement.
eb05ef7 MS ABI: Mangle char16_t and char32_t types
7a62026 Fix missing diagnostic for unsupported TLS for some thread_local variables.
50a1b41 [modules] When explicitly importing a module, it's fine for the imported module to be newer than we were expecting. That happens if .pcm's get moved between file systems during a distributed build. (It's still not OK for them to actually be different, though, so we still check the size and signature matches.)
0aa22b2 PR21323: Fix iterator invalidation issue when looking for redeclarations of a special member function.
bc3d85c Extend -Wuninitialized to warn when accessing uninitialized base classes in a constructor.
9155f13 relax this testcase to not depend on a specific alignment.
2bce653 Debug info for blocks: Fix a bug caught by the Verifier. When emitting nested block definitions, the insert-at-point variant of DIBuilder::insertDeclare() could be called with the insertion point set to the end-of-BasicBlock sentinel, causing the parent pointer of the CallInst to be set to the intentionally bogus value of the sentinel.
4a2879e DebugInfo: Fix another case of r222377 when we do have a definition of the variable, but we might not be emitting it (such as templates)
350e745 Remove code that tries to avoid transforming non-dependent call operator types for lambda expressions. That can't ever work; we need to transform the parameters in order to create new ones in the new call operator context.
6bc2ada Move test from r222476 to a better place; this was reduced to the point that it no longer contained a generic lambda.
620d1a5 Fix crash-on-valid if a lambda-expression appears lexically directly within a local class inside a template.
235db81 Intercept __crt_va_* used by MSVC "14"
4363faf PR21565: Further refine the conditions for enabling eager parsing of std::X::swap exception specifications (allowing parsing of non-conforming code in libstdc++). The old conditions also matched the functions in MSVC's STL, which were relying on deferred parsing here.
feea241 Ensure all TypoExprs are diagnosed by the tree transform.
b11b40a Wire up delayed typo correction to DiagnoseEmptyLookup and set up Sema::ActOnIdExpression to use the new functionality.
dcc69e9 Add a flag to BuildDeclarationNameExpr to not reject invalid decls.
07bdb11 Factor out the default recovery handling.
a165fa5 Add a few small helper methods to the TypoCorrectionConsumer.
3979fed Correctly set the SourceRange a TypoCorrection will replace.
796a617 The Syntax enumeration requires at least three bits to store all of its values. Increase the number of bits for SyntaxUsed. Decrease the number of expression arguments allowed by a single bit so that the bit fields continue to add up to 32-bits evenly.
51ff13b Bring PostOrderCFGView's insert API up to date with other API changes.
f099cf5 Extended list of valid frontend options with '-cl-std=CL2.0'.
d9e938f Testing commit access.
6e377b4 Remove now dead code.
8b4ad0b Prepare for the DIBuilder populating DISubprogram's Variables with null.
953de1f Replace variadic operator function pointer with an enum value.
4d89da6 Convert CR+LF -> LF in a test file
15258f8 clang-format: [Java] Don't align after "return".
4e614a3 clang-format: [Java] Don't force break before generic type method.
0a406e6 [OPENMP] Codegen for "omp flush" directive. For each "omp flush" directive a call to "void kmpc_flush(ident_t *, ...)" function is generated. Directive "omp flush" may have an associated list of variables to flush, but currently runtime function ignores them. So the patch generates just "call kmpc_flush(ident_t *<loc>, i32 0)". Differential Revision: http://reviews.llvm.org/D6292
8614cc6 Fix buildbots.
8dbfd1c [CMake] Use .svn/wc.db as our VC dependency if it's available.
0035283 Preserve numeric literal suffixes during type canonicalization. Patch by Pierre Gousseau! Test cases altered significantly by me.
ed6f174 Avoid earlier test interfering with later one.
e056d26 When mangling member-expressions, skip implicit accesses of anonymous union objects. This is consistent with GCC's behavior. Patch by Tomasz Miąsko!
3ddfd01 Remove support for undocumented SpecialCaseList entries.
537df3d PR21531: fix crash on invalid with unexpanded pack in case value.
0aad2c1 Revert "[Reassociate] Update test cases due to r222142."
9d30d86 clang-format: [Java] Accept generic types in enum declaration
1573c16 [CMake] Always include the Clang repo version, just like the autoconf build.
d0baa7d Constify a few IdentifierInfo * parameters.
f794299 Fix bug where a trivial constexpr copy/move operation couldn't copy from an empty non-constexpr object. Such a copy doesn't break any of the constexpr rules.
e6b5195 DebugInfo: Don't emit a 'global variable' when a static member declaration is referenced without a definition, just ensure the enclosing class (with the static member declaration) is emitted.
76817ea Fix a temporary MDNode leak.
6dceebb Driver: correct typo
2000698 clang-format: [Java] Ignore C++-specific keywords
b0f3f42 Allow EmitVAArg() to promote types and use this to fix some N32/N64 vararg issues for Mips.
f8fdd74 Update for LLVM API change to make Small(Ptr)Set::insert return pair<iterator, bool> as per the C++ standard's associative container concept.
b4adcf5 Add the exception for strings in logical and expressions to -Wstring-conversion for C code.
8945a69 clang-format a recent commit I made
b4263c2 Wrap to 80 columns, no behavior change.
8ee697f Standardize on StringMap::insert, removing uses of StringMap::GetOrCreateValue.
14b0eac Update for LLVM API change
39ce853 clang-format: Add option to disable alignment after opening brackets
5ba9048 clang-format: Fix space between generic type parameter and square bracket
1040ba2 Fix 80-column violations, trailing whitespace, comment text.
c5b552e This test also requires an aarch64 target.
9699ab4 [Sema] Patch to issue warning on comparing parameters with nonnull attribute when comparison is always true/false. Original patch by Steven Wu. I have added extra code to prevent issuing of warning  when the nonnull parameter is modified prior to the comparison. This addition prevents false positives in the most obvious cases. There may still be false positive warnings in some cases (as one of my tests indicates), but benefit far outweighs such cases. rdar://18712242
ad6b92e OMPAtomicDirective::Create(): Fix \param. [-Wdocumentation]
218a5b5 [OPENMP] Additional processing of 'omp atomic read' directive. According to OpenMP standard, Section 2.12.6, atomic Construct, '#pragma omp atomic read' is allowed to be used only for expression statements of form 'v = x;', where x and v (as applicable) are both l-value expressions with scalar type. Patch adds checks for it.
6e94fa5 Add PIC-level support to Clang.
9be86dc [ASTReader] Add a convenience function to retrieve all the input files of a module file.
c80925d Fully handle globals and functions in CGDebugInfo::getDeclarationOrDefinition()
a00a4bc [DebugInfo] Move collection of various function/var decl properties into helper functions.
ac78a88 InstrProf: Don't emit coverage for uninstantiated templates
aa0edba Debug Info: context field of a global variable is DIScopeRef.
e89e141 Fix an assertion when ending a function definition.
f98071d Make DiagnosticsEngine::takeClient return std::unique_ptr<>
7d324b1 Handle use of default member initializers before end of outermost class
39e6944 CodeGen: make a check stricter
dd525c2 Missing comma in a string array initialization (CID 1254893)
6d81fe2 clang-cl: Allow /Fo without an argument (PR21589)
31a3bde clang-format: Fix more incorrect pointer detection.
9cc5c0a test/Driver/cl-outputs.c: tweak some check prefixes; NFC.
cb99675 Basic: tweak comment
401135c Fix the indentation: Nesting level does not match indentation (CID 1254863)
b8797a2 Fixing a use of stringstream to use an LLVM helper function. Drive-by fixing header include order. NFC.
62fdfa8 [Reassociate] Update test cases due to r222142.
0afcfee Minor readability tweaks to VFTableBuilder.cpp
9434124 Add a couple more examples illustrating why we need vtordisps and how they work
174cfde Remove VariadicOperatorMatcherInterface as it is redundant with logic from DynTypedMatcher.
bbbf924 A small correction for r221884. No functional changes.
c9c4ae5 clang-format: Fix regression introduced in r221609.
ed7b4fa [Sanitizer] Parse and produce all sanitizer-relevant arguments in SanitizerArgs.
65d8b4c Fix issues missed during the review of r222099.
f43c22e Fix IRGen for passing transparent unions
565d281 CGDebugInfo: Update for DIBuilder API change
e0cbdd9 This patch fixes couple of bugs for predefined expression used inside blocks. It fixes a crash in naming code for __func__ etc. when used in a block declared globally. It also brings back old naming convention for predefined expression which was broken. rdar://18961148
00dccd6 [c++1z] Support [[deprecated]] attributes on namespaces. Note that it only applies to situations where the namespace is mentioned. Thus, use on anonymous namespaces is diagnosed.
769c062 Recommit r222044 with a test fix - it does not make sense to hunt for a typedef before arithmetic conversion in all rare corner cases.
d39bcc6 Removing an unused variable; NFC.
d0babbf Again revert r222044 to resolve darwin objc test fails.
1651a71 Follow-up to D6217
c5f0ed8 Add DiagID and Warning Flag to DiagnosticsLog
ac7d62c MinGW doesn't implement std::to_string; working around it. NFC.
3de29e1 Remove some redundant virtual specifiers on overriden functions.
dbbfbed Typo fix.
ab2b750 clang-cl: Ignore the new /Zo[-] option (PR21571)
1eb4877 clang-format: [Java] Further improve generics formatting.
c7ad4a2 clang-format: Correctly detect multiplication in ctor initializer.
c5d7201 [Sema]. Warn when logical expression is a pointer which evaluates to true. rdar://18716393. Reviewed by Richard Trieu
72ef63a Silencing a -Wparentheses warning; NFC.
fe83e09 Replace weird whitespace symbols with good old spaces
01531f2 Add one illustrative class hierarchy as an example in a comment to the VFTableBuilder code
f3fb14d Oops, the underline was too short for sphinx to like.
a47d67f Correcting some grammar and typos, and adding CERT as a collaborator.
9135eee Complete support for the SD-6 standing document (based off N4200) with support for __has_cpp_attribute.
8f0a1a6 clang-format: Give clang-format-diff.py a -v option.
2776748 clang-format: Improve function parameter packing.
4e7da9e [PowerPC] Enable vec_perm for long long and double vector types for VSX
0364e8e clang-format: Support assignments as conditional operands.
712b8b0 clang-format: Improve indentation of comments in expressions.
d298a57 [PowerPC] Add VSX builtins for vec_div
9b5b188 clang-format: [Java] Fix line break behavior of class declarations.
ffe568b clang-format: [Java] Improve generic return type formatting.
c1404c4 clang-format: [Java] No altnerative operator names in Java.
0ba9b59 clang-format: [Java] Improve formatting of generics.
7b497ad [OPENMP] Temporary fix for processing of global variables in loops. Currently there is a bug in processing of global variables used as loop control variables in 'omp for/simd' constructs: these globals must be captured as private variables, but currently they are nor. This is a temporary bug fix for this problem until the correct solution is prepared. If a global var used as lcv without explicit mark as a private/linear/lastprivate the error message is emitted.
00e31d1 [Sanitizer] Refactor SanitizerArgs parsing in Driver.
b27216c Remove -fseh-exceptions in favor of checking the triple
22dc02b Cleanup SanitizerArgs: get rid of unused variable, make one method non-static. NFC.
c806720 PR21565 Add an egregious hack to support broken libstdc++ headers that declare a member named 'swap' and then expect unqualified lookup for the name 'swap' in its exception specification to find anything else.
975dfbe [Profile] Always build profile runtime library with -fPIC.
79b4e89 -Wsentinel: Suggest nullptr in C++11 instead of NULL

git-subtree-dir: llvm/tools/clang
git-subtree-split: 68d4a96ad779831d62f6226724d3005ea560c1df
Merge with Clang.
Squashed 'llvm/tools/lldb/' changes from 3e7e4ee..ed6f4c4

ed6f4c4 When a process stops, set the StopInfo object on Windows.
03206bc Disable GetSTDOUT, GetSTDERR, and PutSTDIN on Windows.
951c19f Add some more comments explaining the purpose of some Register classes.
8e88750 Add initial lldb-mi tests.
06adfed Fix lldb(1) man page formatting
85c7102 Mark 9 lldb unit tests for ubuntu as XFAIL.
c4796f7 Fixed an issue where a DW_FORM_ref{2,4,8} might be extracted incorrectly because the wrong compile unit was being used to calculate the compile unit relative offset.
dc37a30 When a RegisterContext produces an invalid CFA address, change UnwindLLDB::AddOneMoreFrame to try the fallback unwind plan on that same stack frame before it tries the fallback unwind plan on the "next" or callee frame.
26b214e This is the first step of making lldb able to create target-specific things (e.g. breakpoints, stop-hooks) before we have any targets - for instance in your ~/.lldbinit file.  These will then get copied over to any new targets that get created.  So far, you can only make stop-hooks.
5b6addb Make the sourcing of the local .lldbinit file quiet.
82ab4e8 [ProcessWindows] Clean up the register definitions array.
f6e2eef Just a few words to introduce the extra optional argument to Python summaries
4e6c9ae Enable Python summaries to use custom SBTypeSummaryOptions if the user is so inclined. Updates to the webdoc will follow
8d5fb3c Fix mispelled 'ling' Python property to be 'line' in SBLineEntry and SBDeclaration.  Patch from Chris Willmore. <rdar://problem/19054323>
9a5bea5 Remove print statement that was accidentally left in.
6b9e123 Per off-list feedback, this API returns the *first* value with a given name, not the *only* one. Rename it to reflect that
44ed7fa Add an API on SBValueList to find the first value with a given name stored in the list
66374b6 Do some cleanup of DumpValueObjectOptions. The whole concept of raw printing was split between feature-specific flags, and an m_be_raw flag, which then drove some other changes in printing behavior. Clean that up, so that each functionality has its own flag .. oh, and make the bools all go in a bitfield since I may want to add more of those over time
597ff30 Extend PipePosix with child_processes_inherit support - to control whether pipe handles should be inherited by a child process.
89f9e35 fix Bug21211 : reworked test/api/multithreaded/test_listener_event_description.cpp to work properly on Linux/FreeBSD
b383bc5 Rework parallel test process count logic
2c59935 Change CommandObjectTargetModulesLoad so that the filename argument is treated as a string instead of a FileSpec.
6cc58ff Rename lldb registers to contain lldb_ prefix.
0d77909 Add a test for the driver's "-k" option.
3f0ffa9 Make the option parsing of -k & -K match the help strings.
d8c3ea8 Remove duplicated enum, use the authoritative one.
e62ccda [ProcessWindows] Implement a RegisterContextWindows for x86.
0e8f30f "nexti" should not step over inlined functions.
efbf99b Remove decorator for FreeBSD test that now passes
d4be82f Add decorator for FreeBSD failure
908bfe2 Properly specify a few checksum values for llgs tests.
fd684f1 Fix a typo in lldb-gdb-remote.txt.
c7f7885 Add test for denied process attach by pid and fix found bugs in Process/ProcessPOSIX.cpp and FreeBSD/ProcessMonitor.
4a67b4b Fix broken build after removing StringMap::GetOrCreateValue in favor of StringMap::insert.
681fb0e Add additional checks to the SavedLocationForRegister method where it is retrieving the Return Address register contents on a target where that's a thing.  If we fail to get a valid RA, we force a switch to the fallback unwind plan.  This patch adds a sanity check for that fallback unwind plan -- it must get a valid CFA for this frame in addition to being able to retrieve the caller's PC -- and it correctly marks the unwind rules as failing if the fallback unwind plan fails.
d5900df Add "-k" and "-K" options to the driver, that allow you to register some commands that will get run if the target crashes.
effe027 Shuffle APIs around a little bit, so that if you pass custom summary options, we don't end up caching the summary hence obtained. You may want to obtain an uncapped summary, but this should not be reflected in the summary we cache. The drawback is that we don't cache as aggressively as we could, but at least you get to have different summaries with different options without having to reset formatters or the SBValue at each step
63d679b Add the ability for the NSString and libc++ std::string formatters to retrieve uncapped data
a202a4d Allow dsymutil to exists in a path with spaces in it
2bfe192 Revert "git-svn test commit"
aa8d370 git-svn test commit
1ebd55d More override warning cleanup.
087379a Find SWIG with CMake
318736a Fixed the stop hook test after recent editline changes.
bfc92f4 Add decorator for test that fails on FreeBSD after editline rework
c385037 Patch from dawn@burble.org to make the --silent-run do what it says, not the opposite of what it says.
683a8ad Fix up the code in the FuncUnwinders class that retrieves the personality routine addr and the LSDA addr.  Don't bother checking with the "non-call site" unwind plan - this kind of information is only going to come from the call site unwind plan.
2dc34ea Add documentation for the SBTarget::ReadInstructions and SBTarget::GetInstructions APIs so it's a little clearer to understand which should be used.
862cad0 Make the mutex ivar in Unwind recursive so we don't have a thread deadlocking when we have the base Unwind class and the HistoryUnwind subclass both trying to acquire the lock on the same thread to clear their respective ivar state. <rdar://problem/18986350>
8897d6c Read the LSDA and Personality Routine function address out of the eh_frame data.  These two pieces of information are used in the process of exception handler unwinding on SysV ABI systems.
d8825e8 Have CommandObjectCommandsAddRegex inherit from IOHandlerDelegateMultiline so it will not immediately terminate after the first regular expression in "command regex <name>" commands.
ca550e1 Fixed a broken test suite test after recent editline merges.
ff34248 Fix a problem where the StringPrinter could be mistaking an empty string for a read error, and reporting spurious 'unable to read data' messages. rdar://19007243
7c5c41d Add APIs on SBFunction and SBCompileUnit to inquire about the language type that the function/compile unit is defined in
e3ceed1 Fix override/virtual warnings.
b4bcad5 Change HostThread::GetNativeThread() to return a derived reference.
a049d7d Fix broken NativeProcessLinux.cpp after signature change of ResolveExecutable.
7709c5f Fix broken Linux build after signature change of ResolveExecutable.
0acbec7 Move the thread logic around to fit better into LLDB's process model.
6d768d9 Disable Editline on Windows.
00e8b5a Fix broken build after signature change of ResolveExecutable.
630e357 Small tweaks to make the editline sources match the lldb source layout.
f06d448 Fixed more fallout from running the test suite remotely on iOS devices.
7963086 Complete rewrite of interactive editing support for single- and multi-line input.
f445509 Not all things callable have an im_self, so harden the test logic against that. getattr(,,None) is the closest to ?. we have in Python, so use that
e4f7982 Fixes for remote test suite execution of the "lldb/test/lang" directory.
388866b Fix buildSwigWrapperClasses.py after recent break.
02ad752 Fix some issue with running the test suite remotely on iOS.
ef610fa Reformat lldb-mi using clang-format.
39c452d [ProcessWindows] Create a TargetThreadWindows class.
9cab396 [ProcessWindows] Implement read / write process memory.
280e353 Fix Darwin and FreeBSD OS type detection
25f66b3 Whitespace cleanup and remove non-canonical headers
951459a Add decorator for intermittently failing test on FreeBSD
7437414 Add a little sketch of a program that can extract unwind information from the compact unwind section used on darwin for exception handling, and dump that information..
6d5fef6 For some reason, sometimes the directory paths that clang emits have internal relative paths, like:
7bfee45 I don't need this ivar. It was probably there from the olden days where dynamic type support was flakey. Remove and save space
7383ff4 Fix examine-threads to build for arm64.
69107e0 Removed a couple of static helpers in the data formatters, replaced with new general logic in StringLexer
35e77a1 add Makefile rule for test program CREATE_STD_THREADS
6d3406e Apply SOCK_CLOEXEC flag to socket API functions in order to avoid handle leakage to a forked child process.
f75dab5 Properly specify the regex used to match register indexes.
38f089c fix minor comment typo

git-subtree-dir: llvm/tools/lldb
git-subtree-split: ed6f4c45ddf60416403e9db0b7d05c27d1da3f17
Merge with LLDB.
Finish merge.
more fixes for using viz in lldb + tests
Merge branch 'devel' of elmo.lanl.gov:gitlab/scout into devel