platform/upstream/llvm.git
5 years ago[Reproducers] Improve reproducer help
Jonas Devlieghere [Fri, 3 May 2019 00:10:31 +0000 (00:10 +0000)]
[Reproducers] Improve reproducer help

Extend the documentation for the reproducer command.

llvm-svn: 359848

5 years agoRegisterContextLLDB::GetFullUnwindPlanForFrame has four verbose
Jason Molenda [Thu, 2 May 2019 23:49:56 +0000 (23:49 +0000)]
RegisterContextLLDB::GetFullUnwindPlanForFrame has four verbose
logging messages that are written the same, making it difficult to
know for certain which code path was taken based on a logfile.  Add
some words to make each unique.

Right now the ordering for finding a FullUnwindPlan (ignoring
fallback unwind plan logic) is

1. If this is a _sigtramp like function, try eh_frame which is
   hand written on darwin systems to account for finding the
   saved register context correctly.

2. Ask the DynamicLoader if eh_frame should be preferred for
   this frame.  Some binaries on the system may have hand-written
   eh_frame and the DynamicLoader is the source for this.  (primarily
   this is for hand-written assembly in the objc runtime, and we tell
   lldb to trust that for functions in libobjc.dylib.)

3. if 0th frame, use GetUnwindPlanAtNonCallSite plan.

4. GetUnwindPlanAtCallSite {for 0th or any other}

5. GetUnwindPlanAtNonCallSite {now for non-0th frames, only if not from a compiler? hm.}

6. GetUnwindPlanArchitectureDefaultAtFunctionEntry if we're on the first instruction

7. Architectural default unwind plan ABI::CreateDefaultUnwindPlan

I'm moving #6 -- DefaultAtFunctionEntry -- up to between #3 and #4,
where we're already doing things specific to the zeroth frame.  If
we're on the zeroth frame and the GetUnwindPlanAtNonCallSite plan
has failed for some reason, and we're on the first instruction, we
should definitely use DefaultAtFunctionEntry instead of any other
unwind plan.  If we're trying to step out of some rando function
on the system that we couldn't assembly instruction inspect, this
is sufficient for us to step out of it.

llvm-svn: 359847

5 years agoFix tests on non-Darwin platforms.
Adrian Prantl [Thu, 2 May 2019 23:49:55 +0000 (23:49 +0000)]
Fix tests on non-Darwin platforms.

llvm-svn: 359846

5 years ago[MemorySSA] Check that block is reachable when adding phis.
Alina Sbirlea [Thu, 2 May 2019 23:41:58 +0000 (23:41 +0000)]
[MemorySSA] Check that block is reachable when adding phis.

Summary:
Originally the insertDef method was only used when building MemorySSA, and was limiting the number of Phi nodes that it created.
Now it's used for updates as well, and it can create additional Phis needed for correctness.
Make sure no Phis are created in unreachable blocks (condition met during MSSA build), otherwise the renamePass will find a null DTNode.

Resolves PR41640.

Reviewers: george.burgess.iv

Subscribers: jlebar, Prazek, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D61410

llvm-svn: 359845

5 years agoFix -Wunsequenced false-positives in code controlled by a branch on
Richard Smith [Thu, 2 May 2019 23:21:28 +0000 (23:21 +0000)]
Fix -Wunsequenced false-positives in code controlled by a branch on
__builtin_constant_p.

If the operand of __builtin_constant_p is not constant and has
side-effects, then code controlled by a branch on it is unreachable and
we should not emit runtime behavior warnings in such code.

llvm-svn: 359844

5 years agoUpstreaming an apple local patch by Frederic Riss.
Jason Molenda [Thu, 2 May 2019 23:14:26 +0000 (23:14 +0000)]
Upstreaming an apple local patch by Frederic Riss.

lldb has an expression that runs in the inferior process to collect
the isa values and hash of the class names for classes in the
system's shared cache.  In recent OSes, swift classes are in this
table and the function the jitted expression calls returns demangled
names.  We need to compute the hashes based on the mangled names.
So for these names, return a hash value of 0 which indicates that
lldb should read the class name directly out of the runtime tables
and compute the hash itself.

When this patch is absent, the lldb+swift testsuite has many failures
on a recent macOS system; there isn't a direct non-swift way to
test for this being correct.

<rdar://problem/47935062>

llvm-svn: 359843

5 years ago[MemorySSA] Refactor removing multiple trivial phis [NFC].
Alina Sbirlea [Thu, 2 May 2019 23:12:49 +0000 (23:12 +0000)]
[MemorySSA] Refactor removing multiple trivial phis [NFC].

Summary: Create a method to clean up multiple potentially trivial phis, since we will need this often.

Reviewers: george.burgess.iv

Subscribers: jlebar, Prazek, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D61471

llvm-svn: 359842

5 years agoHide runtime support values such as clang's __vla_expr from frame variable
Adrian Prantl [Thu, 2 May 2019 23:07:23 +0000 (23:07 +0000)]
Hide runtime support values such as clang's __vla_expr from frame variable

by respecting the "artificial" attribute on variables. Function
arguments that are artificial and useful to end-users are being
whitelisted by the language runtime.

<rdar://problem/45322477>

Differential Revision: https://reviews.llvm.org/D61451

llvm-svn: 359841

5 years ago[X86] Remove LEA16r references from X86FixupLEAs. NFCI
Craig Topper [Thu, 2 May 2019 22:46:23 +0000 (22:46 +0000)]
[X86] Remove LEA16r references from X86FixupLEAs. NFCI

As far as I know, we never emit LEA16r

llvm-svn: 359840

5 years ago[CUDA] Do not pass deprecated option fo fatbinary
Artem Belevich [Thu, 2 May 2019 22:37:19 +0000 (22:37 +0000)]
[CUDA] Do not pass deprecated option fo fatbinary

CUDA 10.1 tools deprecated some command line options.
fatbinary no longer needs --cuda.

Differential Revision: https://reviews.llvm.org/D61470

llvm-svn: 359838

5 years ago[X86] Correct the register class for specific mask register constraints in getRegForI...
Craig Topper [Thu, 2 May 2019 22:26:40 +0000 (22:26 +0000)]
[X86] Correct the register class for specific mask register constraints in getRegForInlineAsmConstraint when the VT is a scalar type

