FailedChanges

Summary

  1. LocalStackSlotAllocation: Swap order of check (details)
  2. AMDGPU: Add baseline test for incorrect SP access (details)
  3. AMDGPU: Clear offset register when using local stack area (details)
  4. Include (Type|Symbol)Record.h less (details)
  5. RegAllocFast: Make self loop live-out heuristic more aggressive (details)
  6. [libc++] Ensure streams are initialized early (details)
  7. Re-land: Add new hidden option -print-changed which only reports changes to IR (details)
  8. [llvm-nm] Use aggregate initialization instead of memset zero (details)
  9. [SLP] add tests for reduction ordering; NFC (details)
  10. ValueEnumerator.cpp - remove duplicate includes. NFCI. (details)
  11. InterferenceCache.cpp - remove duplicate includes. NFCI. (details)
  12. raw_ostream.cpp - remove duplicate includes. NFCI. (details)
  13. DwarfUnit.h - remove unnecessary includes. NFCI. (details)
  14. [GISel] Add new combines for unary FP instrs with constant operand (details)
  15. [Sema][MSVC] warn at dynamic_cast/typeid when /GR- is given (details)
  16. [libFuzzer] Enable entropic by default. (details)
  17. Sema: add support for `__attribute__((__swift_bridge__))` (details)
  18. fix test no-rtti.cpp (details)
  19. [clang][codegen] Skip adding default function attributes on intrinsics. (details)
  20. [AArch64][GlobalISel] Make G_BUILD_VECTOR os <16 x s8> legal. (details)
  21. [gn build] make "all" target build (details)
  22. GlobalISel: Lift store value widening restriction (details)
  23. [obj2yaml] - Match ".stack_size" with the original section name, and not the uniquified name. (details)
  24. Add '<' meta command to read in code from external file (details)
  25. [UpdateTestChecks][NFC] Fix spelling (details)
  26. [OpenMP][FIX] Do not crash trying to print a missing (demangled) user condition (details)
  27. [OpenMP][FIX] Do not drop a '$' while demangling declare variant names (details)
  28. [OpenMP] Support nested OpenMP context selectors (declare variant) (details)
  29. [OpenMP] Context selector extensions for return value overloading (details)
  30. [OpenMP] Overload `std::isnan` and friends multiple times for the GPU (details)
  31. [OpenMP] Context selector extensions for template functions (details)
  32. [OpenMP] Support `std::complex` math functions in target regions (details)
  33. [AMDGPU] gfx1030 RT support (details)
  34. Revert "[obj2yaml] - Match ".stack_size" with the original section name, and not the uniquified name." (details)
  35. [SystemZ][z/OS] Set aligned allocation unavailable by default for z/OS (details)
  36. [gn build] unconfuse sync script about "sources = []" in clang/lib/Headers/BUILD.gn (details)
  37. Fix build. (details)
  38. [InstCombine] Add test for infinite combine loop (NFC) (details)
  39. [InstSimplify] Clarify SimplifyWithOpReplaced() return value (details)
  40. Reapply [InstCombine] Simplify select operand based on equality condition (details)
  41. [gn build] Port 56069b5c71c (details)
  42. [UpdateTestChecks] Allow $ in function names (details)
  43. [aarch64][tests] Add tests which show current lack of implicit null support (details)
  44. [flang][msvc] Work around if constexpr (false) evaluation. NFC. (details)
  45. [X86] Add test case for a masked load mask becoming all ones after type legalization. (details)
  46. [DAGCombiner] Teach visitMLOAD to replace an all ones mask with an unmasked load (details)
  47. [lsan] Share platform allocator settings between ASan and LSan (details)
  48. Revert "[lsan] Share platform allocator settings between ASan and LSan" (details)
  49. [ORC] Add operations to create and lookup JITDylibs to OrcV2 C bindings. (details)
  50. Revert "Do not apply calling conventions to MSVC entry points" (details)
  51. [AMDGPU] gfx1030 test update. NFC. (details)
  52. [NFC][LSAN] Change SuspendedThreadsList interface (details)
  53. [ELF] Bump the limit of thunk creation passes from 10 to 15 (details)
  54. [NFC][regalloc] type LiveInterval::reg() as Register (details)
  55. [obj2yaml] - Match ".stack_size" with the original section name, and not the uniquified name. (details)
  56. [lldb/test] Enable faulthandler in dotest (details)
  57. [NFC] Refactor DiagnosticBuilder and PartialDiagnostic (details)
  58. [libunwind] Support for leaf function unwinding. (details)
  59. [flang] Substrings with lower bound greater than upper bound (details)
  60. Disable a large test for EXPENSIVE_CHECKS and debug build (details)
  61. [AArch64] Add -mmark-bti-property flag. (details)
  62. [gn build] (manually) port 1321160a2 (details)
  63. [EarlyCSE] Simplify max/min pattern matching. NFC. (details)
  64. [Flang] Fixed installation permission of the "binary" flang (details)
  65. Commenting out atomics with padding to unbreak MSAN tests (details)
  66. Revert "[AArch64] Add -mmark-bti-property flag." (details)
  67. [AArch64] Add -mmark-bti-property flag. (details)
  68. [DAGCombiner] Teach visitMSTORE to replace an all ones mask with an unmasked store. (details)
  69. [MemorySSA] Rename uses in blocks with Phis. (details)
  70. Canonicalize declaration pointers when forming APValues. (details)
  71. PR47555: Inheriting constructors are implicitly definable. (details)
Commit 8d8a496356dbdf4fcc17caa69fe489d8d87068ac by Matthew.Arsenault
LocalStackSlotAllocation: Swap order of check
The file was modifiedllvm/lib/CodeGen/LocalStackSlotAllocation.cpp
Commit deae5e567d65c49c40abc99d5ad53855c9872d5b by Matthew.Arsenault
AMDGPU: Add baseline test for incorrect SP access
The file was addedllvm/test/CodeGen/AMDGPU/local-stack-alloc-block-sp-reference.ll
Commit 367248956e93982a73c0441868a562aeb85af5a0 by Matthew.Arsenault
AMDGPU: Clear offset register when using local stack area

