LLVM/llvm 375507www/trunk/devmtg/2019-10 index.html

Move a roundtable

LLVM/llvm 375506www/trunk/devmtg/2019-10 index.html

Add more roundtables

LLVM/llvm 375505llvm/trunk/lib/Transforms/InstCombine InstCombineSelect.cpp InstCombineInternal.h, llvm/trunk/test/Transforms/InstCombine sadd_sat.ll

[InstCombine] Signed saturation patterns

This adds an instcombine matcher for code that attempts to perform signed
saturating arithmetic by casting to a higher type. Unsigned cases are already
matched, this adds extra matches for the more complex signed cases, which
involves matching the min(max(add a b)) nodes with proper extends to ensure
legality.

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

LLVM/llvm 375504libcxx/trunk/include memory

    [libcxx] Remove shared_ptr::make_shared

    Summary: This patch removes `shared_ptr::make_shared` as it is not part of the 
standard. This patch also adds __create_with_cntrl_block, which is a help function that 
can be used in std::allocate_shared and std::make_shared. This is the third patch (out of 
4) from D66178.

    Reviewers: EricWF, mclow.lists, ldionne

    Subscribers: christof, dexonsmith, libcxx-commits

    Tags: #libc

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

LLVM/llvm 375503llvm/trunk/test/Transforms/InstCombine sadd_sat.ll

[InstCombine] Signed saturation tests. NFC

LLVM/llvm 375502llvm/trunk/lib/CodeGen/MIRParser MIParser.cpp, llvm/trunk/test/CodeGen/MIR/Mips setRegClassOrRegBank.mir

[MIParser] Set RegClassOrRegBank during instruction parsing

MachineRegisterInfo::createGenericVirtualRegister sets
RegClassOrRegBank to static_cast<RegisterBank *>(nullptr).
MIParser on the other hand doesn't. When we attempt to constrain
Register Class on such VReg, additional COPY is generated.
This way we avoid COPY instructions showing in test that have MIR
input while they are not present with llvm-ir input that was used
to create given MIR for a -run-pass test.

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

LLVM/llvm 375501llvm/trunk/test/CodeGen/Mips/GlobalISel/instruction-select add_vec.mir, llvm/trunk/test/CodeGen/Mips/GlobalISel/legalizer add_vec_builtin.mir add_vec.mir

[MIPS GlobalISel] Select MSA vector generic and builtin add

Select vector G_ADD for MIPS32 with MSA. We have to set bank
for vector operands to fprb and selectImpl will do the rest.
__builtin_msa_addv_<format> will be transformed into G_ADD
in legalizeIntrinsic and selected in the same way.
__builtin_msa_addvi_<format> will be directly selected into
ADDVI_<format> in legalizeIntrinsic. MIR tests for it have
unnecessary additional copies. Capture current state of tests
with run-pass=legalizer with a test in test/CodeGen/MIR/Mips.

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

LLVM/llvm 375500llvm/trunk/lib/Transforms/IPO FunctionImport.cpp

[ThinLTO] Add code comment. NFC

LLVM/llvm 375499llvm/trunk/include/llvm/IR Instructions.h, llvm/trunk/lib/Bitcode/Reader BitcodeReader.cpp

[Alignment][NFC] Convert StoreInst to MaybeAlign

Summary:
This is patch is part of a series to introduce an Alignment type.
See this thread for context: 
http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html
See this patch for the introduction of the type: https://reviews.llvm.org/D64790

Reviewers: courbet

Subscribers: hiraditya, jfb, llvm-commits

Tags: #llvm

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

LLVM/llvm 375498llvm/trunk/include/llvm/IR Instructions.h, llvm/trunk/lib/Bitcode/Reader BitcodeReader.cpp

[Alignment][NFC] Convert LoadInst to MaybeAlign

Summary:
This is patch is part of a series to introduce an Alignment type.
See this thread for context: 
http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html
See this patch for the introduction of the type: https://reviews.llvm.org/D64790

Reviewers: courbet

Subscribers: hiraditya, jfb, llvm-commits

Tags: #llvm

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

LLVM/llvm 375497llvm/trunk/lib/Target/PowerPC PPCReduceCRLogicals.cpp, llvm/trunk/test/CodeGen/PowerPC 2008-10-28-f128-i32.ll vec-min-max.ll