The default impementation in the base class for TargetLowering::getRegForInlineAsmConstraint doesn't work for mask registers when the VT is a scalar type integer types since the only legal mask types are vXi1. So we end up just getting whatever the first register class that contains the register. Currently this appears to be VK1, but its really dependent on the order tablegen outputs the register classes.

Some code in the caller ends up looking up the type for this register class and find v1i1 then generates a copyfromreg from the physical k-register with the v1i1 type. Then it generates an any_extend from v1i1 to the scalar VT which isn't legal. This bad any_extend sticks around until isel where it selects a MOVZX32rr8 with a v1i1 input or maybe a i8 input. Not sure but eventually we pick up a copy from VK1 to GR8 in MachineIR which isn't supported. This leads to a failure in physical register copying.

This patch uses the scalar type to find a VK class of the right size. In the attached test case this will be VK16. This causes a bitcast from vk16 to i16 to be generated instead of an any_extend. This will be properly iseled to a VK16 to GR32 copy and a GR32->GR16 extract_subreg.

Fixes PR41678

Differential Revision: https://reviews.llvm.org/D61453

llvm-svn: 359837

5 years ago[SelectionDAG] Add asserts to verify the vectorness of input and output types of...
Craig Topper [Thu, 2 May 2019 22:26:26 +0000 (22:26 +0000)]
[SelectionDAG] Add asserts to verify the vectorness of input and output types of TRUNCATE/ZERO_EXTEND/ANY_EXTEND/SIGN_EXTEND agree

As a result of the underlying cause of PR41678 we created an ANY_EXTEND node with a scalar result type and v1i1 input type. Ideally we would have asserted for this instead of letting it go through to instruction selection and generate bad machine IR

Differential Revision: https://reviews.llvm.org/D61463

llvm-svn: 359836

5 years agoFix check-builtins on Windows after alias changes
Reid Kleckner [Thu, 2 May 2019 22:11:55 +0000 (22:11 +0000)]
Fix check-builtins on Windows after alias changes

llvm-svn: 359835

5 years ago[AArch64] Update for Exynos
Evandro Menezes [Thu, 2 May 2019 22:01:39 +0000 (22:01 +0000)]
[AArch64] Update for Exynos

Fix the forwarding of multiplication results for Exynos M4.

llvm-svn: 359834

5 years ago[X86] Remove string literal from an if. NFC
Craig Topper [Thu, 2 May 2019 21:57:18 +0000 (21:57 +0000)]
[X86] Remove string literal from an if. NFC

This if used to be an assert that got refactored into an if, but left the string literal behind.

Fixes PR41718

llvm-svn: 359833

5 years agoInitialization: move InstructionEmulation to full initialization
Saleem Abdulrasool [Thu, 2 May 2019 21:49:29 +0000 (21:49 +0000)]
Initialization: move InstructionEmulation to full initialization

The debug server does not need to use the instruction emulation.  This helps
reduce the size of the final lldb-server binary by another ~100K (~1% savings).

llvm-svn: 359832

5 years agoRevert [ThinLTO] Fix X86/strong_non_prevailing.ll after llvm-nm 'r' change
Jordan Rupprecht [Thu, 2 May 2019 21:48:04 +0000 (21:48 +0000)]
Revert [ThinLTO] Fix X86/strong_non_prevailing.ll after llvm-nm 'r' change

This reverts r359314 (git commit 5015aa854dc043b2ae5d95e04e00d98518207ce5)

llvm-svn: 359831

5 years agoRevert [llvm-nm] Fix handling of symbol types + [llvm-nm] Generalize symbol types
Jordan Rupprecht [Thu, 2 May 2019 21:42:46 +0000 (21:42 +0000)]
Revert [llvm-nm] Fix handling of symbol types + [llvm-nm] Generalize symbol types

This reverts r359311 and r359312 (git commit 0bf06a8f59b0074a60871865e828d92db8930c59 and 5f184f17800ea2ac27be5e4ab540cb94a46e80c7)

llvm-svn: 359830

5 years agolld-link: Add /force:multipleres extension to make dupe resource diag non-fatal
Nico Weber [Thu, 2 May 2019 21:21:55 +0000 (21:21 +0000)]
lld-link: Add /force:multipleres extension to make dupe resource diag non-fatal

As a side benefit, lld-link now reports more than one duplicate resource
entry before exiting with an error even if the new flag is not passed.

llvm-svn: 359829

5 years ago[gn] Include the missing BUILD.gn file for libcxxabi includes
Petr Hosek [Thu, 2 May 2019 21:20:08 +0000 (21:20 +0000)]
[gn] Include the missing BUILD.gn file for libcxxabi includes

This was omitted in r359805.

Differential Revision: https://reviews.llvm.org/D61462

llvm-svn: 359828

5 years ago[libc++][test] Remove non-portable assumption that thread's constructor allocates...
Casey Carter [Thu, 2 May 2019 21:19:41 +0000 (21:19 +0000)]
[libc++][test] Remove non-portable assumption that thread's constructor allocates with ::new

Drive-by:
* Fix potential race between check and update of `throw_one` in `operator new`
* Fix latent bug in `operator delete`, which shouldn't decrement `outstanding_new` when passed a null pointer
* Specifically catch the expected `bad_alloc` in `main` instead of `...`

Differential Revision: https://reviews.llvm.org/D50860

llvm-svn: 359827

5 years ago[Attribute/Diagnostics] Print macro if definition is an attribute declaration
Leonard Chan [Thu, 2 May 2019 20:38:14 +0000 (20:38 +0000)]
[Attribute/Diagnostics] Print macro if definition is an attribute declaration

If an address_space attribute is defined in a macro, print the macro instead
when diagnosing a warning or error for incompatible pointers with different
address_spaces.

We allow this for all attributes (not just address_space), and for multiple
attributes declared in the same macro.

Differential Revision: https://reviews.llvm.org/D51329

llvm-svn: 359826

5 years ago[gn] Update the clangd test lit site configuration
Petr Hosek [Thu, 2 May 2019 20:34:54 +0000 (20:34 +0000)]
[gn] Update the clangd test lit site configuration

This reflects changes made in r359763.

llvm-svn: 359825

5 years ago[clangd][xpc] Cannonicalize value of CLANGD_BUILD_XPC before caching
Jan Korous [Thu, 2 May 2019 20:32:56 +0000 (20:32 +0000)]
[clangd][xpc] Cannonicalize value of CLANGD_BUILD_XPC before caching

llvm-svn: 359824