eliminateFrameIndex won't fix up the offset register when the direct
frame index reference is moved to a separate move instruction. Switch
the offset to a base 0 (which it probably should be to begin with).
The file was modifiedllvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/stack-pointer-offset-relative-frameindex.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/local-stack-alloc-block-sp-reference.ll
Commit e47d2927de79767663f0a0ece0581522fbe40ac4 by rnk
Include (Type|Symbol)Record.h less

Most clients only need CVType and CVSymbol, not structs for every type
and symbol. Move CVSymbol and CVType to CVRecord.h to accomplish this.
Update some of the common headers that need CVSymbol and CVType to use
the new location.
The file was modifiedllvm/include/llvm/DebugInfo/CodeView/SymbolRecord.h
The file was modifiedllvm/include/llvm/DebugInfo/CodeView/TypeRecordHelpers.h
The file was modifiedllvm/lib/DebugInfo/CodeView/TypeIndexDiscovery.cpp
The file was modifiedllvm/include/llvm/DebugInfo/PDB/Native/TpiStream.h
The file was modifiedllvm/include/llvm/DebugInfo/CodeView/CodeViewRecordIO.h
The file was modifiedllvm/include/llvm/DebugInfo/CodeView/DebugSymbolsSubsection.h
The file was modifiedllvm/include/llvm/DebugInfo/CodeView/LazyRandomTypeCollection.h
The file was modifiedllvm/include/llvm/DebugInfo/CodeView/TypeIndexDiscovery.h
The file was modifiedllvm/include/llvm/DebugInfo/CodeView/TypeStreamMerger.h
The file was modifiedllvm/include/llvm/DebugInfo/CodeView/CVSymbolVisitor.h
The file was modifiedllvm/include/llvm/DebugInfo/CodeView/TypeRecord.h
The file was modifiedllvm/include/llvm/DebugInfo/CodeView/SymbolDumper.h
The file was modifiedllvm/include/llvm/DebugInfo/CodeView/SymbolRecordHelpers.h
The file was modifiedllvm/include/llvm/DebugInfo/CodeView/CVRecord.h
The file was modifiedllvm/unittests/DebugInfo/CodeView/TypeHashingTest.cpp
The file was modifiedllvm/include/llvm/DebugInfo/CodeView/TypeCollection.h
The file was modifiedllvm/include/llvm/DebugInfo/CodeView/RecordName.h
Commit 738c73a454881ca78214816754c1b82941d0cd26 by Matthew.Arsenault
RegAllocFast: Make self loop live-out heuristic more aggressive

This currently has no impact on code, but prevents sizeable code size
regressions after D52010. This prevents spilling and reloading all
values inside blocks that loop back. Add a baseline test which would
regress without this patch.
The file was modifiedllvm/lib/CodeGen/RegAllocFast.cpp
The file was addedllvm/test/CodeGen/AMDGPU/fastregalloc-self-loop-heuristic.mir
Commit 39faf428164a28f3652370958ce893d9200927c8 by Louis Dionne
[libc++] Ensure streams are initialized early

When statically linking libc++ on some systems, the streams are not
initialized early enough, which causes all kinds of issues. This was
reported e.g. in http://llvm.org/PR28954, but also in various open
source projects that use libc++.

Fixes http://llvm.org/PR28954.

Differential Revision: https://reviews.llvm.org/D31413
The file was modifiedlibcxx/src/iostream.cpp
The file was addedlibcxx/test/std/input.output/iostream.objects/init.pass.cpp
Commit f9e6d1edc0dad9afb26e773aa125ed62c58f7080 by anhtuyen
Re-land: Add new hidden option -print-changed which only reports changes to IR

A new hidden option -print-changed is added along with code to support
printing the IR as it passes through the opt pipeline in the new pass
manager. Only those passes that change the IR are reported, with others
only having the banner reported, indicating that they did not change the
IR, were filtered out or ignored. Filtering of output via the
-filter-print-funcs is supported and a new supporting hidden option
-filter-passes is added. The latter takes a comma separated list of pass
names and filters the output to only show those passes in the list that
change the IR. The output can also be modified via the -print-module-scope
function.

The code introduces a template base class that generalizes the comparison
of IRs that takes an IR representation as template parameter. The
constructor takes a series of lambdas that provide an event based API
for generalized reporting of IRs as they are changed in the opt pipeline
through the new pass manager.

The first of several instantiations is provided that prints the IR
in a form similar to that produced by -print-after-all with the above
mentioned filtering capabilities. This version, and the others to
follow will be introduced at the upcoming developer's conference.

Reviewed By: aeubanks (Arthur Eubanks), yrouban (Yevgeny Rouban), ychen (Yuanfang Chen)

Differential Revision: https://reviews.llvm.org/D86360
The file was modifiedllvm/lib/Passes/StandardInstrumentations.cpp
The file was addedllvm/test/Other/change-printer.ll
The file was modifiedllvm/lib/IR/LegacyPassManager.cpp
The file was modifiedllvm/include/llvm/Passes/StandardInstrumentations.h
Commit 50f4c7c785da87679fac1f483ef6a3e53dfca37a by i
[llvm-nm] Use aggregate initialization instead of memset zero
The file was modifiedllvm/tools/llvm-nm/llvm-nm.cpp
Commit b011611e373c3d6dfddde5120ce7974cc8719d4a by spatel
[SLP] add tests for reduction ordering; NFC
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/compare-reduce.ll
Commit c6a82fdbf2ea691fdaf70fb07ae1f61d8452e1ac by llvm-dev
ValueEnumerator.cpp - remove duplicate includes. NFCI.

Remove headers already included in ValueEnumerator.h
The file was modifiedllvm/lib/Bitcode/Writer/ValueEnumerator.cpp
Commit 69682f993cc0545da30be32fab572a2a56074653 by llvm-dev
InterferenceCache.cpp - remove duplicate includes. NFCI.

