AbortedChanges

Summary

  1. [X86] Rename X86_CPU_TYPE_COMPAT_ALIAS/X86_CPU_TYPE_COMPAT/X86_CPU_SUBTYPE_COMPAT macros. NFC (details)
  2. Rename/refactor isIntegerConstantExpression to getIntegerConstantExpression (details)
  3. Revert "Rename/refactor isIntegerConstantExpression to getIntegerConstantExpression" (details)
  4. [OpenMP] Add firstprivate as a default data-sharing attribute to clang (details)
  5. [MC][RISCV] Set UseIntegratedAssembler to true (details)
  6. [PowerPC] Support constrained conversion in SPE target (details)
  7. [PowerPC] Enhance tests for D83276. NFC. (details)
  8. [InstCombine] Improve select -> phi canonicalization: consider more blocks (details)
  9. [clangd] Fix tests build for GCC5 (details)
  10. [MLIR][Shape] Lower `shape.any` (details)
  11. [GlobalISel][InlineAsm] Fix buildCopy for inputs (details)
  12. Fix bad doxygen result for class clang::ento::CallEvent and its derived classes (details)
  13. [clangd] Add metrics for recovery-expr type propagation. (details)
  14. [clang][RecoveryExpr] Clarify the dependence-bits documentation. (details)
  15. [SVE][Codegen] Add a helper function for pointer increment logic (details)
  16. [clang] Include type specifiers in typo correction when checking isCXXDeclarationSpecifiers. (details)
  17. [AMDGPU][GlobalISel] Select llvm.amdgcn.ballot (details)
  18. [mlir][VectorOps] Lower vector.fma to llvm.fmuladd instead of llvm.fma (details)
  19. [OpenCL] Defer addr space deduction for dependent type. (details)
  20. [LLD][ELF] -  Allow relocation sections to appear before their target sections. (details)
  21. [LLD][ELF][Windows] small improvement to D82567 (details)
  22. [libc][benchmark] Add display option to render.py3 (details)
  23. [lldb][NFC] Remove misleading class_language variable in DWARFASTParserClang (details)
  24. [SVE] Ensure fixed length vector fptrunc operations bigger than NEON are not considered legal. (details)
  25. [lldb][NFC] Early-exit in DWARFASTParserClang::ParseSingleMember (details)
  26. [llvm-readobj] - Add a generic test for --dyn-relocations and fix an issue. (details)
  27. [AMDGPU][GlobalISel] Fix subregister index for EXEC register in selectBallot. (details)
  28. [COFF] Error on unexpected .pdata size (details)
  29. [LLD][ELF] - Fix the test after llvm-readelf output change. (details)
  30. [analyzer] ctu-on-demand-parsing tests: replace linux -> system-linux (details)
  31. [ARM][MVE] Refactor option -disable-mve-tail-predication (details)
  32. [DAGCombiner] allow load/store merging if pairs can be rotated into place (details)
  33. Revert "[DAGCombiner] allow load/store merging if pairs can be rotated into place" (details)
  34. [DAGCombiner] allow load/store merging if pairs can be rotated into place (details)
  35. [clangd] Fix DocumentSymbol ranges (details)
  36. [lldb][NFC] Refactor instruction dumping out of DumpDataExtractor (details)
  37. [yaml2obj] - Refactor header-sh-fields.yaml test. (details)
  38. Fix crash when getVFABIMappings is called with an indirect call instruction (details)
  39. Pre-commit tests (details)
  40. [SLPVectorizer] handle vectorizeable library functions (details)
  41. [NFC] rename to reflect F is not necessarily an Intrinsic (details)
  42. [lldb/dotest] Remove the "xunit" result formatter (details)
  43. [ms] [llvm-ml] Improve MASM STRUCT field accessor support (details)
  44. [ms] [llvm-ml] Fix MASM support for nested unnamed STRUCTs and UNIONs (details)
  45. [compiler-rt][CMake] Pass down LLVM_LIT_ARGS in runtime build (details)
  46. [ms] [llvm-ml] Add support for MASM STRUCT casting field accessors: (<TYPE> PTR <value>).<field> (details)
  47. [lldb/Utility] Rewrite Scalar::SetValueFromCString (details)
  48. [ms] [llvm-ml] Restore omitted changes requested by reviewer (details)
  49. [OPENMP]Fix compiler crash for target data directive without actual target codegen. (details)
  50. [flang][openmp] libc++ unordered_map build fix in flang openmp static analysis (details)
  51. Fix llvm-test-suite failure introduced by D82550/D83122 (details)
  52. [ADT] Make Load(AP)IntFromMemory pointer argument const (details)
  53. [llvm-ar][test][AIX] Unsupport error-opening-directory.test on AIX (details)
  54. [ARM][NFC] More detailed vbsl checks in ARM & Thumb2 tests. (details)
  55. [x86] add tests for bswap/rotate; NFC (details)
  56. [DAGCombiner] rot i16 X, 8 --> bswap X (details)
  57. [PGO][PGSO] Add profile guided size optimization to the X86 LEA fixup. (details)
  58. [llvm] Native size estimator for training -Oz inliner (details)
  59. [JITLink] Add a synchronous version of finalize for convenience. (details)
  60. [ORC] Generalize emit re-entry, stub, etc. APIs for working addr != link addr. (details)
  61. [gn build] Port 83080a294ad (details)
  62. [PGO][PGSO] Add profile guided size optimization to X86ISelDAGToDAG. (details)
  63. [libc++] Implement P0551 (details)
  64. RISCV: Avoid GlobalISel build break in a future patch (details)
  65. TableGen/GlobalISel: Emit enum names for reg class ID instead of value (details)
  66. [llvm][NFC] ML Policies: changed the saved_model protobuf to text (details)
  67. AMDGPU/GlobalISel: Add tests for 96-bit add/sub/mul (details)
  68. [AST] Fix potential nullptr dereference in Expr::HasSideEffects (details)
  69. [gn build] Port fdb69539bcd (details)
  70. [NewPM][opt] Translate -foo-analysis to require<foo-analysis> (details)
  71. Fix HexagonGenExtract return status (details)
  72. [NFC] Remove unused header include (details)
  73. [clangd] Remove const_cast. NFC (details)
  74. AMDGPU/GlobalISel: Add baseline add/sub sat legalization tests (details)
  75. GlobalISel: Implement widenScalar for saturating add/sub (details)
  76. GlobalISel: Implement fewerElementsVector for saturating add/sub (details)
  77. GlobalISel: Define equivalent nodes for saturating add/sub (details)
  78. [JITLink] Apply MSVCPError workaround to a1fc26030a42. (details)
  79. [NewGVN] Rename xfail tests (NFC) (details)
  80. [NewGVN] Separate passing assume tests (NFC) (details)
  81. [PredicateInfo] Place predicate info after assume (details)
  82. [flang] Use octal escapes for character literals in modfiles (details)
  83. [llvm][NFC] Factored the default inlining advice (details)
  84. [ORC] Remove a spurious reinterpret_cast. (details)
  85. [lldb] Fix a CMake warning typo. NFC. (details)
  86. Add a decorator to skip tests when running under Rosetta (details)
  87. Revert "[llvm] Native size estimator for training -Oz inliner" (details)
  88. [mlir][StandardToSPIRV] Fix conversion for signed remainder (details)
  89. [gn build] Port 9908a3b9f52 (details)
  90. [mlir] Support operations with multiple results in slicing (details)
  91. [flang] Extended the flang driver options to include gfortran equivalents to pgf90 specific options. (details)
  92. [MLIR] Change ODS collective params build method to provide an empty default value for named attributes (details)
  93. [lldb] Remove unused argument (NFC) (details)
  94. Retry ""[lldb-vscode] Fix TestVSCode_module"" (details)
  95. [ADT] Specialize std::swap() for SetVector (details)
  96. [mlir] Add alignment attribute to LLVM memory ops and use in vector.transfer (details)
  97. [MC/AsmParser] layout-interdependency.s depends on having a proper triple (details)
  98. [debugify] Add targeted test for 2fa656c, NFC (details)
  99. [analyzer] Inline StringSet that's defined in a header (details)
  100. [ubsan] Check implicit casts in ObjC for-in statements (details)
  101. [Sanitizers] Implement getcpuclockid interceptor (details)
  102. [compiler-rt][MSAN][test] Update buffersize for UTF-8 to C convert (details)
  103. Check output in test/CodeGen/Generic/MIRStripDebug/no-metadata-present.mir, NFC (details)
  104. Revert "[InstCombine] Drop debug loc in TryToSinkInstruction (reland)" (details)
  105. [InstCombine] Erase attribute lists for simplified libcalls (details)
  106. [compiler-rt] Fix compiler warnings and runtime errors in sanitizer RT strxfrm(_l) test cases. (details)
  107. Update ubsan_interface.inc for D71491 (details)
  108. Lowering of OpenMP Parallel operation to LLVM IR 1/n (details)
  109. Fold the opt size check into the assert to silence an unused variable warning. (details)
  110. [AssumeBundles] Use operand bundles to encode alignment assumptions (details)
  111. [Sanitizers] Ensure clock_getcpuclockid interceptor <= 80 chars (details)
  112. [ORC] Fix typo in parameter name. (details)
  113. Reapply "[llvm] Native size estimator for training -Oz inliner" (details)
  114. [llvm][NFC] ML InlineAdvisor: Factored CHECKs in common test (details)
  115. MemorySanitizer: If a field is marked noundef, check init at call site (details)
  116. Fix a missing update that C compiles default to gnu17. (details)
  117. [gn build] Port caf395ee8c2 (details)
  118. [builtins][Android] Define HAS_80_BIT_LONG_DOUBLE to 0 (details)
  119. [builtins] Cleanup generic-file filtering (details)
  120. [compiler-rt][Android] Stop using detect_target_arch (details)
  121. [builtins][ARM] Replace call_apsr.S with inline asm (details)
  122. [PowerPC] Fix combineVectorShuffle regression after D77448 (details)
  123. Basic support for flexible array members in constant evaluation. (details)
  124. [llvm][NFC] Removed unused CHECKs in a ml test (details)
  125. [MSAN] Implement experimental vector reduction intrinsics (details)
  126. [flang][openacc] OpenACC 3.0 parser (details)
  127. [lldb-vscode] Fix TestVSCode_module (details)
  128. [flang][openacc] Add Support library for error handling (details)
  129. [lldb-vscode] Fix TestVSCode_setBreakpoints (details)
  130. Fix undefined behavior in DWARF emission (details)
  131. [GVN] add early exit to ConstantFoldLoadThroughBitcast [NFC] (details)
  132. [VNCoercion] avoid creating bitcast for zero offsets [NFCI] (details)
  133. [GVN] teach ConstantFolding correct handling of non-integral addrspace casts (details)
  134. Add LINK_COMPONENTS Support (details)
  135. Revert "[flang][openacc] OpenACC 3.0 parser" (details)
  136. [PowerPC] Generate CFI directives when probing in prologue (details)
  137. [DWARFYAML] Replace Is64bit with Is64BitAddrSize. NFC. (details)
  138. [AArch64][GlobalISel] Add post-legalize combine for sext_inreg(trunc(sextload)) -> copy (details)
  139. [PowerPC][Power10] Implement Test LSB by Byte Builtins in LLVM/Clang (details)
  140. [AMDGPU] Propagate dead flag during pre-RA exec mask optimizations (details)
Commit b4dbb37f32e554e4d6f118d9ddd87717721ea664 by craig.topper
[X86] Rename X86_CPU_TYPE_COMPAT_ALIAS/X86_CPU_TYPE_COMPAT/X86_CPU_SUBTYPE_COMPAT macros. NFC

Remove _COMPAT. Drop the ARCHNAME. Remove the non-COMPAT versions
that are no longer needed.

We now only use these macros in places where we need compatibility
with libgcc/compiler-rt. So we don't need to call out _COMPAT
specifically.
The file was modifiedllvm/include/llvm/Support/X86TargetParser.h
The file was modifiedclang/lib/Basic/Targets/X86.cpp
The file was modifiedllvm/include/llvm/Support/X86TargetParser.def
The file was modifiedclang/lib/CodeGen/CGBuiltin.cpp
Commit 49e5f603d40083dce9c05796e3cde3a185c3beba by dblaikie
Rename/refactor isIntegerConstantExpression to getIntegerConstantExpression

There is a version that just tests (also called
isIntegerConstantExpression) & whereas this version is specifically used
when the value is of interest (a few call sites were actually refactored
to calling the test-only version) so let's make the API look more like
it.

Reviewers: aaron.ballman

Differential Revision: https://reviews.llvm.org/D76646
The file was modifiedclang/lib/Sema/SemaExprCXX.cpp
The file was modifiedclang/lib/Sema/SemaChecking.cpp
The file was modifiedclang/lib/CodeGen/CGBuiltin.cpp
The file was modifiedclang/lib/AST/MicrosoftMangle.cpp
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedclang/lib/Sema/SemaOverload.cpp
The file was modifiedclang/lib/CodeGen/CGExpr.cpp
The file was modifiedclang/include/clang/AST/Expr.h
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/lib/Sema/SemaType.cpp
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
The file was modifiedclang/lib/AST/ASTContext.cpp
The file was modifiedclang/lib/Sema/SemaAttr.cpp
The file was modifiedclang/lib/Sema/SemaStmtAttr.cpp
Commit c94332919bd922032e979b3ae3ced5ca5bdf9650 by dblaikie
Revert "Rename/refactor isIntegerConstantExpression to getIntegerConstantExpression"