5 years agoChange the metadata for heapallocsite calls when the type is cast.
Amy Huang [Thu, 2 May 2019 20:07:35 +0000 (20:07 +0000)]
Change the metadata for heapallocsite calls when the type is cast.

llvm-svn: 359823

5 years ago[OPENMP][NVPTX]Improve code by using parallel level counter.
Alexey Bataev [Thu, 2 May 2019 20:05:01 +0000 (20:05 +0000)]
[OPENMP][NVPTX]Improve code by using parallel level counter.

Summary:
Previously for the different purposes we need to get the active/common
parallel level and with full runtime we iterated over all the records to
calculate this level. Instead, we can used the warp-based parallel level
counters used in no-runtime mode.

Reviewers: grokos, gtbercea, kkwli0

Subscribers: guansong, jfb, jdoerfert, caomhin, openmp-commits

Tags: #openmp

Differential Revision: https://reviews.llvm.org/D61395

llvm-svn: 359822

5 years agoTypo Functino->Function.
Eric Christopher [Thu, 2 May 2019 19:49:35 +0000 (19:49 +0000)]
Typo Functino->Function.

llvm-svn: 359821

5 years agoAnother attempt to fix "could not find clang-check" lit warning in analyzer-less...
Nico Weber [Thu, 2 May 2019 19:47:05 +0000 (19:47 +0000)]
Another attempt to fix "could not find clang-check" lit warning in analyzer-less builds

r359717 added clang-check as a dep of check-clang unconditionally
because I had missed lit.local.cfg in test/Tooling.

Instead, only add clang-check to the tools if the analyzer is enabled,
since the build target only exists then, and since all tests using
clang-check are skipped when the analyzer is disabled.

Differential Revision: https://reviews.llvm.org/D61418

llvm-svn: 359820

5 years agobuild: add option to disable unwind tables
Saleem Abdulrasool [Thu, 2 May 2019 19:37:26 +0000 (19:37 +0000)]
build: add option to disable unwind tables

The unwind tables (`.eh_frame`, `.arm.extab`) add a significant chunk of data to
the final binaries.  These should not be needed normally, particularly when
exceptions are disabled.  This enables shrinking `lldb-server` by ~18% (3 MiB)
when built with gold.

llvm-svn: 359819

5 years ago[yaml2obj] - Make interface of `NameToIdxMap` class be human friendly and fix users.
George Rimar [Thu, 2 May 2019 19:28:04 +0000 (19:28 +0000)]
[yaml2obj] - Make interface of `NameToIdxMap` class be human friendly and fix users.

This patch inverses the values returned by `addName` and
`lookup` methods of the class mentioned so that they
now return true on success and false on failure.
Also, it does minor code cleanup.

Differential revision: https://reviews.llvm.org/D61190

llvm-svn: 359818

5 years agoInitialization: correct macro usage
Saleem Abdulrasool [Thu, 2 May 2019 19:25:18 +0000 (19:25 +0000)]
Initialization: correct macro usage

`_MSC_VER` indiciates that you are building with MSVC, not that you are building
for Windows.  Use `_WIN32` (which identifies Win32 and Win64).

llvm-svn: 359817

5 years agogdb-remote: fix the build on Windows
Saleem Abdulrasool [Thu, 2 May 2019 19:09:58 +0000 (19:09 +0000)]
gdb-remote: fix the build on Windows

Windows does not have a definition for `mode_t`.  Include the appropriate
header.

llvm-svn: 359816

5 years ago[gn] Include libcxx configuration file
Petr Hosek [Thu, 2 May 2019 19:07:23 +0000 (19:07 +0000)]
[gn] Include libcxx configuration file

This was omitted in r359806 but is already referenced in the GN build.

llvm-svn: 359815

5 years ago[Sema] Emit warning for visibility attribute on internal-linkage declaration
Scott Linder [Thu, 2 May 2019 19:03:57 +0000 (19:03 +0000)]
[Sema] Emit warning for visibility attribute on internal-linkage declaration

GCC warns on these cases, but we currently just silently ignore the attribute.

Differential Revision: https://reviews.llvm.org/D61097

llvm-svn: 359814

5 years agoRemove unnecessary check in SymbolFileDWARF::ParseImportedModules
Raphael Isemann [Thu, 2 May 2019 18:26:58 +0000 (18:26 +0000)]
Remove unnecessary check in SymbolFileDWARF::ParseImportedModules

Summary:
This check seems unnecessary as we already assert the same condition above and also access `sc.comp_unit`
before this check.

Reviewers: aprantl

Reviewed By: aprantl

Subscribers: jdoerfert, lldb-commits

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D61394

llvm-svn: 359813

5 years agoDisable TestArgumentPassingRestrictions for clang < 7
Jonas Devlieghere [Thu, 2 May 2019 18:26:46 +0000 (18:26 +0000)]
Disable TestArgumentPassingRestrictions for clang < 7

http://green.lab.llvm.org/green/view/LLDB/job/lldb-cmake-matrix/

llvm-svn: 359812

5 years agogdb-remote: reduce some inclusion of Target/Process.h
Saleem Abdulrasool [Thu, 2 May 2019 18:15:03 +0000 (18:15 +0000)]
gdb-remote: reduce some inclusion of Target/Process.h

Reduce the inclusion of Target/Process.h to help isolate why Process is being
preserved during the build of `lldb-server`.

llvm-svn: 359811

5 years agoInitialization: remove ObjectContainer from Common
Saleem Abdulrasool [Thu, 2 May 2019 18:11:44 +0000 (18:11 +0000)]
Initialization: remove ObjectContainer from Common

This restructures the initialization path to move the ObjectContainer
initialization into the *full* initialization path. This is not needed
for the lldb-server initialization path. This helps strip off ~1MiB
from the binary.

llvm-svn: 359810

5 years agoUse primary template parameter names for variable template debug info
Reid Kleckner [Thu, 2 May 2019 17:45:54 +0000 (17:45 +0000)]
Use primary template parameter names for variable template debug info

Summary:
Fixes PR41677

Consider:
  template <typename LHS, typename RHS> constexpr bool is_same_v = false;
  template <typename T> constexpr bool is_same_v<T, T> = true;
  template constexpr bool is_same_v<int, int>;