Remove headers already included in InterferenceCache.h
The file was modifiedllvm/lib/CodeGen/InterferenceCache.cpp
Commit 73d02064d2533daecf6fe82b8608da8f6eed59a5 by llvm-dev
raw_ostream.cpp - remove duplicate includes. NFCI.

Remove headers already included in raw_ostream.h
The file was modifiedllvm/lib/Support/raw_ostream.cpp
Commit 8f7d6b2375618a79f621d5484e44870ede335a13 by llvm-dev
DwarfUnit.h - remove unnecessary includes. NFCI.
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfUnit.h
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
Commit c4e589b7954c4e202474ce4a2101f07014792835 by mkitzan
[GISel] Add new combines for unary FP instrs with constant operand

https://reviews.llvm.org/D86393

Patch adds five new `GICombinerRules`, one for each of the following unary
FP instrs: `G_FNEG`, `G_FABS`, `G_FPTRUNC`, `G_FSQRT`, and `G_FLOG2`. The
combine rules perform the FP operation on the constant operand and replace
the original instr with the result. Patch additionally adds new combiner
tests for the AArch64 target to test these new combiner rules.
The file was modifiedllvm/include/llvm/CodeGen/LowLevelType.h
The file was modifiedllvm/include/llvm/Target/GlobalISel/Combine.td
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/combine-fptrunc.mir
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/combine-fabs.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/combine-fneg.mir
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/combine-fsqrt.mir
The file was modifiedllvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/combine-flog2.mir
The file was modifiedllvm/lib/CodeGen/LowLevelType.cpp
Commit ebf267b87d4b557dff488f87f66df3628e3da957 by zequanwu
[Sema][MSVC] warn at dynamic_cast/typeid when /GR- is given

Differential Revision: https://reviews.llvm.org/D86369
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/Sema/SemaExprCXX.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticGroups.td
The file was modifiedclang/lib/Sema/SemaCast.cpp
The file was addedclang/test/SemaCXX/no-rtti-data.cpp
The file was addedclang/test/SemaCXX/ms-no-rtti-data.cpp
Commit f3c2e0bcee64b0905addaefe9cd0c9ad4d20ac6f by mascasa
[libFuzzer] Enable entropic by default.

Entropic has performed at least on par with vanilla scheduling on
Clusterfuzz, and has shown a slight coverage improvement on FuzzBench:
https://www.fuzzbench.com/reports/2020-08-31/index.html

Reviewed By: Dor1s

Differential Revision: https://reviews.llvm.org/D87476
The file was modifiedcompiler-rt/lib/fuzzer/FuzzerOptions.h
The file was modifiedcompiler-rt/test/fuzzer/cross_over_uniform_dist.test
The file was modifiedcompiler-rt/lib/fuzzer/FuzzerDriver.cpp
The file was modifiedcompiler-rt/test/fuzzer/keep-seed.test
The file was modifiedcompiler-rt/lib/fuzzer/FuzzerFlags.def
Commit 77a01d9498a79d2e6e3f366fdb363928f188ec11 by Saleem Abdulrasool
Sema: add support for `__attribute__((__swift_bridge__))`

This extends semantic analysis of attributes for Swift interoperability
by introducing the `swift_bridge` attribute.  This attribute enables
bridging Objective-C types to Swift specific types.

This is based on the work of the original changes in
https://github.com/llvm/llvm-project-staging/commit/8afaf3aad2af43cfedca7a24cd817848c4e95c0c

Differential Revision: https://reviews.llvm.org/D87532
Reviewed By: Aaron Ballman
The file was addedclang/test/AST/attr-swift_bridge.m
The file was modifiedclang/include/clang/Basic/AttrDocs.td
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
The file was addedclang/test/SemaObjC/attr-swift_bridge.m
The file was modifiedclang/include/clang/Basic/Attr.td
Commit 4d437348d24d6342bdeb3ad84a64e57a889a0ea2 by zequanwu
fix test no-rtti.cpp
The file was modifiedclang/test/SemaCXX/no-rtti.cpp
Commit 4d4f0922837de3f1aa9862ae8a8d941b3b6e5f78 by michael.hliao
[clang][codegen] Skip adding default function attributes on intrinsics.

- After loading builtin bitcode for linking, skip adding default
  function attributes on LLVM intrinsics as their attributes are
  well-defined and retrieved directly from internal definitions. Adding
  extra attributes on intrinsics results in inconsistent result when
  `-save-temps` is present. Also, that makes few optimizations
  conservative.

Differential Revision: https://reviews.llvm.org/D87761
The file was addedclang/test/CodeGenCUDA/Inputs/device-lib-code.ll
The file was addedclang/test/CodeGenCUDA/dft-func-attr-skip-intrinsic.hip
The file was modifiedclang/lib/CodeGen/CodeGenAction.cpp
Commit 6ad33d8360335143ef50e7f7b66ae1ce17aaa2a5 by Amara Emerson
[AArch64][GlobalISel] Make G_BUILD_VECTOR os <16 x s8> legal.
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-build-vector.mir
Commit b3d33f5e838f8a181feb391fc96e74e3bb6be110 by thakis
[gn build] make "all" target build

If you want to build everything, building the default target
via just `ninja` is better, but `ninja all` shouldn't give you
compile errors -- this fixes that.
The file was modifiedllvm/utils/gn/secondary/compiler-rt/lib/scudo/BUILD.gn
Commit 88bdcbbf1aaef6ac99877cc511bf4b2a85343773 by Matthew.Arsenault
GlobalISel: Lift store value widening restriction

This doesn't change the memory size and doesn't need to worry about
non-power-of-2 sizes.
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-store-global.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-store.mir
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
Commit 14e55f82980cf1342d4d3eea4885a5375e829496 by rahmanl
[obj2yaml] - Match ".stack_size" with the original section name, and not the uniquified name.

Without this patch, obj2yaml decodes the content of only one ".stack_size" section. Other sections are dumped with their full contents.

