SuccessChanges

Summary

  1. [compiler-rt] Fix compilation when multiple architectures can be targeted (details)
  2. [InstCombine] Relax constraints of uses for exp(X) * exp(Y) -> exp(X + Y) (details)
  3. [AMDGPU][Libomptarget] Remove g_atmi_machine global (details)
  4. [OpenCL] Fix ICE with invalid use of half (details)
  5. [clang][Parse] Add parsing support for C++ attributes on using-declarations (details)
  6. [llvm-dwarfdump][test] Add missing dedicated tests for some options (details)
  7. [SLP]Better detection of perfect/shuffles matches for gather nodes. (details)
  8. Simplify coro-zero-alloca.ll (details)
  9. [x86] add test for sext-of-setcc; NFC (details)
  10. [lldb] Remove SBCommandReturnObject::ref (details)
Commit 7879fa6884723f35463de33cbe03b2acb93ea3cf by eleviant
[compiler-rt] Fix compilation when multiple architectures can be targeted

When toolchain can supports all of arm, armhf and armv6m architectures compiler-rt
libraries won't compile because architecture specific flags are appended to single
BUILTIN_CFLAGS variable.

Differential revision: https://reviews.llvm.org/D103363
The file was modifiedcompiler-rt/lib/builtins/CMakeLists.txt
Commit 13140120dcca64c35508880e10e14bcee3c54a58 by spatel
[InstCombine] Relax constraints of uses for exp(X) * exp(Y) -> exp(X + Y)

InstCombine didn't perform the transformations when fmul's operands were
the same instruction because it required to have one use for each of them
which is false in the case. This patch fixes this + adds tests for them
and introduces a new function isOnlyUserOfAnyOperand to check these cases
in a single place.

This patch is a result of discussion in D102574.

Differential Revision: https://reviews.llvm.org/D102698
The file was modifiedllvm/lib/IR/Instruction.cpp
The file was modifiedllvm/include/llvm/IR/Instruction.h
The file was modifiedllvm/test/Transforms/InstCombine/fmul-exp2.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
The file was modifiedllvm/test/Transforms/InstCombine/fmul-exp.ll
Commit fb113264a8da1d8e456e64f99920fac6b4fae548 by Pushpinder.Singh
[AMDGPU][Libomptarget] Remove g_atmi_machine global

Turns out the only purpose of this class was verify if device ID
was in range or not which could be done easily by using g_atl_machine.

Still getting rid of g_atl_machine is pending which would be done in
a later patch.

Reviewed By: JonChesterfield

Differential Revision: https://reviews.llvm.org/D103443
The file was modifiedopenmp/libomptarget/plugins/amdgpu/impl/atmi_runtime.h
The file was modifiedopenmp/libomptarget/plugins/amdgpu/impl/system.cpp
The file was modifiedopenmp/libomptarget/plugins/amdgpu/impl/atmi_interop_hsa.cpp
The file was modifiedopenmp/libomptarget/plugins/amdgpu/impl/rt.h
The file was modifiedopenmp/libomptarget/plugins/amdgpu/impl/atmi.cpp
Commit 94b0aec0f5c6b4f6a27cf3a542f795bbba72e851 by olemarius.strohm
[OpenCL] Fix ICE with invalid use of half

Because half is limited to the `cl_khr_fp16` extension being enabled,
`DefaultLvalueConversion` can fail when it's not enabled.
The original assumption that it will never fail is therefore wrong now.

Fixes: PR47976

Reviewed By: Anastasia

Differential Revision: https://reviews.llvm.org/D103175
The file was modifiedclang/lib/Sema/SemaExprCXX.cpp
The file was addedclang/test/SemaOpenCLCXX/half.clcpp
Commit 97d234935f1514af128277943f30efc469525371 by Louis Dionne
[clang][Parse] Add parsing support for C++ attributes on using-declarations

This is a re-application of dc67299 which was reverted in f63adf5b because
it broke the build. The issue should now be fixed.

Attribution note: The original author of this patch is Erik Pilkington.
I'm only trying to land it after rebasing.

Differential Revision: https://reviews.llvm.org/D91630
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
The file was modifiedclang/lib/Parse/ParseDecl.cpp
The file was modifiedclang/docs/ReleaseNotes.rst
The file was modifiedclang/test/Parser/cxx0x-attributes.cpp
The file was modifiedclang/include/clang/Parse/Parser.h
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/docs/LanguageExtensions.rst
The file was addedclang/test/SemaCXX/cxx11-attributes-on-using-declaration.cpp
The file was modifiedclang/lib/Parse/ParseDeclCXX.cpp
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticParseKinds.td
The file was modifiedclang/include/clang/Basic/Features.def
Commit e60f147324b64f7740de58e6b936cdc0e26daadd by gbreynoo
[llvm-dwarfdump][test] Add missing dedicated tests for some options

This change adds tests specifically for --parent-recurse-depth, --quiet
and -o. The test for -o found a typo in an error message which is also
fixed in this change.

Differential Revision: https://reviews.llvm.org/D103250
The file was addedllvm/test/tools/llvm-dwarfdump/X86/quiet.s
The file was addedllvm/test/tools/llvm-dwarfdump/X86/parent_recurse_depth.s
The file was modifiedllvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
The file was addedllvm/test/tools/llvm-dwarfdump/X86/output.s
Commit 36911971a58d1ba8b15e97790ac816eaadb0603e by a.bataev
[SLP]Better detection of perfect/shuffles matches for gather nodes.

Implemented better scheme for perfect/shuffled matches of the gather
nodes which allows to fix the performance regressions introduced by
earlier patches. Starting detecting matches for broadcast nodes and
extractelement gathering.

Differential Revision: https://reviews.llvm.org/D102920
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/blending-shuffle.ll
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/blending-shuffle-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/diamond_broadcast.ll
Commit 41d08541e88467992ff6116cfcf18190a10402b3 by lxfind
Simplify coro-zero-alloca.ll

D101841 added this test. It appears to generate different outcome on different platforms.
Make it to only call -coro-split instead of entire O2 pipeline to simplify the test flow.
Hope this will make  the test more robust.

Reviewed By: djtodoro

Differential Revision: https://reviews.llvm.org/D103418
The file was modifiedllvm/test/Transforms/Coroutines/coro-zero-alloca.ll
Commit de65b1ab7de1f4651d930d8f445167918ebf9908 by spatel
[x86] add test for sext-of-setcc; NFC
The file was modifiedllvm/test/CodeGen/X86/sext-vsetcc.ll
Commit 01fb14e17763269779f2c03b772db960540f47ed by Raphael Isemann
[lldb] Remove SBCommandReturnObject::ref

This function was added in D67589 and returns an internal CommandReturnObject
which isn't allowed in the SB API. This patch just makes it private as all uses
of this function are inside SBCommandReturnObject.

Reviewed By: jankratochvil

Differential Revision: https://reviews.llvm.org/D103390
The file was modifiedlldb/include/lldb/API/SBCommandReturnObject.h