FailedChanges

Summary

  1. [clang] attempt to fix a linux test failure for the darwin-ld-platform-version-macos.c test (details)
  2. Add missing #include (details)
  3. [SimplifyCFG] Fix inconsistency in block size assessment for threading (details)
  4. Add front/back accessors to indexed_accessor_range. (details)
  5. [SVE][CodeGen] Fix bug in DAGCombiner::reduceBuildVecToShuffle (details)
  6. [llvm-objcopy][MachO] Fix segment size alignment (details)
  7. [SystemZ] Improve handling of ZERO_EXTEND_VECTOR_INREG. (details)
  8. [CodeGen] Fix warning in getNode for EXTRACT_SUBVECTOR (details)
  9. [X86] Remove an isel pattern than can never match. Remove bitcasts of loads from a few others. (details)
  10. Fix missing build dependency on omp_gen. (details)
  11. [Alignment][NFC] Migrate AArch64, ARM, Hexagon, MSP and NVPTX backends to Align (details)
  12. [MSP430] Declare comparison LibCalls as returning i16 instead of i32 (details)
  13. [builtins] Change si_int to int in some helper declarations (details)
  14. [Alignment][NFC] Migrate PPC, X86 and XCore backends to Align (details)
  15. [Alignment][NFC] TargetLowering::allowsMemoryAccess (details)
  16. [clang-tidy][docs] Fix malformed link in ReleaseNotes (details)
  17. [DWARFYAML][debug_info] Replace 'InitialLength' with 'Format' and 'Length'. (details)
  18. [MLIR][Shape] Fix lowering of `shape.get_extent` (details)
  19. Revert "Fix missing build dependency on omp_gen." (details)
  20. [mlir] Fix case in MLIRGPUtoVulkanTransforms (details)
  21. [GlobalISel][InlineAsm] Add support for matching input constraints (details)
  22. AMDGPU/GlobalISel: Select icmp intrinsic (details)
  23. [yaml2obj] - Add a way to set default values for macros used in a YAML. (details)
  24. [yaml2obj] - Support reading a content as an array of bytes using the new 'ContentArray' key. (details)
  25. [IR] NoFree IntrinsicProperty. (details)
  26. [lldb] Modernize TestOperatorOverload.py asserts (details)
  27. [Alignment][NFC] Migrate AtomicExpandPass to Align (details)
  28. [AST][RecoveryExpr] Add error-bit to NestNameSpecifierDependence and TemplateNameDependence. (details)
  29. [mlir] Extended BufferPlacement to support nested region control flow. (details)
  30. [clangd] Remove redundant `findRefs` calls. NFC. (details)
  31. [llvm][Z3][NFC] Improve mkBitvector performance (details)
  32. [SystemZ] Add NoMerge MIFlag (details)
  33. [lldb][NFC] Remove ImportInProgress lock in ClangASTSource (details)
  34. [lldb] Tab completion for `frame select` (details)
Commit bb162dfe252a1abc15af411d8ba51dda63af306c by Alex Lorenz
[clang] attempt to fix a linux test failure for the darwin-ld-platform-version-macos.c test

Clang should use explicit -target to ensure that the Darwin driver is used.
Also drop arm64e test-case for now.
The file was modifiedclang/test/Driver/darwin-ld-platform-version-macos.c
Commit 11cd9770174603aa62deabbe96c7d0db64d07058 by dblaikie
Add missing #include

A forward declaration was insufficient here - since Regex needs to be
complete for the implicit dtor to be compiled correctly. (that, or the
dtor would have to be made explicit and out of line)
The file was modifiedclang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.h
Commit f01d9e6fc3e291a2faed8c9b7dcbabf760f32bd6 by mkazantsev
[SimplifyCFG] Fix inconsistency in block size assessment for threading

Sometimes SimplifyCFG may decide to perform jump threading. In order
to do it, it follows the following algorithm:

1. Checks if the block is small enough for threading;
2. If yes, inserts a PR Phi relying that the next iteration will remove it
   by performing jump threading;
3. The next iteration checks the block again and performs the threading.

This logic has a corner case: inserting the PR Phi increases block's size
by 1. If the block size at first check was max possible, one more Phi will
exceed this size, and we will neither perform threading nor remove the
created Phi node. As result, we will end up with worse IR than before.

This patch fixes this situation by excluding Phis from block size computation.
Excluding Phis from size computation for threading also makes sense by
itself because in case of threadign all those Phis will be removed.