Reviewed By: grimar, MaskRay

Differential Revision: https://reviews.llvm.org/D87727
The file was modifiedllvm/test/tools/obj2yaml/ELF/stack-sizes.yaml
The file was modifiedllvm/tools/obj2yaml/elf2yaml.cpp
Commit f723d193e2c92ea6903e3debfee32b13354808bc by jingham
Add '<' meta command to read in code from external file

Perform all error handling in ReadCode()

Add :help text describing “< path”, add extra line before Commands

Differential Revision: https://reviews.llvm.org/D87640
The file was modifiedlldb/source/Expression/REPL.cpp
Commit dbde3969ba8e2b396333dc6b139a0b3a88dfbc80 by johannes
[UpdateTestChecks][NFC] Fix spelling
The file was modifiedllvm/utils/UpdateTestChecks/common.py
Commit 6a02932becaeaeb02eddfaed567f3dad3719dd1c by johannes
[OpenMP][FIX] Do not crash trying to print a missing (demangled) user condition

Reviewed By: JonChesterfield

Differential Revision: https://reviews.llvm.org/D85875
The file was modifiedclang/lib/AST/OpenMPClause.cpp
The file was addedclang/test/AST/ast-dump-openmp-begin-declare-variant_13.c
Commit 05fd04eda4b22b09e33753132cbf037a1265c7e2 by johannes
[OpenMP][FIX] Do not drop a '$' while demangling declare variant names

Reviewed By: ABataev

Differential Revision: https://reviews.llvm.org/D85876
The file was modifiedclang/test/AST/ast-dump-openmp-declare-variant-extensions.c
The file was modifiedclang/lib/AST/OpenMPClause.cpp
Commit 5c63ae156e96a20ce96570d4bd2c48a9c8170a9d by johannes
[OpenMP] Support nested OpenMP context selectors (declare variant)

Due to `omp begin/end declare variant`, OpenMP context selectors can be
nested. This patch adds initial support for this so we can use it for
target math variants. We should improve the detection of "equivalent"
scores and user conditions, we should also revisit the data structures
of the OMPTraitInfo object, however, both are not pressing issues right
now.

Reviewed By: JonChesterfield

Differential Revision: https://reviews.llvm.org/D85877
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/test/OpenMP/declare_variant_messages.c
The file was modifiedclang/include/clang/Basic/DiagnosticParseKinds.td
The file was modifiedclang/include/clang/Parse/Parser.h
The file was modifiedclang/lib/Parse/ParseOpenMP.cpp
The file was addedclang/test/AST/ast-dump-openmp-begin-declare-variant_nested.c
Commit c4b7a1da9d872ed075ce99c80a90b11a135577a0 by johannes
[OpenMP] Context selector extensions for return value overloading

This extension allows to declare variants in between `omp begin/end
declare variant` that do not match the type of the existing function
with that name. Without this extension we would not find a base function
(with a compatible type), therefore create a new one, which would
cause conflicting declarations. With this extension we will not create
"missing" base functions, which basically renders these specializations
harmless. They will be generated but never called.

Reviewed By: JonChesterfield

Differential Revision: https://reviews.llvm.org/D85878
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMPKinds.def
The file was addedclang/test/AST/ast-dump-openmp-begin-declare-variant-varying-return.c
The file was modifiedclang/include/clang/AST/OpenMPClause.h
The file was modifiedclang/include/clang/Basic/AttrDocs.td
The file was modifiedclang/lib/Parse/ParseOpenMP.cpp
Commit 97652202d1e6964d5d7a1c03a257452c7ad95233 by johannes
[OpenMP] Overload `std::isnan` and friends multiple times for the GPU

`std::isnan` and friends can be found in two variants in the wild, one
returns `bool`, as the standard defines it, one returns `int`, as the C
macros do. So far we kinda hoped the system versions of these functions
will work for people, e.g. they are definitions that can be compiled for
the target. We know that is not the case always so we leverage the
`disable_implicit_base` OpenMP context extension to specialize both
versions of these functions without causing an invalid redeclaration.

Reviewed By: JonChesterfield, tra

Differential Revision: https://reviews.llvm.org/D85879
The file was modifiedclang/test/Headers/Inputs/include/cmath
The file was addedclang/test/Headers/openmp_device_math_isnan.cpp
The file was modifiedclang/lib/Headers/__clang_cuda_cmath.h
Commit 5c1084e8840b02d410ba125cbba466465242d820 by johannes
[OpenMP] Context selector extensions for template functions

With this extension the effects of `omp begin declare variant` will be
applied to template function declarations. The behavior is opt-in and
controlled by the `extension(allow_templates)` trait. While generally
useful, this will enable us to implement complex math function calls by
overloading the templates of the standard library with the ones in
libc++.

Reviewed By: JonChesterfield

Differential Revision: https://reviews.llvm.org/D85735
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedclang/include/clang/Basic/AttrDocs.td
The file was modifiedclang/lib/Parse/ParseOpenMP.cpp
The file was modifiedclang/lib/Headers/openmp_wrappers/cmath
The file was modifiedclang/lib/Sema/SemaTemplateInstantiateDecl.cpp
The file was addedclang/test/AST/ast-dump-openmp-begin-declare-variant_template_2.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMPKinds.def
Commit 56069b5c71ca78749aa983c1e9de6f1e4c049f4b by johannes
[OpenMP] Support `std::complex` math functions in target regions

The last (big) missing piece to get "math" working in OpenMP target
regions (that I know of) was complex math functions, e.g.,
`std::sin(std::complex<double>)`. With this patch we overload the system
template functions for these operations with versions that have been
distilled from `libcxx/include/complex`. We use the same
  `omp begin/end declare variant`
mechanism we use for other math functions before, except that we this
time overload templates (via D85735).

Reviewed By: JonChesterfield