Broke buildbots since I hadn't updated this patch in a while. Sorry for
the noise.

This reverts commit 49e5f603d40083dce9c05796e3cde3a185c3beba.
The file was modifiedclang/lib/CodeGen/CGBuiltin.cpp
The file was modifiedclang/lib/Sema/SemaOverload.cpp
The file was modifiedclang/lib/Sema/SemaExprCXX.cpp
The file was modifiedclang/lib/Sema/SemaType.cpp
The file was modifiedclang/lib/Sema/SemaAttr.cpp
The file was modifiedclang/lib/AST/ASTContext.cpp
The file was modifiedclang/lib/Sema/SemaStmtAttr.cpp
The file was modifiedclang/lib/AST/MicrosoftMangle.cpp
The file was modifiedclang/include/clang/AST/Expr.h
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/lib/Sema/SemaChecking.cpp
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/lib/CodeGen/CGExpr.cpp
Commit 78443666bc18a6957d279a0f58319c8a3e57771a by johannes
[OpenMP] Add firstprivate as a default data-sharing attribute to clang

This implements the default(firstprivate) clause as defined in OpenMP
Technical Report 8 (2.22.4).

Reviewed By: jdoerfert, ABataev

Differential Revision: https://reviews.llvm.org/D75591
The file was modifiedclang/test/OpenMP/target_teams_distribute_default_messages.cpp
The file was modifiedclang/test/OpenMP/driver.c
The file was modifiedclang/test/OpenMP/task_messages.cpp
The file was modifiedclang/test/OpenMP/parallel_default_messages.cpp
The file was modifiedclang/test/OpenMP/distribute_parallel_for_default_messages.cpp
The file was modifiedclang/test/OpenMP/parallel_sections_default_messages.cpp
The file was modifiedclang/test/OpenMP/teams_default_messages.cpp
The file was modifiedclang/test/OpenMP/target_parallel_default_messages.cpp
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMPKinds.def
The file was modifiedclang/lib/Parse/ParseOpenMP.cpp
The file was modifiedclang/test/OpenMP/target_teams_default_messages.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_parallel_for_simd_default_messages.cpp
The file was modifiedclang/test/OpenMP/target_parallel_for_default_messages.cpp
The file was modifiedclang/test/OpenMP/task_default_messages.cpp
The file was modifiedclang/test/OpenMP/parallel_master_default_messages.cpp
The file was modifiedclang/test/OpenMP/teams_distribute_parallel_for_default_messages.cpp
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersNodeTest.cpp
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_parallel_for_default_messages.cpp
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersTest.h
The file was modifiedclang/test/OpenMP/teams_distribute_default_messages.cpp
The file was modifiedclang/lib/ASTMatchers/Dynamic/Registry.cpp
The file was modifiedclang/test/OpenMP/teams_distribute_parallel_for_simd_default_messages.cpp
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchers.h
The file was modifiedclang-tools-extra/docs/clang-tidy/checks/openmp-use-default-none.rst
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang-tools-extra/test/clang-tidy/checkers/openmp-use-default-none.cpp
The file was modifiedclang/test/OpenMP/target_parallel_for_simd_default_messages.cpp
The file was modifiedclang/test/OpenMP/parallel_for_default_messages.cpp
The file was modifiedclang/test/OpenMP/teams_distribute_simd_default_messages.cpp
The file was modifiedclang/test/OpenMP/parallel_for_simd_default_messages.cpp
The file was modifiedclang/docs/LibASTMatchersReference.html
The file was modifiedclang/include/clang/Basic/DiagnosticParseKinds.td
The file was modifiedclang/test/OpenMP/distribute_parallel_for_simd_default_messages.cpp
The file was modifiedclang/test/OpenMP/parallel_master_codegen.cpp
Commit 4d5fd0ee5ebda8979a448f5de397e3f1321b1ca8 by maskray
[MC][RISCV] Set UseIntegratedAssembler to true

to align with most other targets. Also, -fintegrated-as is the default
for clang -target riscv*.
The file was modifiedllvm/lib/Target/RISCV/MCTargetDesc/RISCVMCAsmInfo.cpp
The file was modifiedllvm/test/CodeGen/RISCV/branch-relaxation.ll
The file was modifiedllvm/test/CodeGen/RISCV/inline-asm.ll
The file was modifiedllvm/test/CodeGen/RISCV/inline-asm-abi-names.ll
The file was modifiedllvm/test/CodeGen/RISCV/large-stack.ll
Commit b6912c879ed848fd59c108e8b90fe0180893ee56 by qiucofan
[PowerPC] Support constrained conversion in SPE target

This patch adds support for constrained int/fp conversion between
signed/unsigned i32 and f32/f64.

Reviewed By: jhibbits

Differential Revision: https://reviews.llvm.org/D82747
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrSPE.td
The file was addedllvm/test/CodeGen/PowerPC/fp-strict-conv.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
Commit ac8dc526c4717907bed11b2fc7ab0db5a0f466ba by lkail
[PowerPC] Enhance tests for D83276. NFC.
The file was modifiedllvm/test/CodeGen/PowerPC/stack-clash-prologue.ll
The file was addedllvm/test/CodeGen/PowerPC/stack-clash-prologue-nounwind.ll
Commit e808cab824488af137b62902e65dec3827b83b46 by mkazantsev
[InstCombine] Improve select -> phi canonicalization: consider more blocks

We can try to replace select with a Phi not in its parent block alone,
but also in blocks of its arguments. We benefit from it when select's
argument is a Phi.

Differential Revision: https://reviews.llvm.org/D83284
Reviewed By: nikic
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
The file was modifiedllvm/test/Transforms/InstCombine/select.ll
Commit 07c4c7e7959b7fd09830bbdf4dcd533e98aa45ab by kadircet
[clangd] Fix tests build for GCC5

Summary:
Build log:
```
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp: In member function ‘virtual void clang::clangd::{anonymous}::PreamblePatchTest_Define_Test::TestBody()’:
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:267:3: error: could not convert ‘(const char*)"\012        #define BAR\012        [[BAR]]"’ from ‘const char*’ to ‘llvm::StringLitera ’
   };
   ^
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:267:3: error: could not convert ‘(const char*)"#line 0 \".*main.cpp\"\012#line 2\012#define         BAR\012"’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:267:3: error: could not convert ‘(const char*)"\012        #define BAR \\\012\012        [[BAR]]"’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:267:3: error: could not convert ‘(const char*)"#line 0 \".*main.cpp\"\012#line 2\012#define         BAR\012"’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:267:3: error: could not convert ‘(const char*)"\012        #define \\\012                BAR\012        [[BAR]]"’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:267:3: error: could not convert ‘(const char*)"#line 0 \".*main.cpp\"\012#line 3\012#define         BAR\012"’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp: In member function ‘virtual void clang::clangd::{anonymous}::PreamblePatchTest_LocateMacroAtWorks_Test::TestBody()’:
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:357:3: error: could not convert ‘(const char*)""’ from ‘const char*’ to ‘llvm::StringLiteral’
   };
   ^
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:357:3: error: could not convert ‘(const char*)"\012            #define $def^FOO\012            $use^FOO"’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:357:3: error: could not convert ‘(const char*)""’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:357:3: error: could not convert ‘(const char*)"\012            #define $def^FOO\012            #undef $use^FOO"’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:357:3: error: could not convert ‘(const char*)""’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:357:3: error: could not convert ‘(const char*)"\012            #define $def^FOO\012            #undef FOO\012            $use^FOO"’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:357:3: error: could not convert ‘(const char*)""’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:357:3: error: could not convert ‘(const char*)"\012            #define \\\012              $def^FOO\012            $use^FOO"’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:357:3: error: could not convert ‘(const char*)""’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:357:3: error: could not convert ‘(const char*)"\012            #\\\012              define /* FOO */\\\012              /* FOO */ $def^FOO\012            $use^FOO"’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:357:3: error: could not convert ‘(const char*)"#define FOO"’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:357:3: error: could not convert ‘(const char*)"\012            #define BAR\012            #define $def^FOO\012            $use^FOO"’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp: In member function ‘virtual void clang::clangd::{anonymous}::PreamblePatchTest_RefsToMacros_Test::TestBody()’:
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:445:3: error: could not convert ‘(const char*)""’ from ‘const char*’ to ‘llvm::StringLiteral’
   };
   ^
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:445:3: error: could not convert ‘(const char*)"\012            #define ^FOO\012            ^[[FOO]]"’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:445:3: error: could not convert ‘(const char*)"#define FOO"’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:445:3: error: could not convert ‘(const char*)"\012            #define BAR\012            #define ^FOO\012            ^[[FOO]]"’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:445:3: error: could not convert ‘(const char*)""’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:445:3: error: could not convert ‘(const char*)"\012            #define ^FOO\012            #undef ^FOO"’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp: In member function ‘virtual void clang::clangd::{anonymous}::PreamblePatch_ModifiedBounds_Test::TestBody()’:
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:512:3: error: could not convert ‘(const char*)""’ from ‘const char*’ to ‘llvm::StringLiteral’
   };
   ^
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:512:3: error: could not convert ‘(const char*)"\012            #define FOO\012            FOO"’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:512:3: error: could not convert ‘(const char*)"#define FOO"’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:512:3: error: could not convert ‘(const char*)"#define BAR"’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:512:3: error: could not convert ‘(const char*)"\012            #define FOO\012            #undef FOO"’ from ‘const char*’ to ‘llvm::StringLiteral’
llvm-project/clang-tools-extra/clangd/unittests/PreambleTests.cpp:512:3: error: could not convert ‘(const char*)"#define FOO"’ from ‘const char*’ to ‘llvm::StringLiteral’
```

Patch by @ArcsinX !

Reviewers: kadircet, sammccall

Reviewed By: kadircet

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

Tags: #clang

Differential Revision: https://reviews.llvm.org/D83548
The file was modifiedclang-tools-extra/clangd/unittests/PreambleTests.cpp
Commit 9df6afbb5c99c103ef27614a8987934ef82f110f by frgossen
[MLIR][Shape] Lower `shape.any`

Lower `shape.any` to its first operand.

Differential Revision: https://reviews.llvm.org/D83123
The file was modifiedmlir/lib/Conversion/ShapeToStandard/ShapeToStandardPatterns.td
The file was modifiedmlir/test/Conversion/ShapeToStandard/shape-to-standard.mlir
The file was modifiedmlir/lib/Conversion/ShapeToStandard/ShapeToStandard.cpp
Commit fd85b40aee4aa4cfcecaf2bfaf86e1de4c78ab0c by petar.avramovic
[GlobalISel][InlineAsm] Fix buildCopy for inputs

Check that input size matches size of destination reg class.
Attempt to extend input size when needed.

Differential Revision: https://reviews.llvm.org/D83384
The file was modifiedllvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/irtranslator-inline-asm.ll
Commit e124062bf3874e1ce7ddad407b35e95ec3d3ac13 by vsavchenko
Fix bad doxygen result for class clang::ento::CallEvent and its derived classes

Summary: Fix bug https://bugs.llvm.org/show_bug.cgi?id=44753. This
patch is a workaround of a Doxygen bug, so that it can correctly
generate documents for class clang::ento::CallEvent and its derived
classes.

Differential Revision: https://reviews.llvm.org/D82356
The file was modifiedclang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h
Commit 26cf6c1513f95082cedd4f2acf0881dd9ab56461 by hokein.wu
[clangd] Add metrics for recovery-expr type propagation.

Differential Revision: https://reviews.llvm.org/D83657
The file was modifiedclang-tools-extra/clangd/unittests/SelectionTests.cpp
The file was modifiedclang-tools-extra/clangd/Selection.cpp
Commit 6ac9e589f869b6a63c9966e7c7ec7cc8207cf2f2 by hokein.wu
[clang][RecoveryExpr] Clarify the dependence-bits documentation.

The expr dependent-bits described that the expression somehow
depends on a template paramter.

With RecoveryExpr, we have generalized it to "the expression depends on
a template parameter, or an error".  This patch updates/cleanups all related
comments of dependence-bits.

Differential Revision: https://reviews.llvm.org/D83213
The file was modifiedclang/include/clang/AST/DependenceFlags.h
The file was modifiedclang/include/clang/AST/Expr.h
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was modifiedclang/lib/AST/ComputeDependence.cpp
Commit afcc9a81d2dce92f98732ecc90433141c346971a by kerry.mclaughlin
[SVE][Codegen] Add a helper function for pointer increment logic

Summary:
Helper used when splitting load & store operations to calculate
the pointer + offset for the high half of the split

Reviewers: efriedma, sdesmalen, david-arm

Reviewed By: efriedma

Subscribers: tschuett, hiraditya, psnobl, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D83577
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
Commit 1d3d9c7b589e6471edc0d8a2272c399d2ce6a13c by hokein.wu
[clang] Include type specifiers in typo correction when checking isCXXDeclarationSpecifiers.