Before this change, when emitting debug info for the
`is_same_v<int, int>` global variable, clang would crash because it
would try to use the template parameter list from the partial
specialization to give parameter names to template arguments. This
doesn't work in general, since a partial specialization can have fewer
arguments than the primary template. Therefore, always use the primary
template. Hypothetically we could try to use the parameter names from
the partial specialization when possible, but it's not clear this really
helps debugging in practice.

Reviewers: JDevlieghere, aprantl, ormris, dblaikie

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D61408

llvm-svn: 359809

5 years ago[libc++][CMake] Link against libSystem on Apple platforms
Louis Dionne [Thu, 2 May 2019 17:43:48 +0000 (17:43 +0000)]
[libc++][CMake] Link against libSystem on Apple platforms

Instead of manually linking against libm/librt/libpthread, we should be
linking against libSystem on Apple platforms, and only that. libm and
libpthread are symlinks to libSystem anyway.

llvm-svn: 359808

5 years ago[test] TestSharedPtr -> TestSharedPtrDbgInfoContent
Jonas Devlieghere [Thu, 2 May 2019 17:35:18 +0000 (17:35 +0000)]
[test] TestSharedPtr -> TestSharedPtrDbgInfoContent

Two tests cannot share the same name, because they will generate an
identical trace file. When that happens, this can lead to a race
condition where dotest fails when trying to move both files into the
trace directory, because the file has already been moved. Additionally,
the trace will have been overwritten by the test that finishes last.

llvm-svn: 359807

5 years ago[gn] Support for building libc++
Petr Hosek [Thu, 2 May 2019 17:29:41 +0000 (17:29 +0000)]
[gn] Support for building libc++

This change introduces support for building libc++. The library
build should be complete, but not all CMake options have been
replicated in GN. We also don't support tests yet.

We only support two stage build at the moment.

Differential Revision: https://reviews.llvm.org/D61143

llvm-svn: 359806

5 years ago[gn] Support for building libcxxabi
Petr Hosek [Thu, 2 May 2019 17:29:39 +0000 (17:29 +0000)]
[gn] Support for building libcxxabi

This change introduces support for building libcxxabi. The library
build should be complete, but not all CMake options have been
replicated in GN. We also don't support tests yet.

We only support two stage build at the moment.

Differential Revision: https://reviews.llvm.org/D60372

llvm-svn: 359805

5 years ago[gn] Support for building libunwind
Petr Hosek [Thu, 2 May 2019 17:29:37 +0000 (17:29 +0000)]
[gn] Support for building libunwind

This change introduces support for building libuwind. The library
build should be complete, but not all CMake options have been
replicated in GN. We also don't support tests yet.

We only support two stage build at the moment.

Differential Revision: https://reviews.llvm.org/D60370

llvm-svn: 359804

5 years ago[compiler-rt] Set the ZX_VMO_RESIZABLE option for zx_vmo_create
Petr Hosek [Thu, 2 May 2019 17:24:53 +0000 (17:24 +0000)]
[compiler-rt] Set the ZX_VMO_RESIZABLE option for zx_vmo_create

Currently VMO in Zircon create using the zx_vmo_create is resizable
by default, but we'll be changing this in the future, requiring an
explicit flag to make the VMO resizable.

Prepare for this change by passing ZX_VMO_RESIZABLE option to all
zx_vmo_create calls that need resizable VMO.

Differential Revision: https://reviews.llvm.org/D61450

llvm-svn: 359803

5 years ago[libFuzzer] Re-enable libFuzzer on i386 Linux and fix test
Jonathan Metzman [Thu, 2 May 2019 16:45:17 +0000 (16:45 +0000)]
[libFuzzer] Re-enable libFuzzer on i386 Linux and fix test

Summary:
Re-enable libFuzzer on i386 Linux after it was accidentally
disabled.

Also disable gc-sections.test on i386 since lld isn't
garbage collecting properly with ASAN on i386.

Reviewers: morehouse

Reviewed By: morehouse

Subscribers: srhines, mgorny, #sanitizers, llvm-commits

Tags: #sanitizers, #llvm

Differential Revision: https://reviews.llvm.org/D61415

llvm-svn: 359802

5 years agoFixed: Duck-typing in readability-redundant-smartptr-get didn't catch MSVC STL smart...
Florian Gross [Thu, 2 May 2019 16:41:28 +0000 (16:41 +0000)]
Fixed: Duck-typing in readability-redundant-smartptr-get didn't catch MSVC STL smart pointers.

Differential Revision: https://reviews.llvm.org/D61209

llvm-svn: 359801

5 years agoDo not warn on switches over enums that do not use [[maybe_unused]] enumerators
David Blaikie [Thu, 2 May 2019 16:30:49 +0000 (16:30 +0000)]
Do not warn on switches over enums that do not use [[maybe_unused]] enumerators

PR36231, [dcl.attr.unused]p3

Reviewers: aaron.ballman

Differential Revision: https://reviews.llvm.org/D61444

llvm-svn: 359800

5 years agoReapply r359778: [clangd] Fix code completion of macros defined in the preamble regio...
Sam McCall [Thu, 2 May 2019 16:12:36 +0000 (16:12 +0000)]
Reapply r359778: [clangd] Fix code completion of macros defined in the preamble region of the main file.

The bad assert has been removed, and updateOutOfDateIdentifier has been guarded.
This reverts commit r359796.

llvm-svn: 359799

5 years ago[OpenCL] Fix initialisation of this via pointer.
Anastasia Stulova [Thu, 2 May 2019 16:10:50 +0000 (16:10 +0000)]
[OpenCL] Fix initialisation of this via pointer.

When the expression used to initialise 'this' has a pointer type,
check the address space of the pointee type instead of the pointer
type to decide whether an address space cast is required.
It is the pointee type that carries the address space qualifier.

Fixing PR41674.

Patch by kpet (Kevin Petit)!

Differential Revision: https://reviews.llvm.org/D61319

llvm-svn: 359798

5 years ago[lldb] [lit] Add write tests for AVX-512 registers (zmm, xmm15+, ymm15+)
Michal Gorny [Thu, 2 May 2019 16:10:35 +0000 (16:10 +0000)]
[lldb] [lit] Add write tests for AVX-512 registers (zmm, xmm15+, ymm15+)

Differential Revision: https://reviews.llvm.org/D61439

llvm-svn: 359797

5 years agoRevert rL359778 : [clangd] Fix code completion of macros defined in the preamble...
Simon Pilgrim [Thu, 2 May 2019 15:47:33 +0000 (15:47 +0000)]
Revert rL359778 : [clangd] Fix code completion of macros defined in the preamble region of the main file.