Differential Revision: https://reviews.llvm.org/D85777
The file was addedclang/lib/Headers/openmp_wrappers/complex_cmath.h
The file was modifiedclang/test/Headers/nvptx_device_math_complex.cpp
The file was addedclang/test/Headers/Inputs/include/type_traits
The file was modifiedclang/test/Headers/Inputs/include/complex
The file was modifiedclang/lib/Headers/openmp_wrappers/complex
The file was modifiedclang/lib/Headers/CMakeLists.txt
Commit 91f503c3af190e19974f8832871e363d232cd64c by Stanislav.Mekhanoshin
[AMDGPU] gfx1030 RT support

Differential Revision: https://reviews.llvm.org/D87782
The file was modifiedllvm/include/llvm/IR/IntrinsicsAMDGPU.td
The file was modifiedllvm/lib/Target/AMDGPU/MIMGInstructions.td
The file was modifiedllvm/test/MC/Disassembler/AMDGPU/gfx1030_dasm_new.txt
The file was modifiedllvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
The file was modifiedllvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
The file was modifiedllvm/test/MC/AMDGPU/gfx1030_new.s
The file was modifiedllvm/test/MC/AMDGPU/gfx1011_err.s
The file was addedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.intersect_ray.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIAddIMGInit.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
Commit f80f2516a2697218eeb7af80de3b13c38f342987 by rahmanl
Revert "[obj2yaml] - Match ".stack_size" with the original section name, and not the uniquified name."

This reverts commit 14e55f82980cf1342d4d3eea4885a5375e829496.
The file was modifiedllvm/tools/obj2yaml/elf2yaml.cpp
The file was modifiedllvm/test/tools/obj2yaml/ELF/stack-sizes.yaml
Commit 2240ca0bd1502d7baa098da7cb4aca64a6f979d4 by Abhina.Sreeskantharajan
[SystemZ][z/OS] Set aligned allocation unavailable by default for z/OS

Aligned allocation is not supported on z/OS. This patch sets -faligned-alloc-unavailable as default in z/OS toolchain.

Reviewed By: abhina.sreeskantharajan, hubert.reinterpretcast

Differential Revision: https://reviews.llvm.org/D87611
The file was modifiedclang/lib/Basic/Targets/OSTargets.h
The file was modifiedclang/lib/Sema/SemaExprCXX.cpp
The file was modifiedclang/test/SemaCXX/unavailable_aligned_allocation.cpp
The file was modifiedclang/include/clang/Basic/AlignedAllocation.h
The file was modifiedclang/test/Lexer/aligned-allocation.cpp
The file was modifiedclang/lib/Driver/ToolChains/ZOS.h
The file was modifiedclang/include/clang/Basic/Attr.td
The file was modifiedclang/lib/Driver/ToolChains/ZOS.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/test/Driver/unavailable_aligned_allocation.cpp
Commit 15c378f6e641f34bb9fd3582f9cb83ff686101dc by thakis
[gn build] unconfuse sync script about "sources = []" in clang/lib/Headers/BUILD.gn
The file was modifiedllvm/utils/gn/build/sync_source_lists_from_cmake.py
Commit 6859d95ea2d0f3fe0de2923a3f642170e66a1a14 by michael.hliao
Fix build.
The file was modifiedllvm/lib/Passes/StandardInstrumentations.cpp
Commit 94d912021ff35d33cde96dacd6f1db925fe9f2b8 by nikita.ppv
[InstCombine] Add test for infinite combine loop (NFC)

Test courtesy of bkramer for the infinite combine loop introduced
by D87480.
The file was modifiedllvm/test/Transforms/InstCombine/select.ll
Commit 0bb06f297fe52a5125952cb6f1e264b4e7c48097 by nikita.ppv
[InstSimplify] Clarify SimplifyWithOpReplaced() return value

If SimplifyWithOpReplaced() cannot simplify the value, null should
be returned. Make sure this really does happen in all cases,
including those where SimplifyBinOp() returns the original value.

This does not matter for existing users, but does mattter for
D87480, which would go into an infinite loop otherwise.
The file was modifiedllvm/include/llvm/Analysis/InstructionSimplify.h
The file was modifiedllvm/lib/Analysis/InstructionSimplify.cpp
Commit 222bf3ffbc8419570fc2266a2e7d1c5f58cedaa7 by nikita.ppv
Reapply [InstCombine] Simplify select operand based on equality condition

Reapply after fixing SimplifyWithOpReplaced() to never return
the original value, which would lead to an infinite loop in this
transform.

-----

For selects of the type X == Y ? A : B, check if we can simplify A
by using the X == Y equality and replace the operand if that's
possible. We already try to do this in InstSimplify, but will only
fold if the result of the simplification is the same as B, in which
case the select can be dropped entirely. Here the select will be
retained, just one operand simplified.

As we are performing an actual replacement here, we don't have
problems with refinement / poison values.

Differential Revision: https://reviews.llvm.org/D87480
The file was modifiedllvm/test/Transforms/InstCombine/select.ll
The file was modifiedllvm/test/Transforms/InstCombine/rem.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
The file was modifiedllvm/test/Transforms/InstCombine/select-binop-cmp.ll
Commit 2a078a977e90481954eef69b489fac650ddbdaf6 by llvmgnsyncbot
[gn build] Port 56069b5c71c
The file was modifiedllvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
Commit ce0eb81c72749d1e96cfc6fb68af3c24b63753cc by David A Greene
[UpdateTestChecks] Allow $ in function names

Some compilers generation functions with '$' in their names, so recognize those
functions.

This also requires recognizing function names inside quotes in some contexts in
order to escape certain characters.