[PowerPC] Turn on CR-Logical reducer pass

This re-commits r375152 which was pulled in r375233 because it broke
the EXPENSIVE_CHECKS bot on Windows.

The reason for the failure was a bug in the pass that the commit turned
on by default. This patch fixes that bug and turns the pass back on.
This patch has been verified on the buildbot that originally failed
thanks to Simon Pilgrim.

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

LLVM/llvm 375496llvm/trunk/include/llvm/IR Attributes.h, llvm/trunk/lib/AsmParser LLParser.cpp LLParser.h

[Alignment][NFC] Use MaybeAlign in AttrBuilder

Summary:
This is patch is part of a series to introduce an Alignment type.
See this thread for context: 
http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html
See this patch for the introduction of the type: https://reviews.llvm.org/D64790

Reviewers: courbet

Subscribers: hiraditya, llvm-commits

Tags: #llvm

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

LLVM/llvm 375495llvm/trunk/include/llvm/IR Attributes.h InstrTypes.h, llvm/trunk/lib/IR Attributes.cpp

[Alignment][NFC] Attributes use Align/MaybeAlign

Summary:
This is patch is part of a series to introduce an Alignment type.
See this thread for context: 
http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html
See this patch for the introduction of the type: https://reviews.llvm.org/D64790

Reviewers: courbet

Subscribers: jholewinski, hiraditya, llvm-commits

Tags: #llvm

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

LLVM/llvm 375494meta/trunk github-usernames.txt

Added evgeny777

LLVM/llvm 375493llvm/trunk/lib/Transforms/IPO FunctionImport.cpp, llvm/trunk/test/ThinLTO/X86 not-internalized.ll weak_externals.ll

[ThinLTO] Don't internalize during promotion

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

LLVM/llvm 375492llvm/trunk/lib/DebugInfo/PDB/Native NativeEnumInjectedSources.cpp

[LLVMDebugInfoPDB] - Use cantFail() instead of assert().

Currently injected-sources-native.test fails with "Expected<T>
value was in success state.
(Note: Expected<T> values in success mode must still be checked
prior to being destroyed)"
when llvm is compiled with LLVM_ENABLE_ABI_BREAKING_CHECKS in Release.

The problem is that getStringForID returns Expected<StringRef>
and Expected value must always be checked, even if it is in success state.
Checking with assert only helps in Debug and is wrong.

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

LLVM/llvm 375491cfe/trunk/unittests/Frontend OutputStreamTest.cpp

[FrontendTests] Try again to make test not write an output file

Setting the output stream to nulls seems to work.

LLVM/llvm 375490compiler-rt/trunk/test/builtins/Unit clear_cache_test.c

[builtins][test] Avoid unportable mmap call in clear_cache_test.c

Within the last two weeks, the Builtins-*-sunos :: clear_cache_test.c started to FAIL
on Solaris.  Running it under truss shows

  mmap(0x00000000, 128, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, 0, 0) Err#22 
EINVAL
  _exit(1)

While there are several possible reasons mmap can return EINVAL on Solaris, it turns
out it's this one (from mmap(2)):

  MAP_ANON  was  specified,  but the file descriptor was not
   -1.

And indeed even the Linux mmap(2) documents this as unportable:

  MAP_ANONYMOUS
          The mapping is not backed by any file; its contents are initial‐
          ized to zero.  The fd argument is ignored; however, some  imple‐
          mentations require fd to be -1 if MAP_ANONYMOUS (or MAP_ANON) is
          specified, and portable applications should  ensure  this.   The

This patch follows this advise.  Tested on x86_64-pc-linux-gnu, amd64-pc-solaris2.11
and sparcv9-sun-solaris2.11.

    [2 lines not shown]

LLVM/llvm 375489cfe/trunk/unittests/Frontend OutputStreamTest.cpp

Revert "[FrontendTests] Don't actually run the full compiler, parsing is sufficient."

This reverts commit 375488.

LLVM/llvm 375488cfe/trunk/unittests/Frontend OutputStreamTest.cpp

[FrontendTests] Don't actually run the full compiler, parsing is sufficient.