- add more tests (the test added in https://github.com/llvm/llvm-project/commit/2f448467e4254ddc3191136c968e6054bc009b88 is weak);
- improve the `MyTemplate<type_typo, int>();` case, with this patch, typo correction
  suggests the type decl, and no regressions found.

Differential Revision: https://reviews.llvm.org/D83025
The file was modifiedclang/test/SemaCXX/typo-correction.cpp
The file was modifiedclang/lib/Parse/ParseTentative.cpp
The file was modifiedclang/test/Parser/cxx-template-decl.cpp
Commit ce23e54162edcb0de9b7af1f457229da0bbfe79d by Mirko.Brkusanin
[AMDGPU][GlobalISel] Select llvm.amdgcn.ballot

Select ballot intrinsic for GlobalISel.

Differential Revision: https://reviews.llvm.org/D83214
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ballot.i64.ll
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ballot.i32.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.ballot.i32.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.ballot.i64.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
Commit 3bffe6022cc96a38ad0f6ada5f5b7b41eca5796e by benny.kra
[mlir][VectorOps] Lower vector.fma to llvm.fmuladd instead of llvm.fma

Summary:
These are semantically equivalent, but fmuladd allows decaying the op
into fmul+fadd if there is no fma instruction available. llvm.fma lowers
to scalar calls to libm fmaf, which is a lot slower.

Reviewers: nicolasvasilache, aartbik, ftynse

Subscribers: mehdi_amini, rriddle, jpienaar, shauheen, antiagainst, arpith-jacob, mgester, lucyrfox, liufengdb, stephenneuendorffer, Joonsoo, grosul1, Kayjukh, jurahul, msifontes

Tags: #mlir

Differential Revision: https://reviews.llvm.org/D83666
The file was modifiedmlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
The file was modifiedmlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
Commit 6050c156ab4f13a3c54ca6ec297a72ece95966d7 by anastasia.stulova
[OpenCL] Defer addr space deduction for dependent type.

This patch removes deduction of address spaces in parsing
for types that depend on template parameter even if an
address space is already known. Deducing it early interferes
with template instantiation/specialization logic that uses
source address space where address space is not present.

Address space deduction for templates is therefore fully
moved to the template instantiation/specialization phase.

Patch by Ole Strohm (olestrohm)!

Tags: #clang

Differential Revision: https://reviews.llvm.org/D82781
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedclang/lib/Sema/SemaTemplateInstantiateDecl.cpp
The file was modifiedclang/test/SemaOpenCLCXX/address-space-deduction.cl
Commit af16a45683cccc78925e71ac5d58d6cab8447840 by grimar
[LLD][ELF] -  Allow relocation sections to appear before their target sections.

It allows handling cases when we have SHT_REL[A] sections before target
sections in objects.

This fixes https://bugs.llvm.org/show_bug.cgi?id=46632

which says: "Normally it is not what compilers would emit. We have to support it,
because some custom tools might want to use this feature, which is not restricted by ELF gABI"

Differential revision: https://reviews.llvm.org/D83469
The file was modifiedlld/ELF/InputFiles.cpp
The file was addedlld/test/ELF/reloc-sec-before-relocated.test
The file was removedlld/test/ELF/invalid/reloc-section-reordered.test
Commit 6bda276f93023ae91937cb8a1f45bf27e5a3ced7 by Ben.Dunbobbin
[LLD][ELF][Windows] small improvement to D82567

Bail early if there is no existing output file to be overwritten.

Differential Revision: https://reviews.llvm.org/D83272
The file was modifiedlld/Common/Filesystem.cpp
Commit c051312eb24dedc119a917ea23e6a5810f5758ff by andre.simoesdiasvieira
[libc][benchmark] Add display option to render.py3

Differential Revision: https://reviews.llvm.org/D83380
The file was modifiedlibc/benchmarks/render.py3
Commit 60cbbb306d29f882e18d6293177d694c11c67e84 by Raphael Isemann
[lldb][NFC] Remove misleading class_language variable in DWARFASTParserClang

There is a local 'class_language' veriable in DWARFASTParserClang which is named
as if it is related to the 'class_language' member of ParsedDWARFTypeAttributes.
However, it actually only has two possible enum values: 'ObjC' (which means the
current record is a Objective-C class) or 'Unknown' (which covers all other
cases).

This is confusing for the reader and also lead to some strange code where we
have several comparisons against the value "ObjC_plus_plus" (which is always
false).

This replaces the variable with either a const bool variable (if there are
multiple checks for that condition in a function) or a direct call to the
TypeSystemClang utility method for checking if it's a Objective-C
Object/Interface type.
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h
Commit 319a97b5e2620f9eb3618b629223253feacff92a by paul.walker
[SVE] Ensure fixed length vector fptrunc operations bigger than NEON are not considered legal.

Differential Revision: https://reviews.llvm.org/D83568
The file was addedllvm/test/CodeGen/AArch64/sve-fixed-length-fp-converts.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Commit aa933d82f867ab4d33eafc5ee2666dbbc61d293d by Raphael Isemann
[lldb][NFC] Early-exit in DWARFASTParserClang::ParseSingleMember

This patch just early-exits after the 'if (num_attributes > 0)' check.
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
Commit 84a170178c4431b7536c83ff0e5ce80774d08df6 by grimar
[llvm-readobj] - Add a generic test for --dyn-relocations and fix an issue.

We have an issue currently: --dyn-relocations always prints the following
relocation header when dumping `DynPLTRelRegion`:

"Offset  Info  Type Symbol's Value  Symbol's Name + Addend"

I.e. even for an empty object, --dyn-relocations still prints this.
It is a easy to fix bug, but we have no dedicated test case for this option.
(we have a dynamic-reloc-no-section-headers.test, which has a slightly different purpose).

This patch adds a test and fixes the behavior.

Differential revision: https://reviews.llvm.org/D83387
The file was addedllvm/test/tools/llvm-readobj/ELF/dynamic-reloc.test
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
Commit 38998cfa9c1e887636a7ca7278b71fde5b19dd0e by Mirko.Brkusanin
[AMDGPU][GlobalISel] Fix subregister index for EXEC register in selectBallot.

Temporarily remove subregister for EXEC in selectBallot added in
https://reviews.llvm.org/D83214 to fix failures on expensive checks buildbot.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ballot.i64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ballot.i32.ll
Commit e73d0b5719966ddbeff7a3da70a3cb782c3733ed by hans
[COFF] Error on unexpected .pdata size

Previously, lld would crash if the .pdata size was not an even multiple
of the expected .pdata entry size. This makes it error gracefully instead.

(We hit this in Chromium due to an assembler problem: https://crbug.com/1101577)

Differential revision: https://reviews.llvm.org/D83479
The file was modifiedlld/COFF/Writer.cpp
The file was addedlld/test/COFF/pdata-arm64-bad.yaml
Commit fbb6c9df28ccc8c35d39ea56707f71a3b2619071 by grimar
[LLD][ELF] - Fix the test after llvm-readelf output change.

An issue for llvm-readelf was fixed in
https://reviews.llvm.org/rG84a170178c4431b7536c83ff0e5ce80774d08df6

Now it produce no output for this test.
The file was modifiedlld/test/ELF/ppc64-rel-so-local-calls.s
Commit d96a47c61625f853ec42a151ae3783e30a3943f3 by benicsbalazs
[analyzer] ctu-on-demand-parsing tests: replace linux -> system-linux

Differential Revision: https://reviews.llvm.org/D83555
The file was modifiedclang/test/Analysis/ctu-on-demand-parsing.c
The file was modifiedclang/test/Analysis/ctu-on-demand-parsing.cpp
Commit 595270ae39671eed49b75983beeab13de74a342b by sjoerd.meijer
[ARM][MVE] Refactor option -disable-mve-tail-predication

This refactors option -disable-mve-tail-predication to take different arguments
so that we have 1 option to control tail-predication rather than several
different ones.

This is also a prep step for D82953, in which we want to reject reductions
unless that is requested with this option.

Differential Revision: https://reviews.llvm.org/D83133
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/tail-pred-pattern-fail.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vector-arith-codegen.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/mve-tail-data-types.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/tail-reduce.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/extending-loads.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/tail-folding-counting-down.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/fast-fp-loops.ll
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/reductions.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/tail-pred-intrinsic-add-sat.ll
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.h
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/nested.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vector-unroll.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/basic-tail-pred.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vector-reduce-mve-tail.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/tail-pred-const.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/tail-pred-intrinsic-fabs.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/tail-pred-widen.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/lsr-profitable-chain.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-fma-loops.ll
The file was modifiedllvm/lib/Target/ARM/MVETailPredication.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/tail-pred-narrow.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/prefer-tail-loop-folding.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/tail-loop-folding.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/tail-pred-intrinsic-sub-sat.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/clear-maskedinsts.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/cond-vector-reduce-mve-codegen.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/tail-pred-intrinsic-round.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/varying-outer-2d-reduction.ll
Commit 591a3af5c7acc05617c0eacf6ae4f76bd8a9a6ce by spatel
[DAGCombiner] allow load/store merging if pairs can be rotated into place

This carves out an exception for a pair of consecutive loads that are
reversed from the consecutive order of a pair of stores. All of the
existing profitability/legality checks for the memops remain between
the 2 altered hunks of code.

This should give us the same x86 base-case asm that gcc gets in
PR41098 and PR44895:i
http://bugs.llvm.org/PR41098
http://bugs.llvm.org/PR44895

I think we are missing a potential subsequent conversion to use "movbe"
if the target supports that. That might be similar to what AArch64
would use to get "rev16".

Differential Revision:
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/test/CodeGen/AArch64/merge-store-dependency.ll
The file was modifiedllvm/test/CodeGen/X86/stores-merging.ll
Commit f1bbf3acb42a7447c170b8248e310d8a61443377 by spatel
Revert "[DAGCombiner] allow load/store merging if pairs can be rotated into place"

This reverts commit 591a3af5c7acc05617c0eacf6ae4f76bd8a9a6ce.
The commit message was cut off and failed to include the review citation.
The file was modifiedllvm/test/CodeGen/AArch64/merge-store-dependency.ll
The file was modifiedllvm/test/CodeGen/X86/stores-merging.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Commit 2df46a574387663717a352eebad017979d3b5ef4 by spatel
[DAGCombiner] allow load/store merging if pairs can be rotated into place

This carves out an exception for a pair of consecutive loads that are
reversed from the consecutive order of a pair of stores. All of the
existing profitability/legality checks for the memops remain between
the 2 altered hunks of code.

This should give us the same x86 base-case asm that gcc gets in
PR41098 and PR44895:
http://bugs.llvm.org/PR41098
http://bugs.llvm.org/PR44895

I think we are missing a potential subsequent conversion to use "movbe"
if the target supports that. That might be similar to what AArch64
would use to get "rev16".

Differential Revision: https://reviews.llvm.org/D83567
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/test/CodeGen/X86/stores-merging.ll
The file was modifiedllvm/test/CodeGen/AArch64/merge-store-dependency.ll
Commit d7d1af39168ce8afd041f3ae8db1d1fd3d4f70ac by kbobyrev
[clangd] Fix DocumentSymbol ranges

Summary:
DocumentSymbol ranges were not previously tested and, as a result, had invalid
end location. This patch addresses the issue.

Reviewers: sammccall

Reviewed By: sammccall

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

Tags: #clang

Differential Revision: https://reviews.llvm.org/D83668
The file was modifiedclang-tools-extra/clangd/unittests/FindSymbolsTests.cpp
The file was modifiedclang-tools-extra/clangd/FindSymbols.cpp
Commit f3b3689c043f49ad42e9d3f5057bc8f1a9f56d09 by Raphael Isemann
[lldb][NFC] Refactor instruction dumping out of DumpDataExtractor
The file was modifiedlldb/source/Core/DumpDataExtractor.cpp
Commit 725412f1f54aca6d465b61191b420c0aee0cef38 by grimar
[yaml2obj] - Refactor header-sh-fields.yaml test.

This refines the test to use macros. It is needed for
a follow-up change that adds a functionality to
override more fields.

Also, it is just cleaner to test each key separately.

Differential revision: https://reviews.llvm.org/D83481
The file was modifiedllvm/test/tools/yaml2obj/ELF/header-sh-fields.yaml
Commit 2e58004fe1873825cce772113f96339eecc0bb3a by Sanne.Wouda
Fix crash when getVFABIMappings is called with an indirect call instruction

Differential Revision: https://reviews.llvm.org/D83122
The file was modifiedllvm/include/llvm/Analysis/VectorUtils.h
The file was modifiedllvm/unittests/Analysis/VectorFunctionABITest.cpp
Commit e909f6bc48ee291f4be0d69a5eb0b80b96f7d16e by Sanne.Wouda
Pre-commit tests

Prepare to land D82550
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/accelerate-vector-functions.ll
The file was addedllvm/test/Transforms/SLPVectorizer/vectorizable-functions.ll
Commit 7b84045565bdf7945a2cddd4dd7eefa00fb220d3 by Sanne.Wouda
[SLPVectorizer] handle vectorizeable library functions

Teaches the SLPVectorizer to use vectorized library functions for
non-intrinsic calls.

This already worked for intrinsics that have vectorized library
functions, thanks to D75878, but schedules with library functions with a
vector variant were being rejected early.

-   assume that there are no load/store dependencies between lib
    functions with a vector variant; this would otherwise prevent the
    bundle from becoming "ready"

-   check during legalization that the vector variant can be used

-   fix-up where we previously assumed that a call would be an intrinsic

Differential Revision: https://reviews.llvm.org/D82550
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/accelerate-vector-functions.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/vectorizable-functions.ll
Commit 13fec93a77fa159d700eff40b27402520eed2dfa by Sanne.Wouda
[NFC] rename to reflect F is not necessarily an Intrinsic
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit a5803765d8e0b62e0b48ea76bcad07a7c183618b by pavel
[lldb/dotest] Remove the "xunit" result formatter

Summary:
My understanding is that this was added to make dotest interact well
with the GreenDragon bots, back when dotest was the main test driver.
Now that everything goes through lit (which has its own xunit
formatter), it seems largely irrelevant.

There are more cleanups that can be done after removing this be done
here, but this should be enough to test the waters.

Reviewers: JDevlieghere

Subscribers: lldb-commits

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D83545
The file was modifiedlldb/packages/Python/lldbsuite/test_event/formatter/__init__.py
The file was modifiedlldb/packages/Python/lldbsuite/test/dotest_args.py
The file was modifiedlldb/packages/Python/lldbsuite/test/dotest.py
The file was modifiedlldb/packages/Python/lldbsuite/test/configuration.py
The file was removedlldb/packages/Python/lldbsuite/test_event/formatter/xunit.py
Commit 4cdea5faf980951bf3c4cb4ade9850d27c32af16 by epastor
[ms] [llvm-ml] Improve MASM STRUCT field accessor support

Summary:
Adds support for several accessors:
- `[<identifier>.<struct name>].<field>`
- `[<identifier>.<struct name>.<field>].<subfield>` (where `field` has already-defined STRUCT type)
- `[<variable>.<field>].<subfield>` (where `field` has already-defined STRUCT type)

Reviewed By: thakis

Differential Revision: https://reviews.llvm.org/D83344
The file was modifiedllvm/include/llvm/MC/MCParser/MCAsmParser.h
The file was modifiedllvm/lib/MC/MCParser/MasmParser.cpp
The file was modifiedllvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
The file was modifiedllvm/test/tools/llvm-ml/struct.test
Commit 7f85e9808255f3f6c2dda81d834f9de1feb827c6 by epastor
[ms] [llvm-ml] Fix MASM support for nested unnamed STRUCTs and UNIONs

Summary: Fix MASM support for nested unnamed STRUCTs and UNIONs

Reviewed By: thakis

Differential Revision: https://reviews.llvm.org/D83345
The file was modifiedllvm/test/tools/llvm-ml/struct.test
The file was modifiedllvm/lib/MC/MCParser/MasmParser.cpp
Commit 835c1f9f40ecc1a725f8f392a2a1628f634479fe by Jinsong Ji
[compiler-rt][CMake] Pass down LLVM_LIT_ARGS in runtime build

We should also pass down the LLVM_LIT_ARGS in runtime build mode,
so that the runtime tests can be well controlled as well.

We actually passed this down in clang/runtime/CMakeLists.txt
But not for calls from llvm/runtime/CMakeLists.txt.

Reviewed By: phosek

Differential Revision: https://reviews.llvm.org/D83565
The file was modifiedllvm/cmake/modules/LLVMExternalProjectUtils.cmake
Commit f08e8b6d7c46334ff8aa37cf8e473aa405e4fa93 by epastor
[ms] [llvm-ml] Add support for MASM STRUCT casting field accessors: (<TYPE> PTR <value>).<field>

Summary:
Add support for MASM STRUCT casting field accessors: (<TYPE> PTR <value>).<field>

Since these are operands, we add them to X86AsmParser. If/when we extend MASM support to other architectures (e.g., ARM), we will need similar changes there as well.

Reviewed By: thakis

Differential Revision: https://reviews.llvm.org/D83346
The file was modifiedllvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
The file was modifiedllvm/test/tools/llvm-ml/struct.test
Commit 1847f4dd7570f01f70646cd5067dd0c34257cd21 by pavel
[lldb/Utility] Rewrite Scalar::SetValueFromCString

The function's reliance on host types meant that it was needlessly
complicated, and did not handle the newer (wider) types. Rewrite it in
terms of APInt/APFloat functions to save code and improve functionality.
The file was modifiedlldb/unittests/Utility/ScalarTest.cpp
The file was modifiedlldb/source/Utility/Scalar.cpp
Commit 3aabfa28086757f8469ead77c7d319302e49d3c8 by epastor
[ms] [llvm-ml] Restore omitted changes requested by reviewer
The file was modifiedllvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
The file was modifiedllvm/test/tools/llvm-ml/struct.test
Commit 7075c056e91bf95b111716a9722d10e1a61253bb by a.bataev
[OPENMP]Fix compiler crash for target data directive without actual target codegen.

Summary:
Need to privatize addresses of the captured variables when trying to
emit the body of the target data directive in no target codegen mode.

Reviewers: jdoerfert

Subscribers: yaxunl, guansong, cfe-commits, sstefan1, caomhin

Tags: #clang

Differential Revision: https://reviews.llvm.org/D83478
The file was modifiedclang/lib/CodeGen/CGStmtOpenMP.cpp
The file was modifiedclang/test/OpenMP/target_data_codegen.cpp
Commit 4121172239779ea509908a2a57278a3d2206ad92 by david.truby
[flang][openmp] libc++ unordered_map build fix in flang openmp static analysis

Simply move the include of unordered_map from the .cpp file to the .h file
The file was modifiedflang/lib/Semantics/check-omp-structure.h
The file was modifiedflang/lib/Semantics/check-omp-structure.cpp
Commit 4d3e8dc215d1ca99354f3c33cce87795d2b5098a by Sanne.Wouda
Fix llvm-test-suite failure introduced by D82550/D83122

Apparently, isIndirectCall does not imply that getCalledFunction will be non-null
The file was modifiedllvm/include/llvm/Analysis/VectorUtils.h
Commit a2552f76ac6ff705434adb1d277a578445721b78 by pavel
[ADT] Make Load(AP)IntFromMemory pointer argument const

The function does not modify this memory.
The file was modifiedllvm/lib/Support/APInt.cpp
The file was modifiedllvm/include/llvm/ADT/APInt.h
Commit a7e9c5a39fbc7939dbeb508bb446a6ceaab2dc4b by wanyu9511
[llvm-ar][test][AIX] Unsupport error-opening-directory.test on AIX

Summary:
The test fails on AIX as it allows open() and read() on a directory. This patch adds `# UNSUPPORTED:
system-aix` to the test to prevent it from running on AIX.

Reviewers: sameerarora101, daltenty, ShuhongL, hubert.reinterpretcast, MaskRay, smeenai, alexshap

Reviewed By: sameerarora101, hubert.reinterpretcast, MaskRay, smeenai

Subscribers: MaskRay, rupprecht, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D83579
The file was modifiedllvm/test/tools/llvm-ar/error-opening-directory.test
Commit 8f7d3430b72e0458f0917b605cd94bcfb9396b37 by Pavel.Iliin
[ARM][NFC] More detailed vbsl checks in ARM & Thumb2 tests.
The file was modifiedllvm/test/CodeGen/ARM/vbsl-constant.ll
The file was modifiedllvm/test/CodeGen/Thumb2/float-intrinsics-double.ll
The file was modifiedllvm/test/CodeGen/ARM/fcopysign.ll
The file was modifiedllvm/test/CodeGen/ARM/fp16-promote.ll
The file was modifiedllvm/test/CodeGen/ARM/vselect_imax.ll
The file was modifiedllvm/test/CodeGen/Thumb2/float-intrinsics-float.ll
The file was modifiedllvm/test/CodeGen/ARM/vbsl.ll
Commit 69fff1fc498fe9bcb1ac6d0aa01bd825860e32f3 by spatel
[x86] add tests for bswap/rotate; NFC
The file was modifiedllvm/test/CodeGen/X86/rot16.ll
Commit 8779b114109dd1461a410e2357f2505665e6efec by spatel
[DAGCombiner] rot i16 X, 8 --> bswap X

We have this generic transform in IR (instcombine),
but as shown in PR41098:
http://bugs.llvm.org/PR41098
...the pattern may emerge in codegen too.

x86 has a potential refinement/reversal opportunity here,
but that should come later or needs a target hook to
avoid the transform. Converting to bswap is the more
specific form, so we should use it if it is available.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/test/CodeGen/X86/rot16.ll
Commit 153a0b8906d57f07f6711c2cfd10361616987038 by yamauchi
[PGO][PGSO] Add profile guided size optimization to the X86 LEA fixup.

Differential Revision: https://reviews.llvm.org/D83330
The file was modifiedllvm/lib/Target/X86/X86FixupLEAs.cpp
The file was modifiedllvm/lib/Target/X86/X86PadShortFunction.cpp
The file was modifiedllvm/test/CodeGen/X86/fixup-lea.ll
Commit 83080a294ad7d145d758821bcf4354ad0cb7d299 by mtrofin
[llvm] Native size estimator for training -Oz inliner

Summary:
This is an experimental ML-based native size estimator, necessary for
computing partial rewards during -Oz inliner policy training. Data
extraction for model training will be provided in a separate patch.

RFC: http://lists.llvm.org/pipermail/llvm-dev/2020-April/140763.html

Reviewers: davidxl, jdoerfert

Subscribers: mgorny, hiraditya, mgrang, arphaman, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D82817
The file was addedllvm/include/llvm/Analysis/Utils/TFUtils.h
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was addedllvm/unittests/Analysis/TFUtilsTest.cpp
The file was addedllvm/unittests/Analysis/Inputs/ir2native_x86_64_model/saved_model.pbtxt
The file was addedllvm/unittests/Analysis/Inputs/ir2native_x86_64_model/variables/variables.data-00000-of-00001
The file was modifiedllvm/CMakeLists.txt
The file was addedllvm/lib/Analysis/InlineSizeEstimatorAnalysis.cpp
The file was modifiedllvm/unittests/Analysis/CMakeLists.txt
The file was addedllvm/unittests/Analysis/Inputs/ir2native_x86_64_model/variables/variables.index
The file was addedllvm/unittests/Analysis/InlineSizeEstimatorAnalysisTest.cpp
The file was addedllvm/include/llvm/Analysis/InlineSizeEstimatorAnalysis.h
The file was addedllvm/lib/Analysis/TFUtils.cpp
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was modifiedllvm/lib/Analysis/CMakeLists.txt
Commit a1fc26030a42e9639e678344a4c08014a8cbba3d by Lang Hames
[JITLink] Add a synchronous version of finalize for convenience.

This will be used by upcoming patches that implement indirection utils
(reentry, reentry trampolines, and stubs) on top of
JITLinkMemoryManager to unify in-process and cross-process lazy
compilation support.
The file was modifiedllvm/include/llvm/ExecutionEngine/JITLink/JITLinkMemoryManager.h
Commit fb7ef0bb0b9c6964387391a3e1759c0a3320df87 by Lang Hames
[ORC] Generalize emit re-entry, stub, etc. APIs for working addr != link addr.

This patch generalizes the APIs for writing re-entry blocks, trampolines and
stubs to allow their final linked address to differ from the address of
their initial working memory. This will allow these routines to be used with
JITLinkMemoryManagers, which will in turn allow for unification of code paths
for in-process and cross-process lazy JITing.
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/OrcABISupport.h
The file was modifiedllvm/lib/ExecutionEngine/Orc/OrcABISupport.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetServer.h
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/IndirectionUtils.h
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/LazyReexports.h
Commit 44899ed659ea55121059666841087f23c8880154 by llvmgnsyncbot
[gn build] Port 83080a294ad
The file was modifiedllvm/utils/gn/secondary/llvm/unittests/Analysis/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Analysis/BUILD.gn
Commit fb558ccae743ed451ea42a30e197eb765a3184ac by yamauchi
[PGO][PGSO] Add profile guided size optimization to X86ISelDAGToDAG.

Differential Revision: https://reviews.llvm.org/D83331
The file was modifiedllvm/lib/Target/X86/X86ISelDAGToDAG.cpp
The file was modifiedllvm/test/CodeGen/X86/popcnt.ll
The file was modifiedllvm/test/CodeGen/X86/pr27202.ll
Commit 2d3b8cc83fe85e5edcc607a0696d1e9f42ede246 by Louis Dionne
[libc++] Implement P0551

Make sure we satisfy the requirements added by P0551, and add tests to
enforce that.
The file was modifiedlibcxx/include/ios
The file was modifiedlibcxx/www/cxx2a_status.html
The file was addedlibcxx/test/std/namespace/addressable_functions.sh.cpp
The file was modifiedlibcxx/include/ostream
Commit db091e12b2358255d249c9f3f211f4474e2c723c by Matthew.Arsenault
RISCV: Avoid GlobalISel build break in a future patch

The GlobalISelEmitter is stricter about matching timm instruction
outputs to timm inputs (although in an accidental sort of way that
doesn't hit a proper import failure error). Also, apparently no
intrinsic patterns were importing since the ID enum declaration was
missing.
The file was modifiedllvm/lib/Target/RISCV/RISCVInstructionSelector.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoA.td
Commit 2e2af6026b43511f8681397a9b6f13525dda970f by Matthew.Arsenault
TableGen/GlobalISel: Emit enum names for reg class ID instead of value

This was emitting the raw value for the reg class ID with a comment
for the actual class name. Switch to emitting the qualified enum name
instead, which obviates the need for the comment and also helps keep
the lit tests on the emitter output more stable.
The file was modifiedllvm/test/TableGen/GlobalISelEmitter.td
The file was modifiedllvm/test/TableGen/GlobalISelEmitterSubreg.td
The file was modifiedllvm/utils/TableGen/GlobalISelEmitter.cpp
The file was modifiedllvm/test/TableGen/GlobalISelEmitterRegSequence.td
Commit acabaf600b7a28079721dd934d448aecc7c41cad by mtrofin
[llvm][NFC] ML Policies: changed the saved_model protobuf to text

Also compacted the checkpoints (variables) to one file (plus the index).

This reduces the binary model files to just the variables and their
index. The index is very small. The variables are serialized float
arrays. When updated through training, the changes are very likely
unlocalized, so there's very little value in them being anything else
than binary.
The file was removedllvm/lib/Analysis/models/inliner/saved_model.pb
The file was modifiedllvm/lib/Analysis/models/inliner/variables/variables.index
The file was removedllvm/lib/Analysis/models/inliner/variables/variables.data-00000-of-00002
The file was addedllvm/lib/Analysis/models/inliner/saved_model.pbtxt
The file was removedllvm/lib/Analysis/models/inliner/variables/variables.data-00001-of-00002
The file was addedllvm/lib/Analysis/models/inliner/variables/variables.data-00000-of-00001
Commit 87f8a4f9a2314044bf007e0d4564a40386751842 by Matthew.Arsenault
AMDGPU/GlobalISel: Add tests for 96-bit add/sub/mul

I almost regressed these, so add tests for them.
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-mul.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sub.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-add.mir
Commit fdb69539bcd250f6e4f49197c9b8149a7542e3ff by Jan Korous
[AST] Fix potential nullptr dereference in Expr::HasSideEffects

Array returned by LambdaExpr::capture_inits() can contain nullptrs.

Differential Revision: https://reviews.llvm.org/D83438
The file was addedclang/unittests/AST/HasSideEffectsTest.cpp
The file was modifiedclang/unittests/AST/CMakeLists.txt
The file was modifiedclang/lib/AST/Expr.cpp
The file was modifiedclang/include/clang/AST/ExprCXX.h
Commit c1efd6675a901e8c0033026752c05396a3b26fec by llvmgnsyncbot
[gn build] Port fdb69539bcd
The file was modifiedllvm/utils/gn/secondary/clang/unittests/AST/BUILD.gn
Commit fefe7555e97685d61f76d4e7dfcabb163ff9bcdf by aeubanks
[NewPM][opt] Translate -foo-analysis to require<foo-analysis>

Fixes 53 check-llvm tests under NPM.

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D83633
The file was modifiedllvm/include/llvm/Passes/PassBuilder.h
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was modifiedllvm/tools/opt/NewPMDriver.cpp
Commit 62881fda5852b9a5960c3f8c26e864d5085d11bb by sguelton
Fix HexagonGenExtract return status

Differential Revision: https://reviews.llvm.org/D83460
The file was modifiedllvm/lib/Target/Hexagon/HexagonGenExtract.cpp
Commit 9cafbf8f66c9596d8b31293830d8892db0837745 by antiagainst
[NFC] Remove unused header include

Differential Revision: https://reviews.llvm.org/D83706
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/OrcABISupport.h
Commit 9d3e9a3e3c10cf7ff961df8e107c7cb0e1bc447c by sam.mccall
[clangd] Remove const_cast. NFC
The file was modifiedclang-tools-extra/clangd/Config.h
The file was modifiedclang-tools-extra/clangd/CompileCommands.cpp
Commit c0ee2d74680cc89ca6301613f1268de47e3d3bfc by Matthew.Arsenault
AMDGPU/GlobalISel: Add baseline add/sub sat legalization tests
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-usubsat.mir
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-uaddsat.mir
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ssubsat.mir
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-saddsat.mir
Commit 6a8c11a11f6cf8d4ef1fa373c9546c33c69f8cb0 by Matthew.Arsenault
GlobalISel: Implement widenScalar for saturating add/sub

Add a placeholder legality rule for AMDGPU until the rest of the
actions are handled.
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ssubsat.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-usubsat.mir
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-saddsat.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-uaddsat.mir
Commit 23ec773d197cc19c3f52e9d9dc7d3b57a59fb496 by Matthew.Arsenault
GlobalISel: Implement fewerElementsVector for saturating add/sub
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-uaddsat.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-usubsat.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-saddsat.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ssubsat.mir
Commit 83aaa2085e5f44a287a3ac90532197a077c0160e by Matthew.Arsenault
GlobalISel: Define equivalent nodes for saturating add/sub
The file was modifiedllvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td
Commit 51b20152e66cc6f092675d36b8367320bda31955 by Lang Hames
[JITLink] Apply MSVCPError workaround to a1fc26030a42.

Hopefully this will get the Windows bots building again.
The file was modifiedllvm/include/llvm/ExecutionEngine/JITLink/JITLinkMemoryManager.h
Commit 14f738b350147c18241ead3d62f4367d65ff38ad by nikita.ppv
[NewGVN] Rename xfail tests (NFC)

Add an -xfail.ll suffix to tests marked XFAIL, so these files can
be split into passing and failing parts.
The file was addedllvm/test/Transforms/NewGVN/2016-08-30-MaskedScatterGather-xfail.ll
The file was addedllvm/test/Transforms/NewGVN/calls-nonlocal-xfail.ll
The file was removedllvm/test/Transforms/NewGVN/assume-equal.ll
The file was removedllvm/test/Transforms/NewGVN/pr14166.ll
The file was addedllvm/test/Transforms/NewGVN/debugloc-xfail.ll
The file was addedllvm/test/Transforms/NewGVN/invariant.group-xfail.ll
The file was removedllvm/test/Transforms/NewGVN/2007-07-31-NoDomInherit.ll
The file was addedllvm/test/Transforms/NewGVN/opt-remarks-xfail.ll
The file was removedllvm/test/Transforms/NewGVN/cond_br2.ll
The file was addedllvm/test/Transforms/NewGVN/pr14166-xfail.ll
The file was addedllvm/test/Transforms/NewGVN/rle-no-phi-translate-xfail.ll
The file was addedllvm/test/Transforms/NewGVN/pr10820-xfail.ll
The file was removedllvm/test/Transforms/NewGVN/opt-remarks.ll
The file was addedllvm/test/Transforms/NewGVN/2007-07-31-NoDomInherit-xfail.ll
The file was removedllvm/test/Transforms/NewGVN/fence.ll
The file was addedllvm/test/Transforms/NewGVN/cond_br2-xfail.ll
The file was addedllvm/test/Transforms/NewGVN/assume-equal-xfail.ll
The file was removedllvm/test/Transforms/NewGVN/invariant.group.ll
The file was removedllvm/test/Transforms/NewGVN/2016-08-30-MaskedScatterGather.ll
The file was removedllvm/test/Transforms/NewGVN/debugloc.ll
The file was addedllvm/test/Transforms/NewGVN/fence-xfail.ll
The file was removedllvm/test/Transforms/NewGVN/nonescaping-malloc.ll
The file was addedllvm/test/Transforms/NewGVN/nonescaping-malloc-xfail.ll
The file was addedllvm/test/Transforms/NewGVN/2008-02-12-UndefLoad-xfail.ll
The file was removedllvm/test/Transforms/NewGVN/pre-new-inst.ll
The file was addedllvm/test/Transforms/NewGVN/rle-must-alias-xfail.ll
The file was removedllvm/test/Transforms/NewGVN/rle-must-alias.ll
The file was removedllvm/test/Transforms/NewGVN/2008-02-12-UndefLoad.ll
The file was removedllvm/test/Transforms/NewGVN/pr10820.ll
The file was removedllvm/test/Transforms/NewGVN/calls-nonlocal.ll
The file was removedllvm/test/Transforms/NewGVN/rle-no-phi-translate.ll
The file was addedllvm/test/Transforms/NewGVN/pre-new-inst-xfail.ll
Commit 4b626dd94944d60751af62d65a2692698520fcc2 by nikita.ppv
[NewGVN] Separate passing assume tests (NFC)

Result might not be exactly the same as under GVN, but all the
desired transforms are made.
The file was modifiedllvm/test/Transforms/NewGVN/assume-equal-xfail.ll
The file was addedllvm/test/Transforms/NewGVN/assume-equal.ll
Commit 353fa4403a06c2d86d617362b42e20ee6b3f53be by nikita.ppv
[PredicateInfo] Place predicate info after assume

Place the ssa.copy instructions for assumes after the assume,
instead of before it. Both options are valid, but placing them
afterwards prevents assumes from being replaced with assume(true).
This fixes https://bugs.llvm.org/show_bug.cgi?id=37541 in NewGVN
and will avoid a similar issue in SCCP when we handle more
predicate infos.

Differential Revision: https://reviews.llvm.org/D83631
The file was modifiedllvm/lib/Transforms/Utils/PredicateInfo.cpp
The file was modifiedllvm/test/Transforms/Util/PredicateInfo/testandor.ll
The file was modifiedllvm/test/Transforms/NewGVN/assumes.ll
The file was modifiedllvm/test/Transforms/NewGVN/assume-equal.ll
Commit 3780d3eb1001fd25d4b4cf953ae621a0f3b30ee5 by tkeith
[flang] Use octal escapes for character literals in modfiles

Character literals can be formatted using octal or hex escapes for
non-ascii characters. This is so that the program can be unparsed for
either pgf90 or gfortran to compile. But modfiles should not be affected
by that -- they should be consistent.

This changes causes modfiles to always have character literals formatted
with octal escapes.

Differential Revision: https://reviews.llvm.org/D83703
The file was modifiedflang/lib/Semantics/mod-file.cpp
The file was modifiedflang/lib/Semantics/mod-file.h
Commit 11046ef69e3e9ec3ae9f5f4caadf965b7f1e22c8 by mtrofin
[llvm][NFC] Factored the default inlining advice

This is in preparation for the 'development' mode advisor. We currently
want to track what the default policy's decision would have been, this
refactoring makes it easier to do that.
The file was modifiedllvm/lib/Analysis/InlineAdvisor.cpp
Commit 31b5b121299c08f360b61ecf873fe3eee99c0499 by Lang Hames
[ORC] Remove a spurious reinterpret_cast.
The file was modifiedllvm/lib/ExecutionEngine/Orc/OrcABISupport.cpp
Commit 340c376b87c72e7eb3670301e4920106615b6689 by martin
[lldb] Fix a CMake warning typo. NFC.
The file was modifiedlldb/tools/debugserver/source/CMakeLists.txt
Commit 341ec564182161861ec4415cdee1f4f3a0527e97 by Adrian Prantl
Add a decorator to skip tests when running under Rosetta

This allows skipping a test when running the testsuite on macOS under
the Rosetta translation layer.

Differential Revision: https://reviews.llvm.org/D83600
The file was modifiedlldb/packages/Python/lldbsuite/test/decorators.py
Commit 9908a3b9f521c954cbf6adcec35b14b2f6c8da49 by ditaliano
Revert "[llvm] Native size estimator for training -Oz inliner"

This reverts commit 83080a294ad7d145d758821bcf4354ad0cb7d299 as
it breaks the macOS modules build.
The file was removedllvm/unittests/Analysis/InlineSizeEstimatorAnalysisTest.cpp
The file was removedllvm/unittests/Analysis/Inputs/ir2native_x86_64_model/saved_model.pbtxt
The file was removedllvm/include/llvm/Analysis/Utils/TFUtils.h
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was modifiedllvm/CMakeLists.txt
The file was removedllvm/lib/Analysis/InlineSizeEstimatorAnalysis.cpp
The file was removedllvm/unittests/Analysis/TFUtilsTest.cpp
The file was removedllvm/unittests/Analysis/Inputs/ir2native_x86_64_model/variables/variables.index
The file was modifiedllvm/lib/Analysis/CMakeLists.txt
The file was removedllvm/lib/Analysis/TFUtils.cpp
The file was modifiedllvm/unittests/Analysis/CMakeLists.txt
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was removedllvm/include/llvm/Analysis/InlineSizeEstimatorAnalysis.h
The file was removedllvm/unittests/Analysis/Inputs/ir2native_x86_64_model/variables/variables.data-00000-of-00001
Commit 4ba45a778a13eab1495a75a14682f874016f3d21 by antiagainst
[mlir][StandardToSPIRV] Fix conversion for signed remainder

Per the Vulkan's SPIR-V environment spec, "for the OpSRem and OpSMod
instructions, if either operand is negative the result is undefined."
So we cannot directly use spv.SRem/spv.SMod if either operand can be
negative. Emulate it via spv.UMod.

Because the emulation uses spv.SNegate, this commit also defines
spv.SNegate.

Differential Revision: https://reviews.llvm.org/D83679
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVBase.td
The file was modifiedmlir/lib/Conversion/StandardToSPIRV/ConvertStandardToSPIRV.cpp
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVLogicalOps.td
The file was modifiedmlir/test/Conversion/StandardToSPIRV/std-ops-to-spirv.mlir
The file was modifiedmlir/test/Dialect/SPIRV/arithmetic-ops.mlir
The file was modifiedmlir/test/Dialect/SPIRV/Serialization/arithmetic-ops.mlir
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVArithmeticOps.td
The file was modifiedmlir/lib/Dialect/SPIRV/SPIRVOps.cpp
Commit 540277d08440048c5f3239ff7bcc95a505142d82 by llvmgnsyncbot
[gn build] Port 9908a3b9f52
The file was modifiedllvm/utils/gn/secondary/llvm/unittests/Analysis/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Analysis/BUILD.gn
Commit 2f23270af9bbe87859dc228eca63ccbc8986bebd by thomasraoux
[mlir] Support operations with multiple results in slicing

Right now slicing would assert if an operation with multiple results is in the
slice.

Differential Revision: https://reviews.llvm.org/D83627
The file was modifiedmlir/lib/Analysis/SliceAnalysis.cpp
The file was modifiedmlir/test/Dialect/Affine/slicing-utils.mlir
Commit f630b8590f0c541ccc8133d84f9464c2b469dda3 by aperry
[flang] Extended the flang driver options to include gfortran equivalents to pgf90 specific options.

Summary: Added gfortran equivalents of pgf90's -Mfixed, -Mfree, -Mextend, -Mstandard, -Munlimited and also added -fdefault-double-8

Reviewers: sscalpone, richard.barton.arm, DavidTruby, clementval, jdoerfert

Reviewed By: sscalpone, richard.barton.arm

Subscribers: sstefan1, llvm-commits, flang-commits

Tags: #llvm, #flang

Differential Revision: https://reviews.llvm.org/D83687
The file was modifiedflang/tools/f18/f18.cpp
Commit 0d988da6d13e16a397d58bc3b965a36adb7fee03 by jurahul
[MLIR] Change ODS collective params build method to provide an empty default value for named attributes

- Provide default value for `ArrayRef<NamedAttribute> attributes` parameter of
  the collective params build method.
- Change the `genSeparateArgParamBuilder` function to not generate build methods
  that may be ambiguous with the new collective params build method.
- This change should help eliminate passing empty NamedAttribue ArrayRef when the
  collective params build method is used
- Extend op-decl.td unit test to make sure the ambiguous build methods are not
  generated.

Differential Revision: https://reviews.llvm.org/D83517
The file was modifiedmlir/test/mlir-tblgen/op-decl.td
The file was modifiedmlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp
The file was modifiedmlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
The file was modifiedmlir/lib/Conversion/StandardToSPIRV/ConvertStandardToSPIRV.cpp
Commit 32d35fb74b2672ddf3674188423b71837afea8c4 by Jonas Devlieghere
[lldb] Remove unused argument (NFC)

Nobody is writing to the stream so there's no point in passing it
around.
The file was modifiedlldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
The file was modifiedlldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
The file was modifiedlldb/source/Target/Process.cpp
The file was modifiedlldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.h
The file was modifiedlldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
The file was modifiedlldb/source/API/SBTarget.cpp
The file was modifiedlldb/include/lldb/Target/Process.h
The file was modifiedlldb/source/Target/Platform.cpp
The file was modifiedlldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp
Commit 77c9aafc5d85a816c20d1f1fb176024bc0b8d0fe by walter erquinigo
Retry ""[lldb-vscode] Fix TestVSCode_module""

Original commit c60216db15132401ff60c08ccef899321f63b6b6.

The test can only run on Darwin because of how it was setup, so I'm
enforcing that.

Summary:

Test Plan:

Reviewers:

Subscribers:

Tasks:

Tags:
The file was addedlldb/test/API/tools/lldb-vscode/module/main.cpp
The file was modifiedlldb/tools/lldb-vscode/JSONUtils.h
The file was modifiedlldb/tools/lldb-vscode/JSONUtils.cpp
The file was modifiedlldb/tools/lldb-vscode/lldb-vscode.cpp
The file was addedlldb/test/API/tools/lldb-vscode/module/TestVSCode_module.py
The file was modifiedlldb/tools/lldb-vscode/VSCode.cpp
The file was addedlldb/test/API/tools/lldb-vscode/module/Makefile
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py
The file was addedlldb/test/API/tools/lldb-vscode/module/foo.cpp
The file was addedlldb/test/API/tools/lldb-vscode/module/foo.h
Commit b9c2dd11a5139b754afca050effac80f3b638bc8 by nikita.ppv
[ADT] Specialize std::swap() for SetVector

This is intended to address a compile-time regression from
1eddce4177cfddc86d4696b758904443b0b4f193. A SmallPtrSet was
replaced with a SetVector there, which had an unexpected large
compile-time impact. It turns out that this structure is getting
swapped a lot, and previously this used an optimized std::swap()
specialization for SmallPtrSet. Now it ends up using the default,
triple-move based implementation, which is much more expensive.

This patch (partly) addresses the issue by specializing std::swap()
for SetVector.

Differential Revision: https://reviews.llvm.org/D82230
The file was modifiedllvm/include/llvm/ADT/SetVector.h
Commit affbc0cd1cc87826c2636f8903d85c911aef75ff by ntv
[mlir] Add alignment attribute to LLVM memory ops and use in vector.transfer

Summary: The native alignment may generally not be used when lowering a vector.transfer to the underlying load/store operation. This revision fixes the unmasked load/store alignment to match that of the masked path.

Differential Revision: https://reviews.llvm.org/D83684
The file was modifiedmlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
The file was modifiedmlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
The file was modifiedmlir/integration_test/Dialect/Vector/CPU/test-transfer-write.mlir
The file was modifiedmlir/integration_test/Dialect/Vector/CPU/test-transfer-read.mlir
The file was modifiedmlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
Commit 427bda4e9b370d8efa96a7dbf503cdcb45616802 by qcolombet
[MC/AsmParser] layout-interdependency.s depends on having a proper triple

Fix the requirements for that test.

NFC
The file was modifiedllvm/test/MC/AsmParser/layout-interdependency.s
Commit e51c7fb842ee61e8002634ad2e8548d748cb6172 by Vedant Kumar
[debugify] Add targeted test for 2fa656c, NFC

https://reviews.llvm.org/D78411 introduced test changes which relied on
the ability to strip debugify metadata even if module-level metadata is
missing. This introduces a more targeted test for that ability.
The file was addedllvm/test/CodeGen/Generic/MIRStripDebug/no-metadata-present.mir
Commit 724afa5a331372ff1684f2bffa6976887490cbaf by benny.kra
[analyzer] Inline StringSet that's defined in a header

That's just asking for ODR violations. Also drop a call to lower()
that's not needed.
The file was modifiedclang/lib/StaticAnalyzer/Checkers/SmartPtrModeling.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/SmartPtr.h
Commit 8c4a65b9b2ca6961139beca92de37eea479f00fa by Vedant Kumar
[ubsan] Check implicit casts in ObjC for-in statements

Check that the implicit cast from `id` used to construct the element
variable in an ObjC for-in statement is valid.

This check is included as part of a new `objc-cast` sanitizer, outside
of the main 'undefined' group, as (IIUC) the behavior it's checking for
is not technically UB.

The check can be extended to cover other kinds of invalid casts in ObjC.

Partially addresses: rdar://12903059, rdar://9542496

Differential Revision: https://reviews.llvm.org/D71491
The file was addedcompiler-rt/test/ubsan/TestCases/Misc/objc-cast.m
The file was modifiedcompiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
The file was modifiedclang/lib/Driver/ToolChains/Darwin.cpp
The file was modifiedclang/include/clang/Basic/Sanitizers.def
The file was modifiedcompiler-rt/lib/ubsan/ubsan_checks.inc
The file was modifiedcompiler-rt/lib/ubsan/ubsan_handlers.cpp
The file was modifiedclang/test/CodeGenObjC/for-in.m
The file was modifiedcompiler-rt/lib/ubsan/ubsan_handlers.h
The file was modifiedcompiler-rt/lib/ubsan/ubsan_value.h
The file was modifiedclang/lib/CodeGen/CGObjC.cpp
The file was modifiedclang/lib/Driver/SanitizerArgs.cpp
The file was modifiedclang/lib/CodeGen/CodeGenFunction.h
The file was modifiedcompiler-rt/lib/ubsan/ubsan_value.cpp
The file was modifiedclang/docs/UndefinedBehaviorSanitizer.rst
Commit 42170b3b4e1f7d30b377a3da07c354feae9b852e by guiand
[Sanitizers] Implement getcpuclockid interceptor

Differential Revision: https://reviews.llvm.org/D83000
The file was addedcompiler-rt/test/sanitizer_common/TestCases/Linux/getcpuclockid.c
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
Commit bf0d060fd4ea1221fdac154e3404e448709e31aa by Jinsong Ji
[compiler-rt][MSAN][test] Update buffersize for UTF-8 to C convert

This is exposed by https://reviews.llvm.org/D83486.
When the host is UTF8, we may get n >10, causing assert failure.
Increase the buffersize to support UTF-8 to C conversion.

Reviewed By: vitalybuka

Differential Revision: https://reviews.llvm.org/D83719
The file was modifiedcompiler-rt/test/msan/strxfrm.cpp
Commit 528a1c56d976be83388782357b3b98711f7dafe0 by Vedant Kumar
Check output in test/CodeGen/Generic/MIRStripDebug/no-metadata-present.mir, NFC
The file was modifiedllvm/test/CodeGen/Generic/MIRStripDebug/no-metadata-present.mir
Commit 3d52b1e81b7b3891d9132d826d4889119fad7d00 by Vedant Kumar
Revert "[InstCombine] Drop debug loc in TryToSinkInstruction (reland)"

This reverts commit 9649c2095f07a392bc2b2a93b5bd6c4c9bf5ba34. See
discussion on the llvm-commits thread: if it's OK to preserve the
location when sinking a call, it's probably OK to always preserve the
location.
The file was removedllvm/test/Transforms/InstCombine/sink_to_unreachable_dbg.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstructionCombining.cpp
Commit bfa3b627c6832552a7808a9f0f7f9cab61c7ea1a by guiand
[InstCombine] Erase attribute lists for simplified libcalls

Currently, a transformation like pow(2.0, x) -> exp2(x) copies the pow
attribute list verbatim and applies it to exp2. This works out fine
when the attribute list is empty, but when it isn't clang may error due
due to the mismatch.

The source function and destination don't necessarily have anything
to do with one another, attribute-wise. So it makes sense to remove
the attribute lists (this is similar to what IPO does in this
situation).

This was discovered after implementing the `noundef` param attribute.

Differential Revision: https://reviews.llvm.org/D82820
The file was modifiedllvm/test/Transforms/InstCombine/pow_fp_int.ll
The file was modifiedllvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
The file was modifiedllvm/test/Transforms/InstCombine/simplify-libcalls.ll
Commit 10aa0d7bbc12bf86958bc40943e37b46c6eed04a by mascasa
[compiler-rt] Fix compiler warnings and runtime errors in sanitizer RT strxfrm(_l) test cases.

Summary: Fixed an implicit definition warning by including <string.h>. Also fixed run-time assertions that the return value of strxfrm_l calls is less than the buffer size by increasing the size of the referenced buffer.

Reviewers: morehouse

Reviewed By: morehouse

Subscribers: dberris, #sanitizers

Tags: #sanitizers

Differential Revision: https://reviews.llvm.org/D83593
The file was modifiedcompiler-rt/test/msan/__strxfrm_l.cpp
The file was modifiedcompiler-rt/test/sanitizer_common/TestCases/Posix/strxfrm.c
Commit 004bf35ba04873dc9ab1408bce0d6f2fed03b0ea by Vedant Kumar
Update ubsan_interface.inc for D71491

This should address the bot failure here:

http://lab.llvm.org:8011/builders/sanitizer-windows/builds/66309/
The file was modifiedcompiler-rt/lib/ubsan/ubsan_interface.inc
Commit d9067dca7ba7cda97a86ec22106e06ffc700ecbf by kiran.chandramohan
Lowering of OpenMP Parallel operation to LLVM IR 1/n

This patch introduces lowering of the OpenMP parallel operation to LLVM
IR using the OpenMPIRBuilder.

Functions topologicalSort and connectPhiNodes are generalised so that
they work with operations also. connectPhiNodes is also made static.

Lowering works for a parallel region with multiple blocks. Clauses and
arguments of the OpenMP operation are not handled.

Reviewed By: rriddle, anchu-rajendran

Differential Revision: https://reviews.llvm.org/D81660
The file was modifiedmlir/include/mlir/Target/LLVMIR/ModuleTranslation.h
The file was modifiedmlir/test/Target/openmp-llvm.mlir
The file was modifiedmlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
The file was modifiedmlir/lib/Target/LLVMIR/ModuleTranslation.cpp
Commit e958379581e5845572c21b8871873fcb0b15743e by echristo
Fold the opt size check into the assert to silence an unused variable warning.
The file was modifiedllvm/lib/Target/X86/X86ISelDAGToDAG.cpp
Commit 8d09f20798ac180b1749276bff364682ce0196ab by tyker
[AssumeBundles] Use operand bundles to encode alignment assumptions

Summary:
NOTE: There is a mailing list discussion on this: http://lists.llvm.org/pipermail/llvm-dev/2019-December/137632.html

Complemantary to the assumption outliner prototype in D71692, this patch
shows how we could simplify the code emitted for an alignemnt
assumption. The generated code is smaller, less fragile, and it makes it
easier to recognize the additional use as a "assumption use".

As mentioned in D71692 and on the mailing list, we could adopt this
scheme, and similar schemes for other patterns, without adopting the
assumption outlining.

Reviewers: hfinkel, xbolva00, lebedev.ri, nikic, rjmccall, spatel, jdoerfert, sstefan1

Reviewed By: jdoerfert

Subscribers: thopre, yamauchi, kuter, fhahn, merge_guards_bot, hiraditya, bollu, rkruppe, cfe-commits, llvm-commits

Tags: #clang, #llvm

Differential Revision: https://reviews.llvm.org/D71739
The file was modifiedclang/test/CodeGen/catch-alignment-assumption-attribute-assume_aligned-on-function-two-params.cpp
The file was modifiedllvm/test/Transforms/AlignmentFromAssumptions/simple32.ll
The file was modifiedclang/test/CodeGen/alloc-align-attr.c
The file was modifiedclang/test/CodeGen/catch-alignment-assumption-openmp.cpp
The file was modifiedclang/test/OpenMP/simd_metadata.c
The file was modifiedclang/test/OpenMP/target_teams_distribute_parallel_for_simd_codegen.cpp
The file was modifiedllvm/lib/Analysis/AssumeBundleQueries.cpp
The file was modifiedclang/test/CodeGen/catch-alignment-assumption-attribute-align_value-on-lvalue.cpp
The file was modifiedclang/test/OpenMP/simd_codegen.cpp
The file was modifiedclang/test/CodeGen/catch-alignment-assumption-builtin_assume_aligned-two-params.cpp
The file was modifiedclang/test/CodeGen/builtin-align-array.c
The file was modifiedclang/test/CodeGen/catch-alignment-assumption-attribute-assume_aligned-on-function.cpp
The file was modifiedclang/test/CodeGen/builtin-align.c
The file was modifiedclang/lib/CodeGen/CodeGenFunction.cpp
The file was modifiedclang/test/CodeGen/catch-alignment-assumption-attribute-alloc_align-on-function-variable.cpp
The file was modifiedllvm/unittests/Analysis/AssumeBundleQueriesTest.cpp
The file was modifiedclang/test/CodeGen/assume-aligned-and-alloc-align-attributes.c
The file was modifiedclang/test/CodeGen/catch-alignment-assumption-attribute-alloc_align-on-function.cpp
The file was modifiedclang/test/CodeGen/catch-alignment-assumption-builtin_assume_aligned-three-params-variable.cpp
The file was modifiedclang/test/CodeGen/non-power-of-2-alignment-assumptions.c
The file was modifiedclang/test/CodeGen/align_value.cpp
The file was modifiedllvm/lib/IR/Verifier.cpp
The file was modifiedllvm/test/Transforms/AlignmentFromAssumptions/simple.ll
The file was modifiedllvm/lib/Transforms/Scalar/AlignmentFromAssumptions.cpp
The file was modifiedclang/test/CodeGen/catch-alignment-assumption-builtin_assume_aligned-three-params.cpp
The file was modifiedclang/test/CodeGen/builtin-assume-aligned.c
The file was modifiedllvm/include/llvm/Transforms/Scalar/AlignmentFromAssumptions.h
The file was modifiedllvm/include/llvm/IR/IRBuilder.h
The file was modifiedllvm/lib/IR/IRBuilder.cpp
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
The file was modifiedllvm/test/Transforms/Inline/align.ll
The file was modifiedclang/test/CodeGen/catch-alignment-assumption-attribute-align_value-on-paramvar.cpp
The file was modifiedllvm/test/Transforms/InstCombine/assume.ll
The file was modifiedllvm/test/Verifier/assume-bundles.ll
The file was modifiedllvm/test/Transforms/PhaseOrdering/inlining-alignment-assumptions.ll
Commit c9b625d09aeccd70bc564dfd4f00002d0156bcc2 by guiand
[Sanitizers] Ensure clock_getcpuclockid interceptor <= 80 chars
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
Commit 66550c36f43b32a5be6acdc88a346ca8ac5af368 by Lang Hames
[ORC] Fix typo in parameter name.
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/OrcABISupport.h
Commit caf395ee8c28028d5af0f1455cd5ef134432124c by mtrofin
Reapply "[llvm] Native size estimator for training -Oz inliner"

This reverts commit 9908a3b9f521c954cbf6adcec35b14b2f6c8da49.

The fix was to exclude the content of TFUtils.h (automatically
included in the LLVM_Analysis module, when LLVM_ENABLE_MODULES is enabled).

Differential Revision: https://reviews.llvm.org/D82817
The file was addedllvm/include/llvm/Analysis/InlineSizeEstimatorAnalysis.h
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was addedllvm/unittests/Analysis/Inputs/ir2native_x86_64_model/saved_model.pbtxt
The file was addedllvm/lib/Analysis/InlineSizeEstimatorAnalysis.cpp
The file was modifiedllvm/CMakeLists.txt
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was addedllvm/include/llvm/Analysis/Utils/TFUtils.h
The file was addedllvm/unittests/Analysis/InlineSizeEstimatorAnalysisTest.cpp
The file was addedllvm/unittests/Analysis/TFUtilsTest.cpp
The file was addedllvm/unittests/Analysis/Inputs/ir2native_x86_64_model/variables/variables.index
The file was addedllvm/unittests/Analysis/Inputs/ir2native_x86_64_model/variables/variables.data-00000-of-00001
The file was addedllvm/lib/Analysis/TFUtils.cpp
The file was modifiedllvm/lib/Analysis/CMakeLists.txt
The file was modifiedllvm/unittests/Analysis/CMakeLists.txt
Commit 73f02a61dfb967e3d058490b0c39178e1219835e by mtrofin
[llvm][NFC] ML InlineAdvisor: Factored CHECKs in common test

The CHECKs are going to be shared with the development mode test
The file was modifiedllvm/test/Transforms/Inline/ML/Inputs/test-module.ll
The file was modifiedllvm/test/Transforms/Inline/ML/ml-test-release-mode.ll
Commit d1c7f51a9e8d6ea623349337d28da1df8b5194e2 by guiand
MemorySanitizer: If a field is marked noundef, check init at call site

Adds LLVM option to control eager checking under -msan-eager-checks.
This change depends on the noundef keyword to determining cases where it
it sound to check these shadows, and falls back to passing shadows
values by TLS.

Checking at call boundaries enforces undefined behavior rules with
passing uninitialized arguments by value.

Differential Revision: https://reviews.llvm.org/D81699
The file was modifiedllvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
The file was addedllvm/test/Instrumentation/MemorySanitizer/msan_eager.ll
Commit 9d5a8b7edb28707879b8e2a37d14a4cf6dbcbefa by srhines
Fix a missing update that C compiles default to gnu17.

https://reviews.llvm.org/D75383 switched the C default to gnu17, but
missed this instance.

Differential Revision: https://reviews.llvm.org/D83726
The file was modifiedclang/docs/CommandGuide/clang.rst
Commit b8460fb2cd03999b2655fc0e70bd9a82641db554 by llvmgnsyncbot
[gn build] Port caf395ee8c2
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Analysis/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/llvm/unittests/Analysis/BUILD.gn
Commit f398e0f3d1fd56e5d06e95f3522bdcde48310088 by rprichard
[builtins][Android] Define HAS_80_BIT_LONG_DOUBLE to 0

Android 32-bit x86 uses a 64-bit long double.

Android 64-bit x86 uses a 128-bit quad-precision long double.

Differential Revision: https://reviews.llvm.org/D82152
The file was modifiedcompiler-rt/lib/builtins/int_types.h
Commit 8cbb6ccc7fcb4184724b57ab78d7839469158c5b by rprichard
[builtins] Cleanup generic-file filtering

Split filter_builtin_sources into two functions:
- filter_builtin_sources that removes generic files when an
   arch-specific file is selected.
- darwin_filter_builtin_sources that implements the EXCLUDE/INCLUDE
   lists (using the files in lib/builtins/Darwin-excludes).

darwin_filter_builtin_sources delegates to filter_builtin_sources.

Previously, lib/builtins/CMakeLists.txt had a number of calls to
filter_builtin_sources (with a confusing/broken use of the
`excluded_list` parameter), as well as a redundant arch-vs-generic
filtering for the non-Apple code path at the end of the file. Replace
all of this with a single call to filter_builtin_sources.

Remove i686_SOURCES. Previously, this list contained only the
arch-specific files common to 32-bit and 64-bit x86, which is a strange
set. Normally the ${ARCH}_SOURCES list contains everything needed for
the arch. "i686" isn't in ALL_BUILTIN_SUPPORTED_ARCH.

NFCI, but i686_SOURCES won't be defined, and the order of files in
${arch}_SOURCES lists will change.

Differential Revision: https://reviews.llvm.org/D82151
The file was modifiedcompiler-rt/cmake/Modules/CompilerRTDarwinUtils.cmake
The file was modifiedcompiler-rt/lib/builtins/CMakeLists.txt
The file was modifiedcompiler-rt/cmake/Modules/CompilerRTUtils.cmake
Commit 9b7e24c2a5b32e25b773bc8b4ca84dbda995d959 by rprichard
[compiler-rt][Android] Stop using detect_target_arch

For Android only, compiler-rt used detect_target_arch to select the
architecture to target. detect_target_arch was added in Sept 2014
(SVN r218605). At that time, compiler-rt selected the default arch
using ${LLVM_NATIVE_ARCH}, which seems to have been the host
architecture and therefore not suitable for cross-compilation.

The compiler-rt build system was refactored in Sept 2015 (SVN r247094
and SVN r247099) to use COMPILER_RT_DEFAULT_TARGET_TRIPLE to control
the target arch rather than LLVM_NATIVE_ARCH. This approach is simpler
and also works for Android cross-compilation, so remove the
detect_target_arch function.

Android targets i686, but compiler-rt seems to identify 32-bit x86 as
"i386". For Android, we were previously calling add_default_target_arch
with i386, and calling add_default_target_arch with i686 does not build
anything. i686 is not listed in builtin-config-ix.cmake,
ALL_BUILTIN_SUPPORTED_ARCH.

Differential Revision: https://reviews.llvm.org/D82148
The file was modifiedcompiler-rt/cmake/base-config-ix.cmake
The file was modifiedcompiler-rt/cmake/Modules/CompilerRTUtils.cmake
Commit 36f9947aac9e09e783a5d29be31ef5b00723d747 by rprichard
[builtins][ARM] Replace call_apsr.S with inline asm

The %arm_call_apsr expansion doesn't work when config.clang is a clang
driver defaulting to a non-ARM arch. Rather than fix it, replace
call_apsr.S with inline asm in call_apsr.h, which also resolves the
FIXME added in D31259.

Maybe the `__attribute__((noinline,pcs("aapcs")))` attributes are
unnecessary on the static functions, but I was unsure what liberty the
compiler had to insert instructions that modified the condition codes,
so it seemed helpful.

Differential Revision: https://reviews.llvm.org/D82147
The file was modifiedcompiler-rt/test/builtins/Unit/arm/aeabi_cfcmpeq_test.c
The file was modifiedcompiler-rt/test/builtins/Unit/arm/aeabi_cdcmpeq_test.c
The file was modifiedcompiler-rt/test/builtins/Unit/arm/call_apsr.h
The file was modifiedcompiler-rt/test/builtins/Unit/lit.cfg.py
The file was modifiedcompiler-rt/test/builtins/Unit/arm/aeabi_cdcmple_test.c
The file was removedcompiler-rt/test/builtins/Unit/arm/call_apsr.S
The file was modifiedcompiler-rt/test/builtins/Unit/arm/aeabi_cfcmple_test.c
Commit eafe7c14ea38946e8c1fb64d548effaee7614718 by maskray
[PowerPC] Fix combineVectorShuffle regression after D77448

Commit 1fed131660b2 assumed that NewShuffle (shuffle vector
canonicalization result) will always be ShuffleVectorSDNode, which may
be false (it may be a BITCAST node):

```
...
t12: v4i32 = scalar_to_vector t2
t15: v16i8 = bitcast t12  # LHS
t17: v16i8 = vector_shuffle<u,u,u,u,u,u,u,u,0,1,2,3,u,u,u,u> t15, undef:v16i8  # SVN
```

Reviewed By: #powerpc, nemanjai

Differential Revision: https://reviews.llvm.org/D83617
The file was modifiedllvm/test/CodeGen/PowerPC/canonical-merge-shuffles.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
Commit 746b8c400bd3f975b49f4092aa6ecd30ade7cfa5 by richard
Basic support for flexible array members in constant evaluation.

We don't allow runtime-sized flexible array members, nor initialization
of flexible array members, but it seems reasonable to support the most
basic case where the flexible array member is empty.
The file was modifiedclang/test/SemaCXX/constant-expression-cxx11.cpp
The file was modifiedclang/lib/AST/ExprConstant.cpp
Commit 6b109f2f054f6c03156d1e606ea21488b83de6a6 by mtrofin
[llvm][NFC] Removed unused CHECKs in a ml test

The CHECKs are now in Inputs/test-module.ll
The file was modifiedllvm/test/Transforms/Inline/ML/ml-test-release-mode.ll
Commit 871251b2b60c8d7b095fe732fd95c65c989337ff by guiand
[MSAN] Implement experimental vector reduction intrinsics

Implement llvm.experimental.vector.{add,mul,or,and,...}.
An IR test is included but no C test for lack of good way to
get the compiler to emit these.

Differential Revision: https://reviews.llvm.org/D82920
The file was modifiedllvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
The file was addedllvm/test/Instrumentation/MemorySanitizer/experimental-reduce.ll
Commit 65049d16100af360674659fb56e8f9bec96a0836 by clementval
[flang][openacc] OpenACC 3.0 parser

Summary:
This patch introduce the parser for OpenACC 3.0 in Flang. It uses the same TableGen mechanism
than OpenMP.

Reviewers: nvdatian, sscalpone, tskeith, klausler, ichoyjx, jdoerfert, DavidTruby

Reviewed By: klausler

Subscribers: SouraVX, mgorny, hiraditya, jfb, sstefan1, llvm-commits

Tags: #llvm, #flang

Differential Revision: https://reviews.llvm.org/D83649
The file was modifiedflang/lib/Semantics/resolve-names.cpp
The file was modifiedflang/include/flang/Parser/parse-tree.h
The file was modifiedllvm/lib/Frontend/CMakeLists.txt
The file was modifiedflang/lib/Parser/parsing.cpp
The file was modifiedflang/lib/Parser/program-parsers.cpp
The file was modifiedflang/lib/Parser/executable-parsers.cpp
The file was modifiedflang/tools/f18/f18.cpp
The file was addedflang/lib/Parser/openacc-parsers.cpp
The file was modifiedflang/include/flang/Common/Fortran-features.h
The file was modifiedflang/include/flang/Parser/dump-parse-tree.h
The file was addedllvm/include/llvm/Frontend/OpenACC/ACC.td
The file was modifiedflang/tools/f18/CMakeLists.txt
The file was addedllvm/include/llvm/Frontend/OpenACC/CMakeLists.txt
The file was addedflang/test/Semantics/acc-validity.f90
The file was modifiedflang/lib/Parser/unparse.cpp
The file was modifiedllvm/include/llvm/CMakeLists.txt
The file was modifiedflang/lib/Parser/CMakeLists.txt
The file was modifiedllvm/include/llvm/Frontend/Directive/DirectiveBase.td
The file was modifiedflang/lib/Parser/stmt-parser.h
The file was modifiedflang/tools/f18-parse-demo/CMakeLists.txt
The file was addedllvm/include/llvm/Frontend/CMakeLists.txt
The file was addedllvm/lib/Frontend/OpenACC/CMakeLists.txt
The file was modifiedflang/lib/Parser/type-parsers.h
The file was modifiedflang/lib/Parser/token-parsers.h
The file was modifiedflang/lib/Parser/openmp-parsers.cpp
Commit 869d05fb3e449ec7ec835b8a61687f8df41b8651 by waltermelon
[lldb-vscode] Fix TestVSCode_module
This test was added in https://reviews.llvm.org/D82477 and needs to wait a little bit before fetching some information.
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-vscode/lldbvscode_testcase.py
The file was modifiedlldb/test/API/tools/lldb-vscode/module/TestVSCode_module.py
Commit bf74c3838904b2df2a0f31bc457af1bdb811953f by clementval
[flang][openacc] Add Support library for error handling
The file was modifiedllvm/lib/Frontend/OpenACC/CMakeLists.txt
Commit 9a9ae01f994a92900bc703cf8a512082f49ce45d by waltermelon
[lldb-vscode] Fix TestVSCode_setBreakpoints

It was failing because some module events had empty UUID, and that was not handled correctly.
The diff that added that logic is https://reviews.llvm.org/D82477
The file was modifiedlldb/tools/lldb-vscode/JSONUtils.cpp
Commit fefe6a6642e475cd6d624c502120cb061da8144e by dblaikie
Fix undefined behavior in DWARF emission

Caused by uninitialized load of llvm::DwarfDebug::PrevCU:
llvm::DwarfCompileUnit::addRange () at ../lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp:276
llvm::DwarfDebug::endFunctionImpl () at ../lib/CodeGen/AsmPrinter/DwarfDebug.cpp:1586
llvm::DebugHandlerBase::endFunction () at ../lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp:319
llvm::AsmPrinter::EmitFunctionBody () at ../lib/CodeGen/AsmPrinter/AsmPrinter.cpp:1230
llvm::ARMAsmPrinter::runOnMachineFunction () at ../lib/Target/ARM/ARMAsmPrinter.cpp:161

Most of the DebugInfo tests under `LLVM_LIT_ARGS:STRING=-sv --vg` prior to this fix, and pass with the fix applied.

Reviewed By: aprantl, dblaikie

Differential Revision: https://reviews.llvm.org/D81631
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.h
Commit 19f01a484760d9a29f4f414b30da110dd6550191 by vtjnash
[GVN] add early exit to ConstantFoldLoadThroughBitcast [NFC]

And adds some additional test coverage to ensure later commits don't
introduce regressions.

Differential Revision: https://reviews.llvm.org/D59730
The file was modifiedllvm/test/Transforms/GlobalOpt/evaluate-call-errors.ll
The file was modifiedllvm/lib/Analysis/ConstantFolding.cpp
The file was modifiedllvm/test/Transforms/GVN/non-integral-pointers.ll
Commit e244f86f4dfd9e8982940d09294af522d3809d7f by vtjnash
[VNCoercion] avoid creating bitcast for zero offsets [NFCI]

This could previously make it more complicated for ConstantFolding
later, leading to a higher likelyhood it would have to reject the
expression, even though zero seems like probably the common case here.

Differential Revision: https://reviews.llvm.org/D59730
The file was modifiedllvm/lib/Transforms/Utils/VNCoercion.cpp
Commit 2c7a07b59d5da54eba8e3e030e1cc040a88ecf58 by vtjnash
[GVN] teach ConstantFolding correct handling of non-integral addrspace casts

Here we teach the ConstantFolding analysis pass that it is not legal to
replace a load of a bitcast constant (having a non-integral addrspace)
with a bitcast of the value of that constant (with a different
non-integral addrspace).

But also teach it that certain bit patterns are always known and
convertable (a fact it already uses elsewhere). This required us to also
fix a globalopt test, since, after this change, LLVM is able to realize
that the test actually is a valid transform (NULL is always a known
bit-pattern) and so it doesn't need to emit the failure remarks for it.

Also simplify some of the negative tests for transforms by avoiding a
type change in their bitcast, and add positive versions of the same
tests, to show that they otherwise should work.

Differential Revision: https://reviews.llvm.org/D59730
The file was modifiedllvm/lib/Transforms/Utils/VNCoercion.cpp
The file was modifiedllvm/test/Transforms/GVN/non-integral-pointers.ll
The file was modifiedllvm/lib/Analysis/ConstantFolding.cpp
Commit 1a21b088f4a855469f481a094b218c316ca4e796 by clementval
Add LINK_COMPONENTS Support
The file was modifiedllvm/lib/Frontend/OpenACC/CMakeLists.txt
Commit f06ad9134722cf090bc301ac8bf41a2a381f137e by clementval
Revert "[flang][openacc] OpenACC 3.0 parser"

This reverts commit 65049d16100af360674659fb56e8f9bec96a0836.

Buildbot failure clang-ppc64le-rhel
The file was removedllvm/lib/Frontend/OpenACC/CMakeLists.txt
The file was modifiedflang/lib/Parser/stmt-parser.h
The file was modifiedflang/lib/Parser/token-parsers.h
The file was modifiedflang/lib/Parser/executable-parsers.cpp
The file was modifiedflang/lib/Semantics/resolve-names.cpp
The file was removedllvm/include/llvm/Frontend/OpenACC/ACC.td
The file was modifiedflang/include/flang/Common/Fortran-features.h
The file was modifiedflang/include/flang/Parser/dump-parse-tree.h
The file was modifiedflang/lib/Parser/unparse.cpp
The file was removedflang/lib/Parser/openacc-parsers.cpp
The file was modifiedflang/tools/f18/CMakeLists.txt
The file was modifiedllvm/include/llvm/CMakeLists.txt
The file was removedllvm/include/llvm/Frontend/CMakeLists.txt
The file was modifiedllvm/include/llvm/Frontend/Directive/DirectiveBase.td
The file was removedllvm/include/llvm/Frontend/OpenACC/CMakeLists.txt
The file was removedflang/test/Semantics/acc-validity.f90
The file was modifiedflang/tools/f18/f18.cpp
The file was modifiedllvm/lib/Frontend/CMakeLists.txt
The file was modifiedflang/lib/Parser/openmp-parsers.cpp
The file was modifiedflang/lib/Parser/type-parsers.h
The file was modifiedflang/lib/Parser/CMakeLists.txt
The file was modifiedflang/lib/Parser/parsing.cpp
The file was modifiedflang/tools/f18-parse-demo/CMakeLists.txt
The file was modifiedflang/include/flang/Parser/parse-tree.h
The file was modifiedflang/lib/Parser/program-parsers.cpp
Commit d4e7d126b0c1f1233fb8f9a922887d0c035cc570 by lkail
[PowerPC] Generate CFI directives when probing in prologue

Add missing CFI directives when probing in prologue if
`stack-clash-protection` is enabled.

Differential Revision: https://reviews.llvm.org/D83276
The file was modifiedllvm/test/CodeGen/PowerPC/stack-clash-prologue.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCFrameLowering.cpp
Commit 830a7c2ad41d147c536f1b20061fe94ca978f079 by Xing
[DWARFYAML] Replace Is64bit with Is64BitAddrSize. NFC.

Is64bit is ambiguous. In this patch, we replace it with Is64BitAddrSize
to make it clearer.
The file was modifiedllvm/lib/ObjectYAML/MachOYAML.cpp
The file was modifiedllvm/lib/ObjectYAML/ELFYAML.cpp
The file was modifiedllvm/include/llvm/ObjectYAML/DWARFYAML.h
The file was modifiedllvm/lib/ObjectYAML/DWARFEmitter.cpp
Commit 64eb3a4915f00cca9af4c305a9ff36209003cd7b by Amara Emerson
[AArch64][GlobalISel] Add post-legalize combine for sext_inreg(trunc(sextload)) -> copy

On AArch64 we generate redundant G_SEXTs or G_SEXT_INREGs because of this.

Differential Revision: https://reviews.llvm.org/D81993
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/combine-sext-trunc-sextload.mir
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
The file was modifiedllvm/lib/Target/AArch64/AArch64Combine.td
The file was modifiedllvm/lib/CodeGen/GlobalISel/GISelKnownBits.cpp
The file was modifiedllvm/include/llvm/Target/GlobalISel/Combine.td
The file was modifiedllvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
Commit 62f5ba624bfba5ccf4446737ad2bfb1fc013b376 by amy.kwan1
[PowerPC][Power10] Implement Test LSB by Byte Builtins in LLVM/Clang

This patch implements builtins for the Test LSB by Byte instruction introduced
in Power10.

Differential Revision: https://reviews.llvm.org/D82431
The file was modifiedclang/test/CodeGen/builtins-ppc-p10vector.c
The file was modifiedclang/lib/Headers/altivec.h
The file was addedllvm/test/CodeGen/PowerPC/builtins-ppc-p10vsx.ll
The file was modifiedclang/include/clang/Basic/BuiltinsPPC.def
The file was modifiedllvm/include/llvm/IR/IntrinsicsPowerPC.td
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrPrefix.td
Commit 74c14202d90b46dda64a2542602855727b7d7f60 by carl.ritson
[AMDGPU] Propagate dead flag during pre-RA exec mask optimizations

Preserve SCC dead flags in SIOptimizeExecMaskingPreRA.
This helps with removing redundant s_andn2 instructions later.

Reviewed By: rampitec

Differential Revision: https://reviews.llvm.org/D83637
The file was modifiedllvm/test/CodeGen/AMDGPU/optimize-exec-masking-pre-ra.mir
The file was modifiedllvm/lib/Target/AMDGPU/SIOptimizeExecMaskingPreRA.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/optimize-negated-cond-exec-masking-wave32.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/optimize-negated-cond-exec-masking.mir