Fix nested query tests.
Start of Scout runtime Legion library (scrt_legion).
Fix test.
Merge branch 'devel' of elmo.lanl.gov:gitlab/scout into devel
Disable some tests temporarily.
Squashed 'llvm/' changes from fe6c7ee..de9e32a

de9e32a ARM: correct an off-by-one in an assert
fd35058 [DAGCombine] Slightly improve lowering of BUILD_VECTOR into a shuffle.
73fb93c MipsABIInfo class is used in different libraries. Moving the files to MCTargetDesc folder(LLVMMipsDesc library) prevents linkage errors. There are no functional changes.
3fea427 [mips] Set GCC-compatible MIPS asssembler options before inline asm blocks.
4bfc4f2 Revert 224119 "This patch recognizes (+ (+ v0, v1) (+ v2, v3)), reorders them for bundling into vector of loads, and vectorizes it."
c0bd970 Teach lit.cfg to recognize -windows-gnu in addition to -mingw32.
982a8b3 Added 5 more tests related to sink store revision 224247 - by Ella Bolshinsky
96bd465 Strength reduce intrinsics with overflow into regular arithmetic operations if possible.
80c5783 Revert "Linker: Drop superseded subprograms"
5fa882a Add parsing of 'foo@local".
6507088 Remove a debugging assert.
5128bc1 Remove unused includes and out of date comment. NFC.
9a845bd Fix the windows build.
2f56901 Refactor and simplify the code reading /proc/cpuinfo. NFC.
b0de672 RegisterCoalescer: Sprinkle some const modifiers.
c524b88 llvm-lto: Add testing coverage for local contexts
7ecec5b Delete debugging cruft that crept in with r223802.
891ec6d InstSimplify: shl nsw/nuw undef, %V -> undef
9451a38 Make ValueEnumerator::print use OS for metadata too. Noticed by inspection.
1e2604d [CodeGenPrepare] Reapply r224351 with a fix for the assertion failure: The type promotion helper does not support vector type, so when make such it does not kick in in such cases.
e479df2 Add printing the LC_ENCRYPTION_INFO_64 load command with llvm-objdump’s -private-headers and add tests for the two AArch64 binaries.
7c3af91 PR21875: codegen for non-type template parameters of nullptr_t type
0c7f4e4 Revert "[CodeGenPrepare] Move sign/zero extensions near loads using type promotion."
74b5b19 SelectionDAG switch lowering: use 'unsigned' to count destination popularity
526a14a [Hexagon] Updating doubleword shift usages to new versions.
46a81fd Add printing the LC_ENCRYPTION_INFO load command with llvm-objdump’s -private-headers.
d4017d0 Linker: Drop superseded subprograms
9ab4347 fix typo, add spaces; NFC
2385e98 [X86][SSE] Vector double -> float conversion memory folding (cvtpd2ps)
e1bf514 Make the assert a bit stronger.
84201cb [Hexagon] Removing old XTYPE/BIT instructions and replacing usages.
128b2c3 merge consecutive loads that are offset from a base address
5b7369d Fix a bug in llvm-objdump’s -private-headers for the LC_VERSION_MIN_IPHONEOS load command not getting printed.
504c77f [Hexagon] Adding tstbit/bitclr/bitset instructions.
95aa8ca [sanitizer] prevent function call merging for sanitizer-coverage callbacks
85d5712 Fix another use of PRIx32 that should have been PRIx64.
18f28b2 [Hexagon] Adding bit count and twiddling instructions.
50b3134 [Hexagon] Adding asr/lsr/asl reg/imm, asl with saturation, asr with rounding.  Doubleword abs/neg/not.  Interleave and deinterleave instructions.
f3ab9b9 [dsymutil] Pass the verbosity flag down to the processing. NFC for now.
aabd6c1 [dsymutil] Avoid calling getStringTableData() for each symbol. NFC.
50b8835 x86-32: PUSHF/POPF use/def EFLAGS
192487e Use CastInst::castIsValid to simplify the verifier.
ec6fabb NVPTX: Remove duplicate of AsmPrinter::lowerConstant
8b5b0f5 Move lowerConstant to AsmPrinter
93b6e01 [CodeGenPrepare] Move sign/zero extensions near loads using type promotion.
6e5ad1f Fix the arm build bots for a test that was added.  A printing routine was incorrectly using PRIx32 when it should have been using PRIx64 for the value that was passed as uint64_t .
4110028 [AVX512] Enable integer arithmetic lowering for AVX512BW/VL subsets. Added lowering tests.
a4020f2 On behalf of Matthew Wahab:
3ddc322 [MC] Reset the MCInst in the matcher function before adding opcode/operands.
e4aafdf [Hexagon] Adding absolute value, and negate with saturation
8fe9488 combine consecutive subvector 16-byte loads into one 32-byte load
d69e4e2 [Hexagon] Adding saturate and swizzle instructions.
43906de [AVX512] Add a comment for avx512_broadcast_pat multiclass
ea204e7 [Hexagon] Removing old multiply defs and updating references to new versions.
ca932f5 The single check for N64 inside MipsDisassemblerBase's subclasses is actually wrong. It should be testing for FeatureGP64bit.There are no functional changes.
78f6aad [mips][microMIPS] Implement SWP and LWP instructions Differential Revision: http://reviews.llvm.org/D5667
51c2bdc Fixing -Wsign-compare warnings; NFC.
9e8621e Add disassembler tests for mips4 platform. There are no functional changes.
14fb445 Masked Load and Store Intrinsics in loop vectorizer. The loop vectorizer optimizes loops containing conditional memory accesses by generating masked load and store intrinsics. This decision is target dependent.
a4b6922 [mips] Fix arguments-struct.ll for Windows and OSX hosts.
a9d9f7e [ARM] Prevent PerformVCVTCombine from combining a vmul/vcvt with 8 lanes
4519623 X86: Added FeatureVectorUAMem for all AVX architectures. According to AVX specification:
9e2c0f9 Remove 'metadata' from comments
02a8d1b IR: Stop printing 'metadata' in Metadata::print()
2ebd1ef IR: Make MDNode::dump() useful by adding addresses
d0e68dc DebugInfo: Update testcase to actually check something
fbdea18 ARM: diagnose deprecated syntax
edfeeb6 [PowerPC] Improve instruction selection bit-permuting operations (32-bit)
f5cd1ef ARM: 80-column
6844571 LiveRangeCalc: Rewrite subrange calculation
8b37542 Remove the last unnecessary member variable of mapped_file_region. NFC.
b5f992c Convert a member variable to a local variable. NFC.
a99ff35 Remove unused member and simplify. NFC.
96b7967 Start adding thin archive support.
c981753 Fix a bug in llvm-objdump’s -private-headers for 32-bit Mach-O files printing the section header.  And add some tests for this for 32-bit files.
6f059af ARM/AArch64: Attach the FrameSetup MIFlag to CFI instructions. Debug info marks the first instruction without the FrameSetup flag as being the end of the function prologue. Any CFI instructions in the middle of the function prologue would cause debug info to end the prologue too early and worse, attach the line number of the CFI instruction, which incidentally is often 0.
3a0f6b5 [Hexagon] Adding doubleword multiplies with and without accumulation.
f651477 Sink the isa into the assert
b4838f6 [Hexagon] Adding halfword to doubleword multiplies.
1240508 [Hexagon] Adding logical-logical accumulation instructions and tests.
574e01c Teach ScalarEvolution to exploit min and max expressions when proving isKnownPredicate.
2f7e202 Added missing tests for X86vzmovl folding. NFC.
13c7826 x86: Emit LOCK prefix after DATA16
5f70274 [Hexagon] Adding a number of additional multiply forms with tests.
bc541ae Clean up warning about unused variable
4151e89 Revert "LiveRangeCalc: Rewrite subrange calculation"
9f0d59a Revert of r223763, in spirit.
b10837d Clarify HowFarToZero computation when the step is a positive power of two.  Functionally this should be identical to the existing code except for the case where Step is maximally negative (eg, INT_MIN).  We now punt in that one corner case to make reasoning about the code easier.
1eb5ad1 [Hexagon] Adding misc multiply encodings and tests.
6097277 LiveRangeCalc: Rewrite subrange calculation
8e7359d [Hexagon] Adding doubleworld accumulating multiplies of halfwords.
f8396b8 [Hexagon] Adding accumulating half word multiplies.
c3449d7 [Hexagon] Adding multiply with rnd/sat/rndsat
839ff70 [X86] And also test INSERTPS shuffle mask pretty-printing.
908d623 LiveRangeCalc: use more range based for loops; NFC
e9e8f1f [Hexagon] Adding encoding bits for halfword multiplies.
77effd8 [X86] Also pretty-print shuffle mask for INSERTPS rm variants.
1ef70ff IR: Make metadata typeless in assembly
9ecdca9 Silence more static analyzer warnings.
2a59b5e Move mips1 tests to test/MC/Disassembler/Mips/mips1
77b6849 Add disassembler tests for mips3 platform. There are no functional changes.
7dfda58 Add disassembler tests for mips2 platform. There are no functional changes.
6fe13a4 This is the first in a series of patches that add missing disassembler tests for mips platform. The patches are divided per version of mips CPU to keep the patches smaller and ease the review. There are no functional changes, code is changed only if new tests reveal a bug.This patch adds disassembler tests for mips1 CPU.
bfba389 Changing a cast from unsigned to uint64_t, should be NFC in practice.
a8a3741 Added a test related to 224247 revision
2f6d423 Sink store based on alias analysis  - by Ella Bolshinsky The alias analysis is used define whether the given instruction is a barrier for store sinking. For 2 identical stores, following instructions are checked in the both basic blocks, to determine whether they are sinking barriers.
299e0d4 [X86] Break false dependencies before partial register updates when the source operand is in memory
4dcffed Typo Correction in Test Case. NFC.
3f20275 AVX-512: Added EXPAND instructions and intrinsics.
0bf492d Fix line mapping information in LLVM JIT profiling with Vtune The line mapping information for dynamic code is reported incorrectly. It causes VTune to map LLVM generated code to source lines incorrectly. This patch fix this issue. Patch by Denis Pravdin. Differential Revision: http://reviews.llvm.org/D6603
1691fa2 ThreadLocal: Move Unix-specific code out of Support/ThreadLocal.cpp
3acb203 StringPool: Cleanup typos in unittest comments
1f59bf4 ThreadLocal: Return a mutable pointer if templated with a non-const type
55c9dbf Use unique_ptr to remove explicit delete.
1c3a151 Loop Vectorizer minor changes in the code - some comments, function names, identation.
a53d226 APInt: udivrem should use machine instructions for single-word APInts
fabf5cc ScalarEvolution: Remove SCEVUDivision, it's unused
0b19b56 [PowerPC] Handle cmp op promotion for SELECT[_CC] nodes in PPCTL::DAGCombineExtBoolTrunc
780a093 Reapply "[ARM] Combine base-updating/post-incrementing vector load/stores."
1e173b7 Revert "[ARM] Combine base-updating/post-incrementing vector load/stores."
71bb7d0 Fix Doxygen command misspellings.
eefc8cb Silencing a -Wsign-compare warning; NFC.
978aeec Silencing a *lot* of -Wsign-compare warnings; NFC.
1b40b34 Use range-based for loops.
ce9b37c Rename argument strings of codegen passes to avoid collisions with command line options.
e881eef Go bindings: introduce Value.ConstantAsMetadata.
3a40431 Go bindings: introduce llvm.TemporaryMDNode.
e9e0f37 Go bindings: introduce Metadata.ReplaceAllUsesWith.
eb8bf79 Go bindings: expose the Metadata type.
77f0100 Go bindings: remove contextless metadata bindings.
4e703f8 [PowerPC] Add a DAGToDAG peephole to remove unnecessary zero-exts
3b7e6d2 ValueTracking: Don't recurse too deeply in computeKnownBitsFromAssume
f05fc43 [ARMConstantIsland] Insert tbb/tbh optimization where previous jump table resided.
27d4d1c Pass EC by reference to MemoryBufferMMapFile to return error code.
3e07e74 utils: update vim syntax highlighting for LLVM IR
3f0e883 Clean up static analyzer warnings.
5271cab [Hexagon] Adding double word add/min/minu/max/maxu instructions and tests.
0555711 Revert r224149, llvm-dsymutil was already here.
365cfbc [Hexagon] Adding J class call instructions.
034ae88 Add llvm-dsymutil to test/CMakeLists.txt
85cbe57 IR: Don't track nullptr on metadata RAUW
8ef835e MAP_FILE is the default. We don't need to add it.
181c6d2 Relax debug-map-parsing.test error message check for Windows
ac42de8 More code format fix from r224133, NFC
879b546 Remove silly left over from the Windows resize_file implementation.
7f4b22e Move the resize file feature from mapped_file_region to the only user.
e1136e3 Pass a FD to resise_file and add a testcase.
7291e07 Remove unused feature. NFC.
31e081e Initial dsymutil tool commit.
00b3170 Restructure code from r224097. NFC
5dc8ac8 [AVX512] Enabling bit logic lowering Added lowering tests.