Summary:
This is a tricky case (we baked the assumption that symbols come from
the preamble xor mainfile pretty deeply) and the fix is a bit of a hack:
We look at the code to guess the macro names, and deserialize them from
the preamble "by hand".

Reviewers: ilya-biryukov

Subscribers: ioeric, MaskRay, jkorous, arphaman, kadircet, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D60937
........
Fix buildbots http://lab.llvm.org:8011/builders/llvm-clang-lld-x86_64-scei-ps4-ubuntu-fast/builds/47684/

llvm-svn: 359796

5 years agoReinstate xfail-darwin in x86-64-ymm-write.test
Pavel Labath [Thu, 2 May 2019 15:38:09 +0000 (15:38 +0000)]
Reinstate xfail-darwin in x86-64-ymm-write.test

It turns out writing into ymm registers really does not work there.

llvm-svn: 359795

5 years agoFix the compile RUN line in x86-64-ymm-write.test
Pavel Labath [Thu, 2 May 2019 15:16:01 +0000 (15:16 +0000)]
Fix the compile RUN line in x86-64-ymm-write.test

Optimistically assuming this was the result of the darwin failure too,
so removing the XFAIL there.

llvm-svn: 359794

5 years ago[DAGCombiner] try repeated fdiv divisor transform before building estimate (2nd try)
Sanjay Patel [Thu, 2 May 2019 15:02:08 +0000 (15:02 +0000)]
[DAGCombiner] try repeated fdiv divisor transform before building estimate (2nd try)

The original patch was committed at rL359398 and reverted at rL359695 because of
infinite looping.

This includes a fix to check for a vector splat of "1.0" to avoid the infinite loop.

Original commit message:

This was originally part of D61028, but it's an independent diff.

If we try the repeated divisor reciprocal transform before producing an estimate sequence,
then we have an opportunity to use scalar fdiv. On x86, the trade-off is 1 divss vs. 5
vector FP ops in the default estimate sequence. On recent chips (Skylake, Ryzen), the
full-precision division is only 3 cycle throughput, so that's probably the better perf
default option and avoids problems from x86's inaccurate estimates.

The last 2 tests show that users still have the option to override the defaults by using
the function attributes for reciprocal estimates, but those patterns are potentially made
faster by converting the vector ops (including ymm ops) to scalar math.

Differential Revision: https://reviews.llvm.org/D61149

llvm-svn: 359793

5 years ago[OPENMP][NVPTX]Improve omp_get_max_threads() function.
Alexey Bataev [Thu, 2 May 2019 14:52:52 +0000 (14:52 +0000)]
[OPENMP][NVPTX]Improve omp_get_max_threads() function.

Summary:
Function omp_get_max_threads() can always return 1 if current execution
mode is SPMD.

Reviewers: grokos, gtbercea, kkwli0

Subscribers: guansong, jdoerfert, caomhin, openmp-commits

Tags: #openmp

Differential Revision: https://reviews.llvm.org/D61379

llvm-svn: 359792

5 years ago[SelectionDAG] remove constant folding limitations based on FP exceptions
Sanjay Patel [Thu, 2 May 2019 14:47:59 +0000 (14:47 +0000)]
[SelectionDAG] remove constant folding limitations based on FP exceptions

We don't have FP exception limits in the IR constant folder for the binops (apart from strict ops),
so it does not make sense to have them here in the DAG either. Nothing else in the backend tries
to preserve exceptions (again outside of strict ops), so I don't see how this could have ever
worked for real code that cares about FP exceptions.

There are still cases (examples: unary opcodes in SDAG, FMA in IR) where we are trying (at least
partially) to preserve exceptions without even asking if the target supports FP exceptions. Those
should be corrected in subsequent patches.

Real support for FP exceptions requires several changes to handle the constrained/strict FP ops.

Differential Revision: https://reviews.llvm.org/D61331

llvm-svn: 359791

5 years ago[OPENMP][NVPTX]Improved omp_get_thread_limit() function.
Alexey Bataev [Thu, 2 May 2019 14:46:32 +0000 (14:46 +0000)]
[OPENMP][NVPTX]Improved omp_get_thread_limit() function.

Summary:
Function omp_get_thread_limit() in SPMD mode can return the maximum
available number of threads as a result.

Reviewers: grokos, gtbercea, kkwli0

Subscribers: guansong, jdoerfert, openmp-commits, caomhin

Tags: #openmp

Differential Revision: https://reviews.llvm.org/D61378

llvm-svn: 359790

5 years ago[OpenCL] Deduce static data members to __global addr space.
Anastasia Stulova [Thu, 2 May 2019 14:40:40 +0000 (14:40 +0000)]
[OpenCL] Deduce static data members to __global addr space.

Similarly to static variables in OpenCL, static class data
members should be deduced to __global addr space.

Differential Revision: https://reviews.llvm.org/D61304

llvm-svn: 359789

5 years ago[ELF] --plugin-opt=thinlto-index-only: create empty index files even if all bitcode...
Fangrui Song [Thu, 2 May 2019 14:05:20 +0000 (14:05 +0000)]
[ELF] --plugin-opt=thinlto-index-only: create empty index files even if all bitcode files are lazy

Summary:
The gold plugin behavior (creating empty index files for lazy bitcode
files) was added in D46034, but it missed the case when there is no
non-lazy bitcode files, e.g.

    ld.lld -shared crti.o crtbeginS.o --start-lib bitcode.o --end-lib ...

crti.o crtbeginS.o are not bitcode, but our distributed build system
wants bitcode.o.thinlto.bc to confirm all expected outputs are created
based on all of the modules provided to the linker.

Differential Revision: https://reviews.llvm.org/D61420

llvm-svn: 359788

5 years ago[lldb] [lit] Mark x86-64-ymm-write XFAIL on Darwin
Michal Gorny [Thu, 2 May 2019 14:03:42 +0000 (14:03 +0000)]
[lldb] [lit] Mark x86-64-ymm-write XFAIL on Darwin

llvm-svn: 359787

5 years ago[X86][SSE] lowerAddSubToHorizontalOp - enable ymm extraction+fold
Simon Pilgrim [Thu, 2 May 2019 14:00:55 +0000 (14:00 +0000)]
[X86][SSE] lowerAddSubToHorizontalOp - enable ymm extraction+fold

