FailedChanges

Changes from Git (git http://labmaster3.local/git/llvm-project.git)

Summary

  1. [GlobalISel] support narrow G_IMPLICIT_DEF for DstSize % NarrowSize != 0 (details)
  2. [MLIR] Add missing colon after CHECKs. (details)
  3. [GlobalISel] Combine sext([sz]ext) -> [sz]ext, zext(zext) -> zext (details)
  4. [Analyzer][StreamChecker] Introduction of stream error handling. (details)
  5. [MLIR] Add support to use aligned_alloc to lower AllocOp from std to llvm (details)
  6. [llvm-objdump] Fix unstable disassembly output for sections with same address (details)
  7. [GlobalISel] combine trunc(trunc) pattern (details)
  8. [LoopLoadElim] Add test showing that LoopLoadElim doesn't work correctly with new PM (details)
  9. [ARM][MVE] Optimise offset addresses of gathers/scatters (details)
  10. [IfConversion] Disallow TrueBB == FalseBB for valid diamonds (details)
  11. [X86][MC] Support enhanced relaxation for branch align (details)
  12. [ELF][AArch64] Add R_AARCH64_PLT32 relocation type. (details)
  13. [DebugInfo][NFC] Early-exit when analyzing for single-location variables (details)
  14. [clangd] show layout info when hovering on a class/field definition. (details)
  15. [X86][SSE] Combine PTEST(AND(X,Y),AND(X,Y)) -> PTEST(X,Y) and ANDN equivalents (details)
  16. [LLD][ELF][ARM] Implement ARM pc-relative relocations for ADR and LDR (details)
  17. [MLIR] Fix gcc-5 build failure cause by D77528 (details)
  18. [clangd] Fix a crash bug in AddUsing tweak around template handling. (details)
  19. [ELF][test] Add reproduce test for dependent libraries (details)
  20. [clangd] Support dexp -c "some command" (details)
  21. [AMDGPU] Regenerate si-annotate-cfg-loop-assert test checks to fix issue reported on D77354 (details)
  22. [AMDGPU] Regenerate vector-extract-insert test checks to fix issue reported on D77354 (details)
  23. [clangd] Add missing GoToStmt in FindTarget. (details)
  24. [compiler-rt] Don't use __libc_stack_end on ARM (details)
  25. [llvm-exegesis][NFC] Remove dead code. (details)
  26. [CodeGen] Emit IR for fixed-point multiplication and division. (details)
  27. [CodeGen] Emit IR for fixed-point unary operators. (details)
  28. [CodeGen] Emit IR for compound assignment with fixed-point operands. (details)
  29. [AST] Compress the FixedPointSemantics type better. (details)
  30. [libTooling] Simplify the representation of Transformer's RewriteRules. (details)
  31. [InstCombine] exclude bitcast of ppc_fp128 in icmp signbit fold (details)
  32. [LangRef] update text for shufflevector (details)
  33. [libc++] Explicitly specify that we use libc++abi in Apple's cache (details)
  34. [PowerPC][Future] Add Support For Functions That Do Not Use A TOC. (details)
  35. [Parser] Improve diagnostic and error recovery when C++ keywords are used as identifiers. (details)
  36. [llvm-exegesis][NFC] Let the pfm::Counter own the PerfHelper. (details)
  37. [DWARFLinker][dsymutil] followup for 88c2137b6d49f88186d0957a4e2d8030a3967334 (details)
  38. [MLIR] Fix more gcc-5 build issues from D77528 (details)
  39. [CodeExtractor] Fix typo in check label to fix issue reported on D77354 (details)
  40. [llvm-exegesis] Fix build with !HAS_LIBPFM. (details)
  41. [DSE,MSSA] Hoist getMemoryAccess call (NFC). (details)
  42. [DSE.MSSA] Only use callCapturesBefore for calls. (details)
  43. [MemorySSA] invariant-groups.ll - add missing check to fix issue reported on D77354 (details)
  44. [X86] Fix x86-header-warnings.c test not detecting regressions as intended. (details)
  45. [DSE,MSSA] Add additional test cases for multi-path elimination (NFC). (details)
  46. [AARCH64][GISEL] arm64-fallback.ll - Refresh remarks to fix issue reported on D77354 (details)
  47. [Fixed Point] Add triples to test cases. (details)
  48. [ARM] Fix misched-int-basic-thumb2.mir typo in check to fix issue reported on D77354 (details)
  49. [libunwind] Fix incorrect lit substitutions in tests (details)
  50. [ARM] Fix thumb1_return_sequence typo in check to fix issue reported on D77354 (details)
  51. [PowerPC][AIX] Enable passing byval formal arguments in multiple registers. (details)
  52. [RDA] Use TinyPtrVector to store reaching defs (NFCI) (details)
  53. [MLIR][Vector] Update ShapeCastOp folder to use producer-consumer value forwarding. (details)
  54. [TimePasses] Small fix in "-time-passes" flag that makes it more stable (details)
  55. [AMDGPU] Refresh fmin_legacy.ll checks to fix issue reported on D77354 (details)
  56. CodeGen: Use Register in TargetLowering (details)
  57. CodeGen: Use Register in MachineBasicBlock (details)
  58. CodeGen: Use Register more in CallLowering (details)
  59. FastISel: Partially use Register (details)
  60. [RDA] Try to fix build (NFC) (details)
  61. [PowerPC] Fix fold-frame-offset-using-rr.mir typos in checks to fix issue reported on D77354 (details)
  62. [RDA] Try to fix build, again (NFC) (details)
  63. [ELF] --warn-backrefs: don't warn if -u/--export-dynamic-symbol (details)
  64. [PowerPC] Fix fold-rlwinm.mir typos in checks to fix issue reported on D77354 (details)
  65. [libc++] Remove std::optional from ObjC is_scalar test. (details)
  66. [MLIR] Fix test case typos in unroll.mlir (details)
  67. [lldb-vscode] Correctly return source mapped breakpoints for setBreakpoints request (details)
  68. [PowerPC] Regenerate optcmp.ll test checks to fix issue reported on D77354 (details)
  69. Fix __is_pointer builtin type trait to work with Objective-C pointer types. (details)
  70. [InstCombine] Regenerate phi-preserve-ir-flags.ll test checks to fix issue reported on D77354 (details)
  71. [libc][NFC] Make all top of file comments consistent. (details)
  72. [PowerPC][AIX][NFC] Replace deprecated getByValAlign call. (details)
  73. DAG: Use Register (details)
  74. Fix e796c77b26acab0b530ac6516f1dda21b8494733 (details)
  75. [commands] Support autorepeat in SBCommands (details)
  76. MachineFunction: Copy call site info when duplicating insts (details)
  77. [DWARF] Not all the constant variables are "static". (details)
  78. [CUDA] Simplify GPU variant handling. NFC. (details)
  79. [CUDA] Add partial support for recent CUDA versions. (details)
  80. [CUDA] Improve testing of libdevice detection. (details)
  81. CodeGen: Use Register in MachineSSAUpdater (details)
  82. [libc++] Update the documentation for running Lit to reflect reality (details)
  83. [Driver] Default arm-linux-androideabi to -z max-page-size=4096 (details)
  84. unittest: Disable MachineInstrClone.CopyCallSiteInfo on Windows (details)
  85. unittest: Disable MachineInstrClone.CopyCallSiteInfo entirely (details)
  86. [clang][CodeGen] Handle throw expression in conditional operator constant folding (details)
  87. [CFGPrinter] Adding heat coloring to CFGPrinter (details)
  88. [gn build] Port 8b67853a83c (details)
  89. [mlir] Eliminate the remaining usages of cl::opt instead of PassOption. (details)
  90. [libc++] CI: Always build for both i386 and x86_64 in the back-deployment script (details)
  91. Make target features check work with ctor and dtor- (details)
  92. [mlir][NFC] Remove cl::opts for LoopUnroll now that the pass uses PassOptions (details)
Commit 35950fea8d4f175d04aa27e5e0350e28bef36429 by dominik.montada
[GlobalISel] support narrow G_IMPLICIT_DEF for DstSize % NarrowSize != 0

Summary:
When narrowing G_IMPLICIT_DEF where the original size is not a multiple
of the narrow size, emit a smaller G_IMPLICIT_DEF and use G_ANYEXT.

To prevent a potential endless loop in the legalizer, the condition
to combine G_ANYEXT(G_IMPLICIT_DEF) is changed from isInstUnsupported
to !isInstLegal, since in this case the combine is only valid if
consequent legalization of the newly combined G_IMPLICIT_DEF does not
introduce G_ANYEXT due to narrowing.

Although this legalization for G_IMPLICIT_DEF would also be valid for
the general case, it actually caused a lot of code regressions when
tried due to superfluous COPYs and combines not getting hit anymore.

Reviewers: dsanders, aemerson, volkan, arsenm, aditya_nandakumar

Reviewed By: arsenm

Subscribers: jvesely, nhaehnle, kerbowa, wdng, rovka, hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D76598
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h
The file was modifiedllvm/unittests/CodeGen/GlobalISel/LegalizerHelperTest.cpp
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-implicit-def-s1025.mir
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-implicit-def.mir
Commit 06ddb7946bb18b9340d0033f5c2d16fb0e075291 by csigg
[MLIR] Add missing colon after CHECKs.

Reviewers: herhut

Reviewed By: herhut

Subscribers: mehdi_amini, rriddle, jpienaar, burmako, shauheen, antiagainst, nicolasvasilache, arpith-jacob, mgester, lucyrfox, liufengdb, Joonsoo, grosul1, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77709
The file was modifiedmlir/test/Transforms/canonicalize.mlir
The file was modifiedmlir/test/mlir-tblgen/pattern.mlir
The file was modifiedmlir/test/Target/llvmir.mlir
The file was modifiedmlir/test/Transforms/memref-bound-check.mlir
The file was modifiedmlir/test/IR/memory-ops.mlir
The file was modifiedmlir/test/Transforms/pipeline-data-transfer.mlir
Commit 432720f1c4c6b47edfb475f8616e471d14c26974 by dominik.montada
[GlobalISel] Combine sext([sz]ext) -> [sz]ext, zext(zext) -> zext

Summary:
Combine sext(zext x) to (zext x) since the sign-bit is 0
after the zero-extension.

Combine sext(sext x) to (sext x) and ext(zext x) to (zext x)
since the intermediate step is not needed.

Reviewers: arsenm, volkan, aemerson, aditya_nandakumar

Reviewed By: arsenm

Subscribers: jvesely, wdng, nhaehnle, rovka, kerbowa, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77210
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/combine-ext-legalizer.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-saddo.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ssubo.mir
Commit 11bd3e5c6549a4983be454ccfbeb16e88c9532db by 1.int32
[Analyzer][StreamChecker] Introduction of stream error handling.

Summary:
Store the error flags (EOF or error) of a stream.
Support the functions feof, ferror, clearerr.
Added a test checker for setting the error flags.

Reviewers: Szelethus, NoQ, Charusso, baloghadamsoftware, xazax.hun

Reviewed By: Szelethus

Subscribers: steakhal, ASDenysPetrov, rnkovacs, xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, dkrupp, gamesh411, Charusso, martong, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D75682
The file was modifiedclang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
The file was modifiedclang/test/Analysis/stream.c
The file was modifiedclang/test/Analysis/Inputs/system-header-simulator.h
The file was modifiedclang/include/clang/StaticAnalyzer/Checkers/Checkers.td
The file was addedclang/test/Analysis/stream-error.c
Commit 01d97a35493a8a306bfaa3ceb3e6fa49b05dea89 by uday
[MLIR] Add support to use aligned_alloc to lower AllocOp from std to llvm

Support to recognize and deal with aligned_alloc was recently added to
LLVM's TLI/MemoryBuiltins and its various optimization passes. This
revision adds support for generation of aligned_alloc's when lowering
AllocOp from std to LLVM. Setting 'use-aligned_alloc=1' will lead to
aligned_alloc being used for all heap allocations. An alignment and size
that works with the constraints of aligned_alloc is chosen.

Using aligned_alloc is preferable to "using malloc and adjusting the
allocated pointer to align for indexing" because the pointer access
arithmetic done for the latter only makes it harder for LLVM passes to
deal with for analysis, optimization, attribute deduction, and rewrites.

Differential Revision: https://reviews.llvm.org/D77528
The file was modifiedmlir/lib/Dialect/StandardOps/IR/Ops.cpp
The file was modifiedmlir/test/Conversion/StandardToLLVM/convert-dynamic-memref-ops.mlir
The file was modifiedmlir/include/mlir/Conversion/StandardToLLVM/ConvertStandardToLLVMPass.h
The file was modifiedmlir/include/mlir/Conversion/Passes.td
The file was modifiedmlir/lib/Analysis/Utils.cpp
The file was modifiedmlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
Commit abd335a339cb2c5aaf30463ff8451f1eb6e223c7 by james.henderson
[llvm-objdump] Fix unstable disassembly output for sections with same address

When two sections shared the same address, the disassembly code was
using pointer values when sorting (see the SectionRef less than
operator). Since those values aren't guaranteed to have a specific
order, this meant the disassembly code would sometimes change which
section to pick when finding symbols targeted by calls in fully linked
objects.

This change fixes the non-determinism, so that the same section is
always picked. This might have a negative impact in that now a section
without any symbol might be picked over a section with symbols, but this
will be addressed in a later commit.

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

Reviewed by: grimar, MaskRay

Differential Revision: https://reviews.llvm.org/D77640
The file was modifiedllvm/tools/llvm-objdump/llvm-objdump.cpp
The file was addedllvm/test/tools/llvm-objdump/X86/disassemble-same-section-addr.test
Commit c8393240abc10218b03f2cafe9a83b1fb29b4e3d by dominik.montada
[GlobalISel] combine trunc(trunc) pattern

Summary:
Legalization can introduce the trunc(trunc) pattern. This can cause
problems if one of these intermediate truncs is not legal.
Combine truncs of this pattern, if the resulting trunc is legal.

Reviewers: arsenm, aemerson, dsanders

Reviewed By: arsenm

Subscribers: jvesely, wdng, nhaehnle, rovka, kerbowa, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D76601
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-load-trunc.mir
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-extract.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-implicit-def.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-bitcast.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/artifact-combiner-trunc.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-implicit-def-s1025.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-trunc.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-inttoptr.mir
Commit 7adb9e06fd0dd49891e491cba9705e9dd119440e by mkazantsev
[LoopLoadElim] Add test showing that LoopLoadElim doesn't work correctly with new PM
The file was addedllvm/test/Transforms/LoopLoadElim/new-pm-preheader-problem.ll
The file was modifiedllvm/lib/Transforms/Scalar/LoopLoadElimination.cpp
Commit 89e1248d7b76886912f499391719e68b27e42ec3 by anna.welker
[ARM][MVE] Optimise offset addresses of gathers/scatters

This patch adds an analysis of the offset addresses used by gathers
and scatters to the MVEGatherScatterLowering pass to find
multiplications and additions that are loop invariant and thus can
be moved into the loop preheader, avoiding to execute them each time.

Differential Revision: https://reviews.llvm.org/D76681
The file was modifiedllvm/test/CodeGen/ARM/O3-pipeline.ll
The file was addedllvm/test/CodeGen/Thumb2/mve-gather-scatter-optimisation.ll
The file was addedllvm/test/CodeGen/Thumb2/mve-gather-optimisation-deep.ll
The file was modifiedllvm/lib/Target/ARM/MVEGatherScatterLowering.cpp
Commit 893df2032d480bf791a69fe965c3ca4ef500145b by mikael.holmen
[IfConversion] Disallow TrueBB == FalseBB for valid diamonds

Summary:
This fixes PR45302.

Previously the case

     BB1
     / \
    |   |
   TBB FBB
    |   |
     \ /
     BB2

was treated as a valid diamond also when TBB and FBB was the same basic
block. This then lead to a failed assertion in IfConvertDiamond.

Since TBB == FBB is quite a degenerated case of a diamond, we now
don't treat it as a valid diamond anymore, and thus we will avoid the
trouble of making IfConvertDiamond handle it correctly.

Reviewers: efriedma, kparzysz

Reviewed By: efriedma

Subscribers: hiraditya, llvm-commits

Differential Revision: https://reviews.llvm.org/D77651
The file was addedllvm/test/CodeGen/ARM/ifcvt_diamondSameTrueFalse.mir
The file was modifiedllvm/lib/CodeGen/IfConversion.cpp
Commit 916044d819c8e383fe1cd99190e3ff572d80f48f by shengchen.kan
[X86][MC] Support enhanced relaxation for branch align

Summary:
Since D75300 has been landed, I want to support enhanced relaxation when we need to align branches and allow prefix padding. "Enhanced Relaxtion" means we allow an instruction that could not be traditionally relaxed to be emitted into RelaxableFragment so that we increase its length by adding prefixes for optimization.

The motivation is straightforward, RelaxFragment is mostly for relative jumps and we can not increase the length of jumps when we need to align them, so if we need to achieve D75300's purpose (reducing the bytes of nops) when need to align jumps, we have to make more instructions "relaxable".

Reviewers: reames, MaskRay, craig.topper, LuoYuanke, jyknight

Reviewed By: reames

Subscribers: hiraditya, llvm-commits, annita.zhang

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D76286
The file was modifiedllvm/include/llvm/MC/MCAsmBackend.h
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
The file was modifiedllvm/lib/MC/MCObjectStreamer.cpp
The file was addedllvm/test/MC/X86/align-branch-enhanced-relaxation.s
Commit 02cd80e68ecf59af98e74d1b06c23b3317555933 by peter.smith
[ELF][AArch64] Add R_AARCH64_PLT32 relocation type.

The R_AARCH64_PLT32 relocation type will be documented in the next release
of ELF for the 64-bit Arm Architecture. It is being added in draft state
for the benefit of the position independent vtable feature.

R_AARCH64_PLT32 is very similar to R_AARCH64_PREL32. The intention is to
provide a signed 32-bit integer representing an offset from the place
to a function.
- It relocates 32-bit data
- The expression is S + A - P
- The overflow check for the expression is -2^31 <= X < 2^31
- The relocation generates Thunks/Veneers/Stubs and PLT entries as per
  R_AArch64_CALL26
- If the symbol S is an undefined weak the ABI does not define its value.

The ABI defines a code for ilp32 for completeness, I have added the code
but have only added to the existing reloc-types-elf-aarch64.text as there
is no ilp32 equivalent.

Differential Revision: https://reviews.llvm.org/D77647
The file was modifiedllvm/include/llvm/BinaryFormat/ELFRelocs/AArch64.def
The file was modifiedllvm/test/tools/llvm-readobj/ELF/reloc-types-elf-aarch64.test
Commit c77887e4d1beae537ebb43e75f119e9e3b4fbe9c by jeremy.morse
[DebugInfo][NFC] Early-exit when analyzing for single-location variables

This is a performance patch that hoists two conditions in DwarfDebug's
validThroughout to avoid a linear-scan of all instructions in a block. We
now exit early if validThrougout will never return true for the variable
location.

The first added clause filters for the two circumstances where
validThroughout will return true. The second added clause should be
identical to the one that's deleted from after the linear-scan.

Differential Revision: https://reviews.llvm.org/D77639
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
Commit c1a00b89add8f4f9658f631a4fa2cb8a068eef57 by sam.mccall
[clangd] show layout info when hovering on a class/field definition.

Summary:
This triggers only on the definition itself, not on references (probably too
noisy). Inspecting the definition seems like a decent hint for being interested
in layout.

Reviewers: kadircet

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

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77355
The file was modifiedclang-tools-extra/clangd/unittests/HoverTests.cpp
The file was modifiedclang-tools-extra/clangd/Hover.h
The file was modifiedclang-tools-extra/clangd/Hover.cpp
Commit 66c18c729da456680af7884f551a6c4627dc6372 by llvm-dev
[X86][SSE] Combine PTEST(AND(X,Y),AND(X,Y)) -> PTEST(X,Y) and ANDN equivalents

Tests derived from PR42035 examples
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/combine-ptest.ll
Commit 28b172e34177fe925ac4f54de2ce073e1d6029d9 by peter.smith
[LLD][ELF][ARM] Implement ARM pc-relative relocations for ADR and LDR

The R_ARM_ALU_PC_G0 and R_ARM_LDR_PC_G0 relocations are used by the
ADR and LDR pseudo instructions, and are the basis of the group
relocations that can load an arbitrary constant via a series of add, sub
and ldr instructions.

The relocations need to be obtained via the .reloc directive.

R_ARM_ALU_PC_G0 is much more complicated as the add/sub instruction uses
a modified immediate encoding of an 8-bit immediate rotated right by an
even 4-bit field. This means that the range of representable immediates
is sparse. We extract the encoding and decoding functions for the modified
immediate from llvm/lib/Target/ARM/MCTargetDesc/ARMAddressingModes.h as
this header file is not accessible from LLD. Duplication of code isn't
ideal, but as these are well-defined mathematical functions they are
unlikely to change.

Differential Revision: https://reviews.llvm.org/D75349
The file was addedlld/test/ELF/arm-ldrlit.s
The file was modifiedlld/ELF/Arch/ARM.cpp
The file was addedlld/test/ELF/arm-adr-long.s
The file was addedlld/test/ELF/arm-adr.s
The file was addedlld/test/ELF/arm-ldrlit-err.s
The file was addedlld/test/ELF/arm-adr-err.s
Commit a59008a3a5b0aa75fc78eb708dbc788600e79c65 by uday
[MLIR] Fix gcc-5 build failure cause by D77528

Fix gcc-5 build failure cause by D77528

Differential Revision: https://reviews.llvm.org/D77719
The file was modifiedmlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
Commit cca10be3f60dd30055acc70d117649f889da779d by sam.mccall
[clangd] Fix a crash bug in AddUsing tweak around template handling.

Summary:
The crash happened on cases like:
template<typename TT> using one = two::three<T^T>;
because we tried to call getName() on getBaseTypeIdentifier(), which can
be nullptr.

Ideally we would support this use case as well, but for now not crashing
will do.

Reviewers: sammccall

Reviewed By: sammccall

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

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77656
The file was modifiedclang-tools-extra/clangd/unittests/TweakTests.cpp
The file was modifiedclang-tools-extra/clangd/refactor/tweaks/AddUsing.cpp
Commit 3db215089f4838eda5742f620d3dc2f4208ad99b by andrew.ng
[ELF][test] Add reproduce test for dependent libraries

Differential Revision: https://reviews.llvm.org/D77659
The file was addedlld/test/ELF/reproduce-deplibs.s
Commit 49268a678c2f0233f71363b0988d4b159496b036 by sam.mccall
[clangd] Support dexp -c "some command"

Summary:
It runs one command and exits.
See D77385 for motivation.

Reviewers: mnauw, kbobyrev

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

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77645
The file was modifiedclang-tools-extra/clangd/index/dex/dexp/Dexp.cpp
Commit 98181a1f98e78a3bba6ca852f5a02e36b907b435 by llvm-dev
[AMDGPU] Regenerate si-annotate-cfg-loop-assert test checks to fix issue reported on D77354
The file was modifiedllvm/test/CodeGen/AMDGPU/si-annotate-cfg-loop-assert.ll
Commit 7e62684251ed4531cf27e533f0c5df3daf8efb70 by llvm-dev
[AMDGPU] Regenerate vector-extract-insert test checks to fix issue reported on D77354
The file was modifiedllvm/test/CodeGen/AMDGPU/vector-extract-insert.ll
Commit a533b03028fad4555e53b803197980735ccd68f9 by hokein.wu
[clangd] Add missing GoToStmt in FindTarget.

Summary: so that go-to-def on label can work.

Reviewers: sammccall

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

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77715
The file was modifiedclang-tools-extra/clangd/unittests/FindTargetTests.cpp
The file was modifiedclang-tools-extra/clangd/FindTarget.cpp
Commit aaba9a77615008624eb48fd333ac872c9e1d8883 by iii
[compiler-rt] Don't use __libc_stack_end on ARM

Summary:
Commit b684c1a50f70 ("Add a `Symbolizer::GetEnvP()` method that allows
symbolizer implementations to customise the environment of the
symbolizer binary.") exposed a latent ARM issue, and that broke

http://lab.llvm.org:8011/builders/clang-cmake-thumbv7-full-sh

This coincided with breakage caused by my commit 5f5fb56c68e4
("[compiler-rt] Intercept the uname() function"), so I had to
investigate.

The issue is that GetArgsAndEnv does not work on ARM: there glibc's
_start overwrites argc value stored at __libc_start_end, breaking the
existing argv/envp parsing logic.

Fix by inferring argc from argv.

Reviewers: eugenis, vitalybuka

Reviewed By: eugenis

Subscribers: dberris, kristof.beyls, danielkiss, #sanitizers, delcypher

Tags: #sanitizers

Differential Revision: https://reviews.llvm.org/D77400
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
Commit d2d808d2efa46dc9d430c7cd8ddb30eedc03af46 by courbet
[llvm-exegesis][NFC] Remove dead code.
The file was modifiedllvm/tools/llvm-exegesis/lib/PerfHelper.h
The file was modifiedllvm/unittests/tools/llvm-exegesis/PerfHelperTest.cpp
Commit 0b9922e67a0b5520d76c293e9aef13a7ad4f3a8d by bevin.hansson
[CodeGen] Emit IR for fixed-point multiplication and division.

Reviewers: rjmccall, leonardchan

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D73182
The file was addedclang/test/Frontend/fixed_point_div.c
The file was addedclang/test/Frontend/fixed_point_mul.c
The file was modifiedclang/lib/CodeGen/CGExprScalar.cpp
Commit 39baaabf6de4cfcbb942434084298a3f9acf5f89 by bevin.hansson
[CodeGen] Emit IR for fixed-point unary operators.

Reviewers: rjmccall, leonardchan

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D73183
The file was addedclang/test/Frontend/fixed_point_unary.c
The file was modifiedclang/lib/CodeGen/CGExprScalar.cpp
Commit 313461f6d8f91ac8abf2fa06e17b92127b050f06 by bevin.hansson
[CodeGen] Emit IR for compound assignment with fixed-point operands.

Reviewers: rjmccall, leonardchan

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D73184
The file was modifiedclang/lib/CodeGen/CGExprScalar.cpp
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was addedclang/test/Frontend/fixed_point_compound.c
Commit d5d0d8eb7d094f8270721662882c0094fc4fdc29 by bevin.hansson
[AST] Compress the FixedPointSemantics type better.

Reviewers: rjmccall, leonardchan, bjope

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D73257
The file was modifiedclang/include/clang/Basic/FixedPoint.h
Commit 5e5d36671833e186e847e74bb5ed0c559625b906 by yitzhakm
[libTooling] Simplify the representation of Transformer's RewriteRules.

Summary:
This revision simplifies the representation of edits in rewrite rules. The
simplified form is more general, allowing the user more flexibility in building
custom edit specifications.

The changes extend the API, without changing the signature of existing
functions. So this only risks breaking users that directly accessed the
`RewriteRule` struct.

Reviewers: gribozavr2

Subscribers: jfb, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77419
The file was modifiedclang/include/clang/Tooling/Transformer/RewriteRule.h
The file was modifiedclang/lib/Tooling/Transformer/RewriteRule.cpp
The file was modifiedclang/lib/Tooling/Transformer/Transformer.cpp
The file was modifiedclang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.cpp
Commit a1c05fe20f3def1f1be9f50d2adefc6b6f1578ad by spatel
[InstCombine] exclude bitcast of ppc_fp128 in icmp signbit fold

Based on the post-commit comments for rG0f56bbc, there might
be a problem with this transform:

(bitcast (fpext/fptrunc X)) to iX) < 0 --> (bitcast X to iY) < 0

...and the ppc_fp128 data type, so conservatively bypass if we
are bitcasting a ppc_fp128.

We might be able to account for endian or other differences to
enable this for PowerPC again if that is useful.

Differential Revision: https://reviews.llvm.org/D77642
The file was modifiedllvm/test/Transforms/InstCombine/icmp.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
Commit 5c472420b6d69b977db75b239cae7abeb7283475 by spatel
[LangRef] update text for shufflevector

D72467 updated the shufflevector instruction to include a constant mask
rather than a mask operand. The LangRef text was vague enough to still
make sense, but it is better to update here too, so there's no confusion
about valid mask values. The text here is adapted from the documentation
code comments for "class ShuffleVectorInst".

Differential Revision: https://reviews.llvm.org/D77396
The file was modifiedllvm/docs/LangRef.rst
Commit f3bf25eb663c49e821120fd311677764d2bad79e by Louis Dionne
[libc++] Explicitly specify that we use libc++abi in Apple's cache
The file was modifiedlibcxx/cmake/caches/Apple.cmake
Commit 6c4b40def77622a5cf62a219ef4af63dc876e144 by kamau.bridgeman
[PowerPC][Future] Add Support For Functions That Do Not Use A TOC.

On PowerPC most functions require a valid TOC pointer.

This is the case because either the function itself needs to use this
pointer to access the TOC or because other functions that are called
from that function expect a valid TOC pointer in the register R2.
The main exception to this is leaf functions that do not access the TOC
since they are guaranteed not to need a valid TOC pointer.

This patch introduces a feature that will allow more functions to not
require a valid TOC pointer in R2.

Differential Revision: https://reviews.llvm.org/D73664
The file was addedllvm/test/CodeGen/PowerPC/pcrel-call-linkage-simple.ll
The file was modifiedllvm/test/MC/PowerPC/ppc64-localentry-error2.s
The file was modifiedllvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
The file was modifiedllvm/test/MC/PowerPC/ppc64-localentry-error1.s
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.td
The file was modifiedllvm/lib/Target/PowerPC/PPCMCInstLower.cpp
The file was modifiedllvm/lib/Target/PowerPC/MCTargetDesc/PPCMCCodeEmitter.cpp
The file was modifiedllvm/include/llvm/BinaryFormat/ELF.h
The file was modifiedllvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
The file was modifiedllvm/include/llvm/MC/MCExpr.h
The file was modifiedllvm/lib/Target/PowerPC/PPCScheduleP9.td
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.h
The file was modifiedllvm/lib/Target/PowerPC/PPCSubtarget.cpp
The file was addedllvm/test/CodeGen/PowerPC/pcrel-call-linkage-leaf.ll
The file was modifiedllvm/lib/MC/MCExpr.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCMIPeephole.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCSubtarget.h
The file was modifiedllvm/lib/Target/PowerPC/PPCInstr64Bit.td
The file was modifiedllvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp
The file was modifiedllvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was modifiedllvm/include/llvm/BinaryFormat/ELFRelocs/PowerPC64.def
The file was modifiedllvm/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp
The file was modifiedllvm/lib/Target/PowerPC/MCTargetDesc/PPCFixupKinds.h
The file was addedllvm/test/CodeGen/PowerPC/pcrel-call-linkage-with-calls.ll
Commit 625acd8f6847a156b236b8f11b4b02b11cac3766 by hokein.wu
[Parser] Improve diagnostic and error recovery when C++ keywords are used as identifiers.

Summary:
Previously, clang emitted a less-usefull diagnostic and didnt recover
well when the keywords is used as identifier in function paramter.

```
void foo(int case, int x); // previously we drop all parameters after
`int case`.
```

Reviewers: sammccall

Reviewed By: sammccall

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77633
The file was addedclang/test/Parser/cxx-keyword-identifiers.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticParseKinds.td
The file was modifiedclang/lib/Parse/ParseDecl.cpp
Commit 9fb871866e2bb9b1c0968265bc5c1a3aa71d5845 by courbet
[llvm-exegesis][NFC] Let the pfm::Counter own the PerfHelper.

A perf helper is always only ever cretaed to be checked for validity
then passed as Counter ctor argument, never to be touched again.
Its lifetime should outlive that of the counter, and there is never any
reason to have two different counters of top of the perf helper.
Make sure these assumptions always hold by making the Counter consume the
PerfHelper.
The file was modifiedllvm/tools/llvm-exegesis/lib/PerfHelper.cpp
The file was modifiedllvm/unittests/tools/llvm-exegesis/PerfHelperTest.cpp
The file was modifiedllvm/tools/llvm-exegesis/lib/PerfHelper.h
The file was modifiedllvm/tools/llvm-exegesis/lib/BenchmarkRunner.cpp
Commit 0ed2170dc47718b0c0f4907d14676839a1210a8a by a.v.lapshin
[DWARFLinker][dsymutil] followup for 88c2137b6d49f88186d0957a4e2d8030a3967334

That patch is a followup for "Move DwarfStreamer into DWARFLinker".
It fixes build with LLVM_LINK_LLVM_DYLIB.
The file was modifiedllvm/lib/DWARFLinker/DWARFStreamer.cpp
The file was modifiedllvm/tools/dsymutil/DwarfLinkerForBinary.cpp
Commit 3156b5422e6c3fd3f05557b32d48d58603df1ff1 by uday
[MLIR] Fix more gcc-5 build issues from D77528

820c420d4e1c630b5ead285917c6ecdd2f5092ad did not really fix all build
issues by D77528. This gets rid of two unnecessary 'using' declarations.

Differential Revision: https://reviews.llvm.org/D77726
The file was modifiedmlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
Commit 0c2ab6368994ef2674a8be2e8b6894af441310f2 by llvm-dev
[CodeExtractor] Fix typo in check label to fix issue reported on D77354
The file was modifiedllvm/test/Transforms/CodeExtractor/live_shrink_unsafe.ll
Commit 7c6514bc22c4564448cbaf8d1b1106a3441c13ef by courbet
[llvm-exegesis] Fix build with !HAS_LIBPFM.

Fixes 9fb871866e2b.
The file was modifiedllvm/tools/llvm-exegesis/lib/PerfHelper.cpp
Commit a6353fdf3b1a4b2c3df54ee201f70a1357db7612 by flo
[DSE,MSSA] Hoist getMemoryAccess call (NFC).
The file was modifiedllvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
Commit bbbec716090243d42260c4ef47c8a7695950b52f by flo
[DSE.MSSA] Only use callCapturesBefore for calls.

callCapturesBefore always returns ModRef , if UseInst isn't a call. As
we only call it if we already know Mod is set, this only destroys the
Must bit for non-calls.
The file was modifiedllvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
Commit 898e22908c4f240f4b7b2b83411acb59478e73d6 by llvm-dev
[MemorySSA] invariant-groups.ll - add missing check to fix issue reported on D77354
The file was modifiedllvm/test/Analysis/MemorySSA/invariant-groups.ll
Commit 937e63b8d5e961c2a7da25558bbcdd5388182b67 by pierre.gousseau
[X86] Fix x86-header-warnings.c test not detecting regressions as intended.

Use -verify -fsyntax-only and expected-no-diagnostics as
recommended by Paul.

Reviewed By: probinson

Differential Revision: https://reviews.llvm.org/D77393
The file was modifiedclang/test/Headers/x86-header-warnings.c
Commit 4184b2e03401ad3818de9e1751d4e2897e8fcf71 by flo
[DSE,MSSA] Add additional test cases for multi-path elimination (NFC).

This adds additional test cases for more scenarios and also with objects
that are accessible after the functions return and allocas.
The file was modifiedllvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-memintrinsics.ll
The file was modifiedllvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-multipath.ll
Commit c6cd0936be5081af76ce78afca3789478d23695f by llvm-dev
[AARCH64][GISEL] arm64-fallback.ll - Refresh remarks to fix issue reported on D77354
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/arm64-fallback.ll
Commit e4ca64f1ae8a3743a9bea4926e1e7889c5b02525 by bevin.hansson
[Fixed Point] Add triples to test cases.

This was causing some test failures.
The file was modifiedclang/test/Frontend/fixed_point_compound.c
The file was modifiedclang/test/Frontend/fixed_point_unary.c
Commit 7b65b1ecd118287b73042dde9ddbf3778e133295 by llvm-dev
[ARM] Fix misched-int-basic-thumb2.mir typo in check to fix issue reported on D77354
The file was modifiedllvm/test/CodeGen/ARM/misched-int-basic-thumb2.mir
Commit 6f1d558db42cf92351c649a66c00b881eb75537c by Louis Dionne
[libunwind] Fix incorrect lit substitutions in tests

The LIT substitutions used in libunwind are the same as those from
libc++, and we forgot to update the libunwind tests after the libc++
substitutions started being delimited by braces.
The file was modifiedlibunwind/test/remember_state_leak.pass.sh.s
Commit 5f25d22d3f018f3755eb5a1ee3dc66eef329a6e8 by llvm-dev
[ARM] Fix thumb1_return_sequence typo in check to fix issue reported on D77354
The file was modifiedllvm/test/CodeGen/ARM/thumb1_return_sequence.ll
Commit 8abfd2c3bb0d66a123b6a6ae590a3d0200f7a688 by sd.fertile
[PowerPC][AIX] Enable passing byval formal arguments in multiple registers.

Any or all the argument registers can be used to pass a byval formal
argument, with the limitation that the argument must fit in the
available registers (ie: is not split between registers and stack).

Differential Revision: https://reviews.llvm.org/D76902
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/aix-cc-byval.ll
The file was addedllvm/test/CodeGen/PowerPC/aix-cc-byval-split.ll
Commit 952c2741599ed492cedd37da895d7e81bc175ab9 by nikita.ppv
[RDA] Use TinyPtrVector to store reaching defs (NFCI)

RDA currently uses SmallVector<int, 1> to store reaching definitions.
A SmallVector<int, 1> is 24 bytes large, and X86 currently has
164 register units, which means we need 3936 bytes per block.
If you have a large function with 1000 blocks, that's already 4MB.

A large fraction of these reg units will not have any reaching defs
(say, those corresponding to zmm registers), and many will have just
one. A TinyPtrVector serves this use-case much better, as it only
needs 8 bytes per register if it has 0 or 1 reaching defs.

As the name implies, TinyPtrVector is designed to work with pointers,
so we need to add some boilerplate to treat our reaching def integers
as pointers, using an appropriate encoding. We need to keep the low
bit free for tagging, and make sure at least one bit is set to
distinguish the null pointer.

Differential Revision: https://reviews.llvm.org/D77513
The file was modifiedllvm/include/llvm/CodeGen/ReachingDefAnalysis.h
Commit 7006daa548c25960dbb5a50e9b9987d4dd01798b by andydavis
[MLIR][Vector] Update ShapeCastOp folder to use producer-consumer value forwarding.

Summary:
Update ShapeCastOp folder to use producer-consumer value forwarding.
Support is added for tracking sub-vectors through trivial shape cast operations,
where the sub-vector shape is preserved across shape cast operations and only
leading ones are added or removed.
Support is preserved for cancelling shape cast operations.
One unit test is added and two are updated.

Reviewers: aartbik, nicolasvasilache

Reviewed By: aartbik, nicolasvasilache

Subscribers: frgossen, mehdi_amini, rriddle, jpienaar, burmako, shauheen, antiagainst, arpith-jacob, mgester, lucyrfox, liufengdb, Joonsoo, grosul1, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77253
The file was modifiedmlir/lib/Dialect/Vector/VectorTransforms.cpp
The file was modifiedmlir/test/Dialect/Vector/vector-transforms.mlir
Commit 0125db9ab21de29191e04fe021bb675b146f2645 by knaumov
[TimePasses] Small fix in "-time-passes" flag that makes it more stable

Adds StringMap for TimingData.

Differential Revision: https://reviews.llvm.org/D76946
Reviewed By: fedor.sergeev
The file was modifiedllvm/include/llvm/IR/PassTimingInfo.h
The file was modifiedllvm/lib/IR/PassTimingInfo.cpp
Commit 54502476e7bdc201b1bb67c53d0f35cd22fa46fe by llvm-dev
[AMDGPU] Refresh fmin_legacy.ll checks to fix issue reported on D77354

Some of the condition codes had inverted since this was generated
The file was modifiedllvm/test/CodeGen/AMDGPU/fmin_legacy.ll
Commit 84aa58cbe21696e2bbe56d50f045f44a7799171a by arsenm2
CodeGen: Use Register in TargetLowering
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.h
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.h
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.h
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/lib/Target/XCore/XCoreISelLowering.h
The file was modifiedllvm/lib/Target/SystemZ/SystemZISelLowering.h
The file was modifiedllvm/lib/Target/Mips/MipsISelLowering.h
The file was modifiedllvm/include/llvm/CodeGen/TargetLowering.h
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.h
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.h
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
The file was modifiedllvm/lib/Target/Sparc/SparcISelLowering.h
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.h
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
Commit ca0ace72987eb776f3103cf444bd160094a50cbc by arsenm2
CodeGen: Use Register in MachineBasicBlock
The file was modifiedllvm/lib/CodeGen/LiveIntervals.cpp
The file was modifiedllvm/include/llvm/CodeGen/MachineBasicBlock.h
The file was modifiedllvm/lib/Target/PowerPC/PPCTLSDynamicCall.cpp
The file was modifiedllvm/lib/CodeGen/MachineBasicBlock.cpp
The file was modifiedllvm/lib/CodeGen/TwoAddressInstructionPass.cpp
The file was modifiedllvm/include/llvm/CodeGen/LiveIntervals.h
Commit 7a46e36d518868fd77518c9e0dc13786ffb969c5 by arsenm2
CodeGen: Use Register more in CallLowering

Some of these MCPhysReg uses should probably be MCRegister, but right
now this would require more invasive changes.
The file was modifiedllvm/lib/CodeGen/CallingConvLower.cpp
The file was modifiedllvm/include/llvm/CodeGen/CallingConvLower.h
Commit dcce3ef1d2a69d0f4162d1e85abcfc9c28d0152e by arsenm2
FastISel: Partially use Register

Doesn't try to convert the cases that depend on generated code.
The file was modifiedllvm/lib/Target/X86/X86FastISel.cpp
The file was modifiedllvm/include/llvm/CodeGen/FastISel.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/FastISel.cpp
Commit b5d941ea5849d09c8005c40d13f668b96c508ff2 by nikita.ppv
[RDA] Try to fix build (NFC)

fuchsia-x86_64-linux builder fails with:

/b/fuchsia-x86_64-linux/llvm.src/llvm/include/llvm/ADT/TinyPtrVector.h:85:15:
error: no matching conversion for C-style cast from 'nullptr_t' to 'llvm::ReachingDef'
    RHS.Val = (EltTy)nullptr;

Let's see whether adding an explicit nullptr_t constructor helps.
The file was modifiedllvm/include/llvm/CodeGen/ReachingDefAnalysis.h
Commit 68c6d7e11c51a3ee9079b5cc84ba88a65adcd1c2 by llvm-dev
[PowerPC] Fix fold-frame-offset-using-rr.mir typos in checks to fix issue reported on D77354

Extra spaces, copy+paste duplicates and missing test name check
The file was modifiedllvm/test/CodeGen/PowerPC/fold-frame-offset-using-rr.mir
Commit 4007e5f32e62791b21d2afe5d0dfb8bdcb310d18 by nikita.ppv
[RDA] Try to fix build, again (NFC)
The file was modifiedllvm/include/llvm/CodeGen/ReachingDefAnalysis.h
Commit a27a7b98cd19975e6f2c2e24e4abc1c3a213b15e by maskray
[ELF] --warn-backrefs: don't warn if -u/--export-dynamic-symbol

Reviewed By: grimar

Differential Revision: https://reviews.llvm.org/D77630
The file was modifiedlld/ELF/Driver.cpp
The file was modifiedlld/test/ELF/warn-backrefs.s
Commit ca5af4b649f43188ad59365e78b6054b4ce7e9bf by llvm-dev
[PowerPC] Fix fold-rlwinm.mir typos in checks to fix issue reported on D77354
The file was modifiedllvm/test/CodeGen/PowerPC/fold-rlwinm.mir
Commit 7a0dc1a9e77d023871e166c9d2aecf9133ddf043 by zoecarver
[libc++] Remove std::optional from ObjC is_scalar test.

std::optional requires C++17. Instead of only running the test above
C++14, this commit removes uses of std::optional from the test (it's
already tested in block.objc.pass.mm).
The file was modifiedlibcxx/test/libcxx/type_traits/is_scalar.objc.pass.mm
Commit ae8ebeca519d49c94c97e67a0314747362e25b8c by uday
[MLIR] Fix test case typos in unroll.mlir

Fix check line typos in test/Dialect/Affine/unroll.mlir.

Differential Revision: https://reviews.llvm.org/D77738
The file was modifiedmlir/test/Dialect/Affine/unroll.mlir
Commit e796c77b26acab0b530ac6516f1dda21b8494733 by waltermelon
[lldb-vscode] Correctly return source mapped breakpoints for setBreakpoints request

Summary:
When using source maps for a breakpoint, in order to find the actual source that breakpoint has resolved, we
need to use a query similar to what CommandObjectSource::DumpLinesInSymbolContexts does, which is the logic
used by the CLI to display the source line at a given breakpoint. That's necessary because from a breakpoint
location you only have an address, which points to the original source location, not the source mapped one.

in the setBreakpoints request handler, we haven't been doing such query and we were returning the original
source location, which was breaking the UX of VSCode, as many breakpoints were being set but not displayed
in the source file next to each line. Besides, clicking the source path of a breakpoint in the breakpoints
view in the debug tab was not working for this case, as VSCode was trying to open a non-existent file, thus
showing an error to the user.

Ideally, we should do the query mentioned above to find the actual source location to respond to the IDE,
however, that query is expensive and users can have an arbitrary number of breakpoints set. As a simpler fix,
the request sent by VSCode already contains the full source path, which exists because the user set it from
the IDE itself, so we can simply reuse it instead of querying from the SB API.

I wrote a test for this, and found out that I had to move SetSourceMapFromArguments after RunInitCommands in
lldb-vscode.cpp, because an init command used in all tests is `settings clear -all`, which would clear the
source map unless specified after initCommands. And in any case, I think it makes sense to have initCommands
run before anything the debugger would do.

Reviewers: clayborg, kusmour, labath, aadsm

Subscribers: lldb-commits

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D76968
The file was modifiedlldb/test/API/tools/lldb-vscode/breakpoint/main.cpp
The file was modifiedlldb/tools/lldb-vscode/JSONUtils.h
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-vscode/lldbvscode_testcase.py
The file was modifiedlldb/test/API/tools/lldb-vscode/breakpoint/Makefile
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py
The file was modifiedlldb/test/API/tools/lldb-vscode/breakpoint/TestVSCode_setBreakpoints.py
The file was addedlldb/test/API/tools/lldb-vscode/breakpoint/other.c
The file was modifiedlldb/tools/lldb-vscode/JSONUtils.cpp
The file was modifiedlldb/tools/lldb-vscode/lldb-vscode.cpp
Commit c8dfd0008b17e383c8c8bc720ff3de8736b51d1a by llvm-dev
[PowerPC] Regenerate optcmp.ll test checks to fix issue reported on D77354
The file was modifiedllvm/test/CodeGen/PowerPC/optcmp.ll
Commit b25ec45809fbb71d0db883c0275dc5ddcd61160d by zoecarver
Fix __is_pointer builtin type trait to work with Objective-C pointer types.

Summary: 5ade17e broke __is_pointer for Objective-C pointer types. This patch fixes the builtin and re-applies the change to type_traits.

Tags: #clang, #libc

Differential Revision: https://reviews.llvm.org/D77519
The file was modifiedclang/lib/Sema/SemaExprCXX.cpp
The file was modifiedlibcxx/include/type_traits
The file was addedclang/test/SemaObjCXX/type-traits-is-pointer.mm
Commit 94121c60d622e3af682970b2af3420415e14ba63 by llvm-dev
[InstCombine] Regenerate phi-preserve-ir-flags.ll test checks to fix issue reported on D77354
The file was modifiedllvm/test/Transforms/InstCombine/phi-preserve-ir-flags.ll
Commit 66d00feb186619cc5919a18ab56334558e6bbd45 by paulatoth
[libc][NFC] Make all top of file comments consistent.

Summary:
Made all header files consistent based of this documentation: https://llvm.org/docs/CodingStandards.html#file-headers.
And did the same for all source files top of file comments.

Reviewers: sivachandra, abrachet

Reviewed By: sivachandra, abrachet

Subscribers: MaskRay, tschuett, libc-commits

Tags: #libc-project

Differential Revision: https://reviews.llvm.org/D77533
The file was modifiedlibc/src/stdlib/abort.cpp
The file was modifiedlibc/src/string/memory_utils/cacheline_size.h.def
The file was modifiedlibc/test/src/stdlib/abort_test.cpp
The file was modifiedlibc/src/signal/linux/__restore.cpp
The file was modifiedlibc/config/linux/threads.h.in
The file was modifiedlibc/utils/benchmarks/JSON.cpp
The file was modifiedlibc/src/threads/linux/thrd_create.cpp
The file was modifiedlibc/utils/benchmarks/LibcMemoryBenchmarkMain.h
The file was modifiedlibc/src/string/memory_utils/memcpy_utils.h
The file was modifiedlibc/test/src/signal/sigprocmask_test.cpp
The file was modifiedlibc/utils/HdrGen/IncludeFileCommand.cpp
The file was modifiedlibc/utils/benchmarks/LibcBenchmarkTest.cpp
The file was modifiedlibc/src/string/strcpy.cpp
The file was modifiedlibc/src/sys/mman/mmap.h
The file was modifiedlibc/test/config/linux/x86_64/syscall_test.cpp
The file was modifiedlibc/utils/testutils/ExecuteFunctionUnix.cpp
The file was modifiedlibc/test/src/signal/raise_test.cpp
The file was modifiedlibc/test/src/assert/assert_test.cpp
The file was modifiedlibc/utils/HdrGen/Main.cpp
The file was modifiedlibc/utils/HdrGen/Command.h
The file was modifiedlibc/src/math/round.h
The file was modifiedlibc/include/__llvm-libc-common.h
The file was modifiedlibc/loader/linux/x86_64/start.cpp
The file was modifiedlibc/src/threads/linux/thrd_join.cpp
The file was modifiedlibc/utils/HdrGen/Generator.h
The file was modifiedlibc/test/src/string/memory_utils/utils_test.cpp
The file was modifiedlibc/include/errno.h.def
The file was modifiedlibc/src/math/round.cpp
The file was modifiedlibc/src/signal/sigaddset.h
The file was modifiedlibc/test/src/string/strlen_test.cpp
The file was modifiedlibc/test/src/threads/mtx_test.cpp
The file was modifiedlibc/include/stdlib.h.def
The file was modifiedlibc/utils/CPP/TypeTraits.h
The file was modifiedlibc/utils/HdrGen/PublicAPICommand.cpp
The file was modifiedlibc/src/errno/errno_location.cpp
The file was modifiedlibc/src/errno/llvmlibc_errno.h
The file was modifiedlibc/utils/HdrGen/Command.cpp
The file was modifiedlibc/src/signal/sigfillset.h
The file was modifiedlibc/src/threads/thrd_join.h
The file was modifiedlibc/fuzzing/string/strcpy_fuzz.cpp
The file was modifiedlibc/utils/HdrGen/Generator.cpp
The file was modifiedlibc/utils/benchmarks/LibcBenchmark.h
The file was modifiedlibc/src/signal/linux/sigemptyset.cpp
The file was modifiedlibc/src/signal/linux/signal.h
The file was modifiedlibc/include/math.h.def
The file was modifiedlibc/config/linux/errno.h.in
The file was modifiedlibc/test/loader/linux/main_without_envp.cpp
The file was modifiedlibc/src/sys/mman/munmap.h
The file was modifiedlibc/test/src/sys/mman/linux/mmap_test.cpp
The file was modifiedlibc/src/string/strlen.h
The file was modifiedlibc/src/string/memory_utils/utils.h
The file was modifiedlibc/src/stdlib/_Exit.h
The file was modifiedlibc/test/src/signal/sigdelset_test.cpp
The file was modifiedlibc/src/signal/linux/sigdelset.cpp
The file was modifiedlibc/utils/benchmarks/LibcMemoryBenchmarkTest.cpp
The file was modifiedlibc/test/loader/linux/main_without_args.cpp
The file was modifiedlibc/src/signal/sigemptyset.h
The file was modifiedlibc/include/__posix-types.h
The file was modifiedlibc/utils/CPP/StringRef.h
The file was modifiedlibc/src/assert/__assert_fail.cpp
The file was modifiedlibc/include/sys/mman.h.def
The file was modifiedlibc/test/src/threads/thrd_test.cpp
The file was modifiedlibc/src/signal/linux/sigprocmask.cpp
The file was modifiedlibc/utils/CPP/Array.h
The file was modifiedlibc/utils/benchmarks/LibcMemoryBenchmark.cpp
The file was modifiedlibc/include/threads.h.def
The file was modifiedlibc/src/string/strlen.cpp
The file was modifiedlibc/src/string/memcpy_arch_specific.h.def
The file was modifiedlibc/src/signal/linux/sigfillset.cpp
The file was modifiedlibc/utils/benchmarks/LibcMemoryBenchmark.h
The file was modifiedlibc/src/threads/mtx_unlock.h
The file was modifiedlibc/src/threads/linux/mtx_lock.cpp
The file was modifiedlibc/test/src/signal/sigaddset_test.cpp
The file was modifiedlibc/test/src/string/memory_utils/memcpy_utils_test.cpp
The file was modifiedlibc/src/signal/linux/raise.cpp
The file was modifiedlibc/utils/UnitTest/Test.cpp
The file was modifiedlibc/include/string.h.def
The file was modifiedlibc/utils/benchmarks/JSON.h
The file was modifiedlibc/test/loader/linux/args_test.cpp
The file was modifiedlibc/include/sys/syscall.h.def
The file was modifiedlibc/test/src/signal/sigfillset_test.cpp
The file was modifiedlibc/src/signal/signal.h
The file was modifiedlibc/src/string/strcpy.h
The file was modifiedlibc/src/string/strcat.cpp
The file was modifiedlibc/src/threads/linux/mtx_unlock.cpp
The file was modifiedlibc/src/string/strcat.h
The file was modifiedlibc/test/src/string/strcpy_test.cpp
The file was modifiedlibc/src/signal/sigaction.h
The file was modifiedlibc/src/stdlib/abort.h
The file was modifiedlibc/utils/HdrGen/IncludeFileCommand.h
The file was modifiedlibc/utils/HdrGen/PublicAPICommand.h
The file was modifiedlibc/utils/testutils/ExecuteFunction.h
The file was modifiedlibc/utils/UnitTest/Test.h
The file was modifiedlibc/src/threads/thrd_create.h
The file was modifiedlibc/test/src/errno/errno_test.cpp
The file was modifiedlibc/utils/testutils/StreamWrapper.h
The file was modifiedlibc/src/__support/common.h.def
The file was modifiedlibc/src/signal/sigdelset.h
The file was modifiedlibc/src/signal/raise.h
The file was modifiedlibc/src/threads/linux/thread_start_args.h.def
The file was modifiedlibc/include/signal.h.def
The file was modifiedlibc/src/signal/linux/signal.cpp
The file was modifiedlibc/utils/benchmarks/LibcMemoryBenchmarkMain.cpp
The file was modifiedlibc/utils/testutils/StreamWrapper.cpp
The file was modifiedlibc/src/signal/linux/sigaction.cpp
The file was modifiedlibc/include/ctype.h
The file was modifiedlibc/src/string/memcpy.h
The file was modifiedlibc/src/threads/mtx_lock.h
The file was modifiedlibc/utils/benchmarks/JSONTest.cpp
The file was modifiedlibc/test/src/signal/signal_test.cpp
The file was modifiedlibc/src/string/memcpy.cpp
The file was modifiedlibc/src/math/round_redirector.cpp
The file was modifiedlibc/test/src/stdlib/_Exit_test.cpp
The file was modifiedlibc/utils/UnitTest/ErrnoSetterMatcher.h
The file was modifiedlibc/src/signal/sigprocmask.h
The file was modifiedlibc/src/assert/assert.h
The file was modifiedlibc/test/src/signal/sigaction_test.cpp
The file was modifiedlibc/config/linux/signal.h.in
The file was modifiedlibc/src/signal/linux/sigaddset.cpp
The file was modifiedlibc/utils/CPP/ArrayRef.h
The file was modifiedlibc/utils/benchmarks/Memset.cpp
The file was modifiedlibc/src/threads/linux/mtx_init.cpp
The file was modifiedlibc/test/src/string/strcat_test.cpp
The file was modifiedlibc/utils/benchmarks/LibcBenchmark.cpp
The file was modifiedlibc/include/assert.h.def
The file was modifiedlibc/utils/benchmarks/Memcpy.cpp
The file was modifiedlibc/src/threads/mtx_init.h
The file was modifiedlibc/utils/benchmarks/Memcmp.cpp
Commit d0b57b41f4add8621df2e95a344b79ef544ca853 by sd.fertile
[PowerPC][AIX][NFC] Replace deprecated getByValAlign call.

Replace call to deprecated 'getByValAlign()' with
'getNonZeroByValAlign()'.
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
Commit 586769cce2f28152c65a8b200983ed5d2b620ab4 by arsenm2
DAG: Use Register
The file was modifiedllvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/InstrEmitter.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
The file was modifiedllvm/include/llvm/CodeGen/FunctionLoweringInfo.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/FastISel.cpp
The file was modifiedllvm/include/llvm/CodeGen/SelectionDAGNodes.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp
Commit 8e40987e1897276308728d28484fbe93f0a7a1e0 by waltermelon
Fix e796c77b26acab0b530ac6516f1dda21b8494733

Failure:
http://green.lab.llvm.org/green/view/LLDB/job/lldb-cmake/14556/testReport/junit/lldb-api/tools_lldb-vscode_breakpoint-events/TestVSCode_breakpointEvents_py/

Diff:
[lldb-vscode] Correctly return source mapped breakpoints for setBreakpoints request
https://reviews.llvm.org/D76968

It failed a test TestVSCode_breakpointEvents that only runs Darwin that needed to be updated to match the current logic.
The change is simple.
The file was modifiedlldb/test/API/tools/lldb-vscode/breakpoint-events/TestVSCode_breakpointEvents.py
Commit be3f8a8e1b95db1a8bdcc7a66ba27f8a6ea65469 by walter erquinigo
[commands] Support autorepeat in SBCommands

Summary:
This adds support for commands created through the API to support autorepeat.
This covers the case of single word and multiword commands.

Comprehensive tests are included as well.

Reviewers: labath, clayborg

Subscribers: lldb-commits

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D77444
The file was modifiedlldb/source/API/SBCommandInterpreter.cpp
The file was modifiedlldb/unittests/CMakeLists.txt
The file was modifiedlldb/include/lldb/API/SBCommandInterpreter.h
The file was addedlldb/unittests/API/CMakeLists.txt
The file was addedlldb/unittests/API/TestSBCommandInterpreterTest.cpp
Commit 48e65fc63076eec4fa527ab7b22fdcb4d8cdbb50 by Vedant Kumar
MachineFunction: Copy call site info when duplicating insts

Summary:
Preserve call site info for duplicated instructions. We copy over the
call site info in CloneMachineInstrBundle to avoid repeated calls to
copyCallSiteInfo in CloneMachineInstr.

(Alternatively, we could copy call site info higher up the stack, e.g.
into TargetInstrInfo::duplicate, or even into individual backend passes.
However, I don't see how that would be safer or more general than the
current approach.)

Reviewers: aprantl, djtodoro, dstenb

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77685
The file was modifiedllvm/unittests/CodeGen/MFCommon.inc
The file was modifiedllvm/unittests/CodeGen/MachineInstrTest.cpp
The file was modifiedllvm/lib/CodeGen/MachineFunction.cpp
The file was addedllvm/test/CodeGen/X86/taildup-callsiteinfo.mir
Commit d51b38f1b3a34c2a8e1869af6434ebd743ce7a5e by ditaliano
[DWARF] Not all the constant variables are "static".

Fixes rdar://problem/61402307

Differential Revision: https://reviews.llvm.org/D77698
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.h
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp
The file was addedlldb/test/Shell/SymbolFile/DWARF/static_scope.s
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
Commit 33386b20aa82c73e28b871cfa35c89a3808c9f92 by tra
[CUDA] Simplify GPU variant handling. NFC.

Instead of hardcoding individual GPU mappings in multiple functions, keep them
all in one table and use it to look up the mappings.

We also don't care about 'virtual' architecture much, so the API is trimmed down
down to a simpler GPU->Virtual arch name lookup.

Differential Revision: https://reviews.llvm.org/D77665
The file was modifiedclang/include/clang/Basic/Cuda.h
The file was modifiedclang/lib/Driver/ToolChains/Cuda.cpp
The file was modifiedclang/lib/Basic/Cuda.cpp
Commit a9627b7ea7e2b47488188cb1d80a23b24a8066b2 by tra
[CUDA] Add partial support for recent CUDA versions.

Generate PTX using newer versions of PTX and allow using sm_80 with CUDA-11.
None of the new features of CUDA-10.2+ have been implemented yet, so using these
versions will still produce a warning.

Differential Revision: https://reviews.llvm.org/D77670
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp
The file was modifiedclang/lib/Basic/Cuda.cpp
The file was modifiedclang/include/clang/Basic/Cuda.h
The file was modifiedclang/lib/Basic/Targets/NVPTX.cpp
The file was modifiedclang/lib/Driver/ToolChains/Cuda.cpp
The file was modifiedllvm/lib/Target/NVPTX/NVPTX.td
Commit d2e498b1725dd7b792c061387ff76df71cd7728a by tra
[CUDA] Improve testing of libdevice detection.

Added new testcases for libdevice in CUDA-9+ and removed unused checks.

Differential Revision: https://reviews.llvm.org/D77688
The file was modifiedclang/test/Driver/cuda-detect.cu
Commit c42cc7fd242668ef2a688d5c5db2a1a9c640d454 by arsenm2
CodeGen: Use Register in MachineSSAUpdater
The file was modifiedllvm/include/llvm/CodeGen/MachineSSAUpdater.h
The file was modifiedllvm/lib/CodeGen/MachineSSAUpdater.cpp
Commit 82bec931814d52331b4c2b429407773c04f09443 by Louis Dionne
[libc++] Update the documentation for running Lit to reflect reality

Our documentation for running LIT is basically wrong, since it doesn't
mention `llvm-lit`, and nothing works without it. Note that this
documentation improvement reflects the current reality outside of
the recent efforts on improving the test suite. My goal is to document
the current way of running the test suite, so that everybody agrees on
how things currently work. As the configuration system for libc++ gets
simplified, we can come back and keep this documentation up to date to
reflect those changes.

Differential Revision: https://reviews.llvm.org/D77673
The file was modifiedlibcxx/docs/TestingLibcxx.rst
Commit 969b91af732d83870bb17e1e0ca0202fe4b89965 by maskray
[Driver] Default arm-linux-androideabi to -z max-page-size=4096

Similar to D55029. The requirement arises when discussing increasing
default max-page-size for lld ARM (D77330).

For the record, the default max-page-size on the 3 commonly used linkers:

* GNU ld since 2014 (https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=7572ca8989ead4c3425a1500bc241eaaeffa2c89) defaults to 65536
* GNU gold remains 4096
* lld<=10 uses 4096. lld from 11 onwards will use 65536 (D77330)

Reviewed By: srhines, thieta

Differential Revision: https://reviews.llvm.org/D77746
The file was addedclang/test/Driver/android-link.cpp
The file was modifiedclang/lib/Driver/ToolChains/Linux.cpp
The file was removedclang/test/Driver/android-aarch64-link.cpp
Commit 381bdd546cae780ed98a71dd65b2da4149a22fe5 by Vedant Kumar
unittest: Disable MachineInstrClone.CopyCallSiteInfo on Windows

A bot error (http://45.33.8.238/win/12463/step_11.txt) reports 'unknown
file: error: SEH exception with code 0x3221225477 thrown in the test
body', but I don't know what causes this.

It looks like this has come up before, but afaict the root causes could
be different:

  https://reviews.llvm.org/rL329195, and in
  http://lists.llvm.org/pipermail/llvm-commits/Week-of-Mon-20180910/587425.html

I tried testing locally with UBSan, but that didn't uncover anything.
The file was modifiedllvm/unittests/CodeGen/MachineInstrTest.cpp
Commit 0605f5fbe755326e3dbc8daa4fc34453b8c5ac0e by Vedant Kumar
unittest: Disable MachineInstrClone.CopyCallSiteInfo entirely

Somehow, details about the host architecture are creeping into the bogus
target set up in MFCommon.inc, causing call site info to be disabled:

http://lab.llvm.org:8011/builders/lld-x86_64-win7/builds/41476
http://lab.llvm.org:8011/builders/clang-s390x-linux-lnt/builds/17987

Disable the test to unblock the bots until I can figure this out.
The file was modifiedllvm/unittests/CodeGen/MachineInstrTest.cpp
Commit 878d96011acc0314ae7e5f87aca515286abbe4db by richard
[clang][CodeGen] Handle throw expression in conditional operator constant folding

Summary:
We're smart and do constant folding when emitting conditional operators.
Thus we emit the live value as a lvalue. This doesn't work if the live value is a throw expression.
Handle this by emitting the throw and returning the dead value as the lvalue.

Fixes PR28184.

Reviewers: rsmith

Reviewed By: rsmith

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77502
The file was modifiedclang/test/CodeGenCXX/throw-expressions.cpp
The file was modifiedclang/lib/CodeGen/CGExpr.cpp
Commit 8b67853a83c16f1e97a7bda02e3cceb37b1cd7db by knaumov
[CFGPrinter] Adding heat coloring to CFGPrinter

This patch introduces the heat coloring of the Control Flow Graph which is based
on the relative "hotness" of each BB. The patch is a part of sequence of three
patches, related to graphs Heat Coloring.

Reviewers: rcorcs, apilipenko, davidxl, sfertile, fedor.sergeev, eraman, bollu

Differential Revision: https://reviews.llvm.org/D77161
The file was modifiedllvm/test/Other/cfg-printer-branch-weights.ll
The file was modifiedllvm/lib/Analysis/CFGPrinter.cpp
The file was addedllvm/lib/Analysis/HeatUtils.cpp
The file was modifiedllvm/lib/Analysis/CMakeLists.txt
The file was addedllvm/include/llvm/Analysis/HeatUtils.h
The file was modifiedllvm/include/llvm/Analysis/CFGPrinter.h
The file was addedllvm/test/Other/heat-colors-graphs.ll
The file was modifiedllvm/test/Other/2007-06-05-PassID.ll
The file was addedllvm/test/Other/cfg-printer-branch-weights-percent.ll
Commit 072ec965e197f560cd9bacb6ec11d76d42a4684c by llvmgnsyncbot
[gn build] Port 8b67853a83c
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Analysis/BUILD.gn
Commit 400ad6f95d7a8d425463571f5c24efc562677ce7 by riddleriver
[mlir] Eliminate the remaining usages of cl::opt instead of PassOption.

Summary: Pass options are a better choice for various reasons and avoid the need for static constructors.

Differential Revision: https://reviews.llvm.org/D77707
The file was modifiedmlir/include/mlir/Dialect/Affine/Passes.h
The file was modifiedmlir/test/Dialect/SPIRV/Transforms/inlining.mlir
The file was modifiedmlir/test/Dialect/Affine/inlining.mlir
The file was modifiedmlir/lib/IR/AsmPrinter.cpp
The file was modifiedmlir/include/mlir/IR/OperationSupport.h
The file was modifiedmlir/test/Transforms/loop-fusion.mlir
The file was modifiedmlir/include/mlir/Dialect/Affine/Passes.td
The file was modifiedmlir/include/mlir/Transforms/Passes.td
The file was modifiedmlir/lib/Dialect/Affine/Transforms/AffineDataCopyGeneration.cpp
The file was modifiedmlir/lib/Transforms/ViewOpGraph.cpp
The file was modifiedmlir/test/Dialect/Affine/dma-generate.mlir
The file was modifiedmlir/lib/Dialect/Affine/Transforms/LoopUnrollAndJam.cpp
The file was modifiedmlir/include/mlir/Pass/PassOptions.h
The file was modifiedmlir/test/Dialect/Affine/loop-tiling.mlir
The file was modifiedmlir/lib/Transforms/Utils/GreedyPatternRewriteDriver.cpp
The file was modifiedmlir/lib/Transforms/LoopFusion.cpp
The file was modifiedmlir/test/lib/Pass/TestPassManager.cpp
The file was modifiedmlir/lib/Transforms/Inliner.cpp
The file was modifiedmlir/test/Dialect/Affine/unroll.mlir
The file was modifiedmlir/lib/Dialect/Affine/Transforms/LoopUnroll.cpp
The file was modifiedmlir/lib/Conversion/LoopsToGPU/LoopsToGPUPass.cpp
The file was modifiedllvm/include/llvm/Support/CommandLine.h
The file was modifiedmlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
The file was modifiedmlir/test/Dialect/Affine/unroll-jam.mlir
The file was modifiedmlir/lib/Dialect/Affine/Transforms/LoopTiling.cpp
The file was modifiedmlir/test/Dialect/Affine/affine-data-copy.mlir
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
The file was modifiedmlir/test/Transforms/inlining.mlir
Commit eceae25f6d9a29303573859841481c24033f58e6 by Louis Dionne
[libc++] CI: Always build for both i386 and x86_64 in the back-deployment script
The file was modifiedlibcxx/utils/ci/macos-backdeployment.sh
Commit 30588a739584bb8ac41715d68656d22bd85198e7 by erich.keane
Make target features check work with ctor and dtor-

The problem was reported in PR45468, applying target features to an
always_inline constructor/destructor runs afoul of GlobalDecl
construction assert when checking for target-feature compatibility.

The core problem is fixed by using the version of the check that takes a
FunctionDecl rather than the GlobalDecl. However, while writing the
test, I discovered that source locations weren't properly set for this
check on ctors/dtors. This patch also fixes constructors and CALLED destructors.

Unfortunately, it doesn't seem too possible to get a meaningful source
location for a 'cleanup' destructor, so those are still 'frontend' level
errors unfortunately. A fixme was added to the test to cover that
situation.
The file was modifiedclang/lib/CodeGen/CGExprCXX.cpp
The file was modifiedclang/test/CodeGenCXX/target-features-error.cpp
The file was modifiedclang/lib/CodeGen/CGClass.cpp
The file was modifiedclang/lib/CodeGen/CodeGenFunction.cpp
Commit c6e917d2d3ea07960721923230c34abe3b6214cc by riddleriver
[mlir][NFC] Remove cl::opts for LoopUnroll now that the pass uses PassOptions
instead.

These were missed when the opts were replaced, and are unused.
The file was modifiedmlir/lib/Dialect/Affine/Transforms/LoopUnroll.cpp