git-subtree-dir: llvm
git-subtree-split: de9e32a55dc412e62318e47f586e66a603c28fac
Merge with LLVM.
Squashed 'llvm/tools/clang/' changes from fd4ab84..afbb57f

afbb57f Revert r224433, r224371 is good enough for now.
36600cf Rangify for loop, NFC.
21cac0e Disable the keyword-as-macro warning for now until the noise level is reduced.
b78fa2b s/ScheduleKind/SchedKind/ in \param. [-Wdocumentation]
b021304 Exclude printLineState() in -Asserts. [-Wunused-function]
bbb1202 [mips] Always clobber $1 for MIPS inline asm.
17a6bb9 Teach compile_commands.json test that windows-gnu is the new name for mingw32.
4a1c320 Teach lit.cfg to recognize -windows-gnu in addition to -mingw32.
666557c clang-format: Fix incorrect calculation of token lenghts.
65c422a Sema: Don't dyn_cast a null pointer in CheckUsingDeclQualifier
eadec62 Parse: Consume tokens more carefully in CheckForLParenAfterColonColon
e58ea99 Add missing testcase from r224388.
022f945 [CallGraph] Make sure the edges are not missed due to re-declarations
295d20d PR21909: Don't try (and crash) to generate debug info for explicit instantiations of explicit specializations.
a7b5558 DR1684: a constexpr member function need not be a member of a literal class type.
5f7701a Try typo correction on all initialization arguments and be less pessimistic about when to do so.
b2c6c4f DebugInfo: Generalize debug info location handling
a4891ba Look at whether TransformTypos returned a different Expr instead of looking at the number of uncorrected typos before and after. Correcting one typo may produce an expression with another TypoExpr in it, leading to matching counts even though a typo was corrected.
046ea41 Fix handling of invalid -O options.
e924d90 Fix typo in comment. NFC.
fbb501f Add a new flag, -fspell-checking-limit=<number> to control how many times we'll do spell checking. Note that spell checking will change the produced AST, so we don't automatically change this value when someone sets -ferror-limit=. With this, merge test typo-correction-pt2.cpp into typo-correction.cpp.
bb387fb Move -Wkeyword-macro into -pedantic, remove -Wreserved-id-macro.
e083843 Put static local variables of inline functions in the function comdat.
e605c16 Consider calls from implict host device functions as valid in SemaCUDA.
dc1e969 Renamed RefersToEnclosingLocal bitfield to RefersToCapturedVariable. Bitfield RefersToEnclosingLocal of Stmt::DeclRefExprBitfields renamed to RefersToCapturedVariable to reflect latest changes introduced in commit 224323. Also renamed method Expr::refersToEnclosingLocal() to Expr::refersToCapturedVariable() and comments for constant arguments. No functional changes.
7c818ba [OPENMP] Bugfix for processing of global variables in OpenMP regions. Currently, if global variable is marked as a private OpenMP variable, the compiler crashes in debug version or generates incorrect code in release version. It happens because in the OpenMP region the original global variable is used instead of the generated private copy. It happens because currently globals variables are not captured in the OpenMP region. This patch adds capturing of global variables iff private copy of the global variable must be used in the OpenMP region. Differential Revision: http://reviews.llvm.org/D6259
fa0d361 Sema: Don't crash converting to bool from _Atomic
801b1a5 Improve handling of value dependent expressions in __attribute__((enable_if)), both in the condition expression and at the call site. Fixes PR20988!
0419e40 AST: Fix the linkage of static vars in fn template specializations
7e5d25d Clarify the code in checkDLLAttribute()
49a14e5 Sema: Check value dependent casts when possible
06b9847 Diagnose function template definitions inside functions
2931d65 Silene -Wreorder warning.
cbfd7a0 Handle errors in lambda prototype instantiation correctly
09646d2 Sema: Cleanup and improve string-plus-char checking.
abc56d7 Update this testcase for the new metadata assembler syntax.
d72d442 IR: Make metadata typeless in assembly, clang side
eefcef8 Warn when attribute 'optnone' conflicts with attributes on a different declaration of the same function.
1a82064 Add voidType() matcher.
69e6d60 Sema: Don't diagnose string + int if the int is value dependent
a478cbc Preprocessor: Recover instead of mutating a token in ExpandBuiltinMacro
d8ea786 Sema: Don't leave switch stack inconsistent when recovering
9ba6527 Test for 'omp for' (for r224233).
36b92d1 First patch with codegen of the 'omp for' directive. It implements the simplest case, which is used when no chunk_size is specified in the schedule(static) or no 'schedule' clause is specified - the iteration space is divided by the library into chunks that are approximately equal in size, and at most one chunk is distributed to each thread. In this case, we do not need an outer loop in each thread - each thread requests once which iterations range it should handle (using __kmpc_for_static_init runtime call) and then runs the inner loop on this range.
541811a Parse: Don't reorder tokens using ConsumeToken
6799970 Fixed test/CodeGen/atomic_ops.c for compatibility with hexagon target
0a5560da Bugfix for Codegen of atomic load/store/other ops. Currently clang fires assertions on x86-64 on any atomic operations for long double operands. Patch fixes codegen for such operations. Differential Revision: http://reviews.llvm.org/D6499
112bf9a MSVC: A wide string literal from L#macro_arg in a macro Clang should form a wide string literal from L#macro_arg in a function-like macro in -fms-compatibility mode. Fix for http://llvm.org/PR9984. Differential Revision: http://reviews.llvm.org/D6604
3200b33 Don't break single-line raw string literals.
bc5dfed DebugInfo: More accurate line information for placement new.
320a846 CodeGen: Compound literals with funny types shouldn't crash
e78343b AST: Limit zero-sized constexpr behavior to array types
7ac2ac0 Lex: Don't crash if both conflict markers are on the same line
ba91227 If a non-template constructor instantiated to X(X), ignore it during overload resolution when initializing X from a value of type cv X.
81fcac7 Sema: attribute((annotate)) must have at least one argument
a307870 clang-cl: Fix handling of the /volatile flag (PR21893)
36d0438 clang-cl: ignore /cgthreads (PR21894)
dd66ec96 clang-cl: Make /Gd ignored instead of unsupported
08b1218 clang-cl: Add unsupported /Gv option (PR21892)
4757126 Parse: MS property members cannot have an in-class initializer
7fad38e Sema: Constexpr functions must have return statements which have an expr
73b2922 NFC: Minor formatting fix
3b12554 Pretty print support for template arg enum constants
a961126 Fix two small bugs in typo correction. One assertion failure building member expressions because the lookup finds a different name than the original, fixed by updating the LookupResult's name with the name of the found decl. Second is that we also diagnose delayed typo exprs in the index of an array subscript expression.
35d7453 Implement feedback on r224172 in PR21899
fb1f68b Typo correction: Ignore temporary binding exprs after overload resolution
b58ba0b Implement the __builtin_call_with_static_chain GNU extension.
4a3e3b7 Frontend: Canonicalize to native paths when dumping module dependencies
2656b70 Allow module deps to be printed in an arbitrary order
680746e Fix the issue of mangling of local anonymous unions (Itanium C++ ABI): A discriminator is used for the first occurrence of a name. inline int f1 () {   static union {     int a;     long int b;   };

git-subtree-dir: llvm/tools/clang
git-subtree-split: afbb57ffcb8181b3baa5b18dc2b1603ad845720c
Merge with Clang.
Squashed 'llvm/tools/lldb/' changes from cc92fcb..4de83661

4de83661 Add the ability to tag one or more breakpoints with a name.  These names can then be used in place of breakpoint id's or breakpoint id ranges in all the commands that operate on breakpoints.
d2656ba Improve the performance of the libc++ std::map formatter. This is not the full solution to the slowness of this formatter, but it's a 5% improvement in our testcase performance, which I am not going to complain too hard about.
5f897b8 In C++, it's #include not #import
aecfaca Delete MSVC intermediate files on "make clean" from tests.
85657de Fixed 2 typos in help.
008541c Temporarily disable CompactUnwindInfo::GetCompactUnwindInfoForFunction. The compact unwind importer is getting the wrong unwind info for one case that I found.  I haven't been able to fix the problem tonight and I don't want to leave TOT behaving incorrectly, so just ignore compact unwind until I can get to the bottom of this.
a168a43 Instead of rolling our own, use the C++11 sanctioned solution
978cb7f If a binary was stripped we sometimes didn't show the ivars of an Objective C class correctly. Now we do as we consult the runtime data for the class so we don't have to have a symbol in the symbol table.
7765011 Now that AddressOf() does sane things with const results, this check is wrong. Since this is actually quite orthogonal to what this test is all about, actually get rid of the assertions
83d51de Provide a SBFrame.register/.reg helper on the Python side of SBFrame to vend a flattened view of registers
2a97b0b Replace ioctl with select to reduce processor usage by lldb-mi on OSX. This saga started with a hang on OSX. 2 solutions were proposed. 1) 'select' based solution works ok on OSX but slows down test completion time on Linux many times. 2) 'ioctl' base solution also works but it causes heavy processor usage on OSX as reported by Ilia K.
0b1b86b Make the platform process connect path less chatty.
db046b5 Move a bunch of method implementations over to the C++ file; remove the need for a few includes. All in all, good stuff
cb9de082 Tests will timeout if they exceed time limit.
321854f SyntheticChildrenFrontEnd::* should also be built when python is disabled
80aa980 Some more cleanup of the ValueObjectConstResultImpl code. NFC.
0a8df4f Fix up this test case
2d59413 Add a test case to validate that AddressOf() and GetLoadAddress() work on a ValueObjectConstResult. This test passing is the baseline of functionality we want to ensure for our const results
ad50157 The so-called "trivial implementation" has been with us for a few years now. It's probably safe to assume it works.. so remove the #if stuff
850da2b Do attempt to ask the impl_backend for the live address of a const result if none is stored in the object itself; this is for symmetry with GetAddressOf()
3d638aa Do not set the live address of a const result child if its parent has an invalid live address
7aff331 Add a method to disable the Windows crash / assert dialogs.

git-subtree-dir: llvm/tools/lldb
git-subtree-split: 4de83661a6db135595a1e92cfecd1b5f5efc7e28
Merge commit 'baade593fa6bff9419e042896ad1d1de375d07fc' into devel
Finish merge with Clang.