Limiting scalar hadd/hsub generation to the lowest xmm looks to be unnecessary - we will be extracting one upper xmm whatever, and we can remove a shuffle by using the hop which is inline with what shouldUseHorizontalOp expects to happen anyway.

Testing on btver2 (the main target for fast-hops) shows this is beneficial even for float ops where we have a 'shuffle' to extract the float result:
https://godbolt.org/z/0R-U-K

Differential Revision: https://reviews.llvm.org/D61426

llvm-svn: 359786

5 years agoAttempt to fix flaky tests.
Eric Fiselier [Thu, 2 May 2019 13:22:55 +0000 (13:22 +0000)]
Attempt to fix flaky tests.

The threaded cxa guard test attempted to test multithreaded waiting
by lining up a bunch of threads at a held init lock and releasing them.
The test initially wanted each thread to observe the lock being held,
but some threads may arive too late.

This patch cleans up the test and relaxes the restrictions.

llvm-svn: 359785

5 years ago[lldb] [lit] Use LLDB-like output for XMM registers in write tests
Michal Gorny [Thu, 2 May 2019 12:55:54 +0000 (12:55 +0000)]
[lldb] [lit] Use LLDB-like output for XMM registers in write tests

llvm-svn: 359784

5 years ago[lldb] [lit] Introduce tests for writing YMM registers
Michal Gorny [Thu, 2 May 2019 12:55:44 +0000 (12:55 +0000)]
[lldb] [lit] Introduce tests for writing YMM registers

Differential Revision: https://reviews.llvm.org/D61431

llvm-svn: 359783

5 years ago[X86][SSE] Move shouldUseHorizontalOp inside isHorizontalBinOp. NFCI.
Simon Pilgrim [Thu, 2 May 2019 12:18:24 +0000 (12:18 +0000)]
[X86][SSE] Move shouldUseHorizontalOp inside isHorizontalBinOp. NFCI.

Matches what we do for lowerAddSubToHorizontalOp and will make it easier to peek through subvectors to help fix PR39921

llvm-svn: 359782