Differential Revision: https://reviews.llvm.org/D81835
Reviewed By: asbirlea, nikic
The file was modifiedllvm/lib/Transforms/Utils/SimplifyCFG.cpp
The file was modifiedllvm/test/Transforms/SimplifyCFG/unprofitable-pr.ll
Commit 6b9a706200cbb27e5e863cfd41fb3684ee616e23 by riddleriver
Add front/back accessors to indexed_accessor_range.

These map to the similar accessors on ArrayRef and other random access containers.

This fixes a compilation error on MLIR ODS for variadic operands/results, which relied on the availability of front in certain situations.
The file was modifiedmlir/test/lib/Dialect/Test/TestOps.td
The file was modifiedllvm/include/llvm/ADT/STLExtras.h
Commit 46a7f4d6f4bf2cc23a410e771adb587c5968047d by david.sherwood
[SVE][CodeGen] Fix bug in DAGCombiner::reduceBuildVecToShuffle

When trying to reduce a BUILD_VECTOR to a SHUFFLE_VECTOR it's
important that we carefully check the vector types that led to
that BUILD_VECTOR. In the test I have attached to this commit
there is a case where the results of two SVE faddv instructions
are being stored to consecutive memory locations. With my fix,
as part of merging those stores we discover that each BUILD_VECTOR
element came from an extract of a SVE vector element and
therefore bail out.

Differential Revision: https://reviews.llvm.org/D82564
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was addedllvm/test/CodeGen/AArch64/sve-merging-stores.ll
Commit 2c663aa539c3c378599776f4a6849f1cbee5fb93 by alexshap
[llvm-objcopy][MachO] Fix segment size alignment