Differential Revision: https://reviews.llvm.org/D82995
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/ppc-function-name.test
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/hexagon_function_name.ll.expected
The file was modifiedllvm/utils/UpdateTestChecks/common.py
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/wasm_function_name.ll
The file was addedllvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/function_name.ll
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/systemz-function-name.test
The file was addedllvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/function_name.ll.expected
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/lanai_function_name.ll
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/amdgpu_function_name.ll.expected
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/sparc_function_name.ll
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/amdgpu_function_name.ll
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/ppc_function_name.ll
The file was addedllvm/test/tools/UpdateTestChecks/update_test_checks/function-name.test
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/arm_function_name.ll.expected
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/sparc_function_name.ll.expected
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/x86_function_name.ll.expected
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/riscv-function-name.test
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/mips-function-name.test
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/wasm_function_name.ll.expected
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/arm-function-name.test
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/msp430-function-name.test
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/hexagon_function_name.ll
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/msp430_function_name.ll.expected
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/riscv_function_name.ll.expected
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/x86-function-name.test
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/riscv_function_name.ll
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/mips_function_name.ll
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/arm_function_name.ll
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/systemz_function_name.ll
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/x86_function_name.ll
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/amdgpu-function-name.test
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/wasm-function-name.test
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/ppc_function_name.ll.expected
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/lanai_function_name.ll.expected
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/systemz_function_name.ll.expected
The file was modifiedllvm/utils/UpdateTestChecks/asm.py
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/hexagon-function-name.test
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/mips_function_name.ll.expected
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/aarch64_function_name.ll
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/aarch64_function_name.ll.expected
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/msp430_function_name.ll
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/sparc-function-name.test
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/lanai-function-name.test
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/aarch64-function-name.test
Commit 7af4f44c3e3dfb4483fb4dcc200f9376e96d6208 by listmail
[aarch64][tests] Add tests which show current lack of implicit null support

I will be posting a patch which adds appropriate target support shortly; landing the tests so that the diffs are clear.
The file was addedllvm/test/CodeGen/AArch64/implicit-null-check.ll
Commit dee4686227842aa0e8380c7925049a5df9c4f781 by llvm-project
 [flang][msvc] Work around if constexpr (false) evaluation. NFC.

MSVC tries to expand templates that are in the false-branch of a `if constexpr` construct. In this case, the condition checks whether a tuple has at least one element and then is trying to access it using `std::get<0>`, which fails when the tuple has 0 elements.

The workaround is to extract that case into a separate method.

This patch is part of the series to make flang compilable with MS Visual Studio <http://lists.llvm.org/pipermail/flang-dev/2020-July/000448.html>.

Reviewed By: klausler

Differential Revision: https://reviews.llvm.org/D87728
The file was modifiedflang/lib/Parser/basic-parsers.h
Commit 65ef2e50a29630f9f0fba4899045c0058dacfcb0 by craig.topper
[X86] Add test case for a masked load mask becoming all ones after type legalization.

We should be able to turn this into a unmasked load. X86 has an
optimization to detect that the first and last element aren't masked
and then turn the whole thing into an unmasked load and a blend.
That transform is disabled on avx512 though.

But if we know the blend isn't needed, then the unmasked load by
itself should always be profitable.
The file was modifiedllvm/test/CodeGen/X86/masked_load.ll
Commit 89ee4c0314bd08143d954d80bf7678d3a3ecc15a by craig.topper
[DAGCombiner] Teach visitMLOAD to replace an all ones mask with an unmasked load

If we have an all ones mask, we can just a regular masked load. InstCombine already gets this in IR. But the all ones mask can appear after type legalization.

Only avx512 test cases are affected because X86 backend already looks for element 0 and the last element being 1. It replaces this with an unmasked load and blend. The all ones mask is a special case of that where the blend will be removed. That transform is only enabled on avx2 targets. I believe that's because a non-zero passthru on avx2 already requires a separate blend so its more profitable to handle mixed constant masks.

This patch adds a dedicated all ones handling to the target independent DAG combiner. I've skipped extending, expanding, and index loads for now. X86 doesn't use index so I don't know much about it. Extending made me nervous because I wasn't sure I could trust the memory VT had the right element count due to some weirdness in vector splitting. For expanding I wasn't sure if we needed different undef handling.

Differential Revision: https://reviews.llvm.org/D87788
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/test/CodeGen/X86/masked_load.ll
Commit c57df3dc09e8b59c55c83ba5c354569a82a5c3b8 by phosek
[lsan] Share platform allocator settings between ASan and LSan

This moves the platform-specific parameter logic from asan into
sanitizer_common so lsan can reuse it.

Patch By: mcgrathr

Differential Revision: https://reviews.llvm.org/D85930
The file was modifiedcompiler-rt/lib/lsan/lsan_allocator.h
The file was modifiedcompiler-rt/lib/asan/asan_allocator.h
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_allocator.h
Commit e3fe203ec7f766ad6028144d266557b0d89b77fe by phosek
Revert "[lsan] Share platform allocator settings between ASan and LSan"

This reverts commit c57df3dc09e8b59c55c83ba5c354569a82a5c3b8 which broke
Windows sanitizer bots.
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_allocator.h
The file was modifiedcompiler-rt/lib/asan/asan_allocator.h
The file was modifiedcompiler-rt/lib/lsan/lsan_allocator.h
Commit 9a0d1b66730c8761a5da59351bf1c7666958130b by Lang Hames
[ORC] Add operations to create and lookup JITDylibs to OrcV2 C bindings.
The file was modifiedllvm/include/llvm-c/Orc.h
The file was modifiedllvm/lib/ExecutionEngine/Orc/OrcV2CBindings.cpp
Commit bebfc3b92d5e8dd1b1d75d40d5d03975957eec14 by akhuang
Revert "Do not apply calling conventions to MSVC entry points"

This reverts commit 4cff1b40dacf6a5489b09657d94ea4757b8cd3b0.

Caused "undefined symbol: _WinMain@16" link errors.
The file was modifiedclang/test/CodeGenCXX/default_calling_conv.cpp
The file was modifiedclang/lib/Sema/SemaDecl.cpp
Commit a45cdb311f6e71fdf5452a4be9037f3fb028f1d1 by Stanislav.Mekhanoshin
[AMDGPU] gfx1030 test update. NFC.
The file was modifiedllvm/test/MC/AMDGPU/smem.s
Commit cd13476ab57b43b66831bba14206a350c5a4a81b by Vitaly Buka
[NFC][LSAN] Change SuspendedThreadsList interface