LLVM/llvm 375487cfe/trunk/tools/clang-fuzzer ExampleClangProtoFuzzer.cpp

[clang-fuzzer] Update proto fuzzer example for r375453.

LLVM/llvm 375486llvm/trunk/cmake/platforms WinMsvc.cmake

[CMake] [WinMsvc] Look for includes and libs in ${MSVC_BASE}/atlmfc

This is necessary if building with the DIA SDK enabled.

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

LLVM/llvm 375485llvm/trunk/cmake config-ix.cmake

[CMake] Allow overriding MSVC_DIA_SDK_DIR via CMake

This eases using it in cross-msvc setups.

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

LLVM/llvm 375484llvm/trunk/utils/gn/secondary/clang/lib/Tooling/DependencyScanning BUILD.gn

gn build: Merge r375483

LLVM/llvm 375483cfe/trunk/include/clang/Tooling/DependencyScanning DependencyScanningTool.h, cfe/trunk/lib/Tooling/DependencyScanning DependencyScanningTool.cpp CMakeLists.txt

Refactor DependencyScanningTool to its own file

Summary:
There's no behavior change - just moving DependencyScanningTool to its own file
since this tool can be reused across both clang-scan-deps binary and an interface
exposed as part of libClang APIs.

Reviewers: arphaman, jkorous, Bigcheese, dexonsmith

Subscribers: mgorny, cfe-commits

Tags: #clang

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

LLVM/llvm 375482zorg/trunk/zorg/buildbot/process factory.py

Cosmetic. NFC.

LLVM/llvm 375481zorg/trunk/buildbot/osuosl/master/config builders.py

Removed dependency on compiler-rt for llvm-clang-lld-x86_64-scei-ps4-* builders.

LLVM/llvm 375480test-suite/trunk/External/SPEC SpecCPU2017.cmake

[SPECCPU2017] Check for 'all' input data directory before generating command

Summary: As of SPEC CPU2017 1.0.5, 526.blender_r/data does not contain an 'all' 
subdirectory, which breaks the build.

Reviewers: Meinersbur, MatzeB

Subscribers: mgorny, llvm-commits

Tags: #llvm

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

LLVM/llvm 375479zorg/trunk/zorg/buildbot/builders ClangBuilder.py

Check out LNT and test-sute under test directory by default.

LLVM/llvm 375478cfe/trunk/lib/Sema SemaLambda.cpp

Minor coding style fix. NFC.

LLVM/llvm 375477lldb/trunk/unittests/ScriptInterpreter/Python PythonDataObjectsTests.cpp

fix PythonDataObjectsTest.TestExceptions on windows

Looks like on windows googlemock regexes treat newlines differently
from on darwin.    This patch fixes the regex in this test so it
will work on both.

Fixes: https://reviews.llvm.org/D69214

LLVM/llvm 375476www/trunk/devmtg/2019-10 sponsors.incl, www/trunk/devmtg/2019-10/logos AnnapurnaLabs.png

add png logo for Annapurna Labs

LLVM/llvm 375475lldb/trunk/scripts/Python python-extensions.swig, lldb/trunk/source/Plugins/ScriptInterpreter/Python ScriptInterpreterPython.cpp PythonExceptionState.cpp

remove multi-argument form of PythonObject::Reset()

Summary:
With this patch, only the no-argument form of `Reset()` remains in
PythonDataObjects.   It also deletes PythonExceptionState in favor of
PythonException, because the only call-site of PythonExceptionState was
also using Reset, so I cleaned up both while I was there.

Reviewers: JDevlieghere, clayborg, labath, jingham

Reviewed By: labath

Subscribers: mgorny, lldb-commits

Tags: #lldb

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

LLVM/llvm 375474llvm/trunk/utils/lit/lit main.py run.py

[lit] Move increase_process_limit to ParallelRun

Increasing the process limit only makes sense when we use multiple
processes.

LLVM/llvm 375473www-releases/trunk download.html

Try to fix the darwin filename

LLVM/llvm 375472compiler-rt/trunk CMakeLists.txt, compiler-rt/trunk/cmake config-ix.cmake

Fix lld detection in standalone compiler-rt.