5 years ago[llvm-strip]Add --no-strip-all to disable --strip-all behaviour (including default...
James Henderson [Thu, 2 May 2019 11:53:02 +0000 (11:53 +0000)]
[llvm-strip]Add --no-strip-all to disable --strip-all behaviour (including default stripping)

If certain switches are not specified, llvm-strip behaves as if
--strip-all were specified. This means that for testing, when we don't
want the stripping behaviour, we have to specify one of these switches,
which can be confusing. This change adds --no-strip-all to allow an
alternative way of suppressing the default stripping, in a less
confusing manner.

Reviewed by: jakehehrlich, MaskRay

Differential Revision: https://reviews.llvm.org/D61377

llvm-svn: 359781

5 years ago[lldb] [lit] Split 'register read' tests between zmm*, xmm16+, ymm16+
Michal Gorny [Thu, 2 May 2019 11:26:30 +0000 (11:26 +0000)]
[lldb] [lit] Split 'register read' tests between zmm*, xmm16+, ymm16+

Since Darwin target implements support for zmm* registers without
matching support for the respectively added xmm* and ymm* registers,
split the tests for each register group.  To reduce code duplication,
the tests are using the same source file (which sets more registers
than necessary but that should not cause any harm).

Differential Revision: https://reviews.llvm.org/D61376

llvm-svn: 359780

5 years agoAdd std::stack and std::queue support to CxxModuleHandler
Raphael Isemann [Thu, 2 May 2019 11:25:50 +0000 (11:25 +0000)]
Add std::stack and std::queue support to CxxModuleHandler

Reviewers: aprantl, shafik

Reviewed By: aprantl, shafik

Subscribers: lldb-commits

Tags: #c_modules_in_lldb, #lldb

Differential Revision: https://reviews.llvm.org/D61305

llvm-svn: 359779

5 years ago[clangd] Fix code completion of macros defined in the preamble region of the main...
Sam McCall [Thu, 2 May 2019 11:06:44 +0000 (11:06 +0000)]
[clangd] Fix code completion of macros defined in the preamble region of the main file.

Summary:
This is a tricky case (we baked the assumption that symbols come from
the preamble xor mainfile pretty deeply) and the fix is a bit of a hack:
We look at the code to guess the macro names, and deserialize them from
the preamble "by hand".

Reviewers: ilya-biryukov

Subscribers: ioeric, MaskRay, jkorous, arphaman, kadircet, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D60937

llvm-svn: 359778

5 years agoRename Minion to ASTImporterDelegate
Raphael Isemann [Thu, 2 May 2019 10:58:33 +0000 (10:58 +0000)]
Rename Minion to ASTImporterDelegate

Summary:
I think there universal agreement that Minion isn't the best name for this class. This patch renames the class
 to ASTImporterDelegate to better reflect it's goal of monitoring and extending the ASTImporter.

Reviewers: aprantl, shafik, martong, a.sidorin, davide

Reviewed By: aprantl, shafik, davide

Subscribers: rnkovacs, davide, abidh, lldb-commits

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D61299

llvm-svn: 359777

5 years ago[LTO] Migrate typedef to using
Fangrui Song [Thu, 2 May 2019 10:52:34 +0000 (10:52 +0000)]
[LTO] Migrate typedef to using

using has been used in several places in the file. Migrate the rest for consistency.

llvm-svn: 359776

5 years ago[llvm-readobj] Delete and inline relocAddressLess
Fangrui Song [Thu, 2 May 2019 10:49:27 +0000 (10:49 +0000)]
[llvm-readobj] Delete and inline relocAddressLess

It is used only once in COFFDumper.cpp. Deleting it from the public
interface seems better.

llvm-svn: 359775

5 years ago[Object] Change getSectionName() to return Expected<StringRef>
Fangrui Song [Thu, 2 May 2019 10:32:03 +0000 (10:32 +0000)]
[Object] Change getSectionName() to return Expected<StringRef>

Summary:
It currently receives an output parameter and returns
std::error_code. Expected<StringRef> fits for this purpose perfectly.

Differential Revision: https://reviews.llvm.org/D61421

llvm-svn: 359774

5 years agoInject only relevant local variables in the expression evaluation context
Raphael Isemann [Thu, 2 May 2019 10:12:56 +0000 (10:12 +0000)]
Inject only relevant local variables in the expression evaluation context

Summary:
In r259902, LLDB started injecting all the locals in every expression
evaluation. This fixed a bunch of issues, but also caused others, mostly
performance regressions on some codebases. The regressions were bad
enough that we added a setting in r274783 to control the behavior and
we have been shipping with the setting off to avoid the perf regressions.

This patch changes the logic injecting the local variables to only inject
the ones present in the expression typed by the user. The approach is
fairly simple and just scans the typed expression for every local name.
Hopefully this gives us the best of both world as it just realizes the
types of the variables really used by the expression.

Landing this requires the 2 other issues I pointed out today to be addressed
but I wanted to gather comments right away.

Original patch by Frédéric Riss!

Reviewers: jingham, clayborg, friss, shafik

Reviewed By: jingham, clayborg

Subscribers: teemperor, labath, lldb-commits

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D46551

llvm-svn: 359773

5 years ago[ARM GlobalISel] Fixup r359768
Diana Picus [Thu, 2 May 2019 10:08:29 +0000 (10:08 +0000)]
[ARM GlobalISel] Fixup r359768

Get rid of local variable used only in assertion.

llvm-svn: 359772

5 years ago[clangd] Improvements to header mapping: more precise parsing of cppreference symbol...
Sam McCall [Thu, 2 May 2019 09:34:30 +0000 (09:34 +0000)]
[clangd] Improvements to header mapping: more precise parsing of cppreference symbol pages.

Summary:
Previously we were just jumping from the symbol index to the symbol page, and
grabbing all the headers mentioned there. But the page often lists multiple
symbols, and so we got false positives and thus ambiguities (which were dropped).

Now we look at which declarations are for the symbol we want, and prefer headers
listed above that symbol. If there are none, we fall back to the old behavior.

Reviewers: kadircet

Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D61316

llvm-svn: 359771

5 years ago[clangd] Standard library mapping: prefer "primary" versions of functions over variants.
Sam McCall [Thu, 2 May 2019 09:31:24 +0000 (09:31 +0000)]
[clangd] Standard library mapping: prefer "primary" versions of functions over variants.

Reviewers: kadircet

Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D61349

llvm-svn: 359770

5 years ago[ELF] Delete a cant-write test from test/lto/thinlto-index-only.ll
Fangrui Song [Thu, 2 May 2019 09:29:24 +0000 (09:29 +0000)]
[ELF] Delete a cant-write test from test/lto/thinlto-index-only.ll

The test is performed by thinlto-cant-write-index.ll

llvm-svn: 359769

5 years ago[ARM GlobalISel] Select extensions to < 32 bits
Diana Picus [Thu, 2 May 2019 09:28:00 +0000 (09:28 +0000)]
[ARM GlobalISel] Select extensions to < 32 bits

Select G_SEXT and G_ZEXT with destination types smaller than 32 bits in
the exact same way as 32 bits. This overwrites the higher bits, but that
should be ok since all legal users of types smaller than 32 bits ignore
those bits anyway.

llvm-svn: 359768

5 years ago[ARM GlobalISel] Rename some inst selector tests. NFC
Diana Picus [Thu, 2 May 2019 09:24:47 +0000 (09:24 +0000)]
[ARM GlobalISel] Rename some inst selector tests. NFC

Prepare to add support for extensions to types smaller than 32 bits.

llvm-svn: 359767

5 years ago[ARM GlobalISel] Legalize extensions to < 32 bits
Diana Picus [Thu, 2 May 2019 09:21:46 +0000 (09:21 +0000)]
[ARM GlobalISel] Legalize extensions to < 32 bits

Make it legal to extend from e.g. s1 to s8 or s16.

llvm-svn: 359766

5 years agoFix MSVC build
Pavel Labath [Thu, 2 May 2019 08:52:06 +0000 (08:52 +0000)]
Fix MSVC build

Address an ambiguity between lldb_private::Thread and
llvm::minidump::Thread. Follow-up to llvm r359762 (which introduced the
second type).

llvm-svn: 359765

5 years ago[NFC][PowerPC] Return early if the element type is not byte-sized in combineBVOfConse...
Kang Zhang [Thu, 2 May 2019 08:15:13 +0000 (08:15 +0000)]
[NFC][PowerPC] Return early if the element type is not byte-sized in combineBVOfConsecutiveLoads

Summary:
Based on the Eli Friedman's comments in https://reviews.llvm.org/D60811 , we'd better return early if the element type is not byte-sized in `combineBVOfConsecutiveLoads`.

Reviewed By: efriedma
Differential Revision: https://reviews.llvm.org/D61076

llvm-svn: 359764

5 years ago[clangd] Restore conventional names for lit configs, and .in/.py split. Fix build_mod...
Sam McCall [Thu, 2 May 2019 08:00:39 +0000 (08:00 +0000)]
[clangd] Restore conventional names for lit configs, and .in/.py split. Fix build_mode indirection.

llvm-svn: 359763

5 years agoObject/Minidump: Add support for the ThreadList stream
Pavel Labath [Thu, 2 May 2019 07:45:42 +0000 (07:45 +0000)]
Object/Minidump: Add support for the ThreadList stream

Summary:
The stream contains the list of threads belonging to the process
described by the minidump. Its structure is the same as the ModuleList
stream, and in fact, I have generalized the ModuleList reading code to
handle this stream too.

Reviewers: amccarth, jhenderson, clayborg

Subscribers: llvm-commits, lldb-commits, markmentovai, zturner

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D61064

llvm-svn: 359762

5 years agoFix typo in test case.
Akira Hatanaka [Thu, 2 May 2019 07:38:07 +0000 (07:38 +0000)]
Fix typo in test case.

llvm-svn: 359761

5 years agoFix for Windows
Stephan Bergmann [Thu, 2 May 2019 07:05:29 +0000 (07:05 +0000)]
Fix for Windows

...after 5745eccef54ddd3caca278d1d292a88b2281528b "Adapt -fsanitize=function to
SANITIZER_NON_UNIQUE_TYPEINFO"

llvm-svn: 359760

5 years agoAdapt -fsanitize=function to SANITIZER_NON_UNIQUE_TYPEINFO
Stephan Bergmann [Thu, 2 May 2019 06:40:33 +0000 (06:40 +0000)]
Adapt -fsanitize=function to SANITIZER_NON_UNIQUE_TYPEINFO

This follows up after b7692bc3e9ad2691fc07261904b88fb15f30696b "[UBSan] Fix
isDerivedFromAtOffset on iOS ARM64" fixed the RTTI comparison in
isDerivedFromAtOffset on just one platform and then
a25a2c7c9a7e1e328a5bd8274d2d86b1fadc4692 "Always compare C++ typeinfo (based on
libstdc++ implementation)" extended that fix to more platforms.