Remove RegisterCount and let GetRegistersAndSP to resize buffer as needed.

Reviewed By: morehouse

Differential Revision: https://reviews.llvm.org/D87747
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp
The file was modifiedcompiler-rt/lib/lsan/lsan_common.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_netbsd_libcdep.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_stoptheworld.h
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_mac.cpp
Commit 15f0ad2fa29beaf1dad1548ccb97c2c729ea53cd by maskray
[ELF] Bump the limit of thunk creation passes from 10 to 15

I have noticed that a 374MiB powerpc64le 'ld.lld' requires 11 passes to link.
There is a ThunkSection (whose parent OutputSection is ".text" of 169MiB) with 12867 thunks.
The file was modifiedlld/ELF/Writer.cpp
Commit aa2ba67a8137040b9146d0383c74f0b75ac9683a by mtrofin
[NFC][regalloc] type LiveInterval::reg() as Register

We have the Register type which precisely captures the role of this
member. Storage-wise, it's an unsigned.

This helps readability & maintainability.

Differential Revision: https://reviews.llvm.org/D87768
The file was modifiedllvm/include/llvm/CodeGen/LiveInterval.h
Commit b1cb9d6271263b197ba53cac28a0fc3bf27ec5b8 by rahmanl
[obj2yaml] - Match ".stack_size" with the original section name, and not the uniquified name.

Without this patch, obj2yaml decodes the content of only one ".stack_size" section. Other sections are dumped with their full contents.

Reviewed By: grimar, MaskRay

Differential Revision: https://reviews.llvm.org/D87727
The file was modifiedllvm/tools/obj2yaml/elf2yaml.cpp
The file was modifiedllvm/test/tools/obj2yaml/ELF/stack-sizes.yaml
Commit dd67581407c1693e43ac8a90b3a20c597614bda8 by rupprecht
[lldb/test] Enable faulthandler in dotest

Register the `faulthandler` module so we can see what lldb tests are doing when they misbehave (e.g. run under a test runner that sets a timeout). This will print a stack trace for the following signals:

- `SIGSEGV`, `SIGFPE`, `SIGABRT`, `SIGBUS`, and `SIGILL` (via `faulthandler.enable()`)
- `SIGTERM` (via `faulthandler.register(SIGTERM)`) [This is what our test runners sends when it times out].

The only signal we currently handle is `SIGINT` (via `unittest2.signals.installHandler()`) so there should be no overlap added by this patch.

Because this import is not available until python3, and the `register()` method is not available on Windows, this is enabled defensively.

This should have absolutely no effect when tests are passing (or even normally failing), but can be observed by running this while ninja is running:

```
kill -s SIGTERM $(ps aux | grep dotest.py | head -1 | awk '{print $2}')
```

Reviewed By: JDevlieghere

Differential Revision: https://reviews.llvm.org/D87637
The file was modifiedlldb/packages/Python/lldbsuite/test/dotest.py
Commit ee5519d323571c4a9a7d92cb817023c9b95334cd by Yaxun.Liu
[NFC] Refactor DiagnosticBuilder and PartialDiagnostic

PartialDiagnostic misses some functions compared to DiagnosticBuilder.

This patch refactors DiagnosticBuilder and PartialDiagnostic, extracts
the common functionality so that the streaming << operators are
shared.

Differential Revision: https://reviews.llvm.org/D84362
The file was modifiedclang/lib/AST/TemplateBase.cpp
The file was modifiedclang/include/clang/Sema/Ownership.h
The file was modifiedclang/lib/Basic/Diagnostic.cpp
The file was modifiedclang/include/clang/AST/Type.h
The file was modifiedclang/include/clang/AST/Attr.h
The file was modifiedclang/lib/AST/DeclCXX.cpp
The file was modifiedclang/lib/AST/TemplateName.cpp
The file was modifiedclang/include/clang/Basic/PartialDiagnostic.h
The file was modifiedclang/include/clang/Sema/ParsedAttr.h
The file was modifiedclang/include/clang/Basic/Diagnostic.h
The file was modifiedclang/include/clang/AST/NestedNameSpecifier.h
The file was modifiedclang/include/clang/AST/Decl.h
The file was modifiedclang/include/clang/AST/CanonicalType.h
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/include/clang/AST/DeclarationName.h
The file was modifiedclang/lib/AST/ASTContext.cpp
The file was modifiedclang/include/clang/AST/DeclCXX.h
The file was modifiedclang/include/clang/AST/ASTContext.h
The file was modifiedclang/include/clang/AST/TemplateBase.h
The file was modifiedclang/include/clang/AST/TemplateName.h
Commit 23bef7ee9923b1262326981960397e8cd95d6923 by daniel.kiss
[libunwind] Support for leaf function unwinding.

Unwinding leaf function is useful in cases when the backtrace finds a
leaf function for example when it caused a signal.
This patch also add the support for the DW_CFA_undefined because it marks
the end of the frames.

Ryan Prichard provided code for the tests.

Reviewed By: #libunwind, mstorsjo

Differential Revision: https://reviews.llvm.org/D83573
The file was addedlibunwind/test/unwind_leaffunction.pass.cpp
The file was modifiedlibunwind/src/DwarfInstructions.hpp
The file was addedlibunwind/test/signal_unwind.pass.cpp
The file was modifiedlibunwind/src/DwarfParser.hpp
The file was modifiedlibunwind/test/lit.site.cfg.in
Commit dd3eb3f33239b23a12dd8864ae236390adf79550 by psteinfeld
[flang] Substrings with lower bound greater than upper bound

According to section 9.4.1, paragraph 3,
If the starting point is greater than the ending point, the substring has
length zero

But the compilers code for substring processing was failing a call to `CHECK()`
in this case.  I fixed this by just setting the number of items in the
resulting string to 0 for this situation.