Summary:
Right now all hwasan tests on Android are silently disabled because they
require "has_lld" and standalone compiler-rt can not (and AFAIK was
never able to) set it.

Reviewers: pcc, dyung

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

Tags: #sanitizers, #llvm

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

LLVM/llvm 375471compiler-rt/trunk/test/hwasan/TestCases try-catch.cpp

[hwasan] Workaround unwinder issues in try-catch test.

Android links the unwinder library to every DSO. The problem is,
unwinder has global state, and hwasan implementation of personality
function wrapper happens to rub it the wrong way.

Switch the test to static libc++ as a temporary workaround.

LLVM/llvm 375470llvm/trunk/lib/Target/X86 X86InstrInfo.td X86InstrArithmetic.td

[X86][BMI] Pull out schedule classes from bmi_andn<> and bmi_bls<>

Stop hardwiring classes

LLVM/llvm 375469libcxx/trunk/include CMakeLists.txt

[NFC] Fix typos in CMake comment

LLVM/llvm 375468cfe/trunk/lib/Driver/ToolChains NetBSD.cpp, cfe/trunk/test/Driver netbsd.c

Fix -fuse-init-array decision logic on NetBSD

For NetBSD 9 and later, it is the default. On older versions, only ARM
and AArch64 use it by default.

LLVM/llvm 375467www-releases/trunk download.html, www-releases/trunk/9.0.0 clang+llvm-9.0.0-x86_64-darwin-apple.tar.xz clang+llvm-9.0.0-x86_64-darwin-apple.tar.xz.sig

9.0.0 Release: add macOS binary

LLVM/llvm 375466cfe/trunk/docs Modules.rst, cfe/trunk/include/clang/Driver CC1Options.td

[Implicit Modules] Add -cc1 option -fmodules-strict-context-hash which includes search 
paths and diagnostics.

This is a recommit of r375322 and r375327 with a fix for the Windows test breakage.

LLVM/llvm 375465lldb/trunk/unittests/Expression DWARFExpressionTest.cpp

whitespace cleanup

LLVM/llvm 375464lldb/trunk/unittests/Expression DWARFExpressionTest.cpp

Factor out common test functionality into a helper class. (NFC)

LLVM/llvm 375463llvm/trunk/lib/Target/X86 X86ISelLowering.cpp, llvm/trunk/test/CodeGen/X86 movmsk-cmp.ll

[X86][SSE] Add OR(EXTRACTELT(X,0),OR(EXTRACTELT(X,1))) -> MOVMSK+CMP reduction combine

LLVM/llvm 375462llvm/trunk/test/CodeGen/X86 movmsk-cmp.ll

[X86][SSE] Add OR(EXTRACTELT(X,0),OR(EXTRACTELT(X,1))) movmsk v2X64 tests

LLVM/llvm 375461llvm/trunk/examples/LLJITExamples/LLJITWithObjectCache CMakeLists.txt

[examples] Add a dependency on ExecutionEngine to LLJITWithObjectCache example.

ExecutionEngine.cpp contains the anchor() for the ObjectCache base class, so we
need an explicit dependency on it.

Patch by Stephen Neuendorffer. Thanks Stephen!

LLVM/llvm 375460llvm/trunk/include/llvm/CodeGen/GlobalISel MachineIRBuilder.h, llvm/trunk/lib/Target/AMDGPU AMDGPULegalizerInfo.cpp AMDGPULegalizerInfo.h

AMDGPU/GlobalISel: Legalize fast unsafe FDIV

Reviewers: arsenm

Reviewed By: arsenm

Subscribers: kzhuravl, jvesely, wdng, nhaehnle, yaxunl, rovka, dstuttard, tpr, t-tye, 
hiraditya, Petar.Avramovic, llvm-commits

Tags: #llvm

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

LLVM/llvm 375459lldb/trunk/packages/Python/lldbsuite/test/lang/c/local_variables TestLocalVariables.py

XFAIL TestLocalVariables.py on Windows

This test has been failing for a while on the Windows bot.

https://bugs.llvm.org/show_bug.cgi?id=43752

LLVM/llvm 375458llvm/trunk/utils/lit/lit run.py

[lit] Simplify test scheduling via multiprocessing.Pool