But there is another RTTI comparison for -fsanitize=function generated in
clang's CodeGenFunction::EmitCall as just a pointer comparison.  For
SANITIZER_NON_UNIQUE_TYPEINFO platforms this needs to be extended to also do
string comparison.  For that, __ubsan_handle_function_type_mismatch[_abort]
takes the two std::type_info pointers as additional parameters now, checks them
internally for potential equivalence, and returns without reporting failure if
they turn out to be equivalent after all.  (NORETURN needed to be dropped from
the _abort variant for that.)  Also these functions depend on ABI-specific RTTI
now, so needed to be moved from plain UBSAN_SOURCES (ubsan_handlers.h/cc) to
UBSAN_CXXABI_SOURCES (ubsan_handlers_cxx.h/cc), but as -fsanitize=function is
only supported in C++ mode that's not a problem.

Differential Revision: https://reviews.llvm.org/D60760

llvm-svn: 359759

5 years ago[Support] Don't check MAP_ANONYMOUS, just use MAP_ANON
Fangrui Song [Thu, 2 May 2019 05:58:09 +0000 (05:58 +0000)]
[Support] Don't check MAP_ANONYMOUS, just use MAP_ANON

Though being marked "deprecated" by the Linux man-pages project
(MAP_ANON is a synonym of MAP_ANONYMOUS), it is the mostly widely
available macro - many systems that don't provide MAP_ANONYMOUS have
MAP_ANON. MAP_ANON is also used here and there in compiler-rt.

llvm-svn: 359758

5 years ago[AMDGPU] gfx1010 lost VOP2 forms of some add/sub
Stanislav Mekhanoshin [Thu, 2 May 2019 04:26:35 +0000 (04:26 +0000)]
[AMDGPU] gfx1010 lost VOP2 forms of some add/sub

Add legalization of V_ADD_I32, V_SUB_I32, V_SUBREV_I32.

Differential Revision:

llvm-svn: 359757

5 years ago[AMDGPU] gfx1010 allows VOP3 to have a literal
Stanislav Mekhanoshin [Thu, 2 May 2019 04:01:39 +0000 (04:01 +0000)]
[AMDGPU] gfx1010 allows VOP3 to have a literal

Differential Revision: https://reviews.llvm.org/D61413

llvm-svn: 359756

5 years ago[libcxx] cmake - guard list remove
Brian Cain [Thu, 2 May 2019 03:49:50 +0000 (03:49 +0000)]
[libcxx] cmake - guard list remove

REMOVE_ITEM fails if CMAKE_REQUIRED_LIBRARIES is empty on some
versions of cmake.

llvm-svn: 359755

5 years ago[AMDGPU] gfx1010 constant bus limit
Stanislav Mekhanoshin [Thu, 2 May 2019 03:47:23 +0000 (03:47 +0000)]
[AMDGPU] gfx1010 constant bus limit

Constant bus limit has increased to 2 with GFX10.

Differential Revision: https://reviews.llvm.org/D61404

llvm-svn: 359754

5 years ago[X86] Remove the redundant suffix in vfpclassp[d,s]'s broadcasting variant
Craig Topper [Thu, 2 May 2019 03:25:50 +0000 (03:25 +0000)]
[X86] Remove the redundant suffix in vfpclassp[d,s]'s broadcasting variant

The broadcasting variant for instruction vfpclassp[d,s] shouldn't use suffix q/l. So remove them from the template.

Patch by Pengfei Wang

Differential Revision: https://reviews.llvm.org/D61295

llvm-svn: 359753

5 years agoMention the thread-format & frame-format settings in help.
Jim Ingham [Thu, 2 May 2019 02:14:08 +0000 (02:14 +0000)]
Mention the thread-format & frame-format settings in help.

You can only find out about this useful customization by browsing
the settings list output or the llvm.org web pages.  Mention it
in the help for thread list, thread backtrace & _regex_bt commands
to make it more discoverable.

llvm-svn: 359752

5 years ago[test] Convert TestWatchpointSetErrorCases.py to lit
Jonas Devlieghere [Thu, 2 May 2019 01:54:05 +0000 (01:54 +0000)]
[test] Convert TestWatchpointSetErrorCases.py to lit

This test is flaky on GreenDragon. Since it was a pexpect test and
straightforward enough to convert, I went ahead and converted it to a
lit test.

Differential revision: https://reviews.llvm.org/D61414

llvm-svn: 359751

5 years ago[CommandObjectCommands] Honor stop-command-source-on-error
Jonas Devlieghere [Thu, 2 May 2019 01:54:02 +0000 (01:54 +0000)]
[CommandObjectCommands] Honor stop-command-source-on-error

This patch ensures that we honor the stop-command-source-on-error
setting from `command source`. The problem is that we didn't
differentiate between the boolean value being true or false, or not
being set. For the latter scenario, we should calculate the value in the
command interpreter based on the global options.

Differential revision: https://reviews.llvm.org/D61406

llvm-svn: 359750

5 years agolld-link: Make "duplicate resource" error message a bit more concise
Nico Weber [Thu, 2 May 2019 01:52:24 +0000 (01:52 +0000)]
lld-link: Make "duplicate resource" error message a bit more concise

Reduces the error message from:
    lld-link: error: failed to parse .res file: duplicate resource: type STRINGTABLE (ID 6)/name ID 3/language 1033, in test1.res and in test2.res

To:
    lld-link: error: duplicate resource: type STRINGTABLE (ID 6)/name ID 3/language 1033, in test1.res and in test2.res

Make sure every error message emitted by cvtres contains the name of at
least one ".res" file, so that removing the "failed to parse .res file"
string doesn't lose information.

Differential Revision: https://reviews.llvm.org/D61388

llvm-svn: 359749

5 years ago[CMake] Remove EmulateInstructionMIPS dependency on Interpreter
Alex Langford [Thu, 2 May 2019 01:10:38 +0000 (01:10 +0000)]
[CMake] Remove EmulateInstructionMIPS dependency on Interpreter

llvm-svn: 359748