Differential Revision: https://reviews.llvm.org/D87799
The file was modifiedflang/test/Semantics/resolve49.f90
The file was modifiedflang/lib/Evaluate/variable.cpp
Commit 1321160a26e7e489baf9b10d6de90a342f898960 by jasonliu
Disable a large test for EXPENSIVE_CHECKS and debug build

Summary:
When running a large test in LLVM_ENABLE_EXPENSIVE_CHECKS=ON mode,
buildbot could hit timeout.
Disable the test when this mode is on.
Also disable it for debug so that the test won't hang for too long.

Reviewed By: hubert.reinterpretcast

Differential Revision: https://reviews.llvm.org/D87794
The file was modifiedllvm/test/CodeGen/PowerPC/aix-overflow-toc.py
The file was modifiedllvm/test/lit.site.cfg.py.in
The file was modifiedllvm/test/CMakeLists.txt
The file was modifiedllvm/test/lit.cfg.py
Commit 95e43f84b7b9c61011aece7583c0367297dd67d8 by daniel.kiss
[AArch64] Add -mmark-bti-property flag.

Writing the .note.gnu.property manually is error prone and hard to
maintain in the assembly files.
The -mmark-bti-property is for the assembler to emit the section with the
GNU_PROPERTY_AARCH64_FEATURE_1_BTI. To be used when C/C++ is compiled
with -mbranch-protection=bti.

This patch refactors the .note.gnu.property handling.

Reviewed By: chill, nickdesaulniers

Differential Revision: https://reviews.llvm.org/D81930
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedllvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.h
The file was addedclang/test/Driver/arm64-markbti.S
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedllvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
The file was modifiedllvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.cpp
Commit 0c6a56e41dbeb9ffc47ca0b03357f15cb5d30689 by thakis
[gn build] (manually) port 1321160a2
The file was modifiedllvm/utils/gn/secondary/llvm/test/BUILD.gn
Commit 4e4c89b22c3fc1200ee0d6d1074173c7c53d87bc by michael.hliao
[EarlyCSE] Simplify max/min pattern matching. NFC.
The file was modifiedllvm/lib/Transforms/Scalar/EarlyCSE.cpp
Commit d89c5ae8577264f5dd660906f12577c5fdadf49e by tianshilei1992
[Flang] Fixed installation permission of the "binary" flang

Under current configuration, the permission of `flang` after installation is 700.
This could bring a problem for system administrators who build and install flang
for other users, which only the user who builds LLVM can execute it, and others
can not. In this patch, the explicit permission setting in the `install` command
is removed, and let CMake determine what perssion to be used like other components.

Reviewed By: DavidTruby

Differential Revision: https://reviews.llvm.org/D87783
The file was modifiedflang/tools/f18/CMakeLists.txt
Commit 5b205ff474120e086435724dc04f784b784fdd1a by ogiroux
Commenting out atomics with padding to unbreak MSAN tests
The file was modifiedlibcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.req/atomic_helpers.h
Commit 60e244f82c1f97c1b7d65c06d2b0b4f634f8d696 by daniel.kiss
Revert "[AArch64] Add -mmark-bti-property flag."

This reverts commit 95e43f84b7b9c61011aece7583c0367297dd67d8.
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was removedclang/test/Driver/arm64-markbti.S
The file was modifiedllvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
The file was modifiedllvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.h
The file was modifiedllvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.cpp
The file was modifiedclang/include/clang/Driver/Options.td
Commit f70baaf71f62ba8623b3522345527271add74f6b by daniel.kiss
[AArch64] Add -mmark-bti-property flag.

Writing the .note.gnu.property manually is error prone and hard to
maintain in the assembly files.
The -mmark-bti-property is for the assembler to emit the section with the
GNU_PROPERTY_AARCH64_FEATURE_1_BTI. To be used when C/C++ is compiled
with -mbranch-protection=bti.

This patch refactors the .note.gnu.property handling.

Reviewed By: chill, nickdesaulniers

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

Reland with test dependency on aarch64 target.
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
The file was modifiedllvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.h
The file was addedclang/test/Driver/arm64-markbti.S
The file was modifiedllvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.cpp
Commit e30371d99d5157ac9718c803dd1101f9cbb1b224 by craig.topper
[DAGCombiner] Teach visitMSTORE to replace an all ones mask with an unmasked store.

Similar to what done in D87788 for MLOAD.

Again I've skipped indexed, truncating, and compressing stores.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/test/CodeGen/X86/masked_store.ll
Commit 344a3d0bc0fb0868b519c3342b4982d6121eece3 by asbirlea
[MemorySSA] Rename uses in blocks with Phis.

Renaming should include blocks with existing Phis.

Resolves PR45927.

Differential Revision: https://reviews.llvm.org/D87661
The file was modifiedllvm/lib/Analysis/MemorySSAUpdater.cpp
The file was addedllvm/test/Analysis/MemorySSA/pr45927.ll
Commit 905b9ca26c94fa86339451a528cedde5004fc1bb by richard
Canonicalize declaration pointers when forming APValues.

References to different declarations of the same entity aren't different
values, so shouldn't have different representations.

Recommit of e6393ee813178e9d3306b8e3c6949a4f32f8a2cb with fixed
handling for weak declarations. We now look for attributes on the most
recent declaration when determining whether a declaration is weak.
The file was modifiedclang/lib/AST/DeclBase.cpp
The file was modifiedclang/lib/AST/Decl.cpp
The file was modifiedclang/lib/AST/APValue.cpp
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/test/OpenMP/ordered_messages.cpp
The file was modifiedclang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p9.cpp
The file was modifiedclang/include/clang/AST/APValue.h
Commit 7337f296194483e0959ff980049e2835e226f396 by richard
PR47555: Inheriting constructors are implicitly definable.

Don't forget to define them if they're constexpr and used inside a
template; we might try to evaluate a call to them before the template is
instantiated.
The file was modifiedclang/test/SemaCXX/cxx11-inheriting-ctors.cpp
The file was modifiedclang/lib/Sema/SemaExpr.cpp