This diff addresses the old TODO in MachOObjcopy.cpp and
correctly sets the page size used for alignment of segments.
In particular, now llvm-objcopy's output is consistent
with the input (the alignment of vmsize doesn't change).

Test plan:

1. make check-all
2. verify that a binary copied via llvm-objcopy now correctly works on iOS.

Differential revision: https://reviews.llvm.org/D82503
The file was addedllvm/test/tools/llvm-objcopy/MachO/segment-size-alignment.test
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOObjcopy.cpp
Commit ef7aad0db49f0a3623b42af991ba4ae48099a58d by paulsson
[SystemZ] Improve handling of ZERO_EXTEND_VECTOR_INREG.

Instead of doing multiple unpacks when zero extending vectors (e.g. v2i16 ->
v2i64), benchmarks have shown that it is better to do a VPERM (vector
permute) since that is only one sequential instruction on the critical path.

This patch achieves this by

1. Expand ZERO_EXTEND_VECTOR_INREG into a vector shuffle with a zero vector
   instead of (multiple) unpacks.

2. Improve SystemZ::GeneralShuffle to perform a single unpack as the last
   operation if Bytes matches it.

Review: Ulrich Weigand
Differential Revision: https://reviews.llvm.org/D78486
The file was modifiedllvm/lib/Target/SystemZ/SystemZISelLowering.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZISelLowering.h
The file was modifiedllvm/test/CodeGen/SystemZ/vec-move-16.ll
The file was modifiedllvm/test/CodeGen/SystemZ/vec-zext.ll
The file was addedllvm/test/CodeGen/SystemZ/vec-move-24.ll
The file was modifiedllvm/test/CodeGen/SystemZ/vec-move-23.ll
Commit c02332a69399a82244298f0097bc98fafdeb3042 by david.sherwood
[CodeGen] Fix warning in getNode for EXTRACT_SUBVECTOR

Fix a warning in getNode() when extracting a subvector from a
concat vector. We can simply replace the call to getVectorNumElements
with getVectorMinNumElements as this follows the defined behaviour
for EXTRACT_SUBVECTOR.

Differential Revision: https://reviews.llvm.org/D82746
The file was modifiedclang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st3.c
The file was modifiedclang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st2.c
The file was modifiedclang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get4.c
The file was modifiedclang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st4.c
The file was modifiedclang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get3.c
The file was modifiedclang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get2.c
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
Commit 767c9c5bf5ba4dbaa8edadb1d2e26254321c30c0 by craig.topper
[X86] Remove an isel pattern than can never match. Remove bitcasts of loads from a few others.
The file was modifiedllvm/lib/Target/X86/X86InstrXOP.td
Commit ed4328c607306a2aa6df4833a0dce4482edbc94c by simon.tatham
Fix missing build dependency on omp_gen.

Summary:
`include/llvm/Frontend/OpenMP/CMakeLists.txt` creates a new target
called `omp_gen`, which is automatically added to
`LLVM_COMMON_DEPENDS` by the `add_public_tablegen_target` macro. But
it only gets added to the version of `LLVM_COMMON_DEPENDS` in the
scope of that subsidiary CMakeLists file, and it doesn't propagate all
the way back up to the permanent version of that variable which is
actually used to set dependencies.

The visible effect is that the output build scripts contain a missing
dependency. For example, if I run cmake in Ninja output mode, and then
run

  ninja -t commands tools/clang/examples/PrintFunctionNames/CMakeFiles/PrintFunctionNames.dir/PrintFunctionNames.cpp.o

to list all the commands that are prerequisites of building that
object file, then the list does not include the llvm-tblgen command
that builds `include/llvm/Frontend/OpenMP/OMP.h.inc`, even though that
generated include file is needed (by a chain of includes starting from
`clang/AST/AST.h`), and that object file can't be compiled without it.
This missing dependency can cause intermittent build failures,
depending on the order that Ninja (or whatever) happens to schedule
its commands.

I've fixed it by adding a `set` command in two levels of
`CMakeLists.txt` to propagate the modified version of
`LLVM_COMMON_DEPENDS` back up through the parent scopes so that
`omp_gen` does end up on the version seen by the main
`llvm/CMakeLists.txt`.

Reviewers: clementval, thakis, chandlerc, jdoerfert

Reviewed By: clementval

Subscribers: jdenny, mgorny, sstefan1, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D82659
The file was modifiedllvm/include/llvm/CMakeLists.txt
The file was modifiedllvm/include/llvm/Frontend/OpenMP/CMakeLists.txt
Commit 4f5133a4dcd0b023160879740d32bbcca198664f by gchatelet
[Alignment][NFC] Migrate AArch64, ARM, Hexagon, MSP and NVPTX backends to Align

This 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

Differential Revision: https://reviews.llvm.org/D82749
The file was modifiedllvm/lib/Target/MSP430/MSP430ISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64FrameLowering.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonVExtract.cpp
The file was modifiedllvm/lib/Target/ARM/ARMFrameLowering.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was modifiedllvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
Commit 19e75717eff2c22e6643addcc44caa8dc2f0125f by anton
[MSP430] Declare comparison LibCalls as returning i16 instead of i32

For TI's distribution of msp430-gcc
```
msp430-elf-gcc -S -o- -Os -x c - <<< "int f(float a, float b) { return a != b; }"
```
does not mention `R13` at all. `__libgcc_cmp_return__` machine mode is 2 byte on MSP430, as well.

Differential Revision: https://reviews.llvm.org/D82635
The file was modifiedllvm/lib/Target/MSP430/MSP430ISelLowering.h
The file was addedllvm/test/CodeGen/MSP430/cmp-return-type.ll
Commit 0ee439b705e82a4fe20e266bc8fea96d0e60e1ec by anton
[builtins] Change si_int to int in some helper declarations

This patch changes types of some integer function arguments or return values from `si_int` to the default `int` type to make it more compatible with `libgcc`.

The compiler-rt/lib/builtins/README.txt has a link to the [libgcc specification](http://gcc.gnu.org/onlinedocs/gccint/Libgcc.html#Libgcc). This specification has an explicit note on `int`, `float` and other such types being just illustrations in some cases while the actual types are expressed with machine modes.

Such usage of always-32-bit-wide integer type may lead to issues on 16-bit platforms such as MSP430. Provided [libgcc2.h](https://gcc.gnu.org/git/?p=gcc.git;a=blob_plain;f=libgcc/libgcc2.h;hb=HEAD) can be used as a reference for all targets supported by the libgcc, this patch fixes some existing differences in helper declarations.

This patch is expected to not change behavior at all for targets with 32-bit `int` type.

Differential Revision: https://reviews.llvm.org/D81285
The file was modifiedcompiler-rt/lib/builtins/powitf2.c
The file was modifiedcompiler-rt/lib/builtins/paritysi2.c
The file was modifiedcompiler-rt/lib/builtins/clzsi2.c
The file was modifiedcompiler-rt/test/builtins/Unit/ffsti2_test.c
The file was modifiedcompiler-rt/lib/builtins/ctzti2.c
The file was modifiedcompiler-rt/test/builtins/Unit/popcountsi2_test.c
The file was modifiedcompiler-rt/lib/builtins/powidf2.c
The file was modifiedcompiler-rt/lib/builtins/README.txt
The file was modifiedcompiler-rt/test/builtins/Unit/parityti2_test.c
The file was modifiedcompiler-rt/test/builtins/Unit/clzdi2_test.c
The file was modifiedcompiler-rt/test/builtins/Unit/powisf2_test.c
The file was modifiedcompiler-rt/lib/builtins/parityti2.c
The file was modifiedcompiler-rt/test/builtins/Unit/clzsi2_test.c
The file was modifiedcompiler-rt/test/builtins/Unit/clzti2_test.c
The file was modifiedcompiler-rt/lib/builtins/ffsti2.c
The file was modifiedcompiler-rt/test/builtins/Unit/powidf2_test.c
The file was modifiedcompiler-rt/test/builtins/Unit/powitf2_test.c
The file was modifiedcompiler-rt/test/builtins/Unit/popcountti2_test.c
The file was modifiedcompiler-rt/test/builtins/Unit/paritysi2_test.c
The file was modifiedcompiler-rt/test/builtins/Unit/ctzti2_test.c
The file was modifiedcompiler-rt/lib/builtins/popcountsi2.c
The file was modifiedcompiler-rt/lib/builtins/ctzdi2.c
The file was modifiedcompiler-rt/test/builtins/Unit/paritydi2_test.c
The file was modifiedcompiler-rt/lib/builtins/ctzsi2.c
The file was modifiedcompiler-rt/test/builtins/Unit/ctzsi2_test.c
The file was modifiedcompiler-rt/lib/builtins/powixf2.c
The file was modifiedcompiler-rt/lib/builtins/popcountti2.c
The file was modifiedcompiler-rt/lib/builtins/clzti2.c
The file was modifiedcompiler-rt/lib/builtins/paritydi2.c
The file was modifiedcompiler-rt/lib/builtins/clzdi2.c
The file was modifiedcompiler-rt/test/builtins/Unit/powixf2_test.c
The file was modifiedcompiler-rt/lib/builtins/int_lib.h
The file was modifiedcompiler-rt/lib/builtins/powisf2.c
Commit a976ea3209b5ad2310882c0895e0095ba4b04eef by gchatelet
[Alignment][NFC] Migrate PPC, X86 and XCore backends to Align

This 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

Differential Revision: https://reviews.llvm.org/D82779
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was modifiedllvm/lib/Target/XCore/XCoreFrameLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/XCore/XCoreMachineFunctionInfo.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCFrameLowering.cpp
Commit 5f8bdb3e6a997a3031a447db38bd3c358fee86e4 by gchatelet
[Alignment][NFC] TargetLowering::allowsMemoryAccess

Second patch of a series to adapt TargetLowering::allowsXXX functions

This 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

Differential Revision: https://reviews.llvm.org/D82785
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.h
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
The file was modifiedllvm/lib/CodeGen/TargetLoweringBase.cpp
The file was modifiedllvm/include/llvm/CodeGen/TargetLowering.h
Commit 60cde47893476581218c380921e5489c98be40ce by n.james93
[clang-tidy][docs] Fix malformed link in ReleaseNotes
The file was modifiedclang-tools-extra/docs/ReleaseNotes.rst
Commit fe08ab542bd6328a7906e38ae473cf655eb6a228 by Xing
[DWARFYAML][debug_info] Replace 'InitialLength' with 'Format' and 'Length'.

'InitialLength' is replaced with 'Format' (DWARF32 by default) and 'Length' in this patch.
Besides, test cases for DWARFv4 and DWARFv5, DWARF32 and DWARF64 is
added.

Reviewed By: jhenderson

Differential Revision: https://reviews.llvm.org/D82622
The file was modifiedllvm/test/tools/yaml2obj/ELF/DWARF/debug-info.yaml
The file was modifiedlldb/unittests/Expression/DWARFExpressionTest.cpp
The file was modifiedllvm/test/ObjectYAML/MachO/DWARF-debug_ranges.yaml
The file was modifiedllvm/test/tools/llvm-objcopy/MachO/Inputs/strip-all-with-dwarf.yaml
The file was modifiedllvm/test/tools/llvm-gsymutil/ARM_AArch64/fat-macho-dwarf.yaml
The file was modifiedllvm/include/llvm/ObjectYAML/DWARFYAML.h
The file was modifiedllvm/test/tools/llvm-gsymutil/X86/mach-dwarf.yaml
The file was modifiedllvm/unittests/DebugInfo/DWARF/DWARFDebugInfoTest.cpp
The file was modifiedlldb/unittests/SymbolFile/DWARF/DWARFASTParserClangTests.cpp
The file was modifiedllvm/lib/ObjectYAML/DWARFEmitter.cpp
The file was modifiedllvm/test/ObjectYAML/MachO/DWARF-debug_info.yaml
The file was modifiedllvm/test/ObjectYAML/MachO/DWARF2-AddrSize8-FormValues.yaml
The file was modifiedllvm/test/tools/llvm-dwarfdump/X86/verify_overlapping_cu_ranges.yaml
The file was modifiedllvm/lib/ObjectYAML/DWARFYAML.cpp
The file was modifiedllvm/unittests/DebugInfo/GSYM/GSYMTest.cpp
The file was modifiedllvm/tools/obj2yaml/dwarf2yaml.cpp
The file was modifiedllvm/test/ObjectYAML/MachO/DWARF5-debug_info.yaml
The file was modifiedlldb/unittests/Symbol/Inputs/inlined-functions.yaml
The file was modifiedllvm/lib/ObjectYAML/DWARFVisitor.cpp
The file was modifiedllvm/unittests/DebugInfo/DWARF/DWARFDieTest.cpp
The file was modifiedlldb/test/API/functionalities/source-map/a.yaml
The file was modifiedllvm/test/ObjectYAML/MachO/DWARF-debug_line.yaml
Commit 8577a090f5f04e18d72bb2dd387e60082e4da0ca by frgossen
[MLIR][Shape] Fix lowering of `shape.get_extent`

The declarative conversion patterns caused crashes in the asan configuration.
The non-declarative implementation circumvents this.

Differential Revision: https://reviews.llvm.org/D82797
The file was modifiedmlir/lib/Conversion/ShapeToStandard/ShapeToStandardPatterns.td
The file was modifiedmlir/lib/Conversion/ShapeToStandard/ShapeToStandard.cpp
Commit 39ea5d74b283d5a42f34b856d22bfaf806a1c907 by simon.tatham
Revert "Fix missing build dependency on omp_gen."

This reverts commit ed4328c607306a2aa6df4833a0dce4482edbc94c.

My change apparently caused a buildbot to fail with the error

  CMake Error at /b/sanitizer-x86_64-linux-autoconf/build/tsan_release_build/lib/cmake/llvm/AddLLVM.cmake:869 (add_dependencies):
  The dependency target "omp_gen" of target "ScudoBenchmarks.x86_64" does not
  exist.

I don't at all understand why, because as far as I can see, the target
`omp_gen` is only added to `LLVM_COMMON_DEPENDS` after having been
created, so there //should// be no way it can end up on anything's
dependency list if it doesn't exist! But apparently it happened anyway.

Differential Revision: https://reviews.llvm.org/D82659
The file was modifiedllvm/include/llvm/CMakeLists.txt
The file was modifiedllvm/include/llvm/Frontend/OpenMP/CMakeLists.txt
Commit 446b90135f0f88be4b8dddaf6a92842f94e7a43f by thomasraoux
[mlir] Fix case in MLIRGPUtoVulkanTransforms

This changes the casing of MLIRGPUtoVulkanTransforms to be consistent
with other transform libraries.

Differential Revision: https://reviews.llvm.org/D82840
The file was modifiedmlir/lib/Conversion/GPUToVulkan/CMakeLists.txt
Commit 4b980cc9ca08a0b95b4ac6994770155a48881729 by petar.avramovic
[GlobalISel][InlineAsm] Add support for matching input constraints

Find def operand that corresponds to matching constraint and
tie input to that operand.

Differential Revision: https://reviews.llvm.org/D82651
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-inline-asm.ll
The file was modifiedllvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/inline-asm.ll
Commit d7173826331eb2c263ecee607e86cebcf1c08ad7 by petar.avramovic
AMDGPU/GlobalISel: Select icmp intrinsic

Select into corresponding V_CMP instruction based on CmpInst predicate,
stored as immediate, in last operand.

Differential Revision: https://reviews.llvm.org/D82652
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.icmp.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
Commit 657c4ab39dc80f569f422d40347b97586c27b2ba by grimar
[yaml2obj] - Add a way to set default values for macros used in a YAML.

Currently we have to override all macros that are declared. But in many
cases it is convenient to use default values and to override only
a particular one or two.

This provides a way to set a default value for any macro:

```
Symbols:
  - Name: [[FOO=foo]]
```

Differential revision: https://reviews.llvm.org/D82455
The file was modifiedllvm/tools/yaml2obj/yaml2obj.cpp
The file was modifiedllvm/test/tools/yaml2obj/macro.yaml
Commit 64bae035ef8c1ca438c412310ef4f3906dd56b77 by grimar
[yaml2obj] - Support reading a content as an array of bytes using the new 'ContentArray' key.

It implements the way to describe a section content using a multi line description. E.g:

```
- Name:         .foo
  Type:         SHT_PROGBITS
  ContentArray: [ 0x11, 0x22, 0x33, 0x44,                                ## .long 11223344
                  0x55, 0x66,                                            ## .short 5566.
                  0x77,                                                  ## .byte 0x77
                  0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF, 0x00 ] ## .quad 0x8899aabbccddeeff
```

It was briefly discussed in D75123 thread previously.

Differential revision: https://reviews.llvm.org/D82366
The file was modifiedllvm/lib/ObjectYAML/ELFYAML.cpp
The file was modifiedllvm/include/llvm/ObjectYAML/ELFYAML.h
The file was addedllvm/test/tools/yaml2obj/ELF/content-array.yaml
Commit aa93d84db93451488fc9c645fb970b8f7e481292 by sstipanovic
[IR] NoFree IntrinsicProperty.

Summary:
Separate introduction of IntrNoFree property as suggested in D70365

Reviewers: arsenm, nhaehnle

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D82587
The file was modifiedllvm/utils/TableGen/CodeGenIntrinsics.h
The file was modifiedllvm/include/llvm/IR/Intrinsics.td
The file was modifiedllvm/utils/TableGen/CodeGenTarget.cpp
The file was modifiedllvm/utils/TableGen/IntrinsicEmitter.cpp
Commit 621f84567920bf5a8d79789f01a622115ec8252d by Raphael Isemann
[lldb] Modernize TestOperatorOverload.py asserts
The file was modifiedlldb/test/API/lang/cpp/operator-overload/TestOperatorOverload.py
Commit 2c5ff48e61b5611dee5696c103e654c98d7e43f1 by gchatelet
[Alignment][NFC] Migrate AtomicExpandPass to Align

This is a followup on D78403.
I'm unsure about `getAtomicOpAlign` overloads that take `AtomicRMWInst` and `AtomicCmpXchgInst`, shouldn't `getAlign` provide the correct answer already?

Differential Revision: https://reviews.llvm.org/D81369
The file was modifiedllvm/lib/IR/Instructions.cpp
The file was modifiedllvm/include/llvm/IR/Instructions.h
The file was modifiedllvm/lib/CodeGen/AtomicExpandPass.cpp
Commit d28267f9810ce8642b27279b91a3a195ba932ce2 by hokein.wu
[AST][RecoveryExpr] Add error-bit to NestNameSpecifierDependence and TemplateNameDependence.

Summary:
We might lose the error-bit if the error-bit goes through the code path
"error type/expr" -> "error template argument" -> "nested name specifier" ->
... -> "template Specialization type"

Template name also needs this, as a template can be nested into
an error specifier, e.g. templateName apply in
`TC<decltype(<recovery-expr>(Foo, int()))>::template apply`

Reviewers: sammccall

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D82526
The file was modifiedclang/include/clang/AST/DependenceFlags.h
The file was modifiedclang/test/Sema/invalid-bitwidth-expr.mm
Commit 6f5da84f7bb31c7c2fcb78e64d5dc3baea1c60f2 by herhut
[mlir] Extended BufferPlacement to support nested region control flow.

Summary: The current BufferPlacement implementation does not support
nested region control flow. This CL adds support for nested regions via
the RegionBranchOpInterface and the detection of branch-like
(ReturnLike) terminators inside nested regions.

Differential Revision: https://reviews.llvm.org/D81926
The file was modifiedmlir/test/Transforms/buffer-placement.mlir
The file was modifiedmlir/lib/Transforms/BufferPlacement.cpp
The file was modifiedmlir/test/lib/Dialect/Test/TestDialect.cpp
The file was modifiedmlir/test/lib/Dialect/Test/TestOps.td
Commit 84ced55d9b7bade7c9db39f3bcebc6af333dc325 by 1585086582
[clangd] Remove redundant `findRefs` calls. NFC.

Summary:
Remove redundant `findRefs` calls.

Reviewers: sammccall, kadircet

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

Tags: #clang

Differential Revision: https://reviews.llvm.org/D82714
The file was modifiedclang-tools-extra/clangd/XRefs.cpp
Commit 815a8100e02966043a41ae6b366f23feb470e736 by benicsbalazs
[llvm][Z3][NFC] Improve mkBitvector performance

We convert `APSInt`s to Z3 Bitvectors in an inefficient way for most cases.
We should not serialize to std::string just to pass an int64 integer.

For the vast majority of cases, we use at most 64-bit width integers (at least
in the Clang Static Analyzer). We should simply call the `Z3_mk_unsigned_int64`
and `Z3_mk_int64` instead of the `Z3_mk_numeral` as stated in the Z3 docs.
Which says:
> It (`Z3_mk_unsigned_int64`, etc.) is slightly faster than `Z3_mk_numeral` since
> it is not necessary to parse a string.

If the `APSInt` is wider than 64 bits, we will use the `Z3_mk_numeral` with a
`SmallString` instead of a heap-allocated `std::string`.

Differential Revision: https://reviews.llvm.org/D78453
The file was modifiedllvm/lib/Support/Z3Solver.cpp
Commit 6764869548a23d03b10b0a9af7aeac534959af29 by iii
[SystemZ] Add NoMerge MIFlag

Summary:
This fixes ASan and MSan tests on SystemZ after
commit 6a822e20ce70 ("[ASan][MSan] Remove EmptyAsm and set the CallInst
to nomerge to avoid from merging.").

Based on commit 80e107ccd088 ("Add NoMerge MIFlag to avoid MIR branch
folding").

Reviewers: uweigand, jonpa

Reviewed By: uweigand

Subscribers: hiraditya, llvm-commits, Andreas-Krebbel

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D82794
The file was modifiedllvm/lib/Target/SystemZ/SystemZISelLowering.cpp
The file was addedllvm/test/CodeGen/SystemZ/nomerge.ll
Commit 502773d743417a7896e184b4000bcf20fddb7ad9 by Raphael Isemann
[lldb][NFC] Remove ImportInProgress lock in ClangASTSource

Summary:

The ClangASTSource has a lock that globally disables all lookups into the
external AST source when we explicitly "guarded" copy a type. It's not used for
anything else, so importing declarations or importing types that are
dependencies of a declaration actually won't activate that lock. The lookups it
is supposed to prevent also don't actually happen in our test suite. The check
in `ClangExpressionDeclMap::FindExternalVisibleDecls` is never executed and the
check in the `ClangASTSource::FindExternalVisibleDeclsByName` is only ever
reached by the `Import-std-module` tests (which explicitly do a lookup into the
expression context on purpose).

This lock was added in 6abfabff6158076eccdf6fcac5a12894039de2c9 as a replacement
for a list of types we already looked up which appeared to be an optimisation
strategy. I assume back then this lock had a purpose but these days the
ASTImporter and LLDB seem to be smart enough to avoid whatever lookups this
tried to prevent.

I would say we remove it from LLDB. The main reason is that it blocks D81561
(which explicitly does a specific lookup to resolve placeholder types produced
by `-flimit-debug-info`) but it's semantics are also very confusing. The naming
implies it's a flag to indicate when we import something at the moment which is
practically never true as described above. Also the fact that it makes our
ExternalASTSource alternate between doing lookups into the debug info and
pretending it doesn't know any external decls could really break our lookup in
some weird way if Clang decides to cache a fake empty lookup result that was
generated while the lock was active.

Reviewers: labath, shafik, JDevlieghere, aprantl

Reviewed By: labath, JDevlieghere, aprantl

Subscribers: aprantl, abidh

Differential Revision: https://reviews.llvm.org/D81749
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.h
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp
Commit 80eb42281feb7834054be5f933f63d8c64af229d by Raphael Isemann
[lldb] Tab completion for `frame select`

Summary: Provided the tab completion for command `frame select`.

Reviewers: teemperor, JDevlieghere

Reviewed By: teemperor

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D81177
The file was modifiedlldb/test/API/functionalities/completion/TestCompletion.py
The file was modifiedlldb/source/Commands/CommandObjectFrame.cpp