[all-commits] [llvm/llvm-project] 7b9c6a: [SandboxVec][DAG][NFC] Move functions from Utils t...
Amir Ayupov via All-commits
all-commits at lists.llvm.org
Thu Oct 24 12:54:59 PDT 2024
Branch: refs/heads/users/aaupov/spr/main.bolt-add-profile-density-computation
Home: https://github.com/llvm/llvm-project
Commit: 7b9c6a7c3c6441bfea4214fa2221235819c22f7a
https://github.com/llvm/llvm-project/commit/7b9c6a7c3c6441bfea4214fa2221235819c22f7a
Author: vporpo <vporpodas at google.com>
Date: 2024-10-03 (Thu, 03 Oct 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/Utils.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
M llvm/unittests/SandboxIR/UtilsTest.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp
Log Message:
-----------
[SandboxVec][DAG][NFC] Move functions from Utils to DependencyGraph (#111031)
This patch moves:
- Utils::isStackSaveOrRestoreIntrinsic()
- Utils::isMemIntrinsic()
- Utils::isMemDepCandidate()
to DGNode because they no longer require LLVM IR access and are used
only by the DAG.
Commit: ae635d6f997a28c81a01bfffe70fd849d0eafcca
https://github.com/llvm/llvm-project/commit/ae635d6f997a28c81a01bfffe70fd849d0eafcca
Author: William G Hatch <william at hatch.uno>
Date: 2024-10-03 (Thu, 03 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
M llvm/test/DebugInfo/NVPTX/cu-range-hole.ll
M llvm/test/DebugInfo/NVPTX/dbg-declare-alloca.ll
M llvm/test/DebugInfo/NVPTX/debug-addr-class.ll
M llvm/test/DebugInfo/NVPTX/debug-empty.ll
M llvm/test/DebugInfo/NVPTX/debug-file-loc.ll
M llvm/test/DebugInfo/NVPTX/debug-info.ll
M llvm/test/DebugInfo/NVPTX/debug-loc-offset.ll
Log Message:
-----------
[NVPTX] add support for .debug_loc section (#110905)
Enable .debug_loc section for NVPTX backend.
This commit makes NVPTX omit DW_AT_low_pc (and DW_AT_high_pc) for
DW_TAG_compile_unit. This is because cuda-gdb uses the compile unit's
low_pc as a base address, and adds the addresses in the debug_loc
section to it. Removing low_pc is equivalent to setting that base
address to zero, so addition doesn't break the location ranges.
Additionally, this patch forces debug_loc label emission to emit single
labels with no subtraction or base. This would not be necessary if we
could emit `label1 - label2` expressions in PTX. The PTX documentation
at
https://docs.nvidia.com/cuda/parallel-thread-execution/index.html#debugging-directives-section
makes it seem like this is supported, but it doesn't actually work. I
believe when that documentation says that you can subtract “label
addresses between labels in the same dwarf section”, it doesn't merely
mean that the labels need to be in the same section as each other, but
in fact they need to be in the same section as the use. If support for
label subtraction is supported such that in the debug_loc section you
can subtract labels from the main code section, then we can remove the
workarounds added in this PR.
Also, since this now emits valid .debug_loc sections, it replaces the
empty .debug_loc to force existence of at least one debug section with
an empty .debug_macinfo section, which matches what nvcc does.
Commit: 635db5ee97d5b3c53aea1fce8ba26ac388157187
https://github.com/llvm/llvm-project/commit/635db5ee97d5b3c53aea1fce8ba26ac388157187
Author: vporpo <vporpodas at google.com>
Date: 2024-10-03 (Thu, 03 Oct 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/Instruction.h
M llvm/lib/SandboxIR/Instruction.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
Log Message:
-----------
[SandboxIR] Implement InsertPosition (#110730)
This patch implements the InsertPosition class that is used to specify
where an instruction should be placed.
It also switches a couple of create() functions from the old API to the
new one that uses InsertPosition.
Commit: 1753d169d5a650a29c4bb01940048a5c6c7871c4
https://github.com/llvm/llvm-project/commit/1753d169d5a650a29c4bb01940048a5c6c7871c4
Author: Heejin Ahn <aheejin at gmail.com>
Date: 2024-10-03 (Thu, 03 Oct 2024)
Changed paths:
M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
A llvm/test/MC/WebAssembly/annotations-typecheck.s
Log Message:
-----------
[WebAssembly] Print instructions with type checking errors (#111067)
When there was a type checking error, we didn't run `InstPrinter`. This
can be confusing because when there is an error in, say, block parameter
type, `InstPrinter` doesn't run even if it has nothing to do with block
parameter types, and all those updates to `ControlFlowStack` or
`TryStack` do not happen:
https://github.com/llvm/llvm-project/blob/c20b90ab8557b38efe8e8e993d41d8c08b798267/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyInstPrinter.cpp#L135-L151
For example,
```wast
block (i32) -> () ;; Block input parameter error
end_block ;; Now this errors out as "End marker mismatch"
```
This is confusing because there is a `block` and the `end_block` is not
a mismatch. Only that `block` has a type checking error, but that's not
an end marker mismatch.
I think we can just print the instruction whether we had a type checking
error or not, and this will be less confusing.
Commit: 83e3779473bf7e68a4030286cfc218ab3a1a31b8
https://github.com/llvm/llvm-project/commit/83e3779473bf7e68a4030286cfc218ab3a1a31b8
Author: Heejin Ahn <aheejin at gmail.com>
Date: 2024-10-03 (Thu, 03 Oct 2024)
Changed paths:
M llvm/test/MC/WebAssembly/type-checker-errors.s
Log Message:
-----------
[WebAssembly] Add intentations to type-checker-error.s (#111071)
Commit: e1434a8764207d6750c0d0569acb4feb94baf99c
https://github.com/llvm/llvm-project/commit/e1434a8764207d6750c0d0569acb4feb94baf99c
Author: vporpo <vporpodas at google.com>
Date: 2024-10-03 (Thu, 03 Oct 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/Instruction.h
M llvm/lib/SandboxIR/Instruction.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
M llvm/unittests/SandboxIR/TrackerTest.cpp
Log Message:
-----------
[SandboxIR] Switch more Instruction::create() functions to InsertPosition (#111075)
Commit: 876f661dbeb42a76767edfb1f36214baacb27fd4
https://github.com/llvm/llvm-project/commit/876f661dbeb42a76767edfb1f36214baacb27fd4
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2024-10-03 (Thu, 03 Oct 2024)
Changed paths:
M llvm/docs/CommandGuide/lit.rst
M llvm/test/TableGen/anonymous-location.td
M llvm/utils/lit/lit/TestRunner.py
M llvm/utils/lit/tests/substitutions.py
Log Message:
-----------
[LIT] Rename substitution `%basename_s` to `%{s:basename}` (#111062)
Also added `%{t:stem}` as an alias for `%basename_t` and modified unit
test to test these new substitutions.
Commit: eaff3a743406ff1636e6328e1ba1bc66318d53cb
https://github.com/llvm/llvm-project/commit/eaff3a743406ff1636e6328e1ba1bc66318d53cb
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-10-03 (Thu, 03 Oct 2024)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Fix a bug that misannotates binary operators */&/&& (#110945)
Fixes #110879.
Commit: 7ab488e92c39c813a50cb4fd6587e7afc161c7d5
https://github.com/llvm/llvm-project/commit/7ab488e92c39c813a50cb4fd6587e7afc161c7d5
Author: Piyou Chen <piyou.chen at sifive.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang/lib/AST/ASTContext.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
A clang/test/CodeGen/attr-target-version-riscv-invalid.c
A clang/test/CodeGen/attr-target-version-riscv.c
A clang/test/CodeGenCXX/attr-target-version-riscv.cpp
A clang/test/SemaCXX/attr-target-version-riscv.cpp
Log Message:
-----------
[RISCV][FMV] Support target_version (#99040)
This patch enable `target_version` attribute for RISC-V target.
The proposal of `target_version` syntax can be found at the
https://github.com/riscv-non-isa/riscv-c-api-doc/pull/48 (which has
landed), as modified by the proposed
https://github.com/riscv-non-isa/riscv-c-api-doc/pull/85 (which adds the
priority syntax).
`target_version` attribute will trigger the function multi-versioning
feature and act like `target_clones` attribute. See
https://github.com/llvm/llvm-project/pull/85786 for the implementation
of `target_clones`.
Commit: 359006895004c588efe615ae2422b3e068ceff1a
https://github.com/llvm/llvm-project/commit/359006895004c588efe615ae2422b3e068ceff1a
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-03 (Thu, 03 Oct 2024)
Changed paths:
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Driver.cpp
M lld/ELF/LinkerScript.cpp
M lld/ELF/OutputSections.cpp
M lld/ELF/OutputSections.h
M lld/ELF/Relocations.cpp
M lld/ELF/ScriptParser.cpp
M lld/ELF/Writer.cpp
Log Message:
-----------
[ELF] Pass Ctx & to OutputSections
Commit: e9b7a093417bda7e0bed2bd62bcaeb7c2a662665
https://github.com/llvm/llvm-project/commit/e9b7a093417bda7e0bed2bd62bcaeb7c2a662665
Author: goldsteinn <35538541+goldsteinn at users.noreply.github.com>
Date: 2024-10-03 (Thu, 03 Oct 2024)
Changed paths:
M mlir/lib/Interfaces/Utils/InferIntRangeCommon.cpp
M mlir/test/Dialect/Arith/int-range-interface.mlir
Log Message:
-----------
[MLIR] Unconditionally take min of max lhs/rhs value in inferRemU (#110169)
- **[MLIR] Add test for inferring range of remu; NFC**
- **[MLIR] Unconditionally take min of max lhs/rhs value in inferRemU**
`arith.remu` cannot be larger than (rhs - 1) or lhs.
Commit: 1f391a75af8685e6bba89421443d72ac6a186599
https://github.com/llvm/llvm-project/commit/1f391a75af8685e6bba89421443d72ac6a186599
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-03 (Thu, 03 Oct 2024)
Changed paths:
M lld/ELF/Arch/ARM.cpp
M lld/ELF/InputSection.h
M lld/ELF/OutputSections.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
M lld/ELF/Writer.cpp
Log Message:
-----------
[ELF] Pass Ctx & to SyntheticSection::finalizeContents
Commit: 7a5b9ef54eb96abd8415fd893576c42e51fd95db
https://github.com/llvm/llvm-project/commit/7a5b9ef54eb96abd8415fd893576c42e51fd95db
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-03 (Thu, 03 Oct 2024)
Changed paths:
M lld/ELF/AArch64ErrataFix.cpp
M lld/ELF/ARMErrataFix.cpp
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/RISCV.cpp
M lld/ELF/InputSection.h
M lld/ELF/OutputSections.cpp
M lld/ELF/OutputSections.h
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
M lld/ELF/Writer.cpp
Log Message:
-----------
[ELF] Pass Ctx & to SyntheticSection::writeTo
Commit: 1e5e153485b817422c311f9326e80781a83ea7bc
https://github.com/llvm/llvm-project/commit/1e5e153485b817422c311f9326e80781a83ea7bc
Author: Piyou Chen <piyou.chen at sifive.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang/lib/AST/ASTContext.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
R clang/test/CodeGen/attr-target-version-riscv-invalid.c
R clang/test/CodeGen/attr-target-version-riscv.c
R clang/test/CodeGenCXX/attr-target-version-riscv.cpp
R clang/test/SemaCXX/attr-target-version-riscv.cpp
Log Message:
-----------
Revert "[RISCV][FMV] Support target_version" (#111096)
Reverts llvm/llvm-project#99040 due to https://lab.llvm.org/buildbot/#/builders/190/builds/7052
Commit: ec06471c8317487a3f69fac89545253f139a9416
https://github.com/llvm/llvm-project/commit/ec06471c8317487a3f69fac89545253f139a9416
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2024-10-03 (Thu, 03 Oct 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/test/libc_test_rules.bzl
Log Message:
-----------
Stop disabling link_llvmlibc feature in libc_test Bazel rule
This detail is not relevant for the upstream Bazel version. llvm-libc unit tests today directly invoke the function under test using the namespace, which reduces the potential problems of linking with some other (system-provided) version of llvm-libc further.
Commit: e2f0ec3a3a8a2981be8a1aac2004cfb9064c61e8
https://github.com/llvm/llvm-project/commit/e2f0ec3a3a8a2981be8a1aac2004cfb9064c61e8
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-03 (Thu, 03 Oct 2024)
Changed paths:
M lld/ELF/AArch64ErrataFix.cpp
M lld/ELF/ARMErrataFix.cpp
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/RISCV.cpp
M lld/ELF/InputSection.cpp
M lld/ELF/InputSection.h
M lld/ELF/Relocations.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
M lld/ELF/Writer.cpp
Log Message:
-----------
[ELF] Pass Ctx & to SyntheticSection::getSize
Commit: df8795c082100cf9f63cd73db1d8bfabd2d5d710
https://github.com/llvm/llvm-project/commit/df8795c082100cf9f63cd73db1d8bfabd2d5d710
Author: Jim Lin <jim at andestech.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYMCCodeEmitter.cpp
Log Message:
-----------
[CSKY] Fix warning in CSKYMCCodeEmitter::getImmJMPIX.
Use llvm_unreachable instead of assert and replace if-else with switch-case.
Fix https://github.com/llvm/llvm-project/issues/97456.
Commit: c4c34f047461164661b365123af12f4818a0e2c6
https://github.com/llvm/llvm-project/commit/c4c34f047461164661b365123af12f4818a0e2c6
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-03 (Thu, 03 Oct 2024)
Changed paths:
M lld/ELF/InputFiles.cpp
M lld/ELF/InputFiles.h
M lld/ELF/LTO.cpp
Log Message:
-----------
[ELF] Pass Ctx & to InputFiles
Commit: 1682c99a8877364f1d847395cef501e813804caa
https://github.com/llvm/llvm-project/commit/1682c99a8877364f1d847395cef501e813804caa
Author: Carlo Cabrera <github at carlo.cab>
Date: 2024-10-03 (Thu, 03 Oct 2024)
Changed paths:
M clang/lib/Driver/Driver.cpp
Log Message:
-----------
[Clang][Driver] Support relative paths for CLANG_CONFIG_FILE_SYSTEM_DIR (#110962)
Shipping a system configuration file for Clang is useful, but it limits
the relocatability of the toolchain because it bakes in a reference to
an absolute path on the file system.
Let's fix that by allowing for `CLANG_CONFIG_FILE_SYSTEM_DIR` to be set
to a relative path, and then interpreting that relative to the location
of the driver if applicable.
This would be useful for the LLVM package we ship at Homebrew. We
currently have to bake in a `DEFAULT_SYSROOT` in order to ship a
toolchain that works out of the box on macOS. If
`CLANG_CONFIG_FILE_SYSTEM_DIR` supported relative paths, we could
replace that with a configuration file which would be easier to update
when the compiled-in `DEFAULT_SYSROOT` becomes stale (e.g. on macOS
version upgrades).
We could, of course, set `CLANG_CONFIG_FILE_SYSTEM_DIR` to an absolute
path to begin with. However, we do have users who install Homebrew into
a prefix that is different from the one used on our buildbots, so doing
this would result in a broken toolchain for those users.
Commit: 3b0e120336846f450d9dd46936934be7a860f58d
https://github.com/llvm/llvm-project/commit/3b0e120336846f450d9dd46936934be7a860f58d
Author: Luke Lau <luke at igalia.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
A llvm/test/Analysis/CostModel/RISCV/reduce-fmul.ll
Log Message:
-----------
[RISCV] Add tests for @llvm.vector.reduce.fmul. NFC
Commit: 56d6b567394abfc07ea4d3c92fa534bbf58e1942
https://github.com/llvm/llvm-project/commit/56d6b567394abfc07ea4d3c92fa534bbf58e1942
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/include/mlir/Interfaces/VectorInterfaces.td
M mlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Conversion/VectorToSCF/vector-to-scf.mlir
M mlir/test/Dialect/Affine/SuperVectorize/vectorize_1d.mlir
M mlir/test/Dialect/Affine/SuperVectorize/vectorize_2d.mlir
M mlir/test/Dialect/Affine/SuperVectorize/vectorize_affine_apply.mlir
M mlir/test/Dialect/Linalg/hoisting.mlir
M mlir/test/Dialect/Linalg/vectorization.mlir
M mlir/test/Dialect/Vector/invalid.mlir
M mlir/test/Dialect/Vector/ops.mlir
M mlir/test/Dialect/Vector/vector-transfer-permutation-lowering.mlir
M mlir/test/Dialect/Vector/vector-transfer-unroll.mlir
M mlir/test/Integration/Dialect/Vector/CPU/transfer-read-1d.mlir
M mlir/test/Integration/Dialect/Vector/CPU/transfer-read-2d.mlir
M mlir/test/Integration/Dialect/Vector/CPU/transfer-read-3d.mlir
Log Message:
-----------
[mlir][vector] Relax the requirements on broadcast dims (#99341)
NOTE: This is a follow-up for #97049 in which the `in_bounds` attribute
was made mandatory.
This PR updates the semantics of the `in_bounds` attribute so that
broadcast dimensions are no longer required to be "in bounds".
Specifically, these xfer_read/xfer_write Ops become valid after this
change:
```mlir
%read = vector.transfer_read %A[%base1, %base2], %pad
{in_bounds = [false], permutation_map = affine_map<(d0, d1) -> (0)>}
{permutation_map = affine_map<(d0, d1) -> (0)>}
: memref<?x?xf32>, vector<9xf32>
vector.transfer_write %vec, %A[%base1, %base2],
{in_bounds = [false], permutation_map = affine_map<(d0, d1) -> (0)>}
{permutation_map = affine_map<(d0, d1) -> (0)>}
: vector<9xf32>, memref<?x?xf32>
```
Note that the value `false` merely means "may run out-of-bounds", i.e.,
the corresponding access can still be "in bounds". In fact, the folder
for xfer Ops is also updated (*) and will update the attribute value
corresponding to broadcast dims to `true` if all non-broadcast dims
are marked as "in bounds".
Note that this PR doesn't change any of the lowerings. The changes in
"SuperVectorize.cpp", "Vectorization.cpp" and "AffineMap.cpp" are simple
reverts of recent changes in #97049. Those were only meant to facilitate
making `in_bounds` mandatory and to work around the extra requirements
for broadcast dims (those requirements ere removed in this PR). All
changes in tests are also reverts of changes from #97049.
For context, here's a PR in which "broadcast" dims where forced to
always be "in-bounds":
* https://reviews.llvm.org/D102566
(*) See `foldTransferInBoundsAttribute`.
Commit: a10f5abbd48953a77c39d8f9b356d49b58490351
https://github.com/llvm/llvm-project/commit/a10f5abbd48953a77c39d8f9b356d49b58490351
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-03 (Thu, 03 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
Log Message:
-----------
[RISCV] Remove unneeded template parameter from ALU_ri. NFC
Commit: ccca3c63715753d816b0f9b429455b826343bdb3
https://github.com/llvm/llvm-project/commit/ccca3c63715753d816b0f9b429455b826343bdb3
Author: jeanPerier <jperier at nvidia.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M flang/lib/Lower/ConvertVariable.cpp
M flang/test/Lower/HLFIR/assumed-rank-calls.f90
M flang/test/Lower/HLFIR/assumed-rank-entry.f90
M flang/test/Lower/HLFIR/assumed-rank-inquiries-2.f90
M flang/test/Lower/HLFIR/assumed-rank-inquiries-3.f90
M flang/test/Lower/HLFIR/assumed-rank-inquiries.f90
M flang/test/Lower/HLFIR/assumed-rank-internal-proc.f90
M flang/test/Lower/HLFIR/convert-variable-assumed-rank.f90
M flang/test/Lower/HLFIR/select-rank.f90
Log Message:
-----------
[flang] enable assumed-rank lowering by default (#110893)
Aside from a minor TODO about polymorphic RANK(*) (https://github.com/llvm/llvm-project/blob/2b8e81ce919e8db857dc2ba20012e9020af07294/flang/lib/Lower/Bridge.cpp#L3459),
the implementation for assumed-rank is ready for everyone to use.
Commit: 3f9cabae0029bcbe88835aaa4c417ce41e584fb1
https://github.com/llvm/llvm-project/commit/3f9cabae0029bcbe88835aaa4c417ce41e584fb1
Author: Sergey Kozub <skozub at nvidia.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M mlir/include/mlir-c/BuiltinTypes.h
M mlir/include/mlir/IR/Builders.h
M mlir/include/mlir/IR/BuiltinTypes.h
M mlir/include/mlir/IR/BuiltinTypes.td
M mlir/include/mlir/IR/CommonTypeConstraints.td
M mlir/include/mlir/IR/Types.h
M mlir/lib/AsmParser/TokenKinds.def
M mlir/lib/AsmParser/TypeParser.cpp
M mlir/lib/Bindings/Python/IRTypes.cpp
M mlir/lib/CAPI/IR/BuiltinTypes.cpp
M mlir/lib/Conversion/LLVMCommon/TypeConverter.cpp
M mlir/lib/Dialect/Arith/Utils/Utils.cpp
M mlir/lib/IR/AsmPrinter.cpp
M mlir/lib/IR/Builders.cpp
M mlir/lib/IR/BuiltinTypes.cpp
M mlir/lib/IR/MLIRContext.cpp
M mlir/lib/IR/Types.cpp
M mlir/python/mlir/_mlir_libs/_mlir/ir.pyi
M mlir/python/mlir/extras/types.py
M mlir/test/IR/attribute.mlir
M mlir/test/Target/LLVMIR/llvmir.mlir
M mlir/test/python/ir/builtin_types.py
M mlir/utils/lldb-scripts/mlirDataFormatters.py
M mlir/utils/tree-sitter-mlir/grammar.js
Log Message:
-----------
[MLIR] Add f8E8M0FNU type (#111028)
This PR adds `f8E8M0FNU` type to MLIR.
`f8E8M0FNU` type is proposed in [OpenCompute MX
Specification](https://www.opencompute.org/documents/ocp-microscaling-formats-mx-v1-0-spec-final-pdf).
It defines a 8-bit floating point number with bit layout S0E8M0. Unlike
IEEE-754 types, there are no infinity, denormals, zeros or negative
values.
```c
f8E8M0FNU
- Exponent bias: 127
- Maximum stored exponent value: 254 (binary 1111'1110)
- Maximum unbiased exponent value: 254 - 127 = 127
- Minimum stored exponent value: 0 (binary 0000'0000)
- Minimum unbiased exponent value: 0 − 127 = -127
- Doesn't have zero
- Doesn't have infinity
- NaN is encoded as binary 1111'1111
Additional details:
- Zeros cannot be represented
- Negative values cannot be represented
- Mantissa is always 1
```
Related PRs:
- [PR-107127](https://github.com/llvm/llvm-project/pull/107127)
[APFloat] Add APFloat support for E8M0 type
- [PR-105573](https://github.com/llvm/llvm-project/pull/105573) [MLIR]
Add f6E3M2FN type - was used as a template for this PR
- [PR-107999](https://github.com/llvm/llvm-project/pull/107999) [MLIR]
Add f6E2M3FN type
- [PR-108877](https://github.com/llvm/llvm-project/pull/108877) [MLIR]
Add f4E2M1FN type
Commit: 5030deadeffe83b68ff209e27d4ec7f1dbaff01a
https://github.com/llvm/llvm-project/commit/5030deadeffe83b68ff209e27d4ec7f1dbaff01a
Author: Matthias Springer <me at m-sp.org>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M mlir/lib/Transforms/Utils/DialectConversion.cpp
Log Message:
-----------
[mlir][Transforms] Dialect conversion: No rollback during analysis conversion (#106414)
This commit changes the implementation of analysis conversions, so that
no rollback is needed at the end of the analysis. Instead, the dialect conversion is run on a clone of the IR.
The purpose of this commit is to reduce the number of rollbacks in the
dialect conversion framework. (Long term goal: Remove rollback
functionality entirely.)
Commit: bba3849b81c8fc5343e22e767e4c5ab415b4b1d4
https://github.com/llvm/llvm-project/commit/bba3849b81c8fc5343e22e767e4c5ab415b4b1d4
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang/include/clang/AST/APValue.h
Log Message:
-----------
[clang][docs] Add documentation for APValue constructors (#109994)
I always get confused when looking at these.
Commit: 1753de2d9564682cd9034aae50e81691bfd168ec
https://github.com/llvm/llvm-project/commit/1753de2d9564682cd9034aae50e81691bfd168ec
Author: jeanPerier <jperier at nvidia.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M flang/include/flang/Optimizer/CodeGen/TypeConverter.h
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Optimizer/Dialect/FIRType.h
M flang/include/flang/Optimizer/Dialect/FIRTypes.td
M flang/include/flang/Optimizer/HLFIR/HLFIROpBase.td
M flang/lib/Lower/ConvertExpr.cpp
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/CodeGen/Target.cpp
M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
M flang/lib/Optimizer/CodeGen/TypeConverter.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/Dialect/FIRType.cpp
M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
M flang/test/Fir/constant.fir
M flang/test/Fir/fir-types.fir
M flang/test/Fir/invalid-types.fir
M flang/test/Fir/target.fir
M flang/test/Fir/types-to-llvm.fir
R flang/test/Transforms/debug-90683.fir
Log Message:
-----------
[flang][FIR] remove fir.complex type and its fir.real element type (#111025)
Final patch of
https://discourse.llvm.org/t/rfc-flang-replace-usages-of-fir-complex-by-mlir-complex-type/82292
Since fir.real was only still used as fir.complex element type, this
patch removes it at the same time.
Commit: 9cf8c094c77db1ed9e63322bedcf28b76e5c5a43
https://github.com/llvm/llvm-project/commit/9cf8c094c77db1ed9e63322bedcf28b76e5c5a43
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rv64zbs.ll
Log Message:
-----------
[RISCV][DAGCombine] Combine `sext_inreg (shl X, Y), i32` into `sllw X, Y` (#111101)
Alive2: https://alive2.llvm.org/ce/z/ncf36D
Commit: 67d247a441572c046ccd82682ffe1102584f24ec
https://github.com/llvm/llvm-project/commit/67d247a441572c046ccd82682ffe1102584f24ec
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/include/llvm/Analysis/CmpInstAnalysis.h
M llvm/lib/Analysis/CmpInstAnalysis.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/test/Transforms/InstCombine/and-or-icmps.ll
Log Message:
-----------
[InstCombine] Decompose more icmps into masks (#110836)
Extend decomposeBitTestICmp() to handle cases where the resulting
comparison is of the form `icmp (X & Mask) pred C` with non-zero
`C`. Add a flag to allow code to opt-in to this behavior and use it in
the "log op of icmp" fold infrastructure.
This addresses regressions from #97289.
Proofs: https://alive2.llvm.org/ce/z/hUhdbU
Commit: 856774dd4f5a80bca8e8d0bfd50ab630c1c2d49d
https://github.com/llvm/llvm-project/commit/856774dd4f5a80bca8e8d0bfd50ab630c1c2d49d
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/unittests/IR/ConstantFPRangeTest.cpp
Log Message:
-----------
[ConstantFPRange][UnitTest] Ignore NaN payloads when enumerating values in a range (#111083)
NaN payloads can be ignored because they are unrelated with
ConstantFPRange (except the conversion from ConstantFPRange to
KnownBits). This patch just enumerates `+/-[S/Q]NaN` to avoid
enumerating 32 NaN values in all ranges which contain NaN values.
Addresses comment
https://github.com/llvm/llvm-project/pull/110082#issuecomment-2392037204.
This patch reduces the execution time for unittests from 30.37s to
10.59s with an optimized build.
Commit: 9e831d50a0d67c6779048742657edb437818b681
https://github.com/llvm/llvm-project/commit/9e831d50a0d67c6779048742657edb437818b681
Author: Oliver Stannard <oliver.stannard at arm.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang/lib/Driver/ToolChain.cpp
M clang/test/Driver/print-multi-selection-flags.c
Log Message:
-----------
[AArch64] Pass -mabi option through to multilib (#110874)
Pass the -mabi option through to multilib, so that it can be used for
library selection.
Commit: 992e75403f417d46ce9015147ff49d67009e736c
https://github.com/llvm/llvm-project/commit/992e75403f417d46ce9015147ff49d67009e736c
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang-tools-extra/clangd/refactor/tweaks/SwapBinaryOperands.cpp
Log Message:
-----------
Fix MSVC "not all control paths return a value" warning. NFC.
Commit: d9d623310de196f2119fc593811204993916e26e
https://github.com/llvm/llvm-project/commit/d9d623310de196f2119fc593811204993916e26e
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
M mlir/test/Dialect/Linalg/vectorization-with-patterns.mlir
M mlir/test/Dialect/Linalg/vectorization.mlir
Log Message:
-----------
[mlir][linalg] Add a new helper hook: `hasVectorizationImpl` (#110708)
The newly added hook simply returns `false` for Ops for which there's no
"vectorization logic" in the Linalg Vectorizer (i.e. the `vectorize()`
method). It's added so that the following two TD ops expose identical
level of functionality (that's not the case ATM):
* `transform.structured.vectorize_children_and_apply_patterns`
* `transform.structured.vectorize`
Specifically, ATM, the former works only for Linalg Ops, while the
latter works for all Ops that the vectorizer supports (*). With this
change,
I am making sure that both TD will behave consistently.
Note, this shouldn't affect any of the current uses of the vectorizer.
(*) This is implemented via the `vectorize()` method in
Vectorization.cpp.
Commit: d0756caedcf067860240bf31e8f9d371ba706757
https://github.com/llvm/llvm-project/commit/d0756caedcf067860240bf31e8f9d371ba706757
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/lib/Basic/Targets/ARM.cpp
M clang/test/CodeGen/arm-acle-coproc.c
A clang/test/Driver/aarch64-v96a.c
M clang/test/Driver/arm-cortex-cpus-1.c
M clang/test/Preprocessor/aarch64-target-features.c
M clang/test/Preprocessor/arm-target-features.c
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/include/llvm/TargetParser/ARMTargetParser.def
M llvm/include/llvm/TargetParser/Triple.h
M llvm/lib/Target/AArch64/AArch64Features.td
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/ARM/ARMArchitectures.td
M llvm/lib/Target/ARM/ARMFeatures.td
M llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
M llvm/lib/TargetParser/ARMTargetParser.cpp
M llvm/lib/TargetParser/ARMTargetParserCommon.cpp
M llvm/lib/TargetParser/Triple.cpp
M llvm/unittests/TargetParser/TargetParserTest.cpp
Log Message:
-----------
[ARM][AArch64] Introduce the Armv9.6-A architecture version (#110825)
This introduces the Armv9.6-A architecture version, including the
relevant command-line option for -march.
More details about the Armv9.6-A architecture version can be found at:
* https://community.arm.com/arm-community-blogs/b/architectures-and-processors-blog/posts/arm-a-profile-architecture-developments-2024
* https://developer.arm.com/documentation/ddi0602/2024-09/
Commit: 23c02a48f1c7343149b94aafe350ec59d1b14999
https://github.com/llvm/llvm-project/commit/23c02a48f1c7343149b94aafe350ec59d1b14999
Author: bd1976bris <bd1976llvm at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/docs/CommandGuide/llvm-dwarfdump.rst
Log Message:
-----------
[doc] Add llvm --error-display to dwarfdump documentation (#110922)
This adds documentation for --error-display, see:
https://github.com/llvm/llvm-project/pull/79648
Commit: fcdb178bb477a7bd93048fa09a5ca6b1927bdb25
https://github.com/llvm/llvm-project/commit/fcdb178bb477a7bd93048fa09a5ca6b1927bdb25
Author: bd1976bris <bd1976llvm at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/docs/CommandGuide/llvm-dwarfdump.rst
Log Message:
-----------
[doc] Add --verify-json to dwarfdump documentation (#110909)
This adds documentation for --verify-json, see:
https://github.com/llvm/llvm-project/pull/81762
Commit: 26fca7256edc0013886717b2585e638a6100dcea
https://github.com/llvm/llvm-project/commit/26fca7256edc0013886717b2585e638a6100dcea
Author: Shih-Po Hung <shihpo.hung at sifive.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
Log Message:
-----------
[VPlan][NFC] Use patterns in test check (#111086)
Commit: 7be2ce7312191894c2458ecc08de7683fd2314fb
https://github.com/llvm/llvm-project/commit/7be2ce7312191894c2458ecc08de7683fd2314fb
Author: dlav-sc <daniil.avdeev at syntacore.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/lib/Target/RISCV/RISCVFrameLowering.h
M llvm/test/CodeGen/RISCV/branch-relaxation.ll
M llvm/test/CodeGen/RISCV/out-of-reach-emergency-slot.mir
M llvm/test/CodeGen/RISCV/rvv/addi-scalable-offset.mir
M llvm/test/CodeGen/RISCV/rvv/callee-saved-regs.ll
M llvm/test/CodeGen/RISCV/rvv/emergency-slot.mir
M llvm/test/CodeGen/RISCV/rvv/large-rvv-stack-size.mir
M llvm/test/CodeGen/RISCV/stack-realignment.ll
Log Message:
-----------
[RISCV] fix SP recovery in a function epilogue (#110809)
Currently, in the cases when fp register is presented and sp register is
adjusted at the second time, sp recovery in a function epilogue isn't
performed in the best way, for example:
```
lui a0, 2
sub sp, s0, a0
addi a0, a0, -2044
add sp, sp, a0
```
This patch improves sp register recovery in such cases and the code
snippet above becomes:
```
addi sp, s0, -2044
```
Commit: ef8d5069e1b8d322cd6905c03bef1b42e2e86515
https://github.com/llvm/llvm-project/commit/ef8d5069e1b8d322cd6905c03bef1b42e2e86515
Author: CarolineConcatto <caroline.concatto at arm.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang/include/clang/Basic/arm_sme.td
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_write_lane_zt.c
M llvm/lib/Target/AArch64/AArch64Features.td
M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
M llvm/test/MC/AArch64/FP8/directive-arch-negative.s
M llvm/test/MC/AArch64/FP8_SME2/lut.s
M llvm/test/MC/AArch64/FP8_SME2/movt-diagnostics.s
M llvm/test/MC/AArch64/FP8_SME2/movt.s
Log Message:
-----------
[AArch64]Fix FEAT_SME_LUTv2 to have FEAT_SME2 implemented. (#110474)
According to [1]
"If FEAT_SME_LUTv2 is implemented, then FEAT_SME2 is implemented." The
LUTI4[2] not strided and MOVT[3] need FEAT_SME_LUTv2 to be defined.
[1]https://developer.arm.com/documentation/109697/0100/Feature-descriptions/The-Armv9-5-architecture-extension?lang=en#md462-the-armv95-architecture-extension__FEAT_SME_LUTv2
[2]https://developer.arm.com/documentation/ddi0602/2024-06/SME-Instructions/LUTI4--four-registers--8-bit---Lookup-table-read-with-4-bit-indexes-and-8-bit-elements-
[3]https://developer.arm.com/documentation/ddi0602/2024-06/SME-Instructions/MOVT--vector-to-table---Move-vector-register-to-ZT0-
Commit: c734d77b9913052012faf91fdc19753f791421d9
https://github.com/llvm/llvm-project/commit/c734d77b9913052012faf91fdc19753f791421d9
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M flang/include/flang/Semantics/symbol.h
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/semantics.cpp
M flang/test/Lower/OpenMP/statement-function.f90
A flang/test/Semantics/OpenMP/private03.f90
Log Message:
-----------
[flang][semantics][OpenMP] no privatisation of stmt functions (#106550)
OpenMP prohibits privatisation of variables that appear in expressions
for statement functions.
This is a re-working of an old patch https://reviews.llvm.org/D93213 by
@praveen-g-ctt.
The old patch couldn't be landed because of ordering concerns. Statement
functions are rewritten during parse tree rewriting, but this was done
after resolve-directives and so some array expressions were incorrectly
identified as statement functions. For this reason **I have opted to
re-order the semantics driver so that resolve-directives is run after
parse tree rewriting**.
Closes #54677
---------
Co-authored-by: Praveen <praveen at compilertree.com>
Commit: f6f4c177ef03ecd027d884af2cd3caf3ccafcfd1
https://github.com/llvm/llvm-project/commit/f6f4c177ef03ecd027d884af2cd3caf3ccafcfd1
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M flang/test/Integration/debug-local-var-2.f90
M flang/test/Transforms/debug-fn-info.fir
M flang/test/Transforms/debug-local-global-storage-1.fir
M flang/test/Transforms/debug-local-var.fir
Log Message:
-----------
[flang][debug] Use PROGRAM name for main function name (#111022)
For example, in
PROGRAM test_program
...
END PROGRAM
This allows a user to break on the main function with `break
test_program`. This matches what classic flang and gfortran do.
Commit: 60f3e67dae90f43698ae67167d0e024ff2ab0932
https://github.com/llvm/llvm-project/commit/60f3e67dae90f43698ae67167d0e024ff2ab0932
Author: serge-sans-paille <sguelton at mozilla.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M runtimes/cmake/Modules/WarningFlags.cmake
Log Message:
-----------
[libc++] Activate -Warray-zero when building (#110812)
Commit: b5598c33f02732e805e50a3eb5c67b17952c5683
https://github.com/llvm/llvm-project/commit/b5598c33f02732e805e50a3eb5c67b17952c5683
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/test/CodeGen/X86/bitcast-int-to-vector-bool-sext.ll
M llvm/test/CodeGen/X86/bitcast-int-to-vector-bool-zext.ll
M llvm/test/CodeGen/X86/vector-replicaton-i1-mask.ll
M llvm/test/CodeGen/X86/vector-sext.ll
Log Message:
-----------
[X86] Regenerate test checks with vpternlog comments
Commit: 972353fdfad02ae3206c91c80dd4eaa997b3d499
https://github.com/llvm/llvm-project/commit/972353fdfad02ae3206c91c80dd4eaa997b3d499
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
A llvm/test/Analysis/LoopAccessAnalysis/no-dep-via-loop-guards.ll
Log Message:
-----------
[LAA] Add tests where results can be improved using loop guards.
Commit: b837c9e289dab93c7f8a06876e3f70b6864f40ab
https://github.com/llvm/llvm-project/commit/b837c9e289dab93c7f8a06876e3f70b6864f40ab
Author: Martin Storsjö <martin at martin.st>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86InstrCompiler.td
M llvm/test/CodeGen/X86/x86-win64-shrink-wrapping.ll
Log Message:
-----------
Revert "[llvm] Mark win x64 SEH pseudo instruction as meta instructions (#110889)"
This reverts commit db33d82026b8742b2719289547e3cb9910c8d7d1.
This commit caused errors when compiling for i686 with codeview
debug info enabled, see
https://github.com/llvm/llvm-project/pull/110889#issuecomment-2393405613
for details.
Commit: 948467bf7398f5882472ff30bf09e604e237f456
https://github.com/llvm/llvm-project/commit/948467bf7398f5882472ff30bf09e604e237f456
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp
Log Message:
-----------
[AMDGPU] Use a range-based for loop. NFC.
Commit: 53b3c9e408b740addce630e806ccd143b3ca0fde
https://github.com/llvm/llvm-project/commit/53b3c9e408b740addce630e806ccd143b3ca0fde
Author: Danial Klimkin <dklimkin at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[bazel] Fix libc/hdr past c63112a9118277a20ae440f3f69189c0937e8f4d (#111135)
Commit: dec4cfdb09596f34f17a653ad405ab2551b09039
https://github.com/llvm/llvm-project/commit/dec4cfdb09596f34f17a653ad405ab2551b09039
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/test/Analysis/LoopAccessAnalysis/no-dep-via-loop-guards.ll
Log Message:
-----------
[LAA] Use loop guards when checking invariant accesses.
Apply loop guards to start and end pointers like done in other places to
improve results.
Commit: f5815b9903321367990afea7618978ef880d4e99
https://github.com/llvm/llvm-project/commit/f5815b9903321367990afea7618978ef880d4e99
Author: Han-Kuan Chen <hankuan.chen at sifive.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP] NFC. Set NumOperands directly if VL[0] is IntrinsicInst. (#111103)
Commit: a1b6daea2c85e2a835c7e9f982493b2c1b979c6e
https://github.com/llvm/llvm-project/commit/a1b6daea2c85e2a835c7e9f982493b2c1b979c6e
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M mlir/lib/Dialect/LLVMIR/Transforms/DIScopeForLLVMFuncOp.cpp
Log Message:
-----------
[mlir][LLVMIR] Add LLVMDialect check in `DIScopeForLLVMFuncOp` (#110427)
This PR adds an LLVMDialect check in `DIScopeForLLVMFuncOp` to prevent
crashes. Fixes #108390.
Commit: 6294679faa8ae57873b7fcdc00a4deb522d31c38
https://github.com/llvm/llvm-project/commit/6294679faa8ae57873b7fcdc00a4deb522d31c38
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M lldb/include/lldb/Symbol/UnwindPlan.h
M lldb/source/Symbol/UnwindPlan.cpp
M lldb/source/Target/RegisterContextUnwind.cpp
Log Message:
-----------
[lldb] Add isConstant mode for FA locations (#110726)
This is similar to 9fe455fd0c7d, but for FA locations instead of
register locations.
This is useful for unwind plans that cannot create abstract unwind
rules, but instead must inspect the state of the program to determine
the current CFA.
Commit: d826b0c90f0b0ebebd2b7ed37bf6ff71b34360c8
https://github.com/llvm/llvm-project/commit/d826b0c90f0b0ebebd2b7ed37bf6ff71b34360c8
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/include/llvm/CodeGen/MIRYamlMapping.h
M llvm/include/llvm/CodeGen/MachineFunction.h
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/MIRParser/MIRParser.cpp
M llvm/lib/CodeGen/MIRPrinter.cpp
M llvm/lib/CodeGen/RemoveLoadsIntoFakeUses.cpp
M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
A llvm/test/CodeGen/MIR/Generic/machine-function-hasfakeuses-conflict.mir
M llvm/test/CodeGen/MIR/Generic/machine-function-optionally-computed-properties.mir
M llvm/test/tools/llvm-reduce/mir/preserve-func-info.mir
M llvm/tools/llvm-reduce/ReducerWorkItem.cpp
Log Message:
-----------
[LLVM] Add HasFakeUses to MachineFunction (#110097)
Following the addition of the llvm.fake.use intrinsic and corresponding
MIR instruction, two further changes are planned: to add an
-fextend-lifetimes flag to Clang that emits these intrinsics, and to
have -Og enable this flag by default. Currently, some logic for handling
fake uses is gated by the optdebug attribute, which is intended to be
switched on by -fextend-lifetimes (and by extension -Og later on).
However, the decision was made that a general optdebug attribute should
be incompatible with other opt_ attributes (e.g. optsize, optnone),
since they all express different intents for how to optimize the
program. We would still like to allow -fextend-lifetimes with optsize
however (i.e. -Os -fextend-lifetimes should be legal), since it may be a
useful configuration and there is no technical reason to not allow it.
This patch resolves this by tracking MachineFunctions that have fake
uses, allowing us to run passes that interact with them and skip passes
that clash with them.
Commit: 15ee17c3ce34623261788d7de3c1bdf5860be34e
https://github.com/llvm/llvm-project/commit/15ee17c3ce34623261788d7de3c1bdf5860be34e
Author: Elvina Yakubova <eyakubova at nvidia.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
R llvm/test/Transforms/SLPVectorizer/X86/addsub.ll
R llvm/test/Transforms/SLPVectorizer/X86/consecutive-access.ll
R llvm/test/Transforms/SLPVectorizer/X86/extract-subvector-long-input.ll
R llvm/test/Transforms/SLPVectorizer/X86/extract-vectorized-operand.ll
R llvm/test/Transforms/SLPVectorizer/X86/extract_with_non_const_index.ll
R llvm/test/Transforms/SLPVectorizer/X86/icmp-altopcode-after-reordering.ll
R llvm/test/Transforms/SLPVectorizer/X86/insert-shuffle.ll
R llvm/test/Transforms/SLPVectorizer/X86/limit.ll
R llvm/test/Transforms/SLPVectorizer/X86/operand-is-reduced-val.ll
R llvm/test/Transforms/SLPVectorizer/X86/reduced-gathered-vectorized.ll
R llvm/test/Transforms/SLPVectorizer/X86/reduction-min-select.ll
R llvm/test/Transforms/SLPVectorizer/X86/reduction_loads.ll
R llvm/test/Transforms/SLPVectorizer/X86/reorder-node.ll
R llvm/test/Transforms/SLPVectorizer/X86/return.ll
R llvm/test/Transforms/SLPVectorizer/X86/reused-scalar-in-multi-node.ll
R llvm/test/Transforms/SLPVectorizer/X86/revec-reduction-logical.ll
R llvm/test/Transforms/SLPVectorizer/X86/same-scalars-reordered-in-reduction.ll
R llvm/test/Transforms/SLPVectorizer/X86/several_store_chains.ll
R llvm/test/Transforms/SLPVectorizer/X86/shuffle-mask-resized.ll
R llvm/test/Transforms/SLPVectorizer/X86/splat-buildvector.ll
R llvm/test/Transforms/SLPVectorizer/X86/vectorize-reorder-alt-shuffle.ll
R llvm/test/Transforms/SLPVectorizer/X86/vectorize-reordered-list.ll
A llvm/test/Transforms/SLPVectorizer/addsub.ll
A llvm/test/Transforms/SLPVectorizer/consecutive-access.ll
A llvm/test/Transforms/SLPVectorizer/extract-subvector-long-input.ll
A llvm/test/Transforms/SLPVectorizer/extract-vectorized-operand.ll
A llvm/test/Transforms/SLPVectorizer/extract_with_non_const_index.ll
A llvm/test/Transforms/SLPVectorizer/icmp-altopcode-after-reordering.ll
A llvm/test/Transforms/SLPVectorizer/insert-shuffle.ll
A llvm/test/Transforms/SLPVectorizer/limit.ll
A llvm/test/Transforms/SLPVectorizer/operand-is-reduced-val.ll
A llvm/test/Transforms/SLPVectorizer/reduced-gathered-vectorized.ll
A llvm/test/Transforms/SLPVectorizer/reduction-min-select.ll
A llvm/test/Transforms/SLPVectorizer/reduction_loads.ll
A llvm/test/Transforms/SLPVectorizer/reorder-node.ll
A llvm/test/Transforms/SLPVectorizer/return.ll
A llvm/test/Transforms/SLPVectorizer/reused-scalar-in-multi-node.ll
A llvm/test/Transforms/SLPVectorizer/revec-reduction-logical.ll
A llvm/test/Transforms/SLPVectorizer/same-scalars-reordered-in-reduction.ll
A llvm/test/Transforms/SLPVectorizer/several_store_chains.ll
A llvm/test/Transforms/SLPVectorizer/shuffle-mask-resized.ll
A llvm/test/Transforms/SLPVectorizer/splat-buildvector.ll
A llvm/test/Transforms/SLPVectorizer/vectorize-reorder-alt-shuffle.ll
A llvm/test/Transforms/SLPVectorizer/vectorize-reordered-list.ll
Log Message:
-----------
[SLP] Move more X86 tests to common directory (#111134)
Some of the tests from the X86 directory can be generalized to improve
coverage for other architectures (cont.)
Commit: 800b07396ff54b037fa9b73bb15586456656fb79
https://github.com/llvm/llvm-project/commit/800b07396ff54b037fa9b73bb15586456656fb79
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/Descriptor.cpp
M clang/lib/AST/ByteCode/Descriptor.h
M clang/lib/AST/ByteCode/Pointer.cpp
M clang/lib/AST/ByteCode/Pointer.h
M clang/test/CodeGen/2008-08-07-AlignPadding1.c
M clang/unittests/AST/ByteCode/Descriptor.cpp
Log Message:
-----------
[clang][bytecode] Change isArrayElement() for narrowed composite arrays (#111110)
Make isArrayElement() return true here, so we can know that such a
pointer is in fact an array element and handle it properly in
toAPValue().
Commit: 1811e872042a32e28ec0956a8422780b176ef3a4
https://github.com/llvm/llvm-project/commit/1811e872042a32e28ec0956a8422780b176ef3a4
Author: Jie Fu <jiefu at tencent.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/MachineFunction.cpp
Log Message:
-----------
[CodeGen] Fix enumeration value 'HasFakeUses' not handled in switch (NFC)
llvm-project/llvm/lib/CodeGen/MachineFunction.cpp:95:10:
error: enumeration value 'HasFakeUses' not handled in switch [-Werror,-Wswitch]
switch(Prop) {
^~~~
1 error generated.
Commit: 04540fac5bfa6c1630e84ccdc7f817bd8bc1a986
https://github.com/llvm/llvm-project/commit/04540fac5bfa6c1630e84ccdc7f817bd8bc1a986
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/include/llvm/TableGen/Error.h
M llvm/lib/TableGen/Error.cpp
M llvm/lib/TableGen/Record.cpp
M llvm/test/TableGen/assert.td
Log Message:
-----------
[TableGen] Print record location when record asserts fail (#111029)
When record assertions fail, print an error message with the record's
location, so it's easier to see where the record that caused the assert
to fail was instantiated. This is useful when the assert condition in a
class depends on a template parameter, so we need to know the context of
the definition to determine why the assert failed.
Also enhanced the assert.td test to check for these context messages,
and also add checks for some assert failures that were missing in the
test.
Commit: 02debcef12793b5bf926a41a24ede18dc50eb18b
https://github.com/llvm/llvm-project/commit/02debcef12793b5bf926a41a24ede18dc50eb18b
Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values5.ll
A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values5.ll.expected
A llvm/test/tools/UpdateTestChecks/update_test_checks/stable_ir_values5.test
M llvm/utils/UpdateTestChecks/common.py
Log Message:
-----------
update_test_checks: improve IR value name stability (#110940)
By default, UTC attempts to keep the produced diff small by keeping IR
value name variables stable. The old algorithm was roughly:
1. Compute a diff between the old and new check lines, where
"uncommitted" variable names are replaced by a wildcard.
This leads to a set of non-crossing "candidate" pairs of
(old line, new line) that we can try to make equal.
2. Greedily walk this list of candidates, committing to variable names
that make candidate lines equal if possible.
The greedy approach in the second step has the downside that committing
to a variable name greedily can sometimes prevent many subsequent
candidates from getting the variable name assignment that would make
them equal.
We keep the first step as-is, but replace the second one by an algorithm
that finds a large independent set of candidates, i.e. candidate pairs
of (old line, new line) which are non-conflicting in the sense that
their desired variable name mappings are not in conflict.
We find the large independent set by greedily assigning a coloring to
the conflict graph and taking the largest color class. We then commit to
all the variable name mappings which are desired by candidates in this
largest color class.
As before, we then recurse into regions between matching lines. This is
required in large cases. For example, running this algorithm at the
top-level of the new test case (stable_ir_values5.ll) matches up most of
the instructions, but not the names of the result values of all the
`load`s. This is because (unlike e.g. the getelementptrs) the load
instructions are all equal except for variable names, and so step 1 (the
diff algorithm) doesn't consider them as candidates. However, they are
trivially matched by recursion.
This also happens to fix a bug in tracking line indices that went
unnoticed previously...
As is usually the case with these changes, the quality improvement is
hard to see from the diff of this patch. However, it becomes obvious
when
comparing the diff of stable_ir_values5.ll against
stable_ir_value5.ll.expected
before and after this change.
Commit: b01be72af0001991400b1e9adaecafd7c4e02d2b
https://github.com/llvm/llvm-project/commit/b01be72af0001991400b1e9adaecafd7c4e02d2b
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/include/llvm/CodeGen/MachineFunction.h
M llvm/lib/CodeGen/MachineFunction.cpp
Log Message:
-----------
[NFC][CodeGen] Remove unused HasFakeUses MachineFunctionProperty
A previous commit d826b0c9 accidentally added a new MachineFunctionProperty,
HasFakeUses, that was unused by the commit (and results in an
uncovered-switch warning, which was fixed by a separate followup 1811e872);
this patch removes that enum value.
Commit: e5a0c30e4ad6b22b17b72cc40b609905d2f97703
https://github.com/llvm/llvm-project/commit/e5a0c30e4ad6b22b17b72cc40b609905d2f97703
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
A llvm/test/CodeGen/AMDGPU/tail-call-inreg-arguments.convergencetokens.ll
M llvm/test/CodeGen/AMDGPU/tail-call-inreg-arguments.ll
A llvm/test/CodeGen/AMDGPU/tail-call-uniform-target-in-vgprs-issue110930.convergencetokens.ll
M llvm/test/CodeGen/AMDGPU/tail-call-uniform-target-in-vgprs-issue110930.ll
Log Message:
-----------
AMDGPU: Work around machine verifier failure with convergence tokens
Apparently any function with convergence tokens will fail the
machine verifier after register allocation. The existing codegen tests
for tokens use stop-before, and do not run to the end. Work around this
by splitting out tests with convergence tokens. Fixes EXPENSIVE_CHECKS
bot failures after c08d7b3de7409aecadd7f9edfe0f3a1ce28a6374 and
428ae0f12e29eff1ddcaf59bdcce904ec056963e
Commit: 3c98d8c14612699444ac906729c9b2872190c938
https://github.com/llvm/llvm-project/commit/3c98d8c14612699444ac906729c9b2872190c938
Author: Erich Keane <ekeane at nvidia.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/SemaOpenACC.h
M clang/lib/Sema/SemaOpenACC.cpp
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/SemaOpenACC/loop-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/loop-construct-device_type-clause.c
M clang/test/SemaOpenACC/loop-construct-tile-clause.cpp
Log Message:
-----------
[OpenACC] Implement 'tile' loop count/tightly nested loop requirement (#111038)
the 'tile' clause requires that it be followed by N (where N is the
number of size expressions) 'tightly nested loops'. This means the
same as it does in 'collapse', so much of the implementation is
simliar/shared with that.
Commit: 097379ac9b0bd06d2437803fc7b1d00664b21383
https://github.com/llvm/llvm-project/commit/097379ac9b0bd06d2437803fc7b1d00664b21383
Author: bd1976bris <bd1976llvm at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/docs/CommandGuide/llvm-objcopy.rst
Log Message:
-----------
[doc] Fix rendering for objcopy's --remove-symbol-prefix option text (#111131)
Commit: a3cc4b61a0414a844058f064bd19d1d4085e0f6c
https://github.com/llvm/llvm-project/commit/a3cc4b61a0414a844058f064bd19d1d4085e0f6c
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
Log Message:
-----------
[RISCV][GISEL][NFC] Make MRI a member in RISCVInstructionSelector (#110926)
It was requested in
https://github.com/llvm/llvm-project/pull/110782#discussion_r1784939348
that MRI be made a member of RISCVInstructionSelector.
RISCVInstructionSelector is created in the RISCVSubtarget, independent
of MachineFunction. So it cannot be passed by reference during
construction of RISCVInstructionSelector.
The MachineRegisterInfo object belongs to each MachineFunction, so
set it in setupMF.
Commit: 8d661fd9fd50fe4be9a9d5a8cc8f52f23925e7f6
https://github.com/llvm/llvm-project/commit/8d661fd9fd50fe4be9a9d5a8cc8f52f23925e7f6
Author: Pavel Skripkin <paskripkin at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
M clang/test/Analysis/asm.cpp
Log Message:
-----------
[analyzer] use `invalidateRegions()` in `VisitGCCAsmStmt` (#109838)
Commit: d8f22514eb0b83f302872af4689d27dce67501fc
https://github.com/llvm/llvm-project/commit/d8f22514eb0b83f302872af4689d27dce67501fc
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/test/CodeGen/nvptx_attributes.c
M clang/test/CodeGenCXX/dynamic-cast-address-space.cpp
M clang/test/OpenMP/target_parallel_for_codegen.cpp
M clang/test/OpenMP/target_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_private_codegen.cpp
M clang/test/OpenMP/target_teams_map_codegen.cpp
Log Message:
-----------
[Clang] Automatically enable `-fconvergent-functions` on GPU targets (#111076)
Summary:
This patch causes us to respect the `-fconvergent-functions` and
`-fno-convergent-functions` options correctly. GPU targets should have
this set all the time, but we now offer `-fno-convergent-functions` to
opt-out if you want to test broken behavior. This munged about with a
lot of the old weird logic, but I don't think it makes any real changes.
Commit: 8e33ff7d5669ec62ad26a0beb81cd257cb14258e
https://github.com/llvm/llvm-project/commit/8e33ff7d5669ec62ad26a0beb81cd257cb14258e
Author: Matthias Springer <me at m-sp.org>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
R mlir/test/Integration/Dialect/SparseTensor/GPU/CUDA/dump-ptx.mlir
A mlir/test/Integration/GPU/CUDA/dump-ptx.mlir
Log Message:
-----------
[mlir][GPU][NFC] Move `dump-ptx.mlir` test case (#111142)
Commit: 208f42fd9bb59c007b0d6abe7eaf8c4e829740ea
https://github.com/llvm/llvm-project/commit/208f42fd9bb59c007b0d6abe7eaf8c4e829740ea
Author: Matthias Springer <me at m-sp.org>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/NVVMDialect.h
M mlir/lib/Dialect/LLVMIR/IR/BasicPtxBuilderInterface.cpp
Log Message:
-----------
[mlir][NVVM] Add constant memory space identifier (#111141)
Also use these enums in `BasicPtxBuilderInferface.cpp`.
Commit: 2f245875b2f71272e6d7a78b4aed5be81109e9b9
https://github.com/llvm/llvm-project/commit/2f245875b2f71272e6d7a78b4aed5be81109e9b9
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/test/Lower/OpenMP/loop-compound.f90
Log Message:
-----------
[flang][OpenMP] Handle unstructured CF in compound loop constructs (#111111)
Fixes a bug in handling unstructured control-flow in compound loop
constructs. The fix makes sure that unstructured CF does not get lowered
until we reach the last item of the compound construct. This way, we
avoid moving block of unstructured loops in-between the middle items of
the construct and messing (i.e. adding operations) to these block while
doing so.
Commit: d68083feba2ff869dae96e938b1fa64296f84274
https://github.com/llvm/llvm-project/commit/d68083feba2ff869dae96e938b1fa64296f84274
Author: Hari Limaye <hari.limaye at arm.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/test/Transforms/FunctionSpecialization/function-specialization2.ll
M llvm/test/Transforms/FunctionSpecialization/identical-specializations.ll
Log Message:
-----------
[FuncSpec] Update tests to use --include-generated-funcs (NFC)
Commit: 47c8b95daeec8e6cb012344ed037024528a73295
https://github.com/llvm/llvm-project/commit/47c8b95daeec8e6cb012344ed037024528a73295
Author: Daniel Hoekwater <hoekwater at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/CFIFixup.cpp
Log Message:
-----------
[CFIFixup] Factor CFI remember/restore insertion into a helper (NFC) (#111066)
Inserting a remember/restore pair is a very clean abstraction, so we can
split the logic out into a helper function. Additionally, cleaning this up
will make it easier to add logic for handling functions that are split across
multiple sections.
Commit: 4da4fac322165420f0522cb554e5f6f25540d564
https://github.com/llvm/llvm-project/commit/4da4fac322165420f0522cb554e5f6f25540d564
Author: Hari Limaye <hari.limaye at arm.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Transforms/IPO/ArgumentPromotion.cpp
M llvm/test/Transforms/ArgumentPromotion/actual-arguments.ll
Log Message:
-----------
[ArgPromotion] Consider InvokeInst in Caller alias analysis (#110335)
Check that all users of a Function are CallBase rather than CallInst
when performing alias analysis using actual arguments in the calling
function, as this check is also valid for Invoke instructions.
This allows replacing the existing check with an assert, as the Function
only being used by CallBase derived instructions is a precondition of
the transform.
This addresses post-commit review on #106216.
Commit: d2051919bb42087ebde2a8bdcd5b2676ad16d8eb
https://github.com/llvm/llvm-project/commit/d2051919bb42087ebde2a8bdcd5b2676ad16d8eb
Author: bd1976bris <bd1976llvm at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/Interp.cpp
Log Message:
-----------
[MSVC] work-around for compile time issue 102513 (#110986)
Disable optimizations when building clang/lib/AST/ByteCode/Interp.cpp
with Microsoft's compiler as it has a bug that causes excessive build
times. We do this only when NDEBUG is not defined on the assumption that
building without asserts indicates that a user is strongly invested in
runtime performance.
Partially addresses: https://github.com/llvm/llvm-project/issues/102513.
Once the bug is addressed in the Microsoft compiler this can be removed.
Co-authored-by: dyung
Commit: 6b3220afa62bb1e77acf18dc7b622df9223e1ea8
https://github.com/llvm/llvm-project/commit/6b3220afa62bb1e77acf18dc7b622df9223e1ea8
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll
Log Message:
-----------
[InstCombine] Avoid crash on aggregate types in SimplifyDemandedUseFPClass (#111128)
The disables folding for FP aggregates that are not poison/posZero
types, which is currently not supported. Note: To fully handle this
aggregates would also likely require teaching `computeKnownFPClass()` to
handle array and struct constants (which does not seem implemented
outside of zero init).
Commit: bf488ed6e1fbe4c494a1dc0dd199a3d03405784e
https://github.com/llvm/llvm-project/commit/bf488ed6e1fbe4c494a1dc0dd199a3d03405784e
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
R llvm/CODE_OWNERS.TXT
A llvm/Maintainers.md
Log Message:
-----------
[LLVM][Maintainers] Move code owner list to Maintainers.md (#110240)
Following
https://discourse.llvm.org/t/rfc-proposing-changes-to-the-community-code-ownership-policy/80714
and https://github.com/llvm/llvm-project/pull/107384, this PR moves the
llvm CODE_OWNERS.txt to the Maintainers.md file.
The general format of the Maintainers.md file follows the current
CodeOwners.rst from clang, with some minor terminology changes to
account for the code owners -> maintainers migration.
This change is intended to be a pure format change, without changing any
actual code owners / maintainers. The list is still very badly outdated.
The intent here is to get the format change out of the way, so we can
get proper diffs when replacing no longer active maintainers. If we mix
both together, it will be hard to follow what actually changed.
I've tried to categorize things as best as I could, and filled in GitHub
handles for people where I knew them or could determine them with some
confidence.
Commit: 9f3f76a6b443ace47b564d79192ca176de4dd236
https://github.com/llvm/llvm-project/commit/9f3f76a6b443ace47b564d79192ca176de4dd236
Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values2.ll
M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values2.ll.expected
M llvm/utils/UpdateTestChecks/common.py
Log Message:
-----------
update_test_checks: collect original check lines for old versions of lit tests (#111148)
Old versions of UTC produced function labels like:
; CHECK-LABEL: @func(
Fix the regular expression used when scanning for old check lines to
recognize this form of label.
This allows meta variable stability to apply when running UTC on tests
using this form of label.
Reported-by: Nikita Popov <npopov at redhat.com>
Commit: 8305e9fc09a54a520b29426628992e34b156d8f9
https://github.com/llvm/llvm-project/commit/8305e9fc09a54a520b29426628992e34b156d8f9
Author: Daniel Hoekwater <hoekwater at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/CFIFixup.cpp
Log Message:
-----------
Revert "[CFIFixup] Factor CFI remember/restore insertion into a helper (NFC)" (#111168)
Reverts llvm/llvm-project#111066
This seems to be breaking some builds:
- https://lab.llvm.org/buildbot/#/builders/51/builds/4732
- https://lab.llvm.org/buildbot/#/builders/41/builds/2534
- https://lab.llvm.org/buildbot/#/builders/73/builds/6601
Commit: 2997a67172e0f3752f9f25210d86ba6fa65e63e7
https://github.com/llvm/llvm-project/commit/2997a67172e0f3752f9f25210d86ba6fa65e63e7
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang/lib/Sema/SemaLambda.cpp
Log Message:
-----------
[Sema] Avoid repeated hash lookups (NFC) (#111090)
Commit: 6a8fcb0fa899af0b65caa3605fbed359189bed2f
https://github.com/llvm/llvm-project/commit/6a8fcb0fa899af0b65caa3605fbed359189bed2f
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang/utils/TableGen/MveEmitter.cpp
Log Message:
-----------
[TableGen] Avoid repeated hash lookups (NFC) (#111089)
Commit: c7895f0d72ef3797fff6f687fd696e9a70911703
https://github.com/llvm/llvm-project/commit/c7895f0d72ef3797fff6f687fd696e9a70911703
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
Log Message:
-----------
[DependencyScanning] Avoid repeated hash lookups (NFC) (#111088)
Commit: dada3c316d69ab641c9972062745ac16af34533e
https://github.com/llvm/llvm-project/commit/dada3c316d69ab641c9972062745ac16af34533e
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang/tools/libclang/CXIndexDataConsumer.cpp
Log Message:
-----------
[libclang] Avoid repeated hash lookups (NFC) (#111087)
Commit: ed59d571f2704aff4dfdeace57c286a2c6deac74
https://github.com/llvm/llvm-project/commit/ed59d571f2704aff4dfdeace57c286a2c6deac74
Author: Kyungwoo Lee <kyulee at meta.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/include/llvm/LTO/LTO.h
M llvm/include/llvm/Support/Caching.h
M llvm/lib/LTO/LTO.cpp
M llvm/lib/Support/Caching.cpp
Log Message:
-----------
[ThinLTO][NFC] Refactor FileCache (#110463)
This is a prep for https://github.com/llvm/llvm-project/pull/90933.
- Change `FileCache` from a function to a type.
- Store the cache directory in the type, which will be used when creating additional caches for two-codegen round runs that inherit this value.
Commit: 19992eea2300f1e97a71013b50f582538cad5022
https://github.com/llvm/llvm-project/commit/19992eea2300f1e97a71013b50f582538cad5022
Author: Danial Klimkin <dklimkin at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M mlir/lib/Dialect/LLVMIR/IR/BasicPtxBuilderInterface.cpp
Log Message:
-----------
Partially revert "[mlir][NVVM] Add constant memory space identifier" (#111169)
The second part of the change introduced circular dependency between
LLVMDialect and BasicPtxBuilderInterface.
Commit: 6937dbbe51391471f3cf50fe2b8fa2cd14080a3b
https://github.com/llvm/llvm-project/commit/6937dbbe51391471f3cf50fe2b8fa2cd14080a3b
Author: Matthias Springer <me at m-sp.org>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M mlir/lib/Conversion/LLVMCommon/Pattern.cpp
M mlir/test/Conversion/MemRefToLLVM/convert-static-memref-ops.mlir
Log Message:
-----------
[mlir][memref] Fix `alloca` lowering with 0 dimensions (#111119)
The `memref.alloca` lowering computed the allocation size incorrectly
when there were 0 dimensions.
Previously:
```
memref.alloca() : memref<10x0x2xf32>
--> llvm.alloca 20xf32
```
Now:
```
memref.alloca() : memref<10x0x2xf32>
--> llvm.alloca 0xf32
```
>From the `llvm.alloca` documentation:
```
Allocating zero bytes is legal, but the returned pointer may not be unique.
```
Commit: b9330e548e807ad79982b6e819797202d85b64cf
https://github.com/llvm/llvm-project/commit/b9330e548e807ad79982b6e819797202d85b64cf
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
A llvm/test/Transforms/EarlyCSE/replace-calls-def-attrs.ll
Log Message:
-----------
[EarlyCSE] Add tests for de-duplication of callsites with differing attrs; NFC
Commit: b98c405f954f9ef6150c655f6ffc68e377d2ac84
https://github.com/llvm/llvm-project/commit/b98c405f954f9ef6150c655f6ffc68e377d2ac84
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/EarlyCSE.cpp
M llvm/test/Transforms/EarlyCSE/replace-calls-def-attrs.ll
Log Message:
-----------
[EarlyCSE] De-Duplicate callsites with differing attrs
We only do this if the attributes of the two callsites are compatible
(intersectable) which is probably not in fact necessary.
Closes #110929
Commit: d991e054529a805019d67769afd602ff878496f7
https://github.com/llvm/llvm-project/commit/d991e054529a805019d67769afd602ff878496f7
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/gathered-consecutive-loads-different-types.ll
Log Message:
-----------
[SLP]Fix compiler crash on vectorizing gatehrd loads with different types
Need to check not only parents, but also types for compatible loads,
when trying to build the vectorizable sequences.
Fixes crash reported in https://github.com/llvm/llvm-project/pull/107461#issuecomment-2392980214
Commit: 87c799af31e2a82801f4dbda83125a0265d8c216
https://github.com/llvm/llvm-project/commit/87c799af31e2a82801f4dbda83125a0265d8c216
Author: Paul Walker <paul.walker at arm.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/test/CodeGen/AArch64/sve-intrinsics-while.ll
Log Message:
-----------
Regenerate output for llvm/test/CodeGen/AArch64/sve-intrinsics-while.ll
Commit: dd04cf0c9d97a6d73c832ceb6cd060ec3589876e
https://github.com/llvm/llvm-project/commit/dd04cf0c9d97a6d73c832ceb6cd060ec3589876e
Author: Benoit Jacob <jacob.benoit.1 at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
MLIR BUILD.bazel: fold `BasicPtxBuilderInterface` into `NVVMDialect` (#111172)
While doing an integrate into downstream
https://github.com/iree-org/iree, I ran into a typical Bazel error with
`BasicPtxBuilderInterface.cpp` including `NVVMDialect.h` which was not
exposed as a header by a declared dependency. I tried fixing this the
straightforward way, by letting `:BasicPtxBuilderInterface` depend on
`:NVVMDialect` , but that caused another Bazel error: circular
dependency between these two targets, as `:NVVMDialect` was already
depending on `:BasicPtxBuilderInterface`. I tried breaking that circle
by dropping the latter dependency, but it was a real dependency in the
code, specifically in the TableGen-generated code. So in the end it
seems that these two targets just need to be fused, which this PR does.
Signed-off-by: Benoit Jacob <jacob.benoit.1 at gmail.com>
Commit: 99c05b269010e817a0a2b44a7dad8ad28f8ac41b
https://github.com/llvm/llvm-project/commit/99c05b269010e817a0a2b44a7dad8ad28f8ac41b
Author: Matthias Springer <me at m-sp.org>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M mlir/test/Integration/Dialect/Linalg/CPU/test-collapse-tensor.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-expand-tensor.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-padtensor.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-subtensor-insert-multiple-uses.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-subtensor-insert.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-tensor-e2e.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-tensor-matmul.mlir
Log Message:
-----------
[mlir] Remove `-finalizing-bufferize` from tests (#111177)
This pass is not needed when the IR was bufferized with
`-one-shot-bufferize`.
Commit: d883ef10767c5ac22b43f7f9f49e4565e7ce8263
https://github.com/llvm/llvm-project/commit/d883ef10767c5ac22b43f7f9f49e4565e7ce8263
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/include/llvm/TableGen/Record.h
A llvm/include/llvm/TableGen/TGTimer.h
M llvm/lib/TableGen/CMakeLists.txt
M llvm/lib/TableGen/Main.cpp
M llvm/lib/TableGen/Record.cpp
A llvm/lib/TableGen/TGTimer.cpp
M llvm/utils/TableGen/CallingConvEmitter.cpp
M llvm/utils/TableGen/DAGISelEmitter.cpp
M llvm/utils/TableGen/GlobalISelCombinerEmitter.cpp
M llvm/utils/TableGen/InstrInfoEmitter.cpp
M llvm/utils/TableGen/PseudoLoweringEmitter.cpp
M llvm/utils/TableGen/RegisterBankEmitter.cpp
M llvm/utils/TableGen/RegisterInfoEmitter.cpp
M llvm/utils/gn/secondary/llvm/lib/TableGen/BUILD.gn
Log Message:
-----------
[TableGen] Factor out timer code into a new `TGTimer` class (#111054)
Factor out the timer related functionality from `RecordKeeper` to a new
`TGTimer` class in a new file.
Commit: b91f0def6f261064cedfe0e62395c0097130b8f1
https://github.com/llvm/llvm-project/commit/b91f0def6f261064cedfe0e62395c0097130b8f1
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/include/llvm/TableGen/TableGenBackend.h
M llvm/lib/TableGen/TableGenBackend.cpp
Log Message:
-----------
[TableGen] Change backend callback to require const RecordKeeper (#111064)
Change TableGen backend callback function to require a const
RecordKeeper argument (by changing it from function_ref to just a
function pointer). This undoes parts of
https://github.com/llvm/llvm-project/pull/104716 which was added to
enable gradual migration of TableGen backends to use const RecordKeeper
(by allowing either const or non-const references). Now that all
backends have been migrated to const reference, we do not need this.
This is a part of effort to have better const correctness in TableGen
backends:
https://discourse.llvm.org/t/psa-planned-changes-to-tablegen-getallderiveddefinitions-api-potential-downstream-breakages/81089
Commit: ed0f4074eb86f1588efb11bd06ad4fb383a9a921
https://github.com/llvm/llvm-project/commit/ed0f4074eb86f1588efb11bd06ad4fb383a9a921
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/include/llvm/IR/Intrinsics.td
Log Message:
-----------
[LLVM][TableGen] Check validity of IIT encoding for vector types (#111152)
Add assert to verify that the `IIT_Vecs` list for IIT encoding of vector
types is not empty for vector types (else it will generate an invalid
IIT encoding).
Remove `llvm_v2048i1_ty` for which this assert fails, since the
`Intrinsics.td` file does not define any IIT encoding for vectors of
size 2048.
Commit: 296a00bead8a25d875975ce68a5cd12c5fce6233
https://github.com/llvm/llvm-project/commit/296a00bead8a25d875975ce68a5cd12c5fce6233
Author: davidtrevelyan <davidtrevelyan at users.noreply.github.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/test/CodeGen/rtsan_attribute_inserted.c
M clang/test/CodeGen/rtsan_no_attribute_sanitizer_disabled.c
Log Message:
-----------
[clang][rtsan] Add sanitize_realtime_unsafe attr to [[clang::blocking]] function IR (#111055)
Commit: 78089d5845d14bf61bdc06209c32f0fb34927c68
https://github.com/llvm/llvm-project/commit/78089d5845d14bf61bdc06209c32f0fb34927c68
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
Log Message:
-----------
ValueTracking: refactor recurrence-matching (NFC) (#109659)
Commit: f873fc3ae2afb316d69c3f9be7b8903c18f217b0
https://github.com/llvm/llvm-project/commit/f873fc3ae2afb316d69c3f9be7b8903c18f217b0
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
M llvm/lib/Target/RISCV/RISCVGISel.td
A llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/render-vlop-rv32.mir
A llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/render-vlop-rv64.mir
A llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/vmclr-rv32.mir
A llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/vmclr-rv64.mir
A llvm/test/CodeGen/RISCV/GlobalISel/rvv/splat-vector.ll
Log Message:
-----------
[RISCV][GISEL] instruction-select vmclr (#110782)
This is stacked on #110778. This PR adds and tests renderVLOp too, as
that is needed from vmclr.
Commit: 9459d729d22b7bfedad9d3a4237162077c6984a4
https://github.com/llvm/llvm-project/commit/9459d729d22b7bfedad9d3a4237162077c6984a4
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
A llvm/test/CodeGen/X86/pr111170.ll
Log Message:
-----------
[x86] combineMUL - when looking for a vector multiply by splat constant, ensure we're only accepting ConstantInt splat scalars.
Fixes #111170
Commit: 643df0573d235240d66e82cd2b163536e9e8de13
https://github.com/llvm/llvm-project/commit/643df0573d235240d66e82cd2b163536e9e8de13
Author: Heejin Ahn <aheejin at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/test/MC/WebAssembly/annotations.s
Log Message:
-----------
[WebAssembly] Enable type checker in annotations.s (#111079)
Commit: 98a15c7b0c6ec129d371f0c121dbe9396c4f5609
https://github.com/llvm/llvm-project/commit/98a15c7b0c6ec129d371f0c121dbe9396c4f5609
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
A llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-load-store-pointers.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-global-old-legalization.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-local.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-constant.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-flat.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-global.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-local.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-private.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-store-global.mir
Log Message:
-----------
Reapply "[AMDGPU][GlobalISel] Fix load/store of pointer vectors, buffer.*.pN (#110714)" (#111059)
This reverts commit 650c41aad2eb43c634a05b2b5799a0c13a73b92f.
The test failures appear to be from conflicts with other PRs that landed around this time.
Commit: 3a47bf633cfde9ab01fae2ce6f9c0876dc4952c3
https://github.com/llvm/llvm-project/commit/3a47bf633cfde9ab01fae2ce6f9c0876dc4952c3
Author: vporpo <vporpodas at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/Instruction.h
M llvm/lib/SandboxIR/Instruction.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
Log Message:
-----------
[SandboxIR] Switch more Instruction::create() to InsertPosition (#111080)
Commit: 4c26a1e4d7e490a38dcd2a24e4c8939075fd4a5a
https://github.com/llvm/llvm-project/commit/4c26a1e4d7e490a38dcd2a24e4c8939075fd4a5a
Author: Sean Perry <perry at ca.ibm.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang/lib/Driver/ToolChains/ZOS.cpp
M clang/lib/Parse/ParsePragma.cpp
A clang/test/Driver/zos-pragma-pack.c
A clang/test/SemaCXX/pragma-pack-packed-2.cpp
Log Message:
-----------
[SystemZ][z/OS] Use the XL pragma pack semantics on z/OS (#111053)
- set the default on z/OS to use the XL pragma semantics
- add in additional pragma pack values such as twobyte & reset supported
by XL on z/OS
Commit: c0f8889774ce4926ed58e2bf379d8ba70adf79ae
https://github.com/llvm/llvm-project/commit/c0f8889774ce4926ed58e2bf379d8ba70adf79ae
Author: Adam Yang <hanbyang at microsoft.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/radians.ll
A llvm/test/CodeGen/SPIRV/opencl/radians.ll
Log Message:
-----------
[SPIRV] Add radians intrinsic (#110800)
partially fixes #99151
### Changes
* Added int_spv_radians intrinsic in IntrinsicsSPIRV.td
* Added lowering for int_spv_radians in SPIRVInstructionSelector.cpp
* Added DXIL backend test case
### Related PRs
* [[clang][HLSL] Add radians intrinsic
#110802](https://github.com/llvm/llvm-project/pull/110802)
* [[DXIL] Add radians intrinsic
#110616](https://github.com/llvm/llvm-project/pull/110616)
Commit: 45817aa726363b5fda9e5e9b26efb7edec16a514
https://github.com/llvm/llvm-project/commit/45817aa726363b5fda9e5e9b26efb7edec16a514
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/LICM.cpp
M llvm/test/CodeGen/PowerPC/p10-spill-crlt.ll
M llvm/test/Transforms/LICM/hoist-binop.ll
Log Message:
-----------
LICM: hoist BO assoc for and, or, xor (#111146)
Trivially lift the Opcode limitation on hoistBOAssociation to also hoist
and, or, and xor.
Alive2 proofs: https://alive2.llvm.org/ce/z/rVNP2X
Commit: 4281f294a8ee23686cdef665d1b5df6ccab0efce
https://github.com/llvm/llvm-project/commit/4281f294a8ee23686cdef665d1b5df6ccab0efce
Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVDuplicatesTracker.cpp
M llvm/lib/Target/SPIRV/SPIRVDuplicatesTracker.h
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
Log Message:
-----------
[SPIR-V] Duplicates Tracker accounts for possible changes in Constant usage after optimization (#110835)
This PR introduces changes into processing of internal/service data in
SPIRV Backend so that Duplicates Tracker accounts for possible changes
in Constant usage after optimization, namely this PR fixes the case when
a Constant register stored in Duplicates Tracker after all passes is
represented by a non-constant expression. In this case we may be sure
that it neither is able to create a duplicate nor is in need of a
special placement as a Constant instruction.
This PR doesn't introduce a new feature, and in this case we rely on
existing set of test cases in the SPIRV Backend test suite to ensure
that this PR doesn't break existing assumptions without introducing new
test cases. There is a reproducer of the issue available as part of SYCL
CTS test suite, however it's a binary of several MB's size. Given the
subtlety of the issue, reduction of the reproducer to a reasonable site
for inclusion into the SPIRV Backend test suite doesn't seem realistic.
Commit: c0dfef878ec7ce7a334a013a6d4fdf8ed2302891
https://github.com/llvm/llvm-project/commit/c0dfef878ec7ce7a334a013a6d4fdf8ed2302891
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
A llvm/test/Transforms/SLPVectorizer/X86/long-full-reg-stores.ll
Log Message:
-----------
[SLP][NFC]Add a test with potential non-power-of2 (but whole reg) vectorized stores
Commit: f74879cf0cf3e6d1f4c510627a7343ab09485e98
https://github.com/llvm/llvm-project/commit/f74879cf0cf3e6d1f4c510627a7343ab09485e98
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AArch64/reused-scalar-repeated-in-node.ll
M llvm/test/Transforms/SLPVectorizer/root-trunc-extract-reuse.ll
Log Message:
-----------
[SLP]Make PHICompare comparator follow weak strict ordering requirement
Reviewers: efriedma-quic
Reviewed By: efriedma-quic
Pull Request: https://github.com/llvm/llvm-project/pull/110529
Commit: 9144fed31b59089f4e3e5fedf7eb87d2695ef843
https://github.com/llvm/llvm-project/commit/9144fed31b59089f4e3e5fedf7eb87d2695ef843
Author: Quinn Dawkins <quinn.dawkins at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
M mlir/include/mlir/Dialect/SCF/Transforms/TileUsingInterface.h
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
M mlir/test/Dialect/Linalg/transform-op-fuse.mlir
Log Message:
-----------
[mlir] Add option for a cleanup pattern set to SCF tiling helper (#109554)
The SCF helper for tiling an operation implementing the TilingInterface
and greedily fusing consumers requires an uninterrupted chain of
operations implementing the tiling interface to succeed. There can be
cases with intermediate ops that don't implement the interface but have
producers that could be fused if various canonicalization/simplification
patterns could run in between fusion steps.
This adds an option to SCFTileAndFuseOptions for a pattern set to run
between fusion steps to the ops that result from fusion/tiling. Removed
and newly inserted slices are tracked for continued fusion applications.
See this RFC for more discussion:
https://discourse.llvm.org/t/rfc-split-fusion-portions-of-the-tilinginterface-into-a-new-interface/81155
Commit: 1e75d08659aeb1aabf92b59f33649c414d4ff8b7
https://github.com/llvm/llvm-project/commit/1e75d08659aeb1aabf92b59f33649c414d4ff8b7
Author: Adam Yang <hanbyang at microsoft.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
A llvm/test/CodeGen/DirectX/radians.ll
Log Message:
-----------
[DXIL] Add radians intrinsic (#110616)
makes progress on #99151
### Changes
- Added int_dx_radians intrinsic in IntrinsicsDirectX.td
- Added expansion for int_dx_radians in DXILIntrinsicExpansion.cpp`
- Added DXIL backend test case
### Related PRs
* [[clang][HLSL] Add radians intrinsic
#110802](https://github.com/llvm/llvm-project/pull/110802)
* [[SPIRV] Add radians intrinsic
#110800](https://github.com/llvm/llvm-project/pull/110800)
Commit: 3b88805ca20018ae202afd3aea39f4fa856a8c64
https://github.com/llvm/llvm-project/commit/3b88805ca20018ae202afd3aea39f4fa856a8c64
Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/VOP2Instructions.td
A llvm/test/CodeGen/AMDGPU/commute-op-sel.mir
A llvm/test/CodeGen/AMDGPU/sdwa-commute.ll
A llvm/test/CodeGen/AMDGPU/sdwa-cse.mir
Log Message:
-----------
[AMDGPU] Fix SDWA commuting (#106920)
SDWA insts miss reverse opcode, which causes them to be treated as
commutable with default reverse opcode i.e. their own opcode. As a
result, SWDA F16 sub A, B and Sub B, A are merged by machine CSE. The
correct behavior is to merged sub A, B and subrev B, A instead of sub B,
A. This issues caused failures in rocFFT tests.
Another issue is that src0_sel and src1_sel are not swapped when SDWA
insts are commuted.
Verified that this fixes rocFFT tests failure.
Commit: 72f38040ddc8c2eca712c29b86ea0209faab4d57
https://github.com/llvm/llvm-project/commit/72f38040ddc8c2eca712c29b86ea0209faab4d57
Author: Renaud Kauffmann <rkauffmann at nvidia.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M flang/include/flang/Runtime/CUDA/common.h
M flang/lib/Optimizer/Transforms/CufOpConversion.cpp
Log Message:
-----------
Removing CUF runtime dependency with llvm::EnableABIBreakingChecks (#111200)
getMemType happens to only be used in CufOpConversion.cpp. So, moving it
here for now. If it needs to be shared with the runtime, then care
should be taken in not bringing the include `#include
"flang/Optimizer/Dialect/CUF/Attributes/CUFAttr.h"` which introduces the
dependency with llvm::EnableABIBreakingChecks
Commit: e31e6f259ed22acfb2135700cb0482f84d6ea386
https://github.com/llvm/llvm-project/commit/e31e6f259ed22acfb2135700cb0482f84d6ea386
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/TableGen/Error.cpp
M llvm/test/TableGen/assert.td
Log Message:
-----------
[TableGen] Print assert message inline with assert failure (#111184)
Print assert message after the "assertion failed" message instead of
printing it as a separate note. This makes the assert failure reporting
less verbose and also more useful to see the failure message inline with
the "assertion failed" message.
Commit: 2a65f081b6111a8ed78e679d4612c32c1511c3f9
https://github.com/llvm/llvm-project/commit/2a65f081b6111a8ed78e679d4612c32c1511c3f9
Author: Youngsuk Kim <youngsuk.kim at hpe.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
Log Message:
-----------
[llvm][OpenMPIRBuilderTest] Avoid Type::getPointerTo() (NFC) (#111196)
`llvm::Type::getPointerTo()` is to be deprecated & removed soon.
Commit: 4f3a0959d62c81146a02dab80f761ccb921291e6
https://github.com/llvm/llvm-project/commit/4f3a0959d62c81146a02dab80f761ccb921291e6
Author: vporpo <vporpodas at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/Instruction.h
M llvm/lib/SandboxIR/Instruction.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
Log Message:
-----------
[SandboxIR] Switch more Instruction::create() to InsertPosition (#111187)
Commit: b2f3ac836aac166b8fb21690a0a480c816de0521
https://github.com/llvm/llvm-project/commit/b2f3ac836aac166b8fb21690a0a480c816de0521
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Analysis/MemoryProfileInfo.cpp
Log Message:
-----------
[memprof] Teach createMIBNode to take ArrayRef (NFC) (#111195)
createMIBNode does not modify MIBCallStack, so we can take ArrayRef
instead.
While I am at it, this patch changes the type of MIBPayload to
SmallVector. We put at most three elements, so we can avoid a heap
allocation.
Commit: fda2fea3d161e07ec3a8441359f761ce9dd9a977
https://github.com/llvm/llvm-project/commit/fda2fea3d161e07ec3a8441359f761ce9dd9a977
Author: Manasij Mukherjee <manasij7479 at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/test/CodeGen/NVPTX/vector-returns.ll
Log Message:
-----------
[NVPTX] Promote v2i8 to v2i16 (#111189)
Promote v2i8 to v2i16, fixes a crash.
Re-enable a test in NVPTX/vector-returns.ll
https://github.com/llvm/llvm-project/issues/104864
Commit: c029702f82a494053b23f10886fdc319751cd193
https://github.com/llvm/llvm-project/commit/c029702f82a494053b23f10886fdc319751cd193
Author: vporpo <vporpodas at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/Instruction.h
M llvm/lib/SandboxIR/Instruction.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
Log Message:
-----------
[SandboxIR] Switch more Instruction::create() to InsertPosition (#111208)
Commit: ed5088a2717e5c67499ea25937e430e68d567fa7
https://github.com/llvm/llvm-project/commit/ed5088a2717e5c67499ea25937e430e68d567fa7
Author: vporpo <vporpodas at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/Instruction.h
M llvm/lib/SandboxIR/Context.cpp
M llvm/lib/SandboxIR/Instruction.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
Log Message:
-----------
[SandboxIR] Switch more Instruction::create() to InsertPosition (#111213)
Also moves CmpInst definitions from Context.cpp to Instruction.cpp
Commit: d0d0c4d5a0e3c4dd7fa480e6222cfd40d44d1e7e
https://github.com/llvm/llvm-project/commit/d0d0c4d5a0e3c4dd7fa480e6222cfd40d44d1e7e
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
Log Message:
-----------
[RISCV] Use PatGprImm to simplify some isel patterns. NFC
Commit: 7692d106b480a16861f5ed63378ec1b857a20bc1
https://github.com/llvm/llvm-project/commit/7692d106b480a16861f5ed63378ec1b857a20bc1
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC]Remove dead code + use nlogn lookups instead of n^2
Commit: 9df94e2791a0939f562d2d77f5d611e6ff37f5f9
https://github.com/llvm/llvm-project/commit/9df94e2791a0939f562d2d77f5d611e6ff37f5f9
Author: Adam Yang <hanbyang at microsoft.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang/include/clang/Basic/Builtins.td
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Sema/SemaHLSL.cpp
A clang/test/CodeGenHLSL/builtins/radians.hlsl
M clang/test/SemaHLSL/BuiltIns/half-float-only-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/radians-errors.hlsl
Log Message:
-----------
[clang][HLSL] Add radians intrinsic (#110802)
partially fixes #99151
### Changes
* Implemented `radians` clang builtin
* Linked `radians` clang builtin with `hlsl_intrinsics.h`
* Added sema checks for `radians` to `CheckHLSLBuiltinFunctionCall` in
`SemaChecking.cpp`
* Add codegen for `radians` to `EmitHLSLBuiltinExpr` in `CGBuiltin.cpp`
* Add codegen tests to `clang/test/CodeGenHLSL/builtins/radians.hlsl`
* Add sema tests to `clang/test/SemaHLSL/BuiltIns/radians-errors.hlsl`
### Related PRs
* [[DXIL] Add radians intrinsic
#110616](https://github.com/llvm/llvm-project/pull/110616)
* [[SPIRV] Add radians intrinsic
#110800](https://github.com/llvm/llvm-project/pull/110800)
Commit: 50838851e82281635deacd017273947d9259f8fe
https://github.com/llvm/llvm-project/commit/50838851e82281635deacd017273947d9259f8fe
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M libc/docs/gpu/using.rst
Log Message:
-----------
[libc][docs] Update NVPTX using documentation now that linking works
Summary:
I added a wrapper linker awhile back but this still says it doesn't
work.
Commit: 765d7e7a47f971e78f6fa5477309591512ea4747
https://github.com/llvm/llvm-project/commit/765d7e7a47f971e78f6fa5477309591512ea4747
Author: Michael Liao <michael.hliao at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/IR/Attributes.cpp
Log Message:
-----------
[IR] Fix '-Wparentheses' warnings. NFC
Commit: e5b05a51b8151cc7788bbdea4d491e5ccfceedea
https://github.com/llvm/llvm-project/commit/e5b05a51b8151cc7788bbdea4d491e5ccfceedea
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Handle template closer followed by braces (#110971)
Fixes #110968.
Commit: b5f6689dc93216f9272e790e787548cf29250566
https://github.com/llvm/llvm-project/commit/b5f6689dc93216f9272e790e787548cf29250566
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Annotate ::operator as FunctionDeclarationName (#111115)
Fixes #111011.
Commit: e6549b8036089f20c6ac01e644a544aa2b231ca8
https://github.com/llvm/llvm-project/commit/e6549b8036089f20c6ac01e644a544aa2b231ca8
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/test/CodeGen/RISCV/rv64zba.ll
Log Message:
-----------
[RISCV][ISel] Allow emitting `addiw` with u32simm12 rhs (#111116)
In InstCombine, we shrink the constant by setting unused bits to zero
(e.g. `((X + -2) & 4294967295) -> ((X + 4294967294) & 4294967295)`).
However, this canonicalization blocks emitting `addiw` and creates
redundant li for simm32 rhs:
```
; bin/llc -mtriple=riscv64 -mattr=+zba test.ll -o -
define i64 @add_u32simm32_zextw(i64 %x) nounwind {
entry:
%add = add i64 %x, 4294967294
%and = and i64 %add, 4294967295
ret i64 %and
}
```
```
add_u32simm32_zextw: # @add_u32simm32_zextw
# %bb.0: # %entry
li a1, -2
add a0, a0, a1
zext.w a0, a0
ret
```
This patch addresses the issue by matching u32simm12 rhs.
Commit: bf895c714e1f8a51c1e565a75acf60bf7197be51
https://github.com/llvm/llvm-project/commit/bf895c714e1f8a51c1e565a75acf60bf7197be51
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/lib/TargetParser/Host.cpp
Log Message:
-----------
[RISCV] Bump hwprobe support to Linux 6.11 (#108578)
This patch is the follow-up of
https://github.com/llvm/llvm-project/pull/94352 with some updates:
1. Add support for more extensions for `zve*`, `zimop`, `zc*`, `zcmop`
and `zawrs`.
2. Use `RISCV_HWPROBE_KEY_MISALIGNED_SCALAR_PERF` to check whether the
processor supports fast misaligned scalar memory access.
https://github.com/llvm/llvm-project/pull/108551 reminds me that the
patch
https://lore.kernel.org/all/20240809214444.3257596-1-evan@rivosinc.com/T/
has been merged. Address comment
https://github.com/llvm/llvm-project/pull/94352#discussion_r1626056015.
References:
1. constants:
https://github.com/torvalds/linux/blame/v6.11-rc7/arch/riscv/include/uapi/asm/hwprobe.h
2. https://docs.kernel.org/arch/riscv/hwprobe.html
3. Related commits:
1. `zve*` support:
https://github.com/torvalds/linux/commit/de8f8282a969d0b7342702f355886aab3b14043d
2. `zimop` support:
https://github.com/torvalds/linux/commit/36f8960de887a5e2811c5d1c0517cfa6f419c1c4
3. `zc*` support:
https://github.com/torvalds/linux/commit/0ad70db5eb21e50ed693fa274bea0346de453e29
4. `zcmop` support:
https://github.com/torvalds/linux/commit/fc078ea317cc856c1e82997da7e8fd4d6da7aa29
5. `zawrs` support:
https://github.com/torvalds/linux/commit/244c18fbf64a33d152645766a033b2935ab0acb5
6. scalar misaligned perf:
https://github.com/torvalds/linux/commit/c42e2f076769c9c1bc5f3f0aa1c2032558e76647
and
https://github.com/torvalds/linux/commit/1f5288874de776412041022607513ffac74ae1a6
Commit: 9e862ae3219b09283971ca0ced52a64b0d6db86b
https://github.com/llvm/llvm-project/commit/9e862ae3219b09283971ca0ced52a64b0d6db86b
Author: alx32 <103613512+alx32 at users.noreply.github.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M lld/MachO/SyntheticSections.cpp
A lld/test/MachO/icf-safe-thunks-dwarf.ll
Log Message:
-----------
[lld-macho] Fix invalid DWARF with --icf=safe_thunks (#111097)
There is a bug in the current implementation of `--icf=safe_thunks`
where a STABS entry is emitted for generated thunks. This is problematic
as we end up generating invalid DWARF as dsymutil will think the entire
function body is at the thunk location, when in actuality there will
only be a single branch present. This will end up causing overlapping
DWARF entries.
To fix this we never generate STABS entries for such thunks.
The existing `--icf=safe_thunks` test is updated to also generate debug
info and we add a check that no corrupt DWARF is generated.
As a future TODO we need to make `--keep-icf-stabs` compatible with
`--icf=safe_thunks`.
Commit: 9766ce4db57212646f135fe7033972a7a51aef4d
https://github.com/llvm/llvm-project/commit/9766ce4db57212646f135fe7033972a7a51aef4d
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M compiler-rt/lib/lsan/lsan_common.cpp
M compiler-rt/lib/lsan/lsan_flags.inc
Log Message:
-----------
[lsan] Add `thread_suspend_fail` flag
Commit: f6fd7b24c5955ce772f1afa4314a2d3434c458d5
https://github.com/llvm/llvm-project/commit/f6fd7b24c5955ce772f1afa4314a2d3434c458d5
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp
Log Message:
-----------
[NFC][lsan] Add SuspendAllThreads traces
Commit: 574266ce3381ad734c995d653a7cabd9d4d53447
https://github.com/llvm/llvm-project/commit/574266ce3381ad734c995d653a7cabd9d4d53447
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/test/Transforms/InstCombine/icmp-signmask.ll
M llvm/test/Transforms/InstCombine/icmp.ll
Log Message:
-----------
Revert "[InstCombine] Folding `(icmp eq/ne (and X, -P2), INT_MIN)`" (#111236)
Reverts #110880 because of exposed issue is Msan instrumentation
#111212.
This reverts commit a64643688526114b50c25b3eda8a57855bd2be87.
Commit: 554eaec63908ed20c35c8cc85304a3d44a63c634
https://github.com/llvm/llvm-project/commit/554eaec63908ed20c35c8cc85304a3d44a63c634
Author: Han-Kuan Chen <hankuan.chen at sifive.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
A llvm/test/Analysis/CostModel/RISCV/fixed-vector-insert-subvector.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/remarks-insert-into-small-vector.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/revec-getGatherCost.ll
Log Message:
-----------
[RISCV][TTI] Recognize CONCAT_VECTORS if a shufflevector mask is multiple insert subvector. (#110457)
Commit: 835b5e278e525dc628d4d0c085eb272996aed466
https://github.com/llvm/llvm-project/commit/835b5e278e525dc628d4d0c085eb272996aed466
Author: Tom Yang <zhenyutyang at gmail.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M lldb/source/Commands/CommandObjectSession.cpp
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Interpreter/InterpreterProperties.td
M lldb/test/API/commands/session/save/TestSessionSave.py
Log Message:
-----------
Add warning message to `session save` when transcript isn't saved. (#109020)
Somewhat recently, we made the change to hide the behavior to save LLDB
session history to the transcript buffer behind the flag
`interpreter.save-transcript`. By default, `interpreter.save-transcript`
is false. See #90703 for context.
I'm making a small update here to our `session save` messaging and some
help docs to clarify for users that aren't aware of this change. Maybe
`interpreter.save-transcript` could be true by default as well. Any
feedback welcome.
# Tests
```
bin/lldb-dotest -p TestSessionSave
```
---------
Co-authored-by: Tom Yang <toyang at fb.com>
Commit: 91fdfec263ff2b8e88433c4294a550cabb0f2314
https://github.com/llvm/llvm-project/commit/91fdfec263ff2b8e88433c4294a550cabb0f2314
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/utils/TableGen/Basic/CodeGenIntrinsics.cpp
M llvm/utils/TableGen/Basic/CodeGenIntrinsics.h
M llvm/utils/TableGen/IntrinsicEmitter.cpp
Log Message:
-----------
[NFC][TableGen] Change `CodeGenIntrinsics` to use const references (#111219)
Change `CodeGenIntrinsics` classes to vend out const references to
`CodeGenIntrinsic` or `TargetSet` objects.
Commit: 22089dc91d6e48649412764c34c0140eea0a795b
https://github.com/llvm/llvm-project/commit/22089dc91d6e48649412764c34c0140eea0a795b
Author: David Green <david.green at arm.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
A llvm/test/Transforms/InstCombine/canonicalize-gep-constglob.ll
Log Message:
-----------
[Instcombine] Test for more gep canonicalization
Commit: 0548481856e75998e1de329f5c9722dcf1ca5c84
https://github.com/llvm/llvm-project/commit/0548481856e75998e1de329f5c9722dcf1ca5c84
Author: David Green <david.green at arm.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/test/Transforms/InstCombine/and-or-icmps.ll
Log Message:
-----------
[InstCombine] Update and-or-icmps.ll after 574266ce3381ad734c995d653a7cabd9d4d53447. NFC
Commit: 1789534ac1ac95f9a3369625e331b9a446be60d9
https://github.com/llvm/llvm-project/commit/1789534ac1ac95f9a3369625e331b9a446be60d9
Author: David Green <david.green at arm.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
A llvm/test/CodeGen/AArch64/selectopt-const.ll
Log Message:
-----------
[SelectOpt] Don't convert constant selects to branches. (#110858)
Selects that choose between two constants will be less profitable to
turn into branches, especially if the constants can be folded somehow
into the surrounding instructions. They will also be cost modelled in a
way that can make them over-optimistically converted to branches, as
neither branch will have a latency depth but the constants still need to
be materialized.
This patch disabled selectopt for selects with two constant branches. It
is currently in the target independent part, as it sounds generic, but I
could move it into AArch64 if needed.
Commit: fba6c887c110a501b311f6b01721eaf3a5dd994e
https://github.com/llvm/llvm-project/commit/fba6c887c110a501b311f6b01721eaf3a5dd994e
Author: Pavel Skripkin <paskripkin at gmail.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp
M clang/test/Analysis/builtin_overflow.c
Log Message:
-----------
[analyzer] Fix wrong `builtin_*_overflow` return type (#111253)
`builtin_*_overflow` functions return `_Bool` according to [1].
`BuiltinFunctionChecker` was using `makeTruthVal` w/o specifying
explicit type, which creates an `int` value, since it's the type of any
compassion according to C standard.
Fix it by directly passing `BoolTy` to `makeTruthVal`
Closes: #111147
[1]
https://clang.llvm.org/docs/LanguageExtensions.html#checked-arithmetic-builtins
Commit: 4e5f8a8f0bf855fdac93fa09b4b82b69339235b9
https://github.com/llvm/llvm-project/commit/4e5f8a8f0bf855fdac93fa09b4b82b69339235b9
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBlock.cpp
M clang/lib/AST/ByteCode/InterpBlock.h
M clang/lib/AST/ByteCode/Pointer.h
M clang/lib/AST/ByteCode/Program.cpp
M clang/lib/AST/ByteCode/Program.h
Log Message:
-----------
[clang][bytecode] Save a per-Block IsWeak bit (#111248)
Checking the decl for every load is rather expensive.
Commit: 4425dfba6a1f394e958e94aa471a07bcf707136a
https://github.com/llvm/llvm-project/commit/4425dfba6a1f394e958e94aa471a07bcf707136a
Author: Hongren Zheng <i at zenithal.me>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/Polynomial/IR/PolynomialAttributes.td
M mlir/lib/Dialect/Polynomial/IR/PolynomialAttributes.cpp
M mlir/test/Dialect/Polynomial/attributes.mlir
Log Message:
-----------
[mlir][polynomial] Add and verify constraints of coefficientModulus for ringAttr (#111016)
Currently the semantic of coefficientModulus is unclear and a lowering
of it faces uncertainty, for example,
https://github.com/google/heir/pull/995#issuecomment-2387394895
Also, it lacks a verifier which should conform to the definition in the
document.
This PR tries to further define the semantic of coefficientModulus and
adds a verifier for it.
Cc @j2kun for review and suggestions.
Commit: c57418037a002f4c5f19339837cc37e3a8f4ecb8
https://github.com/llvm/llvm-project/commit/c57418037a002f4c5f19339837cc37e3a8f4ecb8
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/test/AST/ByteCode/builtins.cpp
Log Message:
-----------
[clang][bytecode] Handle UETT_OpenMPRequiredSimdAlign (#111259)
Commit: 87d199ff243ff25b06d68a529815519901e8294f
https://github.com/llvm/llvm-project/commit/87d199ff243ff25b06d68a529815519901e8294f
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M lld/ELF/Relocations.cpp
Log Message:
-----------
[ELF] Pass Ctx & to Relocations
Commit: 53a1fb0cd73382498fe79f95521c350409fd40b9
https://github.com/llvm/llvm-project/commit/53a1fb0cd73382498fe79f95521c350409fd40b9
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M lld/ELF/AArch64ErrataFix.h
M lld/ELF/InputSection.cpp
M lld/ELF/Writer.cpp
Log Message:
-----------
[ELF] Pass Ctx &
Commit: 020b8e8f8dfef2392351e66215d11cccb573a88f
https://github.com/llvm/llvm-project/commit/020b8e8f8dfef2392351e66215d11cccb573a88f
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M clang/test/AST/ByteCode/builtins.cpp
Log Message:
-----------
[clang][test] Remove a broken bytecode test
See e.g. https://lab.llvm.org/buildbot/#/builders/13/builds/2705
Looks like the expected value is legitimately sometimes 0.
I'll add another test back later.
Commit: 8aa76d34ea95031abed32761251951c5f87492c6
https://github.com/llvm/llvm-project/commit/8aa76d34ea95031abed32761251951c5f87492c6
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M clang/lib/Driver/Driver.cpp
Log Message:
-----------
[Driver] Avoid repeated hash lookups (NFC) (#111225)
Commit: fe9f1a215e0bdb5308f0dc5021bd02b173a45dbc
https://github.com/llvm/llvm-project/commit/fe9f1a215e0bdb5308f0dc5021bd02b173a45dbc
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Affine/Transforms/PipelineDataTransfer.cpp
Log Message:
-----------
[Affine] Avoid repeated hash lookups (NFC) (#111226)
Commit: e8f01b0557354a28d17bfe618df5e257ec3e982a
https://github.com/llvm/llvm-project/commit/e8f01b0557354a28d17bfe618df5e257ec3e982a
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M clang/lib/Sema/SemaOpenMP.cpp
Log Message:
-----------
[Sema] Avoid repeated hash lookups (NFC) (#111227)
Commit: bcb15d00596f8f25310887494f171e7f70386e7c
https://github.com/llvm/llvm-project/commit/bcb15d00596f8f25310887494f171e7f70386e7c
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/lib/Support/APInt.cpp
Log Message:
-----------
[APInt] Slightly simplify APInt::ashrSlowCase. NFC (#111220)
Use an arithmetic shift for the last word copy when BitShift!=0. This
avoids an explicit sign extend after the shift.
Commit: 20e37f03c64589c366fccd766ab9120db6da4aa0
https://github.com/llvm/llvm-project/commit/20e37f03c64589c366fccd766ab9120db6da4aa0
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/combine-mul-to-shl.mir
Log Message:
-----------
[GISel] Don't preserve NSW flag when converting G_MUL of INT_MIN to G_SHL. (#111230)
mul and shl have different meanings for the nsw flag. We need to drop it
when converting a multiply by the minimum negative value.
Commit: 67c0846357bcd6faca713315380f9981a805a6e5
https://github.com/llvm/llvm-project/commit/67c0846357bcd6faca713315380f9981a805a6e5
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M lld/ELF/SyntheticSections.cpp
M lld/ELF/Thunks.cpp
Log Message:
-----------
[ELF] Don't call getPPC64TargetInfo outside Driver. NFC
getPPC64TargetInfo should only be called once per link invocation.
Commit: 68210c7c269b7b7325dedaea7cea9fe9d979fab5
https://github.com/llvm/llvm-project/commit/68210c7c269b7b7325dedaea7cea9fe9d979fab5
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/X86/divs-with-tail-folding.ll
M llvm/test/Transforms/LoopVectorize/X86/drop-poison-generating-flags.ll
A llvm/test/Transforms/LoopVectorize/X86/replicate-recipe-with-only-first-lane-used.ll
Log Message:
-----------
[VPlan] Only generate first lane for VPPredInstPHI if no others used.
IF only the first lane of the result is used, only generate the first
lane.
Fixes https://github.com/llvm/llvm-project/issues/111042.
Commit: c6110496b346d7963f8f9f62a7d2696da12a943e
https://github.com/llvm/llvm-project/commit/c6110496b346d7963f8f9f62a7d2696da12a943e
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoXTHead.td
Log Message:
-----------
[RISCV] Use THShift_ri class instead of RVBShift_ri for TH_TST instruction. NFC
Commit: 73683cc1ab0fe79a4b02b956cf3c033250537bff
https://github.com/llvm/llvm-project/commit/73683cc1ab0fe79a4b02b956cf3c033250537bff
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M clang/lib/Basic/TargetID.cpp
Log Message:
-----------
[Basic] Avoid repeated hash lookups (NFC) (#111228)
Commit: 206fad0e218e83799e49ca15545d997c6c5e8a03
https://github.com/llvm/llvm-project/commit/206fad0e218e83799e49ca15545d997c6c5e8a03
Author: Matthias Springer <me at m-sp.org>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M flang/include/flang/Optimizer/CodeGen/CodeGen.h
M flang/include/flang/Optimizer/CodeGen/CodeGenOpenMP.h
M flang/include/flang/Optimizer/Transforms/CufOpConversion.h
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/CodeGen/CodeGenOpenMP.cpp
M flang/lib/Optimizer/Transforms/CufOpConversion.cpp
M mlir/docs/Bufferization.md
M mlir/include/mlir/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.h
M mlir/include/mlir/Conversion/ArithToLLVM/ArithToLLVM.h
M mlir/include/mlir/Conversion/ArithToSPIRV/ArithToSPIRV.h
M mlir/include/mlir/Conversion/ComplexToLLVM/ComplexToLLVM.h
M mlir/include/mlir/Conversion/ComplexToSPIRV/ComplexToSPIRV.h
M mlir/include/mlir/Conversion/ControlFlowToLLVM/ControlFlowToLLVM.h
M mlir/include/mlir/Conversion/ControlFlowToSPIRV/ControlFlowToSPIRV.h
M mlir/include/mlir/Conversion/FuncToLLVM/ConvertFuncToLLVM.h
M mlir/include/mlir/Conversion/FuncToSPIRV/FuncToSPIRV.h
M mlir/include/mlir/Conversion/GPUToLLVMSPV/GPUToLLVMSPVPass.h
M mlir/include/mlir/Conversion/GPUToNVVM/GPUToNVVMPass.h
M mlir/include/mlir/Conversion/GPUToROCDL/GPUToROCDLPass.h
M mlir/include/mlir/Conversion/GPUToSPIRV/GPUToSPIRV.h
M mlir/include/mlir/Conversion/IndexToLLVM/IndexToLLVM.h
M mlir/include/mlir/Conversion/IndexToSPIRV/IndexToSPIRV.h
M mlir/include/mlir/Conversion/MathToLLVM/MathToLLVM.h
M mlir/include/mlir/Conversion/MathToROCDL/MathToROCDL.h
M mlir/include/mlir/Conversion/MathToSPIRV/MathToSPIRV.h
M mlir/include/mlir/Conversion/MemRefToEmitC/MemRefToEmitC.h
M mlir/include/mlir/Conversion/MemRefToLLVM/MemRefToLLVM.h
M mlir/include/mlir/Conversion/MemRefToSPIRV/MemRefToSPIRV.h
M mlir/include/mlir/Conversion/NVGPUToNVVM/NVGPUToNVVM.h
M mlir/include/mlir/Conversion/OpenMPToLLVM/ConvertOpenMPToLLVM.h
M mlir/include/mlir/Conversion/SCFToSPIRV/SCFToSPIRV.h
M mlir/include/mlir/Conversion/SPIRVToLLVM/SPIRVToLLVM.h
M mlir/include/mlir/Conversion/TensorToSPIRV/TensorToSPIRV.h
M mlir/include/mlir/Conversion/TosaToLinalg/TosaToLinalg.h
M mlir/include/mlir/Conversion/TosaToTensor/TosaToTensor.h
M mlir/include/mlir/Conversion/UBToLLVM/UBToLLVM.h
M mlir/include/mlir/Conversion/UBToSPIRV/UBToSPIRV.h
M mlir/include/mlir/Conversion/VectorToLLVM/ConvertVectorToLLVM.h
M mlir/include/mlir/Conversion/VectorToSPIRV/VectorToSPIRV.h
M mlir/include/mlir/Dialect/AMX/Transforms.h
M mlir/include/mlir/Dialect/Arith/Transforms/Passes.h
M mlir/include/mlir/Dialect/ArmSVE/Transforms/Transforms.h
M mlir/include/mlir/Dialect/Bufferization/Transforms/Bufferize.h
M mlir/include/mlir/Dialect/Func/Transforms/DecomposeCallGraphTypes.h
M mlir/include/mlir/Dialect/Func/Transforms/FuncConversions.h
M mlir/include/mlir/Dialect/Func/Transforms/OneToNFuncConversions.h
M mlir/include/mlir/Dialect/Math/Transforms/Passes.h
M mlir/include/mlir/Dialect/MemRef/Transforms/Transforms.h
M mlir/include/mlir/Dialect/SCF/Transforms/Patterns.h
M mlir/include/mlir/Dialect/SPIRV/Transforms/SPIRVConversion.h
M mlir/include/mlir/Dialect/SparseTensor/Transforms/Passes.h
M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
M mlir/include/mlir/Dialect/X86Vector/Transforms.h
M mlir/include/mlir/Transforms/OneToNTypeConversion.h
M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
M mlir/lib/Conversion/ArithToLLVM/ArithToLLVM.cpp
M mlir/lib/Conversion/ArithToSPIRV/ArithToSPIRV.cpp
M mlir/lib/Conversion/ComplexToLLVM/ComplexToLLVM.cpp
M mlir/lib/Conversion/ComplexToSPIRV/ComplexToSPIRV.cpp
M mlir/lib/Conversion/ControlFlowToLLVM/ControlFlowToLLVM.cpp
M mlir/lib/Conversion/ControlFlowToSPIRV/ControlFlowToSPIRV.cpp
M mlir/lib/Conversion/ConvertToSPIRV/ConvertToSPIRVPass.cpp
M mlir/lib/Conversion/FuncToLLVM/FuncToLLVM.cpp
M mlir/lib/Conversion/FuncToSPIRV/FuncToSPIRV.cpp
M mlir/lib/Conversion/GPUCommon/IndexIntrinsicsOpLowering.h
M mlir/lib/Conversion/GPUCommon/OpToFuncCallLowering.h
M mlir/lib/Conversion/GPUToLLVMSPV/GPUToLLVMSPV.cpp
M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
M mlir/lib/Conversion/GPUToNVVM/WmmaOpsToNvvm.cpp
M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
M mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRV.cpp
M mlir/lib/Conversion/GPUToSPIRV/WmmaOpsToSPIRV.cpp
M mlir/lib/Conversion/IndexToLLVM/IndexToLLVM.cpp
M mlir/lib/Conversion/IndexToSPIRV/IndexToSPIRV.cpp
M mlir/lib/Conversion/MathToLLVM/MathToLLVM.cpp
M mlir/lib/Conversion/MathToROCDL/MathToROCDL.cpp
M mlir/lib/Conversion/MathToSPIRV/MathToSPIRV.cpp
M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
M mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
M mlir/lib/Conversion/NVGPUToNVVM/NVGPUToNVVM.cpp
M mlir/lib/Conversion/OpenMPToLLVM/OpenMPToLLVM.cpp
M mlir/lib/Conversion/SCFToSPIRV/SCFToSPIRV.cpp
M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
M mlir/lib/Conversion/TensorToSPIRV/TensorToSPIRV.cpp
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
M mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp
M mlir/lib/Conversion/UBToLLVM/UBToLLVM.cpp
M mlir/lib/Conversion/UBToSPIRV/UBToSPIRV.cpp
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
M mlir/lib/Dialect/AMX/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Dialect/Arith/Transforms/EmulateNarrowType.cpp
M mlir/lib/Dialect/Arith/Transforms/EmulateUnsupportedFloats.cpp
M mlir/lib/Dialect/Arith/Transforms/EmulateWideInt.cpp
M mlir/lib/Dialect/ArmSVE/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
M mlir/lib/Dialect/Func/Transforms/DecomposeCallGraphTypes.cpp
M mlir/lib/Dialect/Func/Transforms/FuncConversions.cpp
M mlir/lib/Dialect/Func/Transforms/OneToNFuncConversions.cpp
M mlir/lib/Dialect/Math/Transforms/ExtendToSupportedTypes.cpp
M mlir/lib/Dialect/MemRef/Transforms/EmulateNarrowType.cpp
M mlir/lib/Dialect/MemRef/Transforms/EmulateWideInt.cpp
M mlir/lib/Dialect/SCF/Transforms/OneToNTypeConversion.cpp
M mlir/lib/Dialect/SCF/Transforms/StructuralTypeConversions.cpp
M mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseIterationToScf.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseStorageSpecifierToLLVM.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorConversion.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
M mlir/lib/Dialect/X86Vector/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Transforms/Utils/OneToNTypeConversion.cpp
M mlir/test/lib/Conversion/OneToNTypeConversion/TestOneToNTypeConversionPass.cpp
Log Message:
-----------
[mlir][NFC] Mark type converter in `populate...` functions as `const` (#111250)
This commit marks the type converter in `populate...` functions as
`const`. This is useful for debugging.
Patterns already take a `const` type converter. However, some
`populate...` functions do not only add new patterns, but also add
additional type conversion rules. That makes it difficult to find the
place where a type conversion was added in the code base. With this
change, all `populate...` functions that only populate pattern now have
a `const` type converter. Programmers can then conclude from the
function signature that these functions do not register any new type
conversion rules.
Also some minor cleanups around the 1:N dialect conversion
infrastructure, which did not always pass the type converter as a
`const` object internally.
Commit: e36a39346796528f75ff01ef1084b2dfe0a2a747
https://github.com/llvm/llvm-project/commit/e36a39346796528f75ff01ef1084b2dfe0a2a747
Author: Matthias Springer <me at m-sp.org>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M mlir/include/mlir/Conversion/SPIRVToLLVM/SPIRVToLLVM.h
Log Message:
-----------
[mlir][SPIRV] Fix build error (#111264)
Fix build error that was introduced by #111250. Also, the deleted
function is not needed at all.
```
../llvm-project/mlir/include/mlir/Conversion/SPIRVToLLVM/SPIRVToLLVM.h: In member function ‘const mlir::LLVMTypeConverter* mlir::SPIRVToLLVMConversion<SPIRVOp>::getTypeConverter() const’:
../llvm-project/mlir/include/mlir/Conversion/SPIRVToLLVM/SPIRVToLLVM.h:35:12: error: invalid ‘static_cast’ from type ‘const mlir::TypeConverter*’ to type ‘const mlir::LLVMTypeConverter*’
35 | return static_cast<const LLVMTypeConverter *>(
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | ConversionPattern::getTypeConverter());
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../llvm-project/mlir/include/mlir/Conversion/SPIRVToLLVM/SPIRVToLLVM.h:21:7: note: class type ‘const mlir::LLVMTypeConverter’ is incomplete
```
Commit: 98723e656618345f05a8e66b18e0f5d37866e75e
https://github.com/llvm/llvm-project/commit/98723e656618345f05a8e66b18e0f5d37866e75e
Author: Matthias Springer <me at m-sp.org>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
Log Message:
-----------
[mlir][SPIRV] Fix build (2) (#111265)
Commit: d3a367dea515f147ac1380afdc286932ccf82eb0
https://github.com/llvm/llvm-project/commit/d3a367dea515f147ac1380afdc286932ccf82eb0
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
Log Message:
-----------
[RISCV] Give ZEXT_H_RV32 and ZEXT_H_RV64 R-type format to match PACK. NFC
These are different than other Zb* unary instructions because
they are specializations of PACKW or PACKH. So they should use
RVInstR instead of RVInstI.
This doesn't cause any functional difference since we only use the
format for relocations and we never have relocations on these
instructions.
Commit: 47e6d1816251e90b3d589710c5203a92c6015a7c
https://github.com/llvm/llvm-project/commit/47e6d1816251e90b3d589710c5203a92c6015a7c
Author: davidtrevelyan <davidtrevelyan at users.noreply.github.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M clang/docs/RealtimeSanitizer.rst
Log Message:
-----------
[NFC][rtsan] Update docs to include [[clang::blocking]] (#111249)
Updates the RealtimeSanitizer documentation to:
- include information about how to use `[[clang::blocking]]`, and
- update the displayed error messages to the latest style
Commit: 46944b0cbc9a9d8daad0182c40fcd3560bc9ca35
https://github.com/llvm/llvm-project/commit/46944b0cbc9a9d8daad0182c40fcd3560bc9ca35
Author: Job Henandez Lara <jobhdezlara93 at gmail.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M libc/include/llvm-libc-macros/linux/error-number-macros.h
M libc/src/__support/StringUtil/tables/CMakeLists.txt
M libc/src/__support/StringUtil/tables/linux_extension_errors.h
M libc/src/__support/StringUtil/tables/posix_errors.h
M libc/src/__support/StringUtil/tables/stdc_errors.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/acosf.cpp
M libc/src/math/generic/asinf.cpp
M libc/src/math/generic/cosf.cpp
M libc/src/math/generic/exp.cpp
M libc/src/math/generic/exp10.cpp
M libc/src/math/generic/exp10f_impl.h
M libc/src/math/generic/exp2.cpp
M libc/src/math/generic/exp2f_impl.h
M libc/src/math/generic/expf.cpp
M libc/src/math/generic/explogxf.h
M libc/src/math/generic/expm1f.cpp
M libc/src/math/generic/powf.cpp
M libc/src/math/generic/sincosf.cpp
M libc/src/math/generic/sinf.cpp
M libc/src/math/generic/tanf.cpp
M libc/src/pthread/CMakeLists.txt
M libc/src/pthread/pthread_atfork.cpp
M libc/src/pthread/pthread_attr_setdetachstate.cpp
M libc/src/pthread/pthread_attr_setguardsize.cpp
M libc/src/pthread/pthread_attr_setstack.cpp
M libc/src/pthread/pthread_attr_setstacksize.cpp
M libc/src/pthread/pthread_condattr_setclock.cpp
M libc/src/pthread/pthread_condattr_setpshared.cpp
M libc/src/pthread/pthread_create.cpp
M libc/src/pthread/pthread_key_create.cpp
M libc/src/pthread/pthread_key_delete.cpp
M libc/src/pthread/pthread_mutex_init.cpp
M libc/src/pthread/pthread_mutexattr_destroy.cpp
M libc/src/pthread/pthread_mutexattr_getpshared.cpp
M libc/src/pthread/pthread_mutexattr_getrobust.cpp
M libc/src/pthread/pthread_mutexattr_gettype.cpp
M libc/src/pthread/pthread_mutexattr_setpshared.cpp
M libc/src/pthread/pthread_mutexattr_setrobust.cpp
M libc/src/pthread/pthread_mutexattr_settype.cpp
M libc/src/pthread/pthread_rwlock_destroy.cpp
M libc/src/pthread/pthread_rwlock_init.cpp
M libc/src/pthread/pthread_rwlock_rdlock.cpp
M libc/src/pthread/pthread_rwlock_timedrdlock.cpp
M libc/src/pthread/pthread_rwlock_timedwrlock.cpp
M libc/src/pthread/pthread_rwlock_tryrdlock.cpp
M libc/src/pthread/pthread_rwlock_trywrlock.cpp
M libc/src/pthread/pthread_rwlock_unlock.cpp
M libc/src/pthread/pthread_rwlock_wrlock.cpp
M libc/src/pthread/pthread_rwlockattr_setkind_np.cpp
M libc/src/pthread/pthread_rwlockattr_setpshared.cpp
M libc/src/pthread/pthread_setspecific.cpp
M libc/src/spawn/CMakeLists.txt
M libc/src/spawn/posix_spawn_file_actions_addclose.cpp
M libc/src/spawn/posix_spawn_file_actions_adddup2.cpp
M libc/src/spawn/posix_spawn_file_actions_addopen.cpp
M libc/src/spawn/posix_spawn_file_actions_destroy.cpp
M libc/src/threads/CMakeLists.txt
M libc/src/threads/thrd_create.cpp
M libc/test/UnitTest/PrintfMatcher.h
M libc/test/UnitTest/ScanfMatcher.h
M libc/test/integration/src/pthread/CMakeLists.txt
M libc/test/integration/src/pthread/pthread_name_test.cpp
M libc/test/integration/src/spawn/posix_spawn_test_binary.cpp
M libc/test/integration/src/unistd/CMakeLists.txt
M libc/test/integration/src/unistd/fork_test.cpp
M libc/test/integration/src/unistd/stack_smashing_test.cpp
M libc/test/integration/startup/linux/CMakeLists.txt
M libc/test/integration/startup/linux/tls_test.cpp
M libc/test/src/__support/File/CMakeLists.txt
M libc/test/src/math/RoundToIntegerTest.h
M libc/test/src/math/acosf_test.cpp
M libc/test/src/math/acoshf_test.cpp
M libc/test/src/math/asinf_test.cpp
M libc/test/src/math/asinhf_test.cpp
M libc/test/src/math/atanf_test.cpp
M libc/test/src/math/atanhf_test.cpp
M libc/test/src/math/cosf_test.cpp
M libc/test/src/math/coshf_test.cpp
M libc/test/src/math/erff_test.cpp
M libc/test/src/math/exp10_test.cpp
M libc/test/src/math/exp2_test.cpp
M libc/test/src/math/exp_test.cpp
M libc/test/src/math/log10_test.cpp
M libc/test/src/math/log10f_test.cpp
M libc/test/src/math/log1p_test.cpp
M libc/test/src/math/log1pf_test.cpp
M libc/test/src/math/log2_test.cpp
M libc/test/src/math/log_test.cpp
M libc/test/src/math/powf_test.cpp
M libc/test/src/math/sincosf_test.cpp
M libc/test/src/math/sinf_test.cpp
M libc/test/src/math/sinhf_test.cpp
M libc/test/src/math/smoke/RoundToIntegerTest.h
M libc/test/src/math/smoke/acosf_test.cpp
M libc/test/src/math/smoke/acoshf_test.cpp
M libc/test/src/math/smoke/asinf_test.cpp
M libc/test/src/math/smoke/asinhf_test.cpp
M libc/test/src/math/smoke/atanf_test.cpp
M libc/test/src/math/smoke/atanhf_test.cpp
M libc/test/src/math/smoke/cosf_test.cpp
M libc/test/src/math/smoke/coshf_test.cpp
M libc/test/src/math/smoke/erff_test.cpp
M libc/test/src/math/smoke/exp10_test.cpp
M libc/test/src/math/smoke/exp2_test.cpp
M libc/test/src/math/smoke/exp_test.cpp
M libc/test/src/math/smoke/expm1_test.cpp
M libc/test/src/math/smoke/log10_test.cpp
M libc/test/src/math/smoke/log10f_test.cpp
M libc/test/src/math/smoke/log1p_test.cpp
M libc/test/src/math/smoke/log1pf_test.cpp
M libc/test/src/math/smoke/log2_test.cpp
M libc/test/src/math/smoke/log_test.cpp
M libc/test/src/math/smoke/powf_test.cpp
M libc/test/src/math/smoke/sincosf_test.cpp
M libc/test/src/math/smoke/sinf_test.cpp
M libc/test/src/math/smoke/sinhf_test.cpp
M libc/test/src/math/smoke/tanf_test.cpp
M libc/test/src/math/smoke/tanhf_test.cpp
M libc/test/src/math/tanf_test.cpp
M libc/test/src/math/tanhf_test.cpp
M libc/test/src/pthread/CMakeLists.txt
M libc/test/src/pthread/pthread_attr_test.cpp
M libc/test/src/pthread/pthread_mutexattr_test.cpp
M libc/test/src/signal/CMakeLists.txt
M libc/test/src/signal/sigaddset_test.cpp
M libc/test/src/signal/sigdelset_test.cpp
M libc/test/src/signal/sigfillset_test.cpp
M libc/test/src/spawn/CMakeLists.txt
M libc/test/src/spawn/posix_spawn_file_actions_test.cpp
M libc/test/src/sys/prctl/linux/CMakeLists.txt
M libc/test/src/sys/prctl/linux/prctl_test.cpp
M libc/test/src/sys/resource/CMakeLists.txt
M libc/test/src/sys/select/CMakeLists.txt
M libc/test/src/sys/select/select_failure_test.cpp
M libc/test/src/sys/sendfile/CMakeLists.txt
M libc/test/src/sys/utsname/CMakeLists.txt
M libc/test/src/sys/utsname/uname_test.cpp
M libc/test/src/sys/wait/CMakeLists.txt
M libc/test/src/sys/wait/wait4_test.cpp
M libc/test/src/sys/wait/waitpid_test.cpp
M libc/test/src/unistd/CMakeLists.txt
Log Message:
-----------
[libc] remove errno.h includes (#110934)
Commit: 0cdb978906b060508204788a8cfcb5c7d9155e32
https://github.com/llvm/llvm-project/commit/0cdb978906b060508204788a8cfcb5c7d9155e32
Author: Job Henandez Lara <jobhdezlara93 at gmail.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M libc/src/__support/StringUtil/tables/CMakeLists.txt
M libc/src/__support/StringUtil/tables/stdc_errors.h
Log Message:
-----------
[libc] Add missing include to __support/StringUtil/tables/stdc_errors.h. (#111271)
Failed build bots:
https://lab.llvm.org/buildbot/#/builders/11/builds/6164
https://lab.llvm.org/buildbot/#/builders/73/builds/6651
Commit: e075dcf7d270fd52dc837163ff24e8c872dfeb49
https://github.com/llvm/llvm-project/commit/e075dcf7d270fd52dc837163ff24e8c872dfeb49
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
R llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-load-store-pointers.ll
R llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-global-old-legalization.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-local.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-constant.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-flat.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-global.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-local.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-private.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-store-global.mir
Log Message:
-----------
Revert "Reapply "[AMDGPU][GlobalISel] Fix load/store of pointer vectors, buffer.*.pN (#110714)" (#111059)"
This reverts commit 98a15c7b0c6ec129d371f0c121dbe9396c4f5609.
(llvmorg-20-init-8051-g98a15c7b0c6e)
Commit: 18d9dcdfe1e09a439db9dc06f3cc32808702395f
https://github.com/llvm/llvm-project/commit/18d9dcdfe1e09a439db9dc06f3cc32808702395f
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
Log Message:
-----------
[RISCV] Unify RVBShift_ri and RVBShiftW_ri with Shift_ri and ShiftW_ri. NFC (#111263)
The split primarily existed because Shift_ri and ShiftW_ri included
scheduler classes. So pull those out like ALU_rr.
This removes all uses of RVBShiftW_ri. One use of RVBShift_ri remains
because SLLI_UW uses a uimmlog2xlen shift amount and OP_IMM_32. Which is
different than the other OP_IMM_32 shift instructions.
Commit: 6de5305b3d7a4a19a29b35d481a8090e2a6d3a7e
https://github.com/llvm/llvm-project/commit/6de5305b3d7a4a19a29b35d481a8090e2a6d3a7e
Author: Rose <gfunni234 at gmail.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
M llvm/test/CodeGen/X86/memcpy-struct-by-value.ll
M llvm/test/CodeGen/X86/memcpy.ll
M llvm/test/CodeGen/X86/memset-minsize.ll
M llvm/test/CodeGen/X86/memset-vs-memset-inline.ll
Log Message:
-----------
[X86] For minsize memset/memcpy, use byte or double-word accesses (#87003)
repstosb and repstosd are the same size, but stosd is only done for 0
because the process of multiplying the constant so that it is copied
across the bytes of the 32-bit number adds extra instructions that cause
the size to increase. For 0, repstosb and repstosd are the same size,
but stosd is only done for 0 because the process of multiplying the
constant so that it is copied across the bytes of the 32-bit number adds
extra instructions that cause the size to increase. For 0, we do not
need to do that at all.
For memcpy, the same goes, and as a result the minsize check was moved
ahead because a jmp to memcpy encoded takes more bytes than repmovsb.
Commit: 37ce3c2208167b01bad29761a4e0b0a368cb1f36
https://github.com/llvm/llvm-project/commit/37ce3c2208167b01bad29761a4e0b0a368cb1f36
Author: Yang Kun <91833768+ikspress at users.noreply.github.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M libcxx/include/__system_error/errc.h
Log Message:
-----------
[libc++] Fix a typo (#111239)
Just a small typo I found when I refer to libc++'s code.
Commit: 6d03a69034edb7805a4ba00334a1275cef39dd72
https://github.com/llvm/llvm-project/commit/6d03a69034edb7805a4ba00334a1275cef39dd72
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/LoongArch.cpp
M lld/ELF/Arch/Mips.cpp
M lld/ELF/Arch/MipsArchTree.cpp
M lld/ELF/Arch/PPC.cpp
M lld/ELF/Arch/PPC64.cpp
M lld/ELF/Arch/RISCV.cpp
M lld/ELF/Driver.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputSection.cpp
M lld/ELF/Relocations.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
M lld/ELF/Target.h
M lld/ELF/Thunks.cpp
M lld/ELF/Writer.cpp
M lld/ELF/Writer.h
Log Message:
-----------
[ELF] Pass Ctx & to Arch/
Commit: b3e0bd3d284dec705386b1efcae40dd51b763010
https://github.com/llvm/llvm-project/commit/b3e0bd3d284dec705386b1efcae40dd51b763010
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M lld/ELF/AArch64ErrataFix.cpp
M lld/ELF/ARMErrataFix.cpp
M lld/ELF/ARMErrataFix.h
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/Mips.cpp
M lld/ELF/Arch/MipsArchTree.cpp
M lld/ELF/Driver.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputFiles.h
M lld/ELF/Symbols.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
M lld/ELF/Target.h
M lld/ELF/Writer.cpp
M lld/ELF/Writer.h
Log Message:
-----------
[ELF] Pass Ctx & to Arch/
Commit: 45b526afa26e76e0c351e947ac8f0e4b55aa760b
https://github.com/llvm/llvm-project/commit/45b526afa26e76e0c351e947ac8f0e4b55aa760b
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
A llvm/test/Transforms/LoopVectorize/X86/replicate-uniform-call.ll
Log Message:
-----------
[LV] Honor uniform-after-vectorization in setVectorizedCallDecision.
The legacy cost model always computes the cost for uniforms as cost of
VF = 1, but VPWidenCallRecipes would be created, as
setVectorizedCallDecisions would not consider uniform calls.
Fix setVectorizedCallDecision to set to Scalarize, if the call is
uniform-after-vectorization.
This fixes a bug in VPlan construction uncovered by the VPlan-based
cost model.
Fixes https://github.com/llvm/llvm-project/issues/111040.
Commit: d2408c417cfa71f1786c909788560374eb1aca96
https://github.com/llvm/llvm-project/commit/d2408c417cfa71f1786c909788560374eb1aca96
Author: David Green <david.green at arm.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Transforms/InstCombine/canonicalize-gep-constglob.ll
M llvm/test/Transforms/InstCombine/gep-merge-constant-indices.ll
Log Message:
-----------
[InstCombine] Canonicalize more geps with constant gep bases and constant offsets. (#110033)
This is another small but hopefully not performance negative step to
canonicalizing towards i8 geps. We looks for geps with a constant offset
base pointer of the form `gep (gep @glob, C1), x, C2` and expand the gep
instruction, so that the constant can hopefully be combined together (or
the x offset can be computed in common).
Commit: fb0ef6b66e3c7e91481568c15ed67c047dab84e1
https://github.com/llvm/llvm-project/commit/fb0ef6b66e3c7e91481568c15ed67c047dab84e1
Author: Carlos Galvez <carlosgalvezp at gmail.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
A clang-tools-extra/clang-tidy/bugprone/BitwisePointerCastCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/BitwisePointerCastCheck.h
M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/bitwise-pointer-cast.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
A clang-tools-extra/test/clang-tidy/checkers/bugprone/bitwise-pointer-cast-cxx20.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/bitwise-pointer-cast.cpp
Log Message:
-----------
[clang-tidy] Create bugprone-bitwise-pointer-cast check (#108083)
To detect unsafe usages of casting a pointer to another via copying
the bytes from one into the other, either via std::bit_cast or via
memcpy. This is currently not caught by any other means.
Fixes #106987
---------
Co-authored-by: Carlos Gálvez <carlos.galvez at zenseact.com>
Commit: 89d2a9de05074bf6e538fd514228c43aed3cc72f
https://github.com/llvm/llvm-project/commit/89d2a9de05074bf6e538fd514228c43aed3cc72f
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains-vplan.ll
Log Message:
-----------
[VPlan] Add additional FOR hoisting test.
Additional tests for https://github.com/llvm/llvm-project/pull/108945.
Commit: 20864d2cf610639a70e43aa417f90b457f8e3c90
https://github.com/llvm/llvm-project/commit/20864d2cf610639a70e43aa417f90b457f8e3c90
Author: Luke Lau <luke at igalia.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/include/llvm/CodeGen/ValueTypes.td
M llvm/test/Analysis/CostModel/RISCV/arith-fp.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-fadd.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-fmul.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfwmaccbf16.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll
Log Message:
-----------
[ValueTypes][RISCV] Add v1bf16 type (#111112)
When trying to add RISC-V fadd reduction cost model tests for bf16, I
noticed a crash when the vector was of <1 x bfloat>.
It turns out that this was being scalarized because unlike f16/f32/f64,
there's no v1bf16 value type, and the existing cost model code assumed
that the legalized type would always be a vector.
This adds v1bf16 to bring bf16 in line with the other fp types.
It also adds some more RISC-V bf16 reduction tests which previously
crashed, including tests to ensure that SLP won't emit fadd/fmul
reductions for bf16 or f16 w/ zvfhmin after #111000.
Commit: c36afb50162a43fb852beea3aad0d73bf2985bea
https://github.com/llvm/llvm-project/commit/c36afb50162a43fb852beea3aad0d73bf2985bea
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineSubABS - avoid duplicate SDLoc. NFC.
Simplify arguments by reusing values from combineSub directly.
Commit: 1bc87c9f3cb20a51191f522bf4d69338ad6bb4e6
https://github.com/llvm/llvm-project/commit/1bc87c9f3cb20a51191f522bf4d69338ad6bb4e6
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/combine-add.ll
M llvm/test/CodeGen/X86/vector-mul.ll
Log Message:
-----------
[x86] combineMul - use computeKnownBits directly to find MUL_IMM constant splat.
As we're after a constant splat value we can avoid all the complexities of trying to recreate the correct constant via getTargetConstantFromNode.
Commit: dee44b200b0dd5351a0c05126709e0f4c40f9b0a
https://github.com/llvm/llvm-project/commit/dee44b200b0dd5351a0c05126709e0f4c40f9b0a
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineBitOpWithShift - avoid duplicate SDLoc/operands code. NFC.
Reuse values from the callers directly.
Commit: 595a738fb4239560a3292fa99ca12628215495e7
https://github.com/llvm/llvm-project/commit/595a738fb4239560a3292fa99ca12628215495e7
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineBitOpWithMOVMSK - avoid duplicate SDLoc/operands code. NFC.
Reuse values from the callers directly.
Commit: 8ebd4019500cbec28426f19e6440484d53ecaecd
https://github.com/llvm/llvm-project/commit/8ebd4019500cbec28426f19e6440484d53ecaecd
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineBitOpWithPACK - avoid duplicate SDLoc/operands code. NFC.
Reuse values from the callers directly.
Commit: 2cc97951400ca2ab79d6bdeccffa6e431882a86e
https://github.com/llvm/llvm-project/commit/2cc97951400ca2ab79d6bdeccffa6e431882a86e
Author: c8ef <c8ef at outlook.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M libc/src/string/memory_utils/aarch64/inline_memcmp.h
M libc/src/string/memory_utils/aarch64/inline_memcpy.h
M libc/src/string/memory_utils/aarch64/inline_memmove.h
M libc/src/string/memory_utils/generic/aligned_access.h
M libc/src/string/memory_utils/generic/byte_per_byte.h
M libc/src/string/memory_utils/inline_memcmp.h
M libc/src/string/memory_utils/inline_memcpy.h
M libc/src/string/memory_utils/inline_memset.h
M libc/src/string/memory_utils/x86_64/inline_memcmp.h
M libc/src/string/memory_utils/x86_64/inline_memcpy.h
M libc/src/string/memory_utils/x86_64/inline_memmove.h
Log Message:
-----------
[libc] Clean up some include in `libc`. (#110980)
The patch primarily cleans up some incorrect includes. The `LIBC_INLINE`
macro is defined in `attributes.h`, not `config.h`. There appears to be
no need to change the CMake and Bazel build files.
Commit: 8cead83c399f4d74949b53633f8026cb7effc54f
https://github.com/llvm/llvm-project/commit/8cead83c399f4d74949b53633f8026cb7effc54f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] convertIntLogicToFPLogic - avoid duplicate SDLoc/operands code. NFC.
Reuse values from the callers directly.
Commit: 8326fb2626836ca4d95f30a67f7836dd2b4c1031
https://github.com/llvm/llvm-project/commit/8326fb2626836ca4d95f30a67f7836dd2b4c1031
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineOrXorWithSETCC - avoid duplicate SDLoc/operands code. NFC.
Reuse values from the callers directly.
Commit: d54b1cfa38a111796945fb91c4efb3effbc25649
https://github.com/llvm/llvm-project/commit/d54b1cfa38a111796945fb91c4efb3effbc25649
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M libcxx/test/benchmarks/CMakeLists.txt
M libcxx/test/benchmarks/format.bench.cpp
A libcxx/test/benchmarks/format/write_double_comparison.bench.cpp
A libcxx/test/benchmarks/format/write_int_comparison.bench.cpp
A libcxx/test/benchmarks/format/write_string_comparison.bench.cpp
Log Message:
-----------
[libc++][format][1/3] Adds more benchmarks. (#101803)
This patch is the start of a series to improve the speed of std::format,
std::format_to, std::format_to_n, and std::formatted_size.
This is mostly achieved by changing the __output_buffer class. This new
__output_buffer class also makes it easier to implement buffering for
P3107R5 "Permit an efficient implementation of std::print"
Commit: abdf4ca4f12c834e0541f996596584a65fda44ef
https://github.com/llvm/llvm-project/commit/abdf4ca4f12c834e0541f996596584a65fda44ef
Author: Luke Lau <luke at igalia.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp.ll
Log Message:
-----------
[RISCV] Simplify fixed-vector-fp.ll run lines. NFC
This removes the different scalar fp16 configurations i.e. zfh and
zfhmin, since all these ops should be able to be lowered without
scalarizing.
This ends up revealing a couple of cases where we end up scalarizing
unexpectedly, e.g. sqrt/fabs/round with v6f16 and zvfhmin.
It also removes the zvl256b configurations, since I couldn't find
anything that specifically needed to test this.
Commit: bea28037f6b68ee79b9360d91e0f3defd10fa976
https://github.com/llvm/llvm-project/commit/bea28037f6b68ee79b9360d91e0f3defd10fa976
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/RegisterBankInfo.cpp
Log Message:
-----------
[CodeGen] Avoid repeated hash lookups (NFC) (#111274)
Commit: 9e6578c6a17fe942b45daf57fa162303e111fa38
https://github.com/llvm/llvm-project/commit/9e6578c6a17fe942b45daf57fa162303e111fa38
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Core/CheckerManager.cpp
Log Message:
-----------
[StaticAnalyzer] Avoid repeated hash lookups (NFC) (#111272)
Commit: 93f7fce397155f40de46d867c345e335b30b8d5c
https://github.com/llvm/llvm-project/commit/93f7fce397155f40de46d867c345e335b30b8d5c
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/Program.cpp
Log Message:
-----------
[ByteCode] Avoid repeated hash lookups (NFC) (#111273)
Commit: 11c6ea3d3bd59c548562425f0de1fcef1b4660dc
https://github.com/llvm/llvm-project/commit/11c6ea3d3bd59c548562425f0de1fcef1b4660dc
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp
Log Message:
-----------
[ExecutionEngine] Avoid repeated hash lookups (NFC) (#111275)
Commit: 75bcf57c16586a0e3995e420ec331056a40a043f
https://github.com/llvm/llvm-project/commit/75bcf57c16586a0e3995e420ec331056a40a043f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/test/CodeGen/X86/replace-load-and-with-bzhi.ll
Log Message:
-----------
[X86] replace-load-and-with-bzhi.ll - cleanup check-prefixes to use X86/X64 for 32/64-bit targets
Commit: 326a61506ab08337a6b34283d3bbb316018edf42
https://github.com/llvm/llvm-project/commit/326a61506ab08337a6b34283d3bbb316018edf42
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/test/CodeGen/X86/replace-load-and-with-bzhi.ll
Log Message:
-----------
[X86] replace-load-and-with-bzhi.ll - add commuted test cases to show failure to fold
Tests showing combineAndLoadToBZHI commutation folding is currently broken
Commit: 56757e52ebbd79af540c23b00abb13c9bf5f2d60
https://github.com/llvm/llvm-project/commit/56757e52ebbd79af540c23b00abb13c9bf5f2d60
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/replace-load-and-with-bzhi.ll
Log Message:
-----------
[X86] combineAndLoadToBZHI - don't do an return early return if we fail to match a load
Just continue so we can test the commutated pattern as well.
Commit: 26ca8ef836f6ed8665f992d7cf520a4c0002f3ae
https://github.com/llvm/llvm-project/commit/26ca8ef836f6ed8665f992d7cf520a4c0002f3ae
Author: Ivan Butygin <ivan.butygin at gmail.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M libc/newhdrgen/yaml/gpu/rpc.yaml
M libc/spec/gpu_ext.td
M libc/src/gpu/rpc_host_call.cpp
M libc/src/gpu/rpc_host_call.h
M libc/utils/gpu/server/rpc_server.cpp
M offload/test/libc/host_call.c
Log Message:
-----------
[libc] GPU RPC interface: add return value to `rpc_host_call` (#111288)
Commit: 49865107d49b2be86d9ff5474d081c49d1556213
https://github.com/llvm/llvm-project/commit/49865107d49b2be86d9ff5474d081c49d1556213
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M lld/ELF/Driver.cpp
M lld/ELF/Driver.h
M lld/ELF/DriverUtils.cpp
M lld/ELF/EhFrame.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputFiles.h
M lld/ELF/ScriptParser.cpp
Log Message:
-----------
[ELF] Pass Ctx & to InputFiles
Commit: 864fcfc78733297055fea032dfb5f7c8d594dfd8
https://github.com/llvm/llvm-project/commit/864fcfc78733297055fea032dfb5f7c8d594dfd8
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZk.td
Log Message:
-----------
[RISCV] Combine RVBUnary and RVKUnary into classes that are more similar to ALU(W)_r(r/i). NFC (#111279)
Create Unary_r and UnaryW_r that use OP_IMM and OP_IMM_32.
Commit: 7f65377880ce6a0e5eaa4cb2591b86b8c8a24ee6
https://github.com/llvm/llvm-project/commit/7f65377880ce6a0e5eaa4cb2591b86b8c8a24ee6
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M libcxx/include/__format/formatter_string.h
Log Message:
-----------
[libc++][format][2/3] Optimizes c-string arguments. (#101805)
The formatter specializations for _CharT* and const _CharT* typically
write all elements in a loop. This format's internal functions are
optimized for larger writes.
Instead of writing one element at a time, convert the range to a
basic_string_view and write that instead.
For C string of 6 characters this is a bit slower, but for 60 characters
it's faster. The improvements for back_inserter<std::list<_CharT>> are
not as great as the others; it just gets as slow as
basic_string_view<_CharT>.
omparing libcxx/test/benchmarks/write_string_comparison.bench.out-before to libcxx/test/benchmarks/write_string_comparison.bench.out-after
Benchmark Time CPU Time Old Time New CPU Old CPU New
-----------------------------------------------------------------------------------------------------------------------------------------------------------------
BM_sprintf/C_string_len_6 -0.0015 +0.0013 5 5 5 5
BM_format/C_string_len_6 +0.0390 +0.0416 53 55 53 55
BM_format_to_back_inserter<std::string>/C_string_len_6 +0.0381 +0.0408 53 55 53 55
BM_format_to_back_inserter<std::vector<char>>/C_string_len_6 +0.0287 +0.0315 69 71 69 71
BM_format_to_back_inserter<std::deque<char>>/C_string_len_6 +0.0503 +0.0530 123 129 123 129
BM_format_to_back_inserter<std::list<char>>/C_string_len_6 -0.0241 -0.0213 133 130 133 130
BM_format_to_iterator/<std::array> C_string_len_6 -0.0075 -0.0049 45 45 45 45
BM_format_to_iterator/<std::string> C_string_len_6 +0.0311 +0.0340 44 46 44 46
BM_format_to_iterator/<std::vector> C_string_len_6 +0.0380 +0.0409 43 45 43 45
BM_format_to_iterator/<std::deque> C_string_len_6 +0.0366 +0.0392 48 50 48 50
BM_format/string_len_6 -0.0010 -0.0007 56 55 55 55
BM_format_to_back_inserter<std::string>/string_len_6 +0.0044 +0.0041 55 56 55 55
BM_format_to_back_inserter<std::vector<char>>/string_len_6 +0.0128 +0.0128 70 71 70 71
BM_format_to_back_inserter<std::deque<char>>/string_len_6 +0.0151 +0.0151 126 128 126 128
BM_format_to_back_inserter<std::list<char>>/string_len_6 -0.0719 -0.0718 140 130 139 129
BM_format_to_iterator/<std::array> string_len_6 -0.0323 -0.0324 47 46 47 46
BM_format_to_iterator/<std::string> string_len_6 -0.0011 -0.0010 45 44 44 44
BM_format_to_iterator/<std::vector> string_len_6 -0.0002 -0.0001 45 45 44 44
BM_format_to_iterator/<std::deque> string_len_6 +0.0046 +0.0047 51 51 51 51
BM_format/string_view_len_6 +0.0031 +0.0031 54 54 54 54
BM_format_to_back_inserter<std::string>/string_view_len_6 +0.0041 +0.0040 54 54 54 54
BM_format_to_back_inserter<std::vector<char>>/string_view_len_6 +0.0022 +0.0022 70 70 70 70
BM_format_to_back_inserter<std::deque<char>>/string_view_len_6 +0.0392 +0.0391 124 129 124 129
BM_format_to_back_inserter<std::list<char>>/string_view_len_6 -0.0680 -0.0680 139 129 138 129
BM_format_to_iterator/<std::array> string_view_len_6 -0.0321 -0.0320 47 46 47 46
BM_format_to_iterator/<std::string> string_view_len_6 -0.0013 -0.0011 45 44 44 44
BM_format_to_iterator/<std::vector> string_view_len_6 -0.0024 -0.0023 45 44 44 44
BM_format_to_iterator/<std::deque> string_view_len_6 +0.0057 +0.0057 51 51 51 51
BM_sprintf/C_string_len_60 -0.0035 -0.0035 4 4 4 4
BM_format/C_string_len_60 -0.5627 -0.5627 169 74 169 74
BM_format_to_back_inserter<std::string>/C_string_len_60 -0.5642 -0.5641 170 74 169 74
BM_format_to_back_inserter<std::vector<char>>/C_string_len_60 -0.5300 -0.5299 178 84 178 84
BM_format_to_back_inserter<std::deque<char>>/C_string_len_60 -0.2548 -0.2548 356 265 355 264
BM_format_to_back_inserter<std::list<char>>/C_string_len_60 -0.1013 -0.1013 1325 1191 1322 1188
BM_format_to_iterator/<std::array> C_string_len_60 -0.6790 -0.6791 141 45 141 45
BM_format_to_iterator/<std::string> C_string_len_60 -0.6738 -0.6740 143 47 142 46
BM_format_to_iterator/<std::vector> C_string_len_60 -0.6807 -0.6808 142 45 142 45
BM_format_to_iterator/<std::deque> C_string_len_60 -0.6488 -0.6486 144 51 144 51
BM_format/string_len_60 +0.0118 +0.0117 73 74 73 73
BM_format_to_back_inserter<std::string>/string_len_60 +0.0089 +0.0088 73 73 73 73
BM_format_to_back_inserter<std::vector<char>>/string_len_60 +0.0080 +0.0081 83 84 83 83
BM_format_to_back_inserter<std::deque<char>>/string_len_60 +0.0005 +0.0002 262 263 262 262
BM_format_to_back_inserter<std::list<char>>/string_len_60 -0.0384 -0.0380 1236 1188 1232 1186
BM_format_to_iterator/<std::array> string_len_60 -0.0288 -0.0288 47 46 47 46
BM_format_to_iterator/<std::string> string_len_60 +0.0213 +0.0210 44 45 44 45
BM_format_to_iterator/<std::vector> string_len_60 +0.0202 +0.0205 45 45 44 45
BM_format_to_iterator/<std::deque> string_len_60 +0.0124 +0.0124 50 51 50 51
BM_format/string_view_len_60 +0.0093 +0.0093 73 73 73 73
BM_format_to_back_inserter<std::string>/string_view_len_60 +0.0055 +0.0055 73 73 73 73
BM_format_to_back_inserter<std::vector<char>>/string_view_len_60 +0.0165 +0.0166 81 83 81 83
BM_format_to_back_inserter<std::deque<char>>/string_view_len_60 +0.0138 +0.0140 260 263 259 263
BM_format_to_back_inserter<std::list<char>>/string_view_len_60 -0.0334 -0.0335 1228 1187 1225 1184
BM_format_to_iterator/<std::array> string_view_len_60 -0.0257 -0.0259 48 46 47 46
BM_format_to_iterator/<std::string> string_view_len_60 +0.0324 +0.0323 45 46 44 46
BM_format_to_iterator/<std::vector> string_view_len_60 +0.0174 +0.0177 45 45 44 45
BM_format_to_iterator/<std::deque> string_view_len_60 +0.0076 +0.0076 50 51 50 51
BM_sprintf/C_string_len_6000 +0.4922 +0.4921 77 115 77 114
BM_format/C_string_len_6000 -0.9239 -0.9239 11780 897 11750 894
BM_format_to_back_inserter<std::string>/C_string_len_6000 -0.9239 -0.9239 11792 898 11763 895
BM_format_to_back_inserter<std::vector<char>>/C_string_len_6000 -0.9257 -0.9257 11709 870 11679 868
BM_format_to_back_inserter<std::deque<char>>/C_string_len_6000 -0.4057 -0.4057 25616 15225 25553 15187
BM_format_to_back_inserter<std::list<char>>/C_string_len_6000 -0.0832 -0.0833 127144 116569 126823 116265
BM_format_to_iterator/<std::array> C_string_len_6000 -0.9853 -0.9853 10869 160 10843 160
BM_format_to_iterator/<std::string> C_string_len_6000 -0.9864 -0.9864 10870 148 10841 148
BM_format_to_iterator/<std::vector> C_string_len_6000 -0.9863 -0.9863 10874 149 10846 148
BM_format_to_iterator/<std::deque> C_string_len_6000 -0.9629 -0.9629 11239 417 11212 416
BM_format/string_len_6000 -0.0012 -0.0013 846 845 844 842
BM_format_to_back_inserter<std::string>/string_len_6000 -0.0029 -0.0034 845 843 843 840
BM_format_to_back_inserter<std::vector<char>>/string_len_6000 -0.0129 -0.0125 832 821 830 819
BM_format_to_back_inserter<std::deque<char>>/string_len_6000 +0.0048 +0.0048 15042 15114 15004 15076
BM_format_to_back_inserter<std::list<char>>/string_len_6000 -0.0017 -0.0017 116266 116072 115967 115768
BM_format_to_iterator/<std::array> string_len_6000 -0.0257 -0.0256 120 117 120 117
BM_format_to_iterator/<std::string> string_len_6000 -0.0025 -0.0029 117 117 117 117
BM_format_to_iterator/<std::vector> string_len_6000 -0.0089 -0.0087 118 116 117 116
BM_format_to_iterator/<std::deque> string_len_6000 -0.0478 -0.0477 379 361 378 360
BM_format/string_view_len_6000 -0.0092 -0.0091 842 835 840 833
BM_format_to_back_inserter<std::string>/string_view_len_6000 -0.0081 -0.0083 841 835 839 832
BM_format_to_back_inserter<std::vector<char>>/string_view_len_6000 +0.0089 +0.0088 808 815 806 813
BM_format_to_back_inserter<std::deque<char>>/string_view_len_6000 +0.0068 +0.0068 15030 15131 14992 15093
BM_format_to_back_inserter<std::list<char>>/string_view_len_6000 +0.0012 +0.0010 116099 116243 115813 115934
BM_format_to_iterator/<std::array> string_view_len_6000 -0.0122 -0.0121 118 117 118 116
BM_format_to_iterator/<std::string> string_view_len_6000 +0.0010 +0.0010 106 107 106 106
BM_format_to_iterator/<std::vector> string_view_len_6000 -0.0008 -0.0006 106 106 106 106
BM_format_to_iterator/<std::deque> string_view_len_6000 -0.0549 -0.0548 370 349 369 349
OVERALL_GEOMEAN
Commit: b0c070e2637935030ecd36777f22542bf371ef8c
https://github.com/llvm/llvm-project/commit/b0c070e2637935030ecd36777f22542bf371ef8c
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M clang-tools-extra/clangd/FindSymbols.cpp
M clang-tools-extra/clangd/index/MemIndex.cpp
M clang-tools-extra/clangd/index/dex/Dex.cpp
Log Message:
-----------
[clangd] Simplify ternary expressions with std::optional::value_or (NFC) (#111309)
Commit: 7f74651837b8f95996ea4c774b2e604020446951
https://github.com/llvm/llvm-project/commit/7f74651837b8f95996ea4c774b2e604020446951
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/test/Transforms/LoopVectorize/AArch64/interleaved-store-of-first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/X86/interleave-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/vectorize-interleaved-accesses-gap.ll
M llvm/test/Transforms/LoopVectorize/X86/x86-interleaved-accesses-masked-group.ll
M llvm/test/Transforms/LoopVectorize/X86/x86-interleaved-store-accesses-with-gaps.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses-different-insert-position.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/interleavevectorization.ll
Log Message:
-----------
[VPlan] Use pointer to member 0 as VPInterleaveRecipe's pointer arg. (#106431)
Update VPInterleaveRecipe to always use the pointer to member 0 as
pointer argument. This in many cases helps to remove unneeded index
adjustments and simplifies VPInterleaveRecipe::execute.
In some rare cases, the address of member 0 does not dominate the insert
position of the interleave group. In those cases a PtrAdd VPInstruction
is emitted to compute the address of member 0 based on the address of
the insert position. Alternatively we could hoist the recipe computing
the address of member 0.
Commit: acf92a47c0ece8562fd745215c478fe2d4ab5896
https://github.com/llvm/llvm-project/commit/acf92a47c0ece8562fd745215c478fe2d4ab5896
Author: Nathan Ridge <zeratul976 at hotmail.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M clang-tools-extra/clang-tidy/boost/UseRangesCheck.cpp
M clang-tools-extra/clangd/unittests/ClangdLSPServerTests.cpp
Log Message:
-----------
[clang-tidy] Avoid capturing a local variable in a static lambda in UseRangesCheck (#111282)
Fixes https://github.com/llvm/llvm-project/issues/109367
Commit: 2b5cb1bf628fc54473355e0675f629d9332089df
https://github.com/llvm/llvm-project/commit/2b5cb1bf628fc54473355e0675f629d9332089df
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Arch/PPC.cpp
M lld/ELF/Arch/PPC64.cpp
M lld/ELF/Arch/RISCV.cpp
M lld/ELF/Arch/SystemZ.cpp
M lld/ELF/Arch/X86.cpp
M lld/ELF/Arch/X86_64.cpp
M lld/ELF/InputSection.cpp
M lld/ELF/InputSection.h
M lld/ELF/SyntheticSections.cpp
M lld/ELF/Target.cpp
Log Message:
-----------
[ELF] getRelocTargetVA: pass Ctx and Relocation. NFC
Commit: acb2b1e7792f1ca2348752ee158882bb54b7d1e4
https://github.com/llvm/llvm-project/commit/acb2b1e7792f1ca2348752ee158882bb54b7d1e4
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M lld/ELF/ARMErrataFix.cpp
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/Hexagon.cpp
M lld/ELF/Arch/LoongArch.cpp
M lld/ELF/Arch/Mips.cpp
M lld/ELF/Arch/PPC.cpp
M lld/ELF/Arch/PPC64.cpp
M lld/ELF/Arch/RISCV.cpp
M lld/ELF/Arch/SystemZ.cpp
M lld/ELF/Arch/X86.cpp
M lld/ELF/Arch/X86_64.cpp
M lld/ELF/InputSection.cpp
M lld/ELF/Relocations.cpp
M lld/ELF/Symbols.cpp
M lld/ELF/Symbols.h
M lld/ELF/SyntheticSections.cpp
M lld/ELF/Thunks.cpp
Log Message:
-----------
[ELF] Pass Ctx & to Symbols
Commit: f1dccda1b51c77fcac22b75c535e8620d7544ab3
https://github.com/llvm/llvm-project/commit/f1dccda1b51c77fcac22b75c535e8620d7544ab3
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M lld/ELF/Driver.cpp
M lld/ELF/ICF.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/Symbols.cpp
M lld/ELF/Symbols.h
M lld/ELF/Writer.cpp
Log Message:
-----------
[ELF] Pass Ctx & to Symbols
Commit: 5f6346190cb09373164d5fed9409cf5eb1a01f76
https://github.com/llvm/llvm-project/commit/5f6346190cb09373164d5fed9409cf5eb1a01f76
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M lld/ELF/InputSection.h
M lld/ELF/LinkerScript.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
M lld/ELF/Writer.cpp
Log Message:
-----------
[ELF] Pass Ctx & to SyntheticSections
Commit: 18ca7ad3393241b9fc0d5f149247e10837c6f926
https://github.com/llvm/llvm-project/commit/18ca7ad3393241b9fc0d5f149247e10837c6f926
Author: Nathan Ridge <zeratul976 at hotmail.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M clang-tools-extra/clangd/ClangdServer.cpp
M clang-tools-extra/clangd/CodeComplete.cpp
M clang-tools-extra/clangd/CodeComplete.h
M clang-tools-extra/clangd/Config.h
M clang-tools-extra/clangd/ConfigCompile.cpp
M clang-tools-extra/clangd/ConfigFragment.h
M clang-tools-extra/clangd/ConfigYAML.cpp
M clang-tools-extra/clangd/tool/ClangdMain.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
Log Message:
-----------
[clangd] Add ArgumentLists config option under Completion (#111322)
The new config option is a more flexible version of
--function-arg-placeholders, allowing users more detailed control of
what is inserted in argument list position when clangd completes the
name of a function in a function call context.
Fixes https://github.com/llvm/llvm-project/issues/63565
Co-authored-by: MK-Alias <ImNotReadingThis at maininator.com>
Commit: f2b01338584c90f48dba1a937bf5b1da8dcedbd5
https://github.com/llvm/llvm-project/commit/f2b01338584c90f48dba1a937bf5b1da8dcedbd5
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputFiles.h
M lld/ELF/ScriptParser.cpp
Log Message:
-----------
[ELF] Move static nextGroupId isInGroup to LinkerDriver
Commit: c4d89203f3822b0466f5cc58654cb016aeb86648
https://github.com/llvm/llvm-project/commit/c4d89203f3822b0466f5cc58654cb016aeb86648
Author: Austin Kerbow <Austin.Kerbow at amd.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
M llvm/include/llvm/IR/Argument.h
M llvm/include/llvm/IR/Function.h
M llvm/lib/IR/Function.cpp
M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
A llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs-IR-lowering.ll
A llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs.ll
Log Message:
-----------
[AMDGPU] Support preloading hidden kernel arguments (#98861)
Adds hidden kernel arguments to the function signature and marks them
inreg if they should be preloaded into user SGPRs. The normal kernarg
preloading logic then takes over with some additional checks for the
correct implicitarg_ptr alignment.
Special care is needed so that metadata for the hidden arguments is not
added twice when generating the code object.
Commit: f0bd62d8709a49dd87eb75411e41e2e11e0ab59d
https://github.com/llvm/llvm-project/commit/f0bd62d8709a49dd87eb75411e41e2e11e0ab59d
Author: Brad House <brad at brad-house.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Format/Format.h
M clang/lib/Format/Format.cpp
M clang/lib/Format/WhitespaceManager.cpp
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Add AlignFunctionDeclarations to AlignConsecutiveDeclarations (#108241)
Enabling AlignConsecutiveDeclarations also aligns function prototypes
or declarations. This is often unexpected as typically function
prototypes, especially in public headers, don't use any padding.
Setting AlignFunctionDeclarations to false will skip this alignment.
It is by default set to true to keep compatibility with prior
versions to not make unexpected changes.
Fixes #74320
Commit: b672071ba51ef6b64651a62bcfaf78bdfdb7d3d4
https://github.com/llvm/llvm-project/commit/b672071ba51ef6b64651a62bcfaf78bdfdb7d3d4
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M lld/ELF/Driver.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputFiles.h
M lld/ELF/LTO.cpp
M lld/ELF/LinkerScript.cpp
Log Message:
-----------
[ELF] Pass Ctx & to InputFile
Commit: 8c1547055eaf65003f3e6fd024195f4926ff2356
https://github.com/llvm/llvm-project/commit/8c1547055eaf65003f3e6fd024195f4926ff2356
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/TreeTransform.h
R clang/test/SemaCXX/PR84020.cpp
M clang/test/SemaTemplate/instantiate-requires-expr.cpp
Log Message:
-----------
[Clang] Remove the special-casing for RequiresExprBodyDecl in BuildResolvedCallExpr() after fd87d765c0 (#111277)
The special-casing for RequiresExprBodyDecl caused a regression, as
reported in #110785.
The original fix for #84020 has been superseded by fd87d765c0, which
establishes a `DependentScopeDeclRefExpr` instead of a
`CXXDependentScopeMemberExpr` for the case in issue. So the spurious
diagnostic in #84020 would no longer occur.
This also merges the test for #84020 together with that for #110785 into
clang/test/SemaTemplate/instantiate-requires-expr.cpp.
No release note because I think this merits a backport.
Fixes #110785
Commit: 35f196645079cf499bdc48863ed5a42a0bc375de
https://github.com/llvm/llvm-project/commit/35f196645079cf499bdc48863ed5a42a0bc375de
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoZfa.td
Log Message:
-----------
[RISCV] Only disassemble fcvtmod.w.d if the rounding mode is rtz. (#111308)
If we disassemble other rounding modes, we'll print something that can't
be parsed.
Commit: cfd3289a1f9a87e220737a634904a886a82d424a
https://github.com/llvm/llvm-project/commit/cfd3289a1f9a87e220737a634904a886a82d424a
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M lld/ELF/ARMErrataFix.cpp
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Arch/AMDGPU.cpp
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/AVR.cpp
M lld/ELF/Arch/Hexagon.cpp
M lld/ELF/Arch/LoongArch.cpp
M lld/ELF/Arch/MSP430.cpp
M lld/ELF/Arch/Mips.cpp
M lld/ELF/Arch/PPC.cpp
M lld/ELF/Arch/PPC64.cpp
M lld/ELF/Arch/RISCV.cpp
M lld/ELF/Arch/SPARCV9.cpp
M lld/ELF/Arch/SystemZ.cpp
M lld/ELF/Arch/X86.cpp
M lld/ELF/Arch/X86_64.cpp
M lld/ELF/Config.h
M lld/ELF/InputSection.cpp
M lld/ELF/LinkerScript.cpp
M lld/ELF/LinkerScript.h
M lld/ELF/OutputSections.cpp
M lld/ELF/Symbols.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/Target.cpp
M lld/ELF/Target.h
M lld/ELF/Writer.cpp
M lld/ELF/Writer.h
Log Message:
-----------
[ELF] Pass Ctx & to some free functions
Commit: 4ec06b17435e32ece5e1aa2bc8a6d26dbf0bb312
https://github.com/llvm/llvm-project/commit/4ec06b17435e32ece5e1aa2bc8a6d26dbf0bb312
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Arch/AMDGPU.cpp
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/AVR.cpp
M lld/ELF/Arch/Hexagon.cpp
M lld/ELF/Arch/LoongArch.cpp
M lld/ELF/Arch/MSP430.cpp
M lld/ELF/Arch/Mips.cpp
M lld/ELF/Arch/PPC.cpp
M lld/ELF/Arch/PPC64.cpp
M lld/ELF/Arch/RISCV.cpp
M lld/ELF/Arch/SPARCV9.cpp
M lld/ELF/Arch/SystemZ.cpp
M lld/ELF/Arch/X86.cpp
M lld/ELF/Arch/X86_64.cpp
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/Target.cpp
M lld/ELF/Target.h
Log Message:
-----------
[ELF] Change Ctx::target to unique_ptr (#111260)
also rename `TargetInfo *getXXXTargetInfo` to `void setXXXTargetInfo`
and change it to set `ctx.target`. This ensures that when `ctx` becomes
a local variable, two lld invocations will not reuse the function-local
static variable.
Commit: 924a64a3486f9962c42d4ec253774eb2c586ac33
https://github.com/llvm/llvm-project/commit/924a64a3486f9962c42d4ec253774eb2c586ac33
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mubuf-global.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
M llvm/test/CodeGen/AMDGPU/atomicrmw-expand.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fsub.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics_i64.ll
M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx940.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fsub.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_i64.ll
M llvm/test/CodeGen/AMDGPU/insert_waitcnt_for_precise_memory.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fsub.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence-mmra-global.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-agent.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-volatile.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-workgroup.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-agent.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-volatile.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-workgroup.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-agent.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-system.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-volatile.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-workgroup.ll
Log Message:
-----------
[AMDGPU] Only emit SCOPE_SYS global_wb (#110636)
global_wb with scopes lower than SCOPE_SYS is unnecessary for
correctness.
I was initially optimistic they would be very cheap no-ops but they can
actually be quite expensive so let's avoid them.
Commit: 66b282014cff346ab20c6c8aed774ca2c6bfefd1
https://github.com/llvm/llvm-project/commit/66b282014cff346ab20c6c8aed774ca2c6bfefd1
Author: David Sherwood <david.sherwood at arm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[LoopVectorize] Remove redundant code in emitSCEVChecks (#111132)
There was some code in emitSCEVChecks to update the dominator
tree if LoopBypassBlocks is empty, however there are no tests
that fail when replacing this code with an assert. I built
both SPEC2017 and the LLVM test suite and also didn't see any
build failures. I've removed the code for now and added an
assert to guard this in case anything changes, since it seems
pointless to have code that's impossible to defend.
Commit: da759dda58a7a1cbdaace26c381e1c3c5c5491ce
https://github.com/llvm/llvm-project/commit/da759dda58a7a1cbdaace26c381e1c3c5c5491ce
Author: Lucas Duarte Prates <lucas.prates at arm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/BareMetal.cpp
M clang/lib/Driver/ToolChains/BareMetal.h
A clang/test/Driver/Inputs/multilib/empty.yaml
M clang/test/Driver/baremetal-multilib-custom-error.yaml
M clang/test/Driver/baremetal-multilib-exclusive-group.yaml
M clang/test/Driver/baremetal-multilib-group-error.yaml
M clang/test/Driver/baremetal-multilib-layered.yaml
M clang/test/Driver/baremetal-multilib.yaml
M clang/test/Driver/print-multi-selection-flags.c
Log Message:
-----------
[Clang][Driver] Add option to provide path for multilib's YAML config file (#109640)
Since the introduction of the use of a YAML file to configure the
selection of multilibs for baremetal, the path for that file has been
hardcoded into the clang driver code. This makes it difficult to provide
any alternative configurations for multilib and, by consequence, impacts
the tetability of any changes related to it - e.g. the existing multilib
YAML tests currently rely on creating fake toolchain directories to
inject their own configuration files.
This change introduces a new command line option to the clang driver,
`--multi-lib-config=`, to enable the use of a custom path to be used
when loading the multilib YAML config file. It also updates the existing
multilib YAML tests to use the new option.
Commit: 5cfc6bc22b6284a2e0b78c71c84d272fcc8ac850
https://github.com/llvm/llvm-project/commit/5cfc6bc22b6284a2e0b78c71c84d272fcc8ac850
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/Maintainers.md
Log Message:
-----------
[LLVM][Maintainers] Update release managers (#111164)
Current release managers are Tom and Tobias, split across even and odd
releases.
Commit: e0df221dcf5696c6e99952ee62a3b3b689433f3b
https://github.com/llvm/llvm-project/commit/e0df221dcf5696c6e99952ee62a3b3b689433f3b
Author: Simon Tatham <simon.tatham at arm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/docs/Multilib.rst
M clang/include/clang/Driver/Multilib.h
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/Multilib.cpp
M clang/lib/Driver/ToolChains/BareMetal.cpp
M clang/test/Driver/baremetal-multilib-custom-error.yaml
M clang/unittests/Driver/MultilibTest.cpp
Log Message:
-----------
[clang][Driver] Rename "FatalError" key to "Error" in multilib.yaml (#110804)
This is a late-breaking change to #105684, suggested after the
original patch was already landed.
Commit: 5a9e93f39cc78276a12852bbc4d639689fe73d5a
https://github.com/llvm/llvm-project/commit/5a9e93f39cc78276a12852bbc4d639689fe73d5a
Author: Simon Tatham <simon.tatham at arm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/lib/Driver/Multilib.cpp
M clang/lib/Driver/ToolChains/BareMetal.cpp
Log Message:
-----------
[clang][Driver] Improve multilib custom error reporting (#110804)
If `multilib.yaml` reports a custom error message for some unsupported
configuration, it's not very helpful to display that error message
_first_, and then follow it up with a huge list of all the multilib
configurations that _are_ supported.
In interactive use, the list is likely to scroll the most important
message off the top of the user's window, leaving them with just a
long list of available libraries, without a visible explanation of
_why_ clang just printed that long list. Also, in general, it makes
more intuitive sense to print the message last that shows why
compilation can't continue, because that's where users are most likely
to look for the reason why something stopped.
Commit: 18d3a5d558c3739cfe1d382e9976400d292e9b63
https://github.com/llvm/llvm-project/commit/18d3a5d558c3739cfe1d382e9976400d292e9b63
Author: Luke Lau <luke at igalia.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp.ll
Log Message:
-----------
[LegalizeVectorTypes] When widening don't check for libcalls if promoted (#111297)
When widening some FP ops, LegalizeVectorTypes will check to see if the
widened op may be scalarized and then turned into a bunch of libcalls,
and if so unroll early to avoid unnecessary libcalls of the padded undef
elements.
It checks if the widened op is legal or custom to see if it will be
scalarized, but promoted ops will also avoid scalarization.
This relaxes the check to account for this which fixes some illegal
vector types on RISC-V from being scalarized when they could be widened.
Commit: 76aa370f4458d4d6440b257602fe666138c8bb5a
https://github.com/llvm/llvm-project/commit/76aa370f4458d4d6440b257602fe666138c8bb5a
Author: Jonas Paulsson <paulson1 at linux.ibm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
M llvm/test/CodeGen/SystemZ/inline-thresh-adjust.ll
Log Message:
-----------
[SystemZ] Remove inlining threshold multiplier. (#106058)
Due to recently reported problems with having the inlining threshold multiplier
set fairly high (x3), this patch removes the multiplier while addressing
the regressions seen by doing so in adjustInliningThreshold().
The specific cases that benefit from inlining that were now found to be in need
of handling contain a considerable number of memory accesses to the same
memory in both caller and callee.
Commit: d926e340b73f1c3620a7e3ff8742d6a41c1091dc
https://github.com/llvm/llvm-project/commit/d926e340b73f1c3620a7e3ff8742d6a41c1091dc
Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel] port 9144fed31b59089f4e3e5fedf7eb87d2695ef843
Commit: f58e85a9725bb7d731c5ff5f79448e7150db6a6c
https://github.com/llvm/llvm-project/commit/f58e85a9725bb7d731c5ff5f79448e7150db6a6c
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
Log Message:
-----------
[mlir][vector] Add more tests for ConvertVectorToLLVM (6/n) (#111121)
Adds tests with scalable vectors for the Vector-To-LLVM conversion pass.
Covers the following Ops:
* `vector.insert_strided_slice`
With this change, for every test with fixed-width vectors, there should
be a corresponding example with scalable vectors (for
`vector.insert_strided_slice`). In addition:
* Test function names are updated to more accurately reflect the case
being exercised (e.g. `@insert_strided_index_slice1` ->
`@insert_strided_index_slice_index_2d_into_3d`)
* For consistency, took the liberty of updating some of the function
names for `vector.extract_strided_slice`
* `@insert_strided_slice_scalable` is effectively replaced with
`@insert_strided_slice_f32_2d_into_3d_scalable`
Commit: 3137b6a263d2549a520690606e286ab4c8e3c9e5
https://github.com/llvm/llvm-project/commit/3137b6a263d2549a520690606e286ab4c8e3c9e5
Author: Hans Wennborg <hans at chromium.org>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M compiler-rt/lib/lsan/lsan_common.cpp
Log Message:
-----------
[lsan] Make ReportUnsuspendedThreads return bool also for Fuchsia
Follow-up to 9766ce4db57212646f135fe7033972a7a51aef4d
Commit: c98e41f8586bc43033d29ef3ec0f9a2f79b3ec32
https://github.com/llvm/llvm-project/commit/c98e41f8586bc43033d29ef3ec0f9a2f79b3ec32
Author: Luke Lau <luke at igalia.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp.ll
Log Message:
-----------
[LegalizeVectorTypes] Always widen fabs (#111298)
fabs and fneg are similar nodes in that they can always be expanded to
integer ops, but currently they diverge when widened.
If the widened vector fabs is marked as expand (and the corresponding
scalar type is too), LegalizeVectorTypes thinks that it may be turned
into a libcall and so will unroll it to avoid the overhead on the undef
elements.
However unlike the other ops in that list like fsin, fround, flog etc.,
an fabs marked as expand will never be legalized into a libcall. Like
fneg, it can always be expanded into an integer op.
This moves it below unrollExpandedOp to bring it in line with fneg,
which fixes an issue on RISC-V with f16 fabs being unexpectedly
scalarized when there's no zfhmin.
Commit: ae6af37bf47d830becc0cd0c8a309af70fdf502c
https://github.com/llvm/llvm-project/commit/ae6af37bf47d830becc0cd0c8a309af70fdf502c
Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values6.ll
A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values6.ll.expected
A llvm/test/tools/UpdateTestChecks/update_test_checks/stable_ir_values6.test
M llvm/utils/UpdateTestChecks/common.py
Log Message:
-----------
update_test_checks: fix a simple regression (#111347)
Reported-by: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Fixes: 02debcef12793b5 ("update_test_checks: improve IR value name
stability (#110940)")
Commit: 74a98fdbc4435a9f8cdf9ea6d1d9a0396921d3d6
https://github.com/llvm/llvm-project/commit/74a98fdbc4435a9f8cdf9ea6d1d9a0396921d3d6
Author: Hans Wennborg <hans at chromium.org>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/combine-add.ll
M llvm/test/CodeGen/X86/vector-mul.ll
Log Message:
-----------
Revert "[x86] combineMul - use computeKnownBits directly to find MUL_IMM constant splat."
> As we're after a constant splat value we can avoid all the complexities of trying to recreate the correct constant via getTargetConstantFromNode.
This caused builds to fail with an assertion:
X86ISelLowering.cpp:48569
Assertion `C.getZExtValue() != 0 && C.getZExtValue() != maxUIntN(VT.getScalarSizeInBits())
&& "Both cases that could cause potential overflows should have " "already been handled."
See https://github.com/llvm/llvm-project/issues/111325
This reverts commit 1bc87c9f3cb20a51191f522bf4d69338ad6bb4e6.
Commit: d148548779c2546d02b2a55e75eb8525e7b6cb2d
https://github.com/llvm/llvm-project/commit/d148548779c2546d02b2a55e75eb8525e7b6cb2d
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lldb/packages/Python/lldbsuite/test/make/libcxx-simulators-common/compressed_pair.h
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/TestDataFormatterLibcxxStringSimulator.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/main.cpp
Log Message:
-----------
Reland "[lldb][test] TestDataFormatterLibcxxStringSimulator.py: add new padding layout" (#111123)
Relands https://github.com/llvm/llvm-project/pull/108375 which had to be
reverted because it was failing on the Windows buildbot. Trying to
reland this with `msvc::no_unique_address` on Windows.
Commit: 3d862c78bbb5ecbdfe93996bdf2dcfc64325ae87
https://github.com/llvm/llvm-project/commit/3d862c78bbb5ecbdfe93996bdf2dcfc64325ae87
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/combine-add.ll
M llvm/test/CodeGen/X86/mul-constant-i64.ll
M llvm/test/CodeGen/X86/vector-mul.ll
Log Message:
-----------
[x86] combineMul - use computeKnownBits directly to find MUL_IMM constant splat. (REAPPLIED)
As we're after a constant splat value we can avoid all the complexities of trying to recreate the correct constant via getTargetConstantFromNode.
Commit: 66713a0f8257661a8849e1a710a90b79576b0d21
https://github.com/llvm/llvm-project/commit/66713a0f8257661a8849e1a710a90b79576b0d21
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
A lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/Makefile
A lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/TestDataFormatterLibcxxOptionalSimulator.py
A lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/main.cpp
Log Message:
-----------
[lldb][test] Add libcxx-simulators test for std::optional (#111133)
Follow-up to the LLDB std::optional data-formatter test failure caused
by https://github.com/llvm/llvm-project/pull/110355.
Two formats are supported:
1. `__val_` has type `value_type`
2. `__val_`'s type is wrapped in `std::remove_cv_t`
Commit: a1c0ba1646f5a80dadd34f55e4a36d5409c2675a
https://github.com/llvm/llvm-project/commit/a1c0ba1646f5a80dadd34f55e4a36d5409c2675a
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/main.cpp
Log Message:
-----------
[lldb][test] TestDataFormatterLibcxxOptionalSimulator.py: change order of ifdefs
The current layout *does* have `removecv_t`. So change
the ifdefs to reflect that.
Commit: e0b24d947570385c5b6c3afea46fea09fc75ddab
https://github.com/llvm/llvm-project/commit/e0b24d947570385c5b6c3afea46fea09fc75ddab
Author: Peter Waller <peter.waller at arm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
A llvm/test/tools/llvm-dis/multiple-files-equivalent.ll
M llvm/tools/llvm-dis/llvm-dis.cpp
Log Message:
-----------
[llvm-dis] Fix non-deterministic disassembly across multiple inputs (#110988)
Prior to this patch, the LLVMContext was shared across inputs to
llvm-dis.
Consequently, NamedStructTypes was shared across inputs, which impacts
StructType::setName - if a name was reused across inputs, it would get
renamed during construction of the struct type, leading to tricky to
diagnose confusion.
Commit: db1340412e167d828ae406975265529d95da7ef0
https://github.com/llvm/llvm-project/commit/db1340412e167d828ae406975265529d95da7ef0
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/mul-constant-i64.ll
Log Message:
-----------
[x86] combineMul - handle 0/-1 KnownBits cases before MUL_IMM logic (REAPPLIED)
Followup to 3d862c78bbb5ecbdfe93996bdf2dcfc64325ae87 fix - always fold multiply to zero/negation
Commit: 88478a89cd85adcc32f2a321ef9e9906c5fdbe26
https://github.com/llvm/llvm-project/commit/88478a89cd85adcc32f2a321ef9e9906c5fdbe26
Author: Sergio Afonso <safonsof at amd.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.h
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/OpenMP/Utils.h
Log Message:
-----------
[Flang][OpenMP] Improve entry block argument creation and binding (#110267)
The main purpose of this patch is to centralize the logic for creating
MLIR operation entry blocks and for binding them to the corresponding
symbols. This minimizes the chances of mixing arguments up for
operations having multiple entry block argument-generating clauses and
prevents divergence while binding arguments.
Some changes implemented to this end are:
- Split into two functions the creation of the entry block, and the
binding of its arguments and the corresponding Fortran symbol. This
enabled a significant simplification of the lowering of composite
constructs, where it's no longer necessary to manually ensure the lists
of arguments and symbols refer to the same variables in the same order
and also match the expected order by the `BlockArgOpenMPOpInterface`.
- Removed redundant and error-prone passing of types and locations from
`ClauseProcessor` methods. Instead, these are obtained from the values
in the appropriate clause operands structure. This also simplifies
argument lists of several lowering functions.
- Access block arguments of already created MLIR operations through the
`BlockArgOpenMPOpInterface` instead of directly indexing the argument
list of the operation, which is not scalable as more entry block
argument-generating clauses are added to an operation.
- Simplified the implementation of `genParallelOp` to no longer need to
define different callbacks depending on whether delayed privatization is
enabled.
Commit: 8df6637e84c4fa08e4649079fb21a6932a6926a4
https://github.com/llvm/llvm-project/commit/8df6637e84c4fa08e4649079fb21a6932a6926a4
Author: AidinT <3762928+aidint at users.noreply.github.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl03.rst
Log Message:
-----------
[doc] Fix Kaleidoscope tutorial chapter 3 code snippet and full listing discrepancies (#111289)
Fix two discrepancies between the cited snippets and the full code.
Commit: d9e986e915b03e2f68d9ed2b664a2511edbb6513
https://github.com/llvm/llvm-project/commit/d9e986e915b03e2f68d9ed2b664a2511edbb6513
Author: Alex Bradbury <asb at igalia.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/test/OpenMP/declare_variant_device_isa_codegen_1.c
Log Message:
-----------
[clang][OpenMP][test] Use x86_64-linux-gnu triple for test referencing avx512f feature (#111337)
This test passes as-is on non-X86 hosts only because almost no target
implements `isValidFeatureName` (the default implementation
unconditionally returns true). RISC-V does implement it, and like X86
checks that the feature name is one supported by the architecture. This
means the test creates an additional warning on RISC-V due to
`_attribute__((target("avx512f")))`.
The simple solution here is to just explicitly target x86_64-linux-gnu.
Commit: f1ec45a0b0b14d9eb41d32be98f1437b8d1d322d
https://github.com/llvm/llvm-project/commit/f1ec45a0b0b14d9eb41d32be98f1437b8d1d322d
Author: Oliver Stannard <oliver.stannard at arm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/test/Driver/aarch64-multilib-rcpc3.c
Log Message:
-----------
[Driver] Use empty multilib file in another test (#111352)
This makes the test independent of the one provided by a toolchain clang
is built into, which can cause the output of
-print-multi-flags-experimental to change.
Commit: 9a222a112606249f1e9db43fcaaae56982cf0197
https://github.com/llvm/llvm-project/commit/9a222a112606249f1e9db43fcaaae56982cf0197
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/test/CodeGen/X86/extract-lowbits.ll
Log Message:
-----------
[X86] Add test coverage for #111323
Commit: c978d05a26e47edf2eda402b2140347afb8a5954
https://github.com/llvm/llvm-project/commit/c978d05a26e47edf2eda402b2140347afb8a5954
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
Log Message:
-----------
[X86] getIntImmCostInst - pull out repeated Imm.getBitWidth() calls. NFC.
Commit: 8b6e1dc924fd3c35670b46d744091d2f7ce94c5f
https://github.com/llvm/llvm-project/commit/8b6e1dc924fd3c35670b46d744091d2f7ce94c5f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/test/CodeGen/X86/extract-lowbits.ll
Log Message:
-----------
[X86] getIntImmCostInst - reduce i64 imm costs of AND(X,CMASK) case that can fold to BEXT/BZHI
With BEXT/BZHI the i64 imm mask will be replaced with a i16/i8 control mask
Fixes #111323
Commit: 02dd6b1014c708591fa0e8d46efb328c513a86e7
https://github.com/llvm/llvm-project/commit/02dd6b1014c708591fa0e8d46efb328c513a86e7
Author: Paul Walker <paul.walker at arm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/SVEInstrFormats.td
A llvm/test/CodeGen/AArch64/sve-bf16-arith.ll
A llvm/test/CodeGen/AArch64/sve-bf16-rounding.ll
M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
Log Message:
-----------
[LLVM][CodeGen] Add lowering for scalable vector bfloat operations. (#109803)
Specifically:
fabs, fadd, fceil, fdiv, ffloor, fma, fmax, fmaxnm, fmin, fminnm,
fmul, fnearbyint, fneg, frint, fround, froundeven, fsub, fsqrt &
ftrunc
Commit: 1062007d1b10bdec8dddc6d41f3fb6c01e9be62b
https://github.com/llvm/llvm-project/commit/1062007d1b10bdec8dddc6d41f3fb6c01e9be62b
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/bugprone/BUILD.gn
Log Message:
-----------
[gn build] Port fb0ef6b66e3c
Commit: ee57a685fae2f8feb81015b89f784a44e1b2bfa7
https://github.com/llvm/llvm-project/commit/ee57a685fae2f8feb81015b89f784a44e1b2bfa7
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M libc/utils/gpu/loader/amdgpu/amdhsa-loader.cpp
M libc/utils/gpu/loader/nvptx/nvptx-loader.cpp
Log Message:
-----------
[libc] Make a dedicated thread for the RPC server (#111210)
Summary:
Make a separate thread to run the server when we launch. This is
required by CUDA, which you can force with `export
CUDA_LAUNCH_BLOCKING=1`. I figured I might as well be consistent and do
it for the AMD implementation as well even though I believe it's not
necessary.
Commit: a018353f4b2207c6e6a82408cfe51152b03f7868
https://github.com/llvm/llvm-project/commit/a018353f4b2207c6e6a82408cfe51152b03f7868
Author: Juan Manuel Martinez Caamaño <juamarti at amd.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/EarlyIfConversion.cpp
Log Message:
-----------
Revert "[NFC][EarlyIfConverter] Remove unused member variables"
This reverts commit 3c83102f0615c7d66f6df698ca472ddbf0e9483d.
Commit: e7174a8378faf291e843892323527d001220d645
https://github.com/llvm/llvm-project/commit/e7174a8378faf291e843892323527d001220d645
Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lldb/packages/Python/lldbsuite/test/builders/builder.py
Log Message:
-----------
[lldb][test] Provide proper path to LLVM utils in API tests (#110837)
In aea066849, API tests were supposed to use LLVM tools.
However, a path to a utility is made up incorrectly there: util name
should be prefixed with `llvm-`.
Hence, it's fixed here.
Commit: 91d6e77d8b4ad6dbbbfa5b6788f44d3ab6757707
https://github.com/llvm/llvm-project/commit/91d6e77d8b4ad6dbbbfa5b6788f44d3ab6757707
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M flang/test/Transforms/debug-fn-info.fir
Log Message:
-----------
[flang][debug] set DW_AT_main_subprogram for fortran main function (#111350)
Requested here
https://github.com/llvm/llvm-project/pull/111022#issuecomment-2396287781
Commit: dda107b8cb7cb35690a45518c72f85a1df04be1a
https://github.com/llvm/llvm-project/commit/dda107b8cb7cb35690a45518c72f85a1df04be1a
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/libc_configure_options.bzl
Log Message:
-----------
Revert "[libc][bazel] Enable software prefetching for memcpy" (#111370)
Reverts llvm/llvm-project#108939
When `AVX` is available but `-mprefer-vector-width=128` some of the
`mov` instructions turn into the x86 `rep;movsb` instruction leading to
poor performance on "old" architectures (sandybridge, haswell). The
possible solutions are : get rid of the `-mprefer-vector-width` option
or use smaller static copy sizes in
`inline_memcpy_x86_sse2_ge64_sw_prefetching`. Right now a copy size of 3
cache lines (192B) relying exclusively on xmm registers gets turned into
`rep;movsb`.
Commit: 5dc7a5e50bd21cc818a3a71691af9780291b75b2
https://github.com/llvm/llvm-project/commit/5dc7a5e50bd21cc818a3a71691af9780291b75b2
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/lib/Headers/popcntintrin.h
Log Message:
-----------
[clang][x86] popcntintrin.h - merge the __DEFAULT_FN_ATTRS / __DEFAULT_FN_ATTRS_CONSTEXPR defines. NFC.
We only need one define - so consistently use __DEFAULT_FN_ATTRS like we do in other headers.
Commit: 73c9ad263369ac7350d60b3d3670ea3ed56669cc
https://github.com/llvm/llvm-project/commit/73c9ad263369ac7350d60b3d3670ea3ed56669cc
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/lib/Headers/xmmintrin.h
M clang/test/CodeGen/X86/sse-builtins.c
Log Message:
-----------
[clang][x86] Add constexpr support for some basic SSE1 intrinsics (#111001)
This is an initial patch to enable constexpr support on the more basic SSE1 intrinsics - such as initialization, arithmetic, logic and fixed shuffles.
The plan is to incrementally extend this for SSE2/AVX etc. - initially for the equivalent basic intrinsics, but we can add support for some of the ia32 builtins as well we the need arises.
Commit: b2784ec32837df38e0de7436cbde6dfa7aefacd1
https://github.com/llvm/llvm-project/commit/b2784ec32837df38e0de7436cbde6dfa7aefacd1
Author: Hans Wennborg <hans at chromium.org>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
M llvm/test/CodeGen/X86/memcpy-struct-by-value.ll
M llvm/test/CodeGen/X86/memcpy.ll
M llvm/test/CodeGen/X86/memset-minsize.ll
M llvm/test/CodeGen/X86/memset-vs-memset-inline.ll
Log Message:
-----------
Revert "[X86] For minsize memset/memcpy, use byte or double-word accesses (#87003)"
This caused assertion failures:
llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:7736:
SDValue getMemsetValue(SDValue, EVT, SelectionDAG &, const SDLoc &):
Assertion `C->getAPIntValue().getBitWidth() == 8' failed.
See comment on the PR for a reproducer.
> repstosb and repstosd are the same size, but stosd is only done for 0
> because the process of multiplying the constant so that it is copied
> across the bytes of the 32-bit number adds extra instructions that cause
> the size to increase. For 0, repstosb and repstosd are the same size,
> but stosd is only done for 0 because the process of multiplying the
> constant so that it is copied across the bytes of the 32-bit number adds
> extra instructions that cause the size to increase. For 0, we do not
> need to do that at all.
>
> For memcpy, the same goes, and as a result the minsize check was moved
> ahead because a jmp to memcpy encoded takes more bytes than repmovsb.
This reverts commit 6de5305b3d7a4a19a29b35d481a8090e2a6d3a7e.
Commit: 1666d13078e4799df2d8eaa101ccf02acd031427
https://github.com/llvm/llvm-project/commit/1666d13078e4799df2d8eaa101ccf02acd031427
Author: BARRET <41060790+Adnios at users.noreply.github.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/MC/CMakeLists.txt
M mlir/lib/Conversion/ConvertToLLVM/CMakeLists.txt
M mlir/lib/Conversion/VectorToLLVM/CMakeLists.txt
M mlir/lib/Dialect/Arith/Transforms/CMakeLists.txt
M mlir/lib/Dialect/Linalg/IR/CMakeLists.txt
M mlir/lib/Dialect/Linalg/Transforms/CMakeLists.txt
M mlir/lib/Dialect/MemRef/Transforms/CMakeLists.txt
M mlir/lib/Dialect/Mesh/Transforms/CMakeLists.txt
M mlir/lib/Dialect/SCF/Transforms/CMakeLists.txt
M mlir/lib/Dialect/Tensor/Transforms/CMakeLists.txt
M mlir/lib/Dialect/Tosa/CMakeLists.txt
M mlir/lib/Dialect/Vector/Transforms/CMakeLists.txt
M mlir/lib/Target/SPIRV/CMakeLists.txt
M mlir/lib/Target/SPIRV/Serialization/CMakeLists.txt
M mlir/lib/Transforms/CMakeLists.txt
Log Message:
-----------
[CMake]: Remove unnecessary dependencies on LLVM/MLIR (#111255)
Previous https://github.com/llvm/llvm-project/pull/110362 (reverted)
caused breakage. Here is the PR with fix.
My build cmdline:
```
cmake ../llvm \
-G Ninja \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=install \
-DCMAKE_C_COMPILER=gcc-9 \
-DCMAKE_CXX_COMPILER=g++-9 \
-DCMAKE_CUDA_COMPILER=$(which nvcc) \
-DLLVM_ENABLE_LLD=OFF \
-DLLVM_ENABLE_ASSERTIONS=ON \
-DLLVM_BUILD_EXAMPLES=ON \
-DCOMPILER_RT_BUILD_LIBFUZZER=OFF \
-DLLVM_CCACHE_BUILD=ON \
-DMLIR_ENABLE_BINDINGS_PYTHON=ON \
-DBUILD_SHARED_LIBS=ON \
-DLLVM_ENABLE_PROJECTS='llvm;mlir'
```
Commit: 4c9c2d6082740b4ddda1ecfdc33702e4cbd3444d
https://github.com/llvm/llvm-project/commit/4c9c2d6082740b4ddda1ecfdc33702e4cbd3444d
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/lib/AST/CXXInheritance.cpp
Log Message:
-----------
[AST] Avoid repeated hash lookups (NFC) (#111327)
Here I'm splitting up the existing "if" statement into two. Mixing
hasDefinition() and insert() in one "if" condition would be extremely
confusing as hasDefinition() doesn't change anything while insert()
does.
Commit: 4bc0916011c4fc02de29e09905400138cbec909f
https://github.com/llvm/llvm-project/commit/4bc0916011c4fc02de29e09905400138cbec909f
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Linalg/IR/LinalgInterfaces.cpp
Log Message:
-----------
[Linalg] Avoid repeated hash lookups (NFC) (#111328)
Commit: 31e8c539e0fdc4b251871c9126f7bc28fc8fb74b
https://github.com/llvm/llvm-project/commit/31e8c539e0fdc4b251871c9126f7bc28fc8fb74b
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Affine/Analysis/Utils.cpp
Log Message:
-----------
[Affine] Avoid repeated hash lookups (NFC) (#111330)
Commit: 40f0f7b4ec3eea4827fa3e54153ff722b5842ea1
https://github.com/llvm/llvm-project/commit/40f0f7b4ec3eea4827fa3e54153ff722b5842ea1
Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/test/CodeGen/aarch64-fmv-dependencies.c
M clang/test/CodeGen/attr-target-version.c
M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
M clang/test/Sema/attr-target-clones-aarch64.c
M clang/test/SemaCXX/attr-target-version.cpp
M compiler-rt/lib/builtins/cpu_model/AArch64CPUFeatures.inc
M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/apple.inc
M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/mrs.inc
M llvm/include/llvm/TargetParser/AArch64CPUFeatures.inc
M llvm/lib/Target/AArch64/AArch64FMV.td
Log Message:
-----------
[FMV][AArch64] Unify features ssbs and ssbs2. (#110297)
According to https://developer.arm.com/documentation/102105/latest Arm
Architecture Reference Manual for A-profile architecture: Known issues
2.206 D22789
In section C5.2.25 "SSBS, Speculative Store Bypass Safe", under the
heading 'Configurations', the text that reads:
"This register is present only when FEAT_SSBS is implemented. Otherwise,
direct accesses to SSBS are UNDEFINED."
is changed to read:
"This register is present only when FEAT_SSBS2 is implemented.
Otherwise, direct accesses to SSBS are UNDEFINED."
This suggests that it's not worth splitting FEAT_SSBS2 from FEAT_SSBS in
the compiler, since FEAT_SSBS cannot be used for predicating the MRS/MSR
instructions. Those can access PSTATE.SSBS only when FEAT_SSBS2 is
available. Moreover, there are no hardware implementations which
implement FEAT_SSBS without FEAT_SSBS2, therefore unifying these
features in the specification should not be a regression for feature
detection.
Approved in ACLE as https://github.com/ARM-software/acle/pull/350
Commit: 0614b3cface2128c2e0f7e3415b54f5cdb75a02b
https://github.com/llvm/llvm-project/commit/0614b3cface2128c2e0f7e3415b54f5cdb75a02b
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Analysis/ScalarEvolution.cpp
Log Message:
-----------
[Analysis] Simplify code with DenseMap::operator[] (NFC) (#111331)
Commit: 5fdda4147495c6bcfb6c100dbf32a669c3b39874
https://github.com/llvm/llvm-project/commit/5fdda4147495c6bcfb6c100dbf32a669c3b39874
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M mlir/lib/Transforms/Mem2Reg.cpp
Log Message:
-----------
[Transforms] Avoid repeated hash lookups (NFC) (#111329)
Commit: 5f94b0cbdd169ea9387fa48ee9889ebf752821f7
https://github.com/llvm/llvm-project/commit/5f94b0cbdd169ea9387fa48ee9889ebf752821f7
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-add-i32.mir
M llvm/test/CodeGen/AMDGPU/local-stack-alloc-block-sp-reference.ll
Log Message:
-----------
AMDGPU: Try to reuse dest reg for s_add_i32 frame indexes (#111201)
Hack around the register scavenger doing the wrong thing.
It does not find the result register as available in the
case the frame index add isn't also reading the dest register.
This is the quick fix for a regression where the scavenge would
create a broken spill of SGPR to memory. I believe this is still
broken for cases we cannot use the result register.
I'm confused about what position the scavenger iterator
is supposed to be in, and what RestoreAfter is for. The scavenger
is missing a full set of forward/backward APIs and there seems
to be an off by one somewhere.
Commit: d5ec01b0dd20d8bdacc2810539686374e7ad5918
https://github.com/llvm/llvm-project/commit/d5ec01b0dd20d8bdacc2810539686374e7ad5918
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/EarlyIfConversion.cpp
Log Message:
-----------
Revert "[NFC][EarlyIfConverter] Replace boolean Predicate for a class (#108519)" (#111372)
This reverts commit 9e7315912656628b606e884e39cdeb261b476f16.
Commit: 989c437d7f40cf5a53cb111a915013ac28bf8891
https://github.com/llvm/llvm-project/commit/989c437d7f40cf5a53cb111a915013ac28bf8891
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
Log Message:
-----------
[RISCV][GISEL][NFC] Add break statement to reduce diff on future changes of preISelLower
Commit: 0e8555d4dbfdfeddc01dc2ecf9a9b6e804f7b645
https://github.com/llvm/llvm-project/commit/0e8555d4dbfdfeddc01dc2ecf9a9b6e804f7b645
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M libclc/README.TXT
Log Message:
-----------
[libclc] Remove mention of BSD license in readme (#111371)
This seems to be an artifact from the intial import in 2012, but even if
not, folks are better off reading the LICENSE.TXT file for the full
details if they need them.
Fixes #109968
Commit: 0e2970f0ad723a3b4e56d18858f4fd215415002f
https://github.com/llvm/llvm-project/commit/0e2970f0ad723a3b4e56d18858f4fd215415002f
Author: Pavel Labath <pavel at labath.sk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/TestDataFormatterLibcxxOptionalSimulator.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/TestDataFormatterLibcxxStringSimulator.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/unique_ptr/TestDataFormatterLibcxxUniquePtrSimulator.py
Log Message:
-----------
[lldb] Make libc++ simulator tests compatible with category-based ski… (#111353)
…pping, which works by setting a field on the function object. This
doesn't work on a functools.partial object. Use a real function instead.
Commit: aa656366ce9a693fce6a4f16090d250a8059df46
https://github.com/llvm/llvm-project/commit/aa656366ce9a693fce6a4f16090d250a8059df46
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/test/CodeGen/X86/avx-builtins-constrained-cmp.c
M clang/test/CodeGen/X86/avx-builtins.c
Log Message:
-----------
[clang][x86] Update AVX1 intrinsic tests for both C/C++
Requires some call instructions to handle additional markers
Commit: f71d62178d9c97ac650a8454403d71cbc8fd8c9d
https://github.com/llvm/llvm-project/commit/f71d62178d9c97ac650a8454403d71cbc8fd8c9d
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/test/CodeGen/X86/f16c-builtins-constrained.c
M clang/test/CodeGen/X86/f16c-builtins.c
Log Message:
-----------
[clang][x86] Update F16C intrinsic tests for both C/C++ and 32/64-bit targets
Requires some call instructions to handle additional markers
Commit: aa4d94839e6bb30389deb3339fb0d0e4aa8baa4e
https://github.com/llvm/llvm-project/commit/aa4d94839e6bb30389deb3339fb0d0e4aa8baa4e
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/test/CodeGen/X86/fma-builtins-constrained.c
M clang/test/CodeGen/X86/fma-builtins.c
M clang/test/CodeGen/X86/fma4-builtins.c
Log Message:
-----------
[clang][x86] Update FMA/FMA4 intrinsic tests for both C/C++ and 32/64-bit targets
Requires some call instructions to handle additional markers
Commit: f15fe73d234a3c41f9cb905106517a89bab3add4
https://github.com/llvm/llvm-project/commit/f15fe73d234a3c41f9cb905106517a89bab3add4
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/test/CodeGen/X86/avx2-builtins.c
Log Message:
-----------
[clang][x86] Update AVX2 intrinsic tests for both C/C++
Requires some call instructions to handle additional markers
Commit: 8565213f2f9991d83d2b1353f00f35e2b34d9d12
https://github.com/llvm/llvm-project/commit/8565213f2f9991d83d2b1353f00f35e2b34d9d12
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
R clang/CodeOwners.rst
A clang/Maintainers.rst
M clang/docs/CMakeLists.txt
R clang/docs/CodeOwners.rst
A clang/docs/Maintainers.rst
M clang/docs/index.rst
Log Message:
-----------
[clang] Code owners -> Maintainers transition (#108997)
This is the initial transition from using "code owners" to using
"maintainers".
Commit: 2fe1f84db379bccbf0a3ac136d063a94b5dc59cb
https://github.com/llvm/llvm-project/commit/2fe1f84db379bccbf0a3ac136d063a94b5dc59cb
Author: Alex Bradbury <asb at igalia.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/test/CodeGen/Generic/llc-start-stop.ll
Log Message:
-----------
[test] Fix llc-start-stop.ll when the default target enables the loop terminator folding pass
Previously this would fail if the default target enabled the loop
terminator folding pass (currently just RISC-V), as it runs after loop
strength reduction.
Commit: 2edd897a4227e481af33e8e43090ab088cd9d953
https://github.com/llvm/llvm-project/commit/2edd897a4227e481af33e8e43090ab088cd9d953
Author: Nuri Amari <nuri.amari99 at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lld/COFF/LTO.cpp
M lld/ELF/LTO.cpp
M lld/MachO/LTO.cpp
M lld/test/COFF/thinlto-emit-imports.ll
M lld/test/ELF/lto/thinlto-cant-write-index.ll
M lld/test/ELF/lto/thinlto-emit-imports.ll
M lld/test/MachO/thinlto-emit-imports.ll
M llvm/include/llvm/LTO/LTO.h
M llvm/include/llvm/Support/Threading.h
M llvm/include/llvm/Transforms/IPO/FunctionImport.h
M llvm/lib/LTO/LTO.cpp
M llvm/lib/LTO/ThinLTOCodeGenerator.cpp
M llvm/lib/Transforms/IPO/FunctionImport.cpp
M llvm/tools/gold/gold-plugin.cpp
M llvm/tools/llvm-lto2/llvm-lto2.cpp
Log Message:
-----------
Make WriteIndexesThinBackend multi threaded (#109847)
We've noticed that for large builds executing thin-link can take on the
order of 10s of minutes. We are only using a single thread to write the
sharded indices and import files for each input bitcode file. While we
need to ensure the index file produced lists modules in a deterministic
order, that doesn't prevent us from executing the rest of the work in
parallel.
In this change we use a thread pool to execute as much of the backend's
work as possible in parallel. In local testing on a machine with 80
cores, this change makes a thin-link for ~100,000 input files run in ~2
minutes. Without this change it takes upwards of 10 minutes.
---------
Co-authored-by: Nuri Amari <nuriamari at fb.com>
Commit: c5f7a32356fef48bbd075edfedec80142e8106b6
https://github.com/llvm/llvm-project/commit/c5f7a32356fef48bbd075edfedec80142e8106b6
Author: RipleyTom <RipleyTom at users.noreply.github.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M compiler-rt/lib/builtins/cpu_model/x86.c
M llvm/lib/TargetParser/Host.cpp
Log Message:
-----------
[X86] Add AMD Llano family detection (#111312)
Very simple one liner, adds the missing detection for the Llano family
which is essentially a refreshed K10:
Documentation of the family id:
https://en.wikichip.org/wiki/amd/cpuid#Family_18_.2812h.29
Documentation that it fits into amdfam10:
https://en.wikipedia.org/wiki/AMD_10h#12h
Commit: 0e8a10b099a230f5193f228467538e6443afa398
https://github.com/llvm/llvm-project/commit/0e8a10b099a230f5193f228467538e6443afa398
Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lldb/test/API/functionalities/archives/TestBSDArchives.py
Log Message:
-----------
[lldb][test] Mark test() in TestBSDArchives.py as passing remotely (#111199)
It was xfail'ed in de2ddc8f3146b. However, it passes on a buildbot
https://lab.llvm.org/staging/#/builders/195/builds/3988.
Commit: 5e7cc374225e1704d0694da05e02f327cc0cf024
https://github.com/llvm/llvm-project/commit/5e7cc374225e1704d0694da05e02f327cc0cf024
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/main.cpp
Log Message:
-----------
[lldb][test] TestDataFormatterLibcxxOptionalSimulator.py: don't use __builtin_printf
This caused Windows CI to fail with:
```
Build Command Output:
make: Entering directory 'C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/lldb-test-build.noindex/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/TestDataFormatterLibcxxOptionalSimulator.test_r0'
"C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build\bin\clang++.exe" -std=c++11 -gdwarf -O0 -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make/../../../../..//include -IC:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/tools/lldb/include -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\test\API\functionalities\data-formatter\data-formatter-stl\libcxx-simulators\optional -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make -include C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make/test_common.h -fno-limit-debug-info -fno-exceptions -D_HAS_EXCEPTIONS=0 -fms-compatibility-version=19.0 -std=c++14 -DREVISION=0 -std=c++14 --driver-mode=g++ -MT main.o -MD -MP -MF main.d -c -o main.o C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\test\API\functionalities\data-formatter\data-formatter-stl\libcxx-simulators\optional/main.cpp
C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build\bin\clang.exe main.o -gdwarf -O0 -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make/../../../../..//include -IC:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/tools/lldb/include -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\test\API\functionalities\data-formatter\data-formatter-stl\libcxx-simulators\optional -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make -include C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make/test_common.h -fno-limit-debug-info -fuse-ld=lld --driver-mode=g++ -o "a.out"
lld-link: error: undefined symbol: printf
>>> referenced by main.o:(main)
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [Makefile.rules:515: a.out] Error 1
make: Leaving directory 'C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/lldb-test-build.noindex/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/TestDataFormatterLibcxxOptionalSimulator.test_r0'
```
Commit: 02b9c97b75325c9b737772986e439cf8f3c0d1ab
https://github.com/llvm/llvm-project/commit/02b9c97b75325c9b737772986e439cf8f3c0d1ab
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/ProfileData/MemProfReader.cpp
Log Message:
-----------
[memprof] Simplify code with MapVector::operator[] (NFC) (#111335)
Note that the following are all equivalent to each other:
Map.insert({Key, Value()}).first->second
Map.try_emplace(Key).first->second
Map[Key]
Commit: 1f17c2d20db7b26367df53c1d334d4338313fc0b
https://github.com/llvm/llvm-project/commit/1f17c2d20db7b26367df53c1d334d4338313fc0b
Author: Rahman Lavaee <rahmanl at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lld/ELF/LTO.cpp
M lld/test/ELF/lto/basic-block-sections.ll
Log Message:
-----------
[LLD] Deprecate --lto-basic-block-sections=labels (#110697)
This option is now replaced by `--lto-basic-block-address-map`.
Commit: dec6fe3de0f6475ea83391e5b0b4036cf56db35b
https://github.com/llvm/llvm-project/commit/dec6fe3de0f6475ea83391e5b0b4036cf56db35b
Author: Justin Bogner <mail at justinbogner.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
R llvm/test/CodeGen/SPIRV/hlsl-intrinsics/radians.ll
R llvm/test/CodeGen/SPIRV/opencl/radians.ll
Log Message:
-----------
Revert "[SPIRV] Add radians intrinsic" (#111398)
Reverts llvm/llvm-project#110800
`llvm\test\CodeGen\DirectX\radians.ll` is failing after this change.
@adam-yang please send a new PR with the issue resolved once you've had
time to investigate.
Commit: b2c615fc792c3f75af66aac99c05ffa85ef50354
https://github.com/llvm/llvm-project/commit/b2c615fc792c3f75af66aac99c05ffa85ef50354
Author: Justin Bogner <mail at justinbogner.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/radians.ll
A llvm/test/CodeGen/SPIRV/opencl/radians.ll
Log Message:
-----------
Reapply "[SPIRV] Add radians intrinsic"
I had too many tabs open and reverted #110800 by mistake, it was
supposed to be #110616.
This reverts commit dec6fe3de0f6475ea83391e5b0b4036cf56db35b.
Commit: b795c28d8e6d5947d365f4e5f7b49cc22546292f
https://github.com/llvm/llvm-project/commit/b795c28d8e6d5947d365f4e5f7b49cc22546292f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/test/CodeGen/X86/avx512f-builtins.c
Log Message:
-----------
[clang][x86] Update AVX512F intrinsic tests for both C/C++
Requires some better checking of labels and some call instructions to handle additional markers
Commit: f07e1c86199eeac609900f42edb22e1faf461ef2
https://github.com/llvm/llvm-project/commit/f07e1c86199eeac609900f42edb22e1faf461ef2
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/test/CodeGen/X86/mmx-builtins.c
Log Message:
-----------
[clang][x86] Update MMX intrinsic tests for both C/C++ and 32/64-bit targets
Commit: d4c17891126a79ae49237a7de0f9948aeedcd177
https://github.com/llvm/llvm-project/commit/d4c17891126a79ae49237a7de0f9948aeedcd177
Author: Da-Viper <57949090+Da-Viper at users.noreply.github.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lldb/test/API/tools/lldb-dap/coreFile/TestDAP_coreFile.py
M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
M lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py
M lldb/tools/lldb-dap/JSONUtils.cpp
M lldb/tools/lldb-dap/JSONUtils.h
M lldb/tools/lldb-dap/LLDBUtils.cpp
M lldb/tools/lldb-dap/LLDBUtils.h
M lldb/tools/lldb-dap/README.md
M lldb/tools/lldb-dap/lldb-dap.cpp
M lldb/tools/lldb-dap/package.json
Log Message:
-----------
Make env and source map dictionaries #95137 (#106919)
Fixes #95137
Commit: 5d372ea6a1e438b8e9583391d40cfcf34210d4f7
https://github.com/llvm/llvm-project/commit/5d372ea6a1e438b8e9583391d40cfcf34210d4f7
Author: Jacob Lalonde <jalalonde at fb.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
Log Message:
-----------
[LLDB][DYLD] Remove logic around not rebasing when main executable has a load address (#110885)
This is a part of #109477 that I'm making into it's own patch. Here we
remove logic from the DYLD that prevents it's logic from running if the
main executable already has a load address. Instead we let the DYLD
fully determine what should be loaded and what shouldn't.
Commit: 971b579bc6669a0898e47d6702c4b99cb757bb26
https://github.com/llvm/llvm-project/commit/971b579bc6669a0898e47d6702c4b99cb757bb26
Author: Prashant Kumar <pk5561 at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/test/Dialect/Tensor/canonicalize.mlir
Log Message:
-----------
[MLIR] Don't drop attached discardable attributes (#111261)
The creation of pack op was dropping discardable attributes.
Commit: b3c1403dc00a41c8222d4b1dd82cbb7c56fd61ae
https://github.com/llvm/llvm-project/commit/b3c1403dc00a41c8222d4b1dd82cbb7c56fd61ae
Author: Rainer Orth <ro at gcc.gnu.org>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/Lex/PPMacroExpansion.cpp
A clang/test/AST/solaris-tm.cpp
Log Message:
-----------
[clang] Fix std::tm etc. mangling on Solaris (#106353)
Recently, Solaris bootstrap got broken because Solaris uses a
non-standard mangling of `std::tm` and a few others. This was fixed with
a hack in PR #100724. The Solaris ABI requires mangling `std::tm` as
`tm` and similarly for `std::div_t`, `std::ldiv_t`, and `std::lconv`,
which is what this patch implements. The hack needs to stay in place to
allow building with older versions of `clang`.
Tested on `amd64-pc-solaris2.11`, `sparcv9-sun-solaris2.11` (2-stage
builds with both `clang-19` and `gcc-14` as build compiler), and
`x86_64-pc-linux-gnu`.
Commit: 71b2c4dbc7cc28007849434303e6bd2408db5b3b
https://github.com/llvm/llvm-project/commit/71b2c4dbc7cc28007849434303e6bd2408db5b3b
Author: Nimish Mishra <neelam.nimish at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
R flang/test/Integration/OpenMP/atomic-update-complex.f90
Log Message:
-----------
[flang] Remove failing integration test
Commit: 69577b2454fcfe35d562ede90c15150f7265376a
https://github.com/llvm/llvm-project/commit/69577b2454fcfe35d562ede90c15150f7265376a
Author: Heejin Ahn <aheejin at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp
M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.h
M llvm/test/MC/WebAssembly/annotations.s
M llvm/test/MC/WebAssembly/eh-assembly.s
M llvm/test/MC/WebAssembly/type-checker-errors.s
Log Message:
-----------
[WebAssembly] Support type checker for new EH (#111069)
This adds supports for the new EH instructions (`try_table` and
`throw_ref`) to the type checker.
One thing I'd like to improve on is the locations in the errors for
`catch_***` clauses. Currently they just point to the starting column of
`try_table` instruction itself. But to figure out where catch clauses
start you need to traverse `OperandVector` and check
`WebAssemblyOperand::isCatchList` on them to see which one is the catch
list operand, but `WebAssemblyOperand` class is in AsmParser and
AsmTypeCheck does not have access to it:
https://github.com/llvm/llvm-project/blob/cdfdc857cbab0418b7e5116fd4255eb5566588bd/llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp#L43-L204
And even if AsmTypeCheck has access to it, currently it treats the list
of catch clauses as a single `WebAssemblyOperand` so there is no way to
get the starting location of each `catch_***` clause in the current
structure.
This also renames `valTypeToStackType` to `valTypesToStackTypes`, given
that it takes two type lists.
Commit: 0b8fec69464ce4a7e759137b091a6b7500458f36
https://github.com/llvm/llvm-project/commit/0b8fec69464ce4a7e759137b091a6b7500458f36
Author: Justin Bogner <mail at justinbogner.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
M llvm/test/CodeGen/DirectX/radians.ll
Log Message:
-----------
[DirectX] Fix broken test and accidental fallthrough in #110616 (#111410)
Fix an obvious typo in these tests to get them passing, and also fix the
-Wimplicit-fallthrough warning that fires when trying to build.
Reverting #110616 was tricky because of dependencies, so I'm just doing
the easy fix directly here.
Commit: 1297ff176580b8a1cb82128208349002652e5a83
https://github.com/llvm/llvm-project/commit/1297ff176580b8a1cb82128208349002652e5a83
Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/test/CodeGen/aarch64-mixed-target-attributes.c
M clang/test/CodeGen/attr-target-clones-aarch64.c
M clang/test/CodeGen/attr-target-version.c
M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
M clang/test/CodeGenCXX/attr-target-version.cpp
M clang/test/CodeGenCXX/fmv-namespace.cpp
Log Message:
-----------
[FMV][AArch64][NFC] Cleanup attribute metadata from test files. (#111386)
We have a dedicated test to check the target-features for FMV
(clang/test/CodeGen/aarch64-fmv-dependencies.c) therefore I am removing
the autogenerated checks from irrelevant tests since the noise is making
it harder to review actual codegen changes.
Commit: fabe7e39df624c09d399f5f61d5450c2021c2357
https://github.com/llvm/llvm-project/commit/fabe7e39df624c09d399f5f61d5450c2021c2357
Author: Paul Kirth <paulkirth at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/tools/gold/gold-plugin.cpp
Log Message:
-----------
[llvm][gold] Fix syntax error (#111412)
This seems to have been overlooked in #109847, probably because most
bots don't build w/ gold enabled.
Commit: d8a656ffaf735ed689856daa5dc13a9274358072
https://github.com/llvm/llvm-project/commit/d8a656ffaf735ed689856daa5dc13a9274358072
Author: Benoit Jacob <jacob.benoit.1 at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
M mlir/test/Conversion/AMDGPUToROCDL/mfma.mlir
Log Message:
-----------
[MLIR] AMDGPUToROCDL: Use a bitcast op to reintepret a vector of i8 as single integer. (#111400)
Found by inspecting AMDGPU assembly - so the arithmetic ops created
there were definitely making their way into the target ISA. A
`LLVM::BitcastOp` seems equivalent, and evaporates as expected in the
target asm.
Along the way, I thought that this helper function `mfmaConcatIfNeeded`
could be renamed to `convertMFMAVectorOperand` to better convey its
contract; so I don't need to think about whether a bitcast is a
legitimate "concat" :-)
---------
Signed-off-by: Benoit Jacob <jacob.benoit.1 at gmail.com>
Commit: 41b09c5346324fc0fd2642f3df216a246f9fb98b
https://github.com/llvm/llvm-project/commit/41b09c5346324fc0fd2642f3df216a246f9fb98b
Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/Expr.h
M clang/include/clang/AST/Stmt.h
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
M clang/test/SemaCXX/warn-assignment-condition.cpp
Log Message:
-----------
[Clang] omit parentheses in fold expressions with a single expansion (#110761)
Fixes #101863
Commit: 93bfa7886b1a86dd9328f94561dd32dc22ca7038
https://github.com/llvm/llvm-project/commit/93bfa7886b1a86dd9328f94561dd32dc22ca7038
Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
A llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h
M llvm/lib/Transforms/Vectorize/CMakeLists.txt
A llvm/lib/Transforms/Vectorize/SandboxVectorizer/SeedCollector.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/CMakeLists.txt
A llvm/unittests/Transforms/Vectorize/SandboxVectorizer/SeedCollectorTest.cpp
Log Message:
-----------
[SandboxVectorizer] Define SeedBundle: a set of instructions to be vectorized [retry] (#111073)
[Retry 110696 with a proper rebase.]
Seed collection will assemble instructions to be vectorized into
SeedBundles. This data structure is not intended to be used directly,
but will be the basis for load bundles, store bundles, and so on.
Commit: 32e90bbe579d39356ebd269158b1b5eef82761d4
https://github.com/llvm/llvm-project/commit/32e90bbe579d39356ebd269158b1b5eef82761d4
Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lldb/docs/resources/test.rst
M lldb/test/API/lit.cfg.py
M lldb/test/API/lit.site.cfg.py.in
M lldb/test/CMakeLists.txt
M lldb/test/Shell/Expr/TestIRMemoryMap.test
M lldb/test/Shell/Settings/TestEchoCommands.test
A lldb/test/Shell/Settings/TestEchoCommandsQuiet.test
M lldb/test/Shell/Target/target-label.test
M lldb/test/Shell/helper/toolchain.py
M lldb/test/Shell/lit.cfg.py
M lldb/test/Shell/lit.site.cfg.py.in
Log Message:
-----------
[lldb][test] Support remote run of Shell tests (#95986)
1. This commit adds LLDB_TEST_PLATFORM_URL, LLDB_TEST_SYSROOT,
LLDB_TEST_PLATFORM_WORKING_DIR, LLDB_SHELL_TESTS_DISABLE_REMOTE cmake
flags to pass arguments for cross-compilation and remote running of both Shell&API tests.
2. To run Shell tests remotely, it adds 'platform select' and 'platform connect' commands to %lldb
substitution.
3. 'remote-linux' feature added to lit to disable tests failing with
remote execution.
4. A separate working directory is assigned to each test to avoid
conflicts during parallel test execution.
5. Remote Shell testing is run only when LLDB_TEST_SYSROOT is set for
building test sources. The recommended compiler for that is Clang.
---------
Co-authored-by: Vladimir Vereschaka <vvereschaka at accesssoftek.com>
Commit: f11568bcb026e0f54d270bda6f161b9fb1e42f39
https://github.com/llvm/llvm-project/commit/f11568bcb026e0f54d270bda6f161b9fb1e42f39
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
R llvm/test/Analysis/CostModel/RISCV/fixed-vector-insert-subvector.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/remarks-insert-into-small-vector.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/revec-getGatherCost.ll
Log Message:
-----------
Revert "[RISCV][TTI] Recognize CONCAT_VECTORS if a shufflevector mask is multiple insert subvector. (#110457)"
This reverts commit 554eaec63908ed20c35c8cc85304a3d44a63c634. Change was not approved when landed.
Commit: adbc37d999b5949779830ffa7dbff54cb78862cb
https://github.com/llvm/llvm-project/commit/adbc37d999b5949779830ffa7dbff54cb78862cb
Author: hill <hill at hilll.dev>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang-tools-extra/docs/clang-tidy/index.rst
Log Message:
-----------
[clang-tidy] Fix incorrect command-line option in docs (#111405)
Updated the `HeaderFilterRegex` description to reference
`--header-filter` instead of the incorrect `--header-filter-regex` in
the clang-tidy documentation.
Commit: 3f5039323c43af22896aeb2c34f6b302768d1fab
https://github.com/llvm/llvm-project/commit/3f5039323c43af22896aeb2c34f6b302768d1fab
Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SeedCollector.cpp
Log Message:
-----------
[SandboxVectorizer][NFC] Remove unused include (#111418)
Commit: 90a5744bebffafb88abf2343a1a70a37e12abef4
https://github.com/llvm/llvm-project/commit/90a5744bebffafb88abf2343a1a70a37e12abef4
Author: Sandeep Dasgupta <sdasgup at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Quant/IR/QuantTypes.cpp
M mlir/test/Dialect/Quant/parse-uniform-invalid.mlir
Log Message:
-----------
Remove redundant checks related to quantized type (#110604)
[APFloat::getSmallest](https://github.com/llvm/llvm-project/blob/915df1ae41652e2f595ce741dcd8f01878ef4e30/llvm/include/llvm/ADT/APFloat.h#L1060)
(and similarly `APFloat:getLargest`)
```
APFloat getSmallest(const fltSemantics &Sem, bool Negative = false);
```
return the positive number when the default value for the second
argument is used.
With that being said, the check
[QuantTypes.cpp#L325](https://github.com/llvm/llvm-project/blob/96f37ae45310885e09195be09d9c05e1c1dff86b/mlir/lib/Dialect/Quant/IR/QuantTypes.cpp#L325)
```c++
if (scale <= 0.0 || std::isinf(scale) || std::isnan(scale))
return emitError() << "illegal scale: " << scale;
```
is already covered by the check which follows
[QuantTypes.cpp#L327](https://github.com/llvm/llvm-project/blob/96f37ae45310885e09195be09d9c05e1c1dff86b/mlir/lib/Dialect/Quant/IR/QuantTypes.cpp#L327)
```c++
if (scale < minScale || scale > maxScale)
return emitError() << "scale out of expressed type range [" << minScale
<< ", " << maxScale << "]";
```
given that range `[positive-smallest-finite-number,
positive-largest-finite-number]` does not include `inf` and `nan`s.
I propose to remove the redundant check. Any suggestion for improving
the error message is welcome.
Commit: a8e1311a1c4f7f67d8d8d7575f595da4f0a5873c
https://github.com/llvm/llvm-project/commit/a8e1311a1c4f7f67d8d8d7575f595da4f0a5873c
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/IR/FixedMetadataKinds.def
M llvm/lib/IR/Verifier.cpp
A llvm/test/Assembler/noalias-addrspace-md.ll
M llvm/test/Transforms/InstCombine/loadstore-metadata.ll
M llvm/test/Transforms/SimplifyCFG/hoist-with-metadata.ll
A llvm/test/Verifier/noalias-addrspace.ll
Log Message:
-----------
[RFC] IR: Define noalias.addrspace metadata (#102461)
This is intended to solve a problem with lowering atomics in
OpenMP and C++ common to AMDGPU and NVPTX.
In OpenCL and CUDA, it is undefined behavior for an atomic instruction
to modify an object in thread private memory. In OpenMP, it is defined.
Correspondingly, the hardware does not handle this correctly. For
AMDGPU,
32-bit atomics work and 64-bit atomics are silently dropped. We
therefore
need to codegen this by inserting a runtime address space check,
performing
the private case without atomics, and fallback to issuing the real
atomic
otherwise. This metadata allows us to avoid this extra check and branch.
Handle this by introducing metadata intended to be applied to atomicrmw,
indicating they cannot access the forbidden address space.
Commit: fbb8234ca9ba75f2d5cc0238ddd08cb5534ae496
https://github.com/llvm/llvm-project/commit/fbb8234ca9ba75f2d5cc0238ddd08cb5534ae496
Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/SeedCollectorTest.cpp
Log Message:
-----------
[SandboxIR][NFC] Remove unused include (#111422)
Commit: e0b840a903d169ff1437fdaa473d26021d0b4ba2
https://github.com/llvm/llvm-project/commit/e0b840a903d169ff1437fdaa473d26021d0b4ba2
Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h
Log Message:
-----------
[SandboxVectorizer][NFC] Remove erroneous expensive check assert (#111425)
Commit: 017b504b462ce7d4938f704a1f10118ead347d3d
https://github.com/llvm/llvm-project/commit/017b504b462ce7d4938f704a1f10118ead347d3d
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/test/SemaTemplate/ms-function-specialization-class-scope.cpp
Log Message:
-----------
[clang] Don't lose track of explicit specializations of member function templates (#111267)
When instantiating a class template, we would lose track of function
template explicit specializations, marking them with the wrong
specialization kind.
This would lead to improperly using the explcit specialization arguments
to instantiate the function body.
This also better matches MSVC on the behaviour of explicitly vs
implicitly instantiating these.
Fixes #111266
Commit: dd0fe4fb7440182d8101135bfd694b2d84893c2e
https://github.com/llvm/llvm-project/commit/dd0fe4fb7440182d8101135bfd694b2d84893c2e
Author: Nathan Lanza <nathanlanza at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
A clang/include/clang/CIR/.clang-tidy
A clang/include/clang/CIRFrontendAction/.clang-tidy
A clang/lib/CIR/.clang-tidy
Log Message:
-----------
[CIR] Add .clang-tidy files for ClangIR specific coding style rules
https://llvm.github.io/clangir/GettingStarted/coding-guideline.html
Reviewers: dkolsen-pgi, bcardosolopes, erichkeane
Reviewed By: erichkeane, dkolsen-pgi
Pull Request: https://github.com/llvm/llvm-project/pull/111417
Commit: 9dca83f2e1f20919a06dd58acd345e2a49e13d9a
https://github.com/llvm/llvm-project/commit/9dca83f2e1f20919a06dd58acd345e2a49e13d9a
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/test/Bitcode/amdgcn-atomic.ll
Log Message:
-----------
AMDGPU: Add noalias.addrspace metadata when autoupgrading atomic intrinsics (#102599)
This will be needed to continue generating the raw instruction in the flat case.
Commit: 8882d5912322ce9c199181e46b8c07d24ed6095d
https://github.com/llvm/llvm-project/commit/8882d5912322ce9c199181e46b8c07d24ed6095d
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M flang/lib/Semantics/check-call.cpp
Log Message:
-----------
[flang] Fix typo in warning message text (#110888)
I accidentally deleted a space character; put it back.
Commit: ce5edfd232c38ec4e4642b15cdb4dd8ecf105b04
https://github.com/llvm/llvm-project/commit/ce5edfd232c38ec4e4642b15cdb4dd8ecf105b04
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M flang/include/flang/Common/Fortran-features.h
M flang/lib/Semantics/check-declarations.cpp
M flang/test/Semantics/separate-mp02.f90
Log Message:
-----------
[flang] Finer error detection in separate module procedure case (#110912)
When a separate module procedure has a dummy procedure argument that is
simply declared EXTERNAL in its interface but is actually called as a
subroutine or function in its definition, the compiler is emitting an
error message. This is too strong; an error is appropriate only when the
dummy procedure in the definition has an interface that is incompatible
with the one in the interface definition.
However, this is not a safe coding practice, and can lead to trouble
during execution if a function is passed as an actual argument but
called as a subroutine in the procedure (or the other way around), so
add a warning message as well for this case (off by default).
Fixes https://github.com/llvm/llvm-project/issues/110797.
Commit: 49016d53e8f54d4b0883f4fcb06800bcfd7bd40e
https://github.com/llvm/llvm-project/commit/49016d53e8f54d4b0883f4fcb06800bcfd7bd40e
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M flang/lib/Semantics/tools.cpp
M flang/test/Semantics/io14.f90
Log Message:
-----------
[flang] Silence bogus error message (#111057)
Fortran doesn't permit the use of a polymorphic I/O list item for
intrinsic data transfers, so the compiler emits an error message for
polymorphic items whose types can't possibly be handled by a defined I/O
subroutine. This check didn't allow for the possibility that the defined
I/O subroutine might apply to the parent component of an extended type.
Fixes https://github.com/llvm/llvm-project/issues/111021.
Commit: 70cbedcd6edf00fc11aa7685f41f8ec29ce84598
https://github.com/llvm/llvm-project/commit/70cbedcd6edf00fc11aa7685f41f8ec29ce84598
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/tools.cpp
A flang/test/Semantics/call42.f90
Log Message:
-----------
[flang] Catch errors with INTENT(OUT) assumed rank dummy arguments (#111204)
Emit an error when an actual argument with potentially unknown size
(assumed size, or non-pointer non-allocatable assumed rank) with any
risk of needing initialization, finalization, or destruction is
associated with an INTENT(OUT) dummy argument with assumed rank.
Emit an optional portability warning for cases where the type is known
to be safe from needing initialization, finalization, or destruction,
since it's not conforming and might elicit an error from other
compilers.
Fixes https://github.com/llvm/llvm-project/issues/111120.
Commit: 6ace680a5cc2aa8a45731605cbbab9f933e667a9
https://github.com/llvm/llvm-project/commit/6ace680a5cc2aa8a45731605cbbab9f933e667a9
Author: Chris Apple <cja-private at pm.me>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M compiler-rt/test/rtsan/blocking_call.cpp
Log Message:
-----------
[rtsan][compiler-rt] Get rid of [[blocking]] stub in tests (#111392)
Commit: a98466ad8967f9ad9cd79157a7aed8ade5d65a7a
https://github.com/llvm/llvm-project/commit/a98466ad8967f9ad9cd79157a7aed8ade5d65a7a
Author: Heejin Ahn <aheejin at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
R llvm/test/MC/WebAssembly/eh-assembly-legacy.s
M llvm/test/MC/WebAssembly/eh-assembly.s
Log Message:
-----------
[WebAssembly] Merge eh-assembly-legacy.s into eh-assembly.s (#111411)
Now that we don't need to specify `--no-type-check` on `eh-assembly.s`,
we can test the two modes in the same file.
Commit: d2457e6d8f62a12b3b74791cfd3f5808168c8a71
https://github.com/llvm/llvm-project/commit/d2457e6d8f62a12b3b74791cfd3f5808168c8a71
Author: Dmitrii Galimzianov <dmt021 at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lldb/source/Expression/IRExecutionUnit.cpp
Log Message:
-----------
Remove redundant symbol lookups in IRExecutionUnit::FindInSymbols (#102835)
When we search for a symbol, we first check if it is in the module_sp of
the current SymbolContext, and if not, we check in the target's modules.
However, the target's ModuleList also includes the already checked
module, which leads to a redundant search in it.
Commit: 3bace7efe00cbc5caadd2926027f4675845f06a8
https://github.com/llvm/llvm-project/commit/3bace7efe00cbc5caadd2926027f4675845f06a8
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/include/llvm/AsmParser/LLLexer.h
M llvm/include/llvm/AsmParser/LLParser.h
M llvm/lib/AsmParser/LLLexer.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/test/Assembler/allockind-missing.ll
M llvm/test/Assembler/invalid-inttype.ll
M llvm/test/Assembler/invalid-landingpad.ll
M llvm/test/Assembler/invalid-name.ll
M llvm/test/Assembler/invalid-name2.ll
Log Message:
-----------
[LLVM][AsmParser] Make error reporting of lexer errors more precise (#111077)
When the lexer hits an error during assembly parsing, it just logs the
error in the `ErrorMsg` object, and it's possible that error gets
overwritten later in by the parser with a more generic error message.
This makes some errors reported by the LLVM's asm parser less precise.
Address this by not having the parser overwrite the message logged by
the lexer by assigning error messages generated by the lexer higher
"priority" than those generated by parser and overwriting the error
message only if its same or higher priority.
Update several Assembler unit test to now check the more precise error
messaged reported by the LLVM's AsmParser.
Commit: 00989f4ab14c4cf41bbac258f2bf197cbbdc2b41
https://github.com/llvm/llvm-project/commit/00989f4ab14c4cf41bbac258f2bf197cbbdc2b41
Author: Evgenii Stepanov <eugeni.stepanov at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/combined.h
M compiler-rt/lib/scudo/standalone/memtag.h
Log Message:
-----------
[scudo] Fix isOwned on MTE devices. (#111060)
If called on address that is actually not owned, the tags could not
match. Disable tag checks in isOwned().
Commit: 10d43061aa1c95facea397a900d9ce4f65fa03da
https://github.com/llvm/llvm-project/commit/10d43061aa1c95facea397a900d9ce4f65fa03da
Author: Chris Apple <cja-private at pm.me>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M compiler-rt/lib/rtsan/rtsan_assertions.h
M compiler-rt/lib/rtsan/rtsan_context.h
Log Message:
-----------
[rtsan][NFC] Refactor to scoped bypasser for __rtsan::Context (#111438)
Commit: 9e06e772a1bcfe0b33be9b01bbd9549a305313d7
https://github.com/llvm/llvm-project/commit/9e06e772a1bcfe0b33be9b01bbd9549a305313d7
Author: Chris Apple <cja-private at pm.me>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M compiler-rt/lib/rtsan/rtsan.cpp
M compiler-rt/test/rtsan/exit_stats.cpp
Log Message:
-----------
[rtsan] Add stats summary even when halt_on_error=true (#110165)
Commit: 5c88aa9d34c37f100be60269cfad6b8354918536
https://github.com/llvm/llvm-project/commit/5c88aa9d34c37f100be60269cfad6b8354918536
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M libcxx/docs/UserDocumentation.rst
Log Message:
-----------
[libc++] Document the de-facto status of compiler extension support (#110877)
This was brought up in a maintainer's meeting a few months ago. This
simply documents the current status quo.
Commit: 75103aae4a9d22e2c46068f2160f2dddd6ad2116
https://github.com/llvm/llvm-project/commit/75103aae4a9d22e2c46068f2160f2dddd6ad2116
Author: gbMattN <146744444+gbMattN at users.noreply.github.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M compiler-rt/include/sanitizer/ubsan_interface.h
Log Message:
-----------
Added include of common interfaces (#111374)
Pull request for issue #110823
Including the file which defines the macros we use here. This would let
user code only include this interface, rather than having to include two
files.
Commit: 2918e779a9545a66c0031b03b3af5bf4d8517cec
https://github.com/llvm/llvm-project/commit/2918e779a9545a66c0031b03b3af5bf4d8517cec
Author: Walter Erquinigo <a20012251 at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M mlir/include/mlir-c/Dialect/LLVM.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/lib/CAPI/Dialect/LLVM.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
M mlir/lib/Dialect/LLVMIR/Transforms/DIScopeForLLVMFuncOp.cpp
M mlir/lib/Target/LLVMIR/DebugImporter.cpp
M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
M mlir/test/CAPI/llvm.c
M mlir/test/Dialect/LLVMIR/debuginfo.mlir
M mlir/test/Target/LLVMIR/Import/debug-info.ll
M mlir/test/Target/LLVMIR/llvmir-debug.mlir
Log Message:
-----------
[mlir][debuginfo] Add support for subprogram annotations (#110946)
LLVM already supports `DW_TAG_LLVM_annotation` entries for subprograms,
but this hasn't been surfaced to the LLVM dialect.
I'm doing the minimal amount of work to support string-based
annotations, which is useful for attaching metadata to
functions, which is useful for debuggers to offer features beyond basic
DWARF.
As LLVM already supports this, this patch is not controversial.
Commit: 376b5c0cb6d5c2e559c8689acb1bb1d30f5325aa
https://github.com/llvm/llvm-project/commit/376b5c0cb6d5c2e559c8689acb1bb1d30f5325aa
Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/Utils.h
M llvm/unittests/SandboxIR/UtilsTest.cpp
Log Message:
-----------
[SandboxIR][NFC] Use accessor for DataLayout rather than passing it down (#111447)
Commit: 2ca850111fe1fbb174ae782caa00f8a48fb3eadd
https://github.com/llvm/llvm-project/commit/2ca850111fe1fbb174ae782caa00f8a48fb3eadd
Author: Paul Kirth <paulkirth at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Arch/AMDGPU.cpp
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/AVR.cpp
M lld/ELF/Arch/Hexagon.cpp
M lld/ELF/Arch/LoongArch.cpp
M lld/ELF/Arch/MSP430.cpp
M lld/ELF/Arch/Mips.cpp
M lld/ELF/Arch/PPC.cpp
M lld/ELF/Arch/PPC64.cpp
M lld/ELF/Arch/RISCV.cpp
M lld/ELF/Arch/SPARCV9.cpp
M lld/ELF/Arch/SystemZ.cpp
M lld/ELF/Arch/X86.cpp
M lld/ELF/Arch/X86_64.cpp
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/Target.cpp
M lld/ELF/Target.h
Log Message:
-----------
Revert "[ELF] Change Ctx::target to unique_ptr (#111260)" (#111449)
This patch seems to be breaking the windows build bots.
https://lab.llvm.org/buildbot/#/builders/63/builds/1953
We also see this in Fuchsia's Linux CI:
https://fxbug.dev/372010530
This reverts commit 4ec06b17435e32ece5e1aa2bc8a6d26dbf0bb312.
Commit: 991adff4628deeb3b4cb7d9df366e9f1e8b2860c
https://github.com/llvm/llvm-project/commit/991adff4628deeb3b4cb7d9df366e9f1e8b2860c
Author: Heejin Ahn <aheejin at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp
M llvm/test/MC/WebAssembly/annotations.s
M llvm/test/MC/WebAssembly/eh-assembly.s
M llvm/test/MC/WebAssembly/type-checker-errors.s
Log Message:
-----------
[WebAssembly] Allow try_table to target loops in AsmTypeCheck (#111432)
Commit: 39ac121309f5c270c8fdc97c45a845542dd78681
https://github.com/llvm/llvm-project/commit/39ac121309f5c270c8fdc97c45a845542dd78681
Author: Bill Wendling <morbo at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/lib/CodeGen/CGExpr.cpp
Log Message:
-----------
[Clang] Check that we have the correct RecordDecl (#111448)
Ensure we have the correct RecordDecl before returning the Expr we're
looking for.
Commit: 63a0a81e73b5b482acb98372eff63bb3d2fe1673
https://github.com/llvm/llvm-project/commit/63a0a81e73b5b482acb98372eff63bb3d2fe1673
Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.h
M llvm/lib/Transforms/Scalar/Scalarizer.cpp
Log Message:
-----------
[NFC][Scalarizer][TargetTransformInfo] Add isTargetIntrinsicWithScalarOpAtArg api (#111441)
This change allows target intrinsics can have scalar args
fixes [111440](https://github.com/llvm/llvm-project/issues/111440)
This change will let us add scalarization for WaveReadLaneAt:
https://github.com/llvm/llvm-project/pull/111010
Commit: b44371194b101ed0d6f5ad8b764c1dc748020b7b
https://github.com/llvm/llvm-project/commit/b44371194b101ed0d6f5ad8b764c1dc748020b7b
Author: lizhijin1024 <104253293+lizhijin1024 at users.noreply.github.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors.cpp
Log Message:
-----------
[rtsan] Ensure pthread is initialized in test (#111401)
Handle running stuck of `pthread_cond_destroy` on X86 in test
`PthreadCondSignalDiesWhenRealtime` and
`PthreadCondBroadcastDiesWhenRealtime`.
Commit: 4b6e41b61e2edea2f80de3639e589301fe7c896c
https://github.com/llvm/llvm-project/commit/4b6e41b61e2edea2f80de3639e589301fe7c896c
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/FormatTestProto.cpp
Log Message:
-----------
[clang-format] Don't insert spaces after keywords in protobuf field o… (#111229)
…ptions
Fixes #54848.
Commit: 65688274b14f5d0e7dabbbaf9f3fd135646ef1d1
https://github.com/llvm/llvm-project/commit/65688274b14f5d0e7dabbbaf9f3fd135646ef1d1
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/docs/ClangFormatStyleOptions.rst
M clang/include/clang/Format/Format.h
M clang/lib/Format/Format.cpp
M clang/unittests/Format/ConfigParseTest.cpp
Log Message:
-----------
[clang-format][NFC] Clean up AlignConsecutiveStyle (#111285)
- Add a `CHECK_PARSE` for `AcrossComments`.
- Add a `CHECK_PARSE_NESTED_BOOL` for `AlignFunctionPointers`.
- Remove redundant statements.
- Clean up documentation.
Commit: db4874c2fc0b34e8959ff0ac455bff5f54fbd52b
https://github.com/llvm/llvm-project/commit/db4874c2fc0b34e8959ff0ac455bff5f54fbd52b
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/unittests/IR/ConstantFPRangeTest.cpp
Log Message:
-----------
[ConstantFPRange][UnitTests] Guard exhaustive checks by `EXPENSIVE_CHECKS` (#111276)
Addresses comment
https://github.com/llvm/llvm-project/pull/111056#issuecomment-2393951499.
Commit: ae5ee9760624a6e97f0d42b151583d31da74a42f
https://github.com/llvm/llvm-project/commit/ae5ee9760624a6e97f0d42b151583d31da74a42f
Author: bwlodarcz <bertrand.wlodarczyk at intel.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVEmitNonSemanticDI.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
A llvm/test/CodeGen/SPIRV/debug-info/debug-type-pointer.ll
Log Message:
-----------
[SPIR-V] Emit DebugTypePointer from NonSemantic DI (#109287)
Implementation of DebugTypePointer from
NonSemantic.Shader.DebugInfo.100.
Commit: 646aa817d2944f78638ca5fc1d037bff5e1fd490
https://github.com/llvm/llvm-project/commit/646aa817d2944f78638ca5fc1d037bff5e1fd490
Author: 苏灵素@夏日限定 <Su.Xiyan at icloud.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lldb/docs/use/tutorial.rst
Log Message:
-----------
[lldb][Docs] Fix typo in `tutorial.rst` (#111326)
Commit: 1ad3180b4a07ccf7cc371882c4e10ec2667adea8
https://github.com/llvm/llvm-project/commit/1ad3180b4a07ccf7cc371882c4e10ec2667adea8
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/tools/llvm-remarkutil/RemarkCounter.cpp
Log Message:
-----------
[llvm-remarkutil] Simplify code with std::map::operator[] (NFC) (#111407)
Commit: 1b53aaec55b6cdf0c9cf09b9cbdc53992e1b50ae
https://github.com/llvm/llvm-project/commit/1b53aaec55b6cdf0c9cf09b9cbdc53992e1b50ae
Author: Kyungwoo Lee <kyulee at meta.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/include/llvm/LTO/LTO.h
M llvm/lib/LTO/LTO.cpp
Log Message:
-----------
[ThinLTO][NFC] Refactor ThinBackend (#110461)
This is a prep for https://github.com/llvm/llvm-project/pull/90933.
- Change `ThinBackend` from a function to a type.
- Store the parallelism level in the type, which will be used when creating two-codegen round backends that inherit this value.
- `ThinBackendProc` is hoisted to `LTO.h` from `LTO.cpp` to provide its body for `ThinBackend`. However, `emitFiles()` is still implemented separately in `LTO.cpp`, distinct from its parent class.
Commit: e98875af4c09e3ceaf54a51023a5d03ee143bc5c
https://github.com/llvm/llvm-project/commit/e98875af4c09e3ceaf54a51023a5d03ee143bc5c
Author: Luke Lau <luke at igalia.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-cost.ll
Log Message:
-----------
[RISCV] Add scalable interleave cost tests. NFC
This gets the cost from the recipe output rather than the individual
instruction cost.
The factor 3 test was left alone since we don't support anything else
other than factor 2 for scalable vectors currently.
Commit: 4647a4666c4f8edabaa89163e899953bcd584aa7
https://github.com/llvm/llvm-project/commit/4647a4666c4f8edabaa89163e899953bcd584aa7
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/IR/ConstantFPRange.cpp
M llvm/unittests/IR/ConstantFPRangeTest.cpp
Log Message:
-----------
[ConstantFPRange] Implement `ConstantFPRange::makeSatisfyingFCmpRegion` (#110891)
This patch adds support for `ConstantFPRange::makeSatisfyingFCmpRegion`.
We only check the optimality for cases where the result can be
represented by a ConstantFPRange.
This patch also adds some tests for `ConstantFPRange::fcmp` because it
depends on `makeSatisfyingFCmpRegion`. Unfortunately we cannot
exhaustively test this function due to time limit. I just pick some
interesting ranges instead.
Commit: c35214c131c0bc7f54dc18ceb75c75cba89f58ee
https://github.com/llvm/llvm-project/commit/c35214c131c0bc7f54dc18ceb75c75cba89f58ee
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lld/ELF/Target.h
Log Message:
-----------
[ELF] Initialize TargetInfo members
Prevent use of uninitialized memory when ctx.target no longer uses
points to static storage duration.
Specifically, uninitialized `trapInstr` caused llvm-objdump output
differences.
(https://github.com/llvm/llvm-project/pull/111260#issuecomment-2397498034)
Commit: e1a073c9d9b85804c46353c5a66c44fe212525ed
https://github.com/llvm/llvm-project/commit/e1a073c9d9b85804c46353c5a66c44fe212525ed
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Arch/AMDGPU.cpp
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/AVR.cpp
M lld/ELF/Arch/Hexagon.cpp
M lld/ELF/Arch/LoongArch.cpp
M lld/ELF/Arch/MSP430.cpp
M lld/ELF/Arch/Mips.cpp
M lld/ELF/Arch/PPC.cpp
M lld/ELF/Arch/PPC64.cpp
M lld/ELF/Arch/RISCV.cpp
M lld/ELF/Arch/SPARCV9.cpp
M lld/ELF/Arch/SystemZ.cpp
M lld/ELF/Arch/X86.cpp
M lld/ELF/Arch/X86_64.cpp
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/Target.cpp
M lld/ELF/Target.h
Log Message:
-----------
[ELF] Change Ctx::target to unique_ptr (#111260)
also rename `TargetInfo *getXXXTargetInfo` to `void setXXXTargetInfo`
and change it to set `ctx.target`. This ensures that when `ctx` becomes
a local variable, two lld invocations will not reuse the function-local
static variable.
---
Reland after commit c35214c131c0bc7f54dc18ceb75c75cba89f58ee
([ELF] Initialize TargetInfo members).
Commit: 1f2c08b33b848dfdfeecdc7cee3644591407e219
https://github.com/llvm/llvm-project/commit/1f2c08b33b848dfdfeecdc7cee3644591407e219
Author: Thomas Fransham <tfransham at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang-tools-extra/clang-apply-replacements/CMakeLists.txt
M clang-tools-extra/clang-change-namespace/CMakeLists.txt
M clang-tools-extra/clang-doc/CMakeLists.txt
M clang-tools-extra/clang-include-fixer/CMakeLists.txt
M clang-tools-extra/clang-include-fixer/find-all-symbols/CMakeLists.txt
M clang-tools-extra/clang-include-fixer/plugin/CMakeLists.txt
M clang-tools-extra/clang-move/CMakeLists.txt
M clang-tools-extra/clang-query/CMakeLists.txt
M clang-tools-extra/clang-reorder-fields/CMakeLists.txt
M clang-tools-extra/clang-tidy/CMakeLists.txt
M clang-tools-extra/clang-tidy/abseil/CMakeLists.txt
M clang-tools-extra/clang-tidy/altera/CMakeLists.txt
M clang-tools-extra/clang-tidy/android/CMakeLists.txt
M clang-tools-extra/clang-tidy/boost/CMakeLists.txt
M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
M clang-tools-extra/clang-tidy/cert/CMakeLists.txt
M clang-tools-extra/clang-tidy/concurrency/CMakeLists.txt
M clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt
M clang-tools-extra/clang-tidy/darwin/CMakeLists.txt
M clang-tools-extra/clang-tidy/fuchsia/CMakeLists.txt
M clang-tools-extra/clang-tidy/google/CMakeLists.txt
M clang-tools-extra/clang-tidy/hicpp/CMakeLists.txt
M clang-tools-extra/clang-tidy/linuxkernel/CMakeLists.txt
M clang-tools-extra/clang-tidy/llvm/CMakeLists.txt
M clang-tools-extra/clang-tidy/llvmlibc/CMakeLists.txt
M clang-tools-extra/clang-tidy/misc/CMakeLists.txt
M clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
M clang-tools-extra/clang-tidy/mpi/CMakeLists.txt
M clang-tools-extra/clang-tidy/objc/CMakeLists.txt
M clang-tools-extra/clang-tidy/openmp/CMakeLists.txt
M clang-tools-extra/clang-tidy/performance/CMakeLists.txt
M clang-tools-extra/clang-tidy/plugin/CMakeLists.txt
M clang-tools-extra/clang-tidy/portability/CMakeLists.txt
M clang-tools-extra/clang-tidy/readability/CMakeLists.txt
M clang-tools-extra/clang-tidy/tool/CMakeLists.txt
M clang-tools-extra/clang-tidy/utils/CMakeLists.txt
M clang-tools-extra/clang-tidy/zircon/CMakeLists.txt
M clang-tools-extra/clangd/CMakeLists.txt
M clang-tools-extra/clangd/index/remote/CMakeLists.txt
M clang-tools-extra/clangd/index/remote/marshalling/CMakeLists.txt
M clang-tools-extra/clangd/index/remote/unimplemented/CMakeLists.txt
M clang-tools-extra/clangd/support/CMakeLists.txt
M clang-tools-extra/clangd/tool/CMakeLists.txt
M clang-tools-extra/clangd/xpc/CMakeLists.txt
M clang-tools-extra/include-cleaner/lib/CMakeLists.txt
Log Message:
-----------
[clang-tools-extra] Fix add_clang_library usage (#109321)
If a add_clang_library call doesn't specify building as static or shared
library they are implicitly added to the list static libraries that is
linked in to clang-cpp shared library here.
https://github.com/llvm/llvm-project/blob/315ba7740663208f8bc45a7e4f145dc1df79500c/clang/cmake/modules/AddClang.cmake#L107
Because the clang-tools-extra libraries targets were declared after
clang-cpp they by luck never got linked to clang-cpp.
This change is required for clang symbol visibility macros on windows to
work correctly for clang tools since we need to distinguish if a target
being built will be importing or exporting clang symbols from the
clang-cpp DLL.
Commit: 4fadf41c2f8755129f206b4f880dad5989923466
https://github.com/llvm/llvm-project/commit/4fadf41c2f8755129f206b4f880dad5989923466
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Target.h
M lld/ELF/Thunks.cpp
Log Message:
-----------
[ELF] Pass Ctx & to ARM/AArch64
Commit: 975da028f78546729f0e78711a4b92107c92ec8e
https://github.com/llvm/llvm-project/commit/975da028f78546729f0e78711a4b92107c92ec8e
Author: Alex Bradbury <asb at igalia.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/test/Modules/embed-files-compressed.cpp
Log Message:
-----------
[modules][test] Bump maximum size for embed-files-compressed.cpp for the sake of RISC-V (#111360)
The size of a.pcm produced by an RV64 clang running natively is 67416
bytes, causing this test to fail. Bump up the maximum size. The test
still retains its original intent as far as I can see, as it's really
trying to ensure that compressing kicks in and reduces the
multi-megabyte input.
Commit: 58ef1eb06143f48629e8b904971ab014fc4bad39
https://github.com/llvm/llvm-project/commit/58ef1eb06143f48629e8b904971ab014fc4bad39
Author: Simon Tatham <simon.tatham at arm.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M libc/src/stdlib/qsort_data.h
M libc/src/stdlib/quick_sort.h
Log Message:
-----------
[libc] Bound the worst-case stack usage in qsort(). (#110849)
Previously, the Quicksort implementation was written in the obvious way:
after each partitioning step, it explicitly recursed twice to sort the
two sublists. Now it compares the two sublists' sizes, and recurses only
to sort the smaller one. To handle the larger list it loops back round
to the top of the function, so as to handle it within the existing stack
frame.
This means that every recursive call is handling a list at most half
that of its caller. So the maximum recursive call depth is O(lg N).
Otherwise, in Quicksort's bad cases where each partition step peels off
a small constant number of array elements, the stack usage could grow
linearly with the array being sorted, i.e. it might be Θ(N).
I tested this code by manually constructing a List Of Doom that causes
this particular quicksort implementation to hit its worst case, and
confirming that it recursed very deeply in the old code and doesn't in
the new code. But I haven't added that list to the test suite, because
the List Of Doom has to be constructed in a way based on every detail of
the quicksort algorithm (pivot choice and partitioning strategy), so it
would silently stop being a useful regression test as soon as any detail
changed.
Commit: a11509c3b971132785024c830073fd11d14bd3fd
https://github.com/llvm/llvm-project/commit/a11509c3b971132785024c830073fd11d14bd3fd
Author: David Green <david.green at arm.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
M llvm/test/CodeGen/AArch64/fptoui-sat-vector.ll
M llvm/test/CodeGen/AArch64/load.ll
M llvm/test/CodeGen/AArch64/store.ll
Log Message:
-----------
[AArch64][GlobalISel] Scalarize i128/fp128 vector loads/stores.
Similar to other operations, we should scalarize these to allow the individual
elements to legalize.
Commit: a3a253d3c7780977077dd46493917b1949c0166d
https://github.com/llvm/llvm-project/commit/a3a253d3c7780977077dd46493917b1949c0166d
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/IR/ConstantFPRange.cpp
M llvm/unittests/IR/ConstantFPRangeTest.cpp
Log Message:
-----------
[ConstantFPRange] Implement `ConstantFPRange::makeExactFCmpRegion` (#111490)
Note: The current implementation doesn't return optimal result for `fcmp
one/une x, +/-inf` since we don't handle this case in
https://github.com/llvm/llvm-project/pull/110891. Maybe we can make it
optimal after seeing some real-world cases.
Commit: 4d218caa7716743061e8d34d61b2181c94b16440
https://github.com/llvm/llvm-project/commit/4d218caa7716743061e8d34d61b2181c94b16440
Author: Doug Wyatt <doug at sonosphere.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/lib/Sema/SemaFunctionEffects.cpp
M clang/test/Sema/attr-nonblocking-constraints.cpp
Log Message:
-----------
[Clang] [Sema] Effects: Correctly detect `(x ? a : b)` as nonblocking when a and b are (#111224)
Correctly detect `(x ? a : b)` as nonblocking when `a` and `b` are. Use
`FunctionEffectsRef::get` to get to the actual effect set instead of trying
to retrieve it manually via the `FunctionProtoType` as we may have to
look through function pointers etc. in some cases.
---------
Co-authored-by: Doug Wyatt <dwyatt at apple.com>
Commit: 20b8d3f52b02679f8be0e043df0f1bfd48c0c2bf
https://github.com/llvm/llvm-project/commit/20b8d3f52b02679f8be0e043df0f1bfd48c0c2bf
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M libcxx/utils/ci/run-buildbot
Log Message:
-----------
[libc++][CI] Replace LLDB test targets with libc++ test category (#110856)
We've been increasing the coverage of libc++ LLDB tests in the pre-merge
CI (see https://github.com/llvm/llvm-project/pull/110570). Unfortunately
the tests are spread across different targets. It would be great if we
had a single target that libc++ maintainers could run.
We do this by passing the `libc++` test-category as a parameter to
LLDB's [`dotest` testing
framework](https://lldb.llvm.org/resources/test.html). This will only
run LLDB tests that have been marked as belonging to the `libc++`
category.
Commit: 634c57d738e07754b63160b38e3639467c902cdb
https://github.com/llvm/llvm-project/commit/634c57d738e07754b63160b38e3639467c902cdb
Author: Matthias Springer <me at m-sp.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/SCF/IR/SCFOps.td
M mlir/lib/Dialect/SCF/IR/SCF.cpp
Log Message:
-----------
[mlir][SCF][NFC] `scf.for`/`scf.while`: rename builder args (#111493)
Rename builder args to make them consistent with the `args` in the
TableGen definition.
Commit: f658c1bf4a9d74518ff55a37184b76ec5dec9a8b
https://github.com/llvm/llvm-project/commit/f658c1bf4a9d74518ff55a37184b76ec5dec9a8b
Author: Piyou Chen <piyou.chen at sifive.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/lib/AST/ASTContext.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
A clang/test/CodeGen/attr-target-version-riscv-invalid.c
A clang/test/CodeGen/attr-target-version-riscv.c
A clang/test/CodeGenCXX/attr-target-version-riscv.cpp
A clang/test/SemaCXX/attr-target-version-riscv.cpp
Log Message:
-----------
Recommit "[RISCV][FMV] Support target_version" (#111096)" (#111333)
Fix the buildbot failure caused by heap use-after-free error.
Origin message:
This patch enable `target_version` attribute for RISC-V target.
The proposal of `target_version` syntax can be found at the
https://github.com/riscv-non-isa/riscv-c-api-doc/pull/48 (which has
landed), as modified by the proposed
https://github.com/riscv-non-isa/riscv-c-api-doc/pull/85 (which adds the
priority syntax).
`target_version` attribute will trigger the function multi-versioning
feature and act like `target_clones` attribute. See
https://github.com/llvm/llvm-project/pull/85786 for the implementation
of `target_clones`.
Commit: 1df8ccd35b7140b4f1ca9e6d9d2fdf67f93357d4
https://github.com/llvm/llvm-project/commit/1df8ccd35b7140b4f1ca9e6d9d2fdf67f93357d4
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/EarlyIfConversion.cpp
Log Message:
-----------
Revert "[NFC][EarlyIfConverter] Turn SSAIfConv into a local variable (#107390)" (#111385)
This reverts commit 09a4c23eb410d4be52202bed21c967a3653c3544.
Commit: 29ec0716a872126db0dd2e981c51f9966af34824
https://github.com/llvm/llvm-project/commit/29ec0716a872126db0dd2e981c51f9966af34824
Author: Ralf Jung <post at ralfj.de>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
Log Message:
-----------
Fix comment typo in ExpandFCOPYSIGN (#111489)
I noticed this while following
https://github.com/llvm/llvm-project/pull/111269. It makes little sense
that FCOPYSIGN would look at the sign of `x`, right? Surely this must be
`y`. Also fix the inconsistency where it's sometimes `x` and sometimes
`X`.
Commit: 7c1087613bb9f4ceebb991e5a4b2ef4d5adb4dfa
https://github.com/llvm/llvm-project/commit/7c1087613bb9f4ceebb991e5a4b2ef4d5adb4dfa
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M lldb/test/API/functionalities/archives/TestBSDArchives.py
Log Message:
-----------
[lldb][test] Fix unexpected pass of TestBSDArchives on Windows
Originally failing due to https://github.com/llvm/llvm-project/issues/24901,
but since https://github.com/llvm/llvm-project/pull/110837 the
test is passing.
https://lab.llvm.org/buildbot/#/builders/141/builds/3012
My guess is that the `llvm-` tool has better support for static
libraries on Windows.
Commit: ec009994a06338995dfb6431c943b299f9327fd2
https://github.com/llvm/llvm-project/commit/ec009994a06338995dfb6431c943b299f9327fd2
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M lldb/test/API/functionalities/archives/TestBSDArchives.py
M lldb/test/API/macosx/duplicate-archive-members/TestDuplicateMembers.py
Log Message:
-----------
[lldb][test] Remove xfails from static lib tests on Windows
Originally failing due to https://github.com/llvm/llvm-project/issues/24901,
but since https://github.com/llvm/llvm-project/pull/110837 the
test is passing.
Already removed one xfail but didn't realise we had more for
the same bug.
Commit: 6b4c4d78f03b83a371e239844d2f86dafeed6b53
https://github.com/llvm/llvm-project/commit/6b4c4d78f03b83a371e239844d2f86dafeed6b53
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/docs/CMake.rst
M llvm/docs/GettingStarted.rst
Log Message:
-----------
[llvm][docs] Improve the formatting of the Common Problems section (#108522)
...and add shared libs as a suggestion.
* Mark options, option values and program names as plain text.
* Add a blank line between the option and the explanatory text
so that it doesn't get printed on the same line.
(this seems to be the original intent of the rst source anyway)
* Update the phrasing of a couple of the options.
* Add BUILD_SHARED_LIBS to suggestions.
Commit: f22e6d59190b03434b2a604399670d1b750d63c2
https://github.com/llvm/llvm-project/commit/f22e6d59190b03434b2a604399670d1b750d63c2
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/lib/Sema/SemaARM.cpp
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_ldr_str_zt.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_zero_zt.c
M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_add_sub_za16.c
M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_b16b16.cpp
M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_fmlas16.c
M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_mopa_nonwide.c
M clang/test/Sema/aarch64-streaming-sme-or-nonstreaming-sve-builtins.c
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2.cpp
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_aes_bitperm_sha3_sm4.cpp
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_bfloat.cpp
M clang/test/Sema/aarch64-sve2p1-intrinsics/acle_sve2p1_b16b16.cpp
M clang/utils/TableGen/SveEmitter.cpp
Log Message:
-----------
[Clang][AArch64] Fix checkArmStreamingBuiltin for 'sve-b16b16' (#109420)
The implementation made the assumption that any feature starting with
"sve" meant that this was an SVE feature. This is not the case for
"sve-b16b16", as this is a feature that applies to both SVE and SME.
This meant that:
```
__attribute__((target("+sme2,+sve2,+sve-b16b16")))
svbfloat16_t foo(svbfloat16_t a, svbfloat16_t b, svbfloat16_t c)
__arm_streaming {
return svclamp_bf16(a, b, c);
}
```
would result in an incorrect diagnostic saying that `svclamp_bf16` could
only be used in non-streaming functions.
Commit: fbf9bead3167d61e2e0fe581e968e86f45a04097
https://github.com/llvm/llvm-project/commit/fbf9bead3167d61e2e0fe581e968e86f45a04097
Author: Sirraide <aeternalmail at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
[Clang] [NFC] Remove trailing whitespace in release notes (#111506)
Commit: 327124ece7d59de56ca0f9faa2cd82af68c011b9
https://github.com/llvm/llvm-project/commit/327124ece7d59de56ca0f9faa2cd82af68c011b9
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/EarlyIfConversion.cpp
Log Message:
-----------
[NFC][EarlyIfConverter] Rename SSAIfConv::runOnMachineFunction to SSAIfConv::init (#111500)
Commit: 366e469db9ef15373c8671712a083d1a1c4a55ad
https://github.com/llvm/llvm-project/commit/366e469db9ef15373c8671712a083d1a1c4a55ad
Author: Luke Lau <luke at igalia.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-cost.ll
Log Message:
-----------
[RISCV] Add cost tests for more interleave factors. NFC
This shows how we're not properly scaling the cost with the number of
factors, i.e. a factor 8 interleave costs the same as a factor 2
interleave at VF=2.
Commit: 39cdfdfad961e146131966757d563bfd667246d6
https://github.com/llvm/llvm-project/commit/39cdfdfad961e146131966757d563bfd667246d6
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M lldb/test/API/lang/c/shared_lib_stripped_symbols/TestSharedLibStrippedSymbols.py
Log Message:
-----------
[lldb][test] Fix typo in TestSharedLibStrippedSymbols
Commit: 6636f32615000429f6391b68392e826c1de1ed64
https://github.com/llvm/llvm-project/commit/6636f32615000429f6391b68392e826c1de1ed64
Author: Christudasan Devadasan <christudasan.devadasan at amd.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/image-waterfall-loop-O0.ll
M llvm/test/CodeGen/AMDGPU/bb-prolog-spill-during-regalloc.ll
M llvm/test/CodeGen/AMDGPU/collapse-endcf.ll
M llvm/test/CodeGen/AMDGPU/control-flow-fastregalloc.ll
M llvm/test/CodeGen/AMDGPU/div_i128.ll
M llvm/test/CodeGen/AMDGPU/indirect-addressing-si.ll
M llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands-non-ptr-intrinsics.ll
M llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands.ll
M llvm/test/CodeGen/AMDGPU/rem_i128.ll
M llvm/test/CodeGen/AMDGPU/trap-abis.ll
M llvm/test/CodeGen/AMDGPU/vgpr-spill-placement-issue61083.ll
M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll
Log Message:
-----------
[AMDGPU] Include WWM register spill into BB Prolog (#111496)
With #93526 we split the regalloc pipeline further
to have a standalone allocation for wwm registers
and per-lane VGPRs. Currently the presence of the
wwm-spill reloads inserted at the bb-top limits the
isBasicPrologue function during the per-lane vgpr
regalloc to skip past the exec manipulation instruction
and ended up causing incorrect codegen. The wmm-spill
inserted during the wwm-regalloc pipeline should also
be included in the bb-prolog so that the per-lane vgpr
regalloc pipeline can identify the appropriate insertion
points for their spills and copies.
Commit: 782a2d40005a2820f05c9801aff816c01789c7be
https://github.com/llvm/llvm-project/commit/782a2d40005a2820f05c9801aff816c01789c7be
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaDecl.cpp
A clang/test/Sema/caret-diags-register-variable.cpp
Log Message:
-----------
[clang][Sema] Bad register variable type error should point to the type (#110239)
...not the register keyword. Fixes #109776.
Until now the error was only tested in clang/test/Sema/asm.c, where you
can't check for the "^" character. I've added a new caret test file as I
see has been done for other error types.
Commit: c62e61acb428bb46ad834f8288b0c6f8c2ea8d31
https://github.com/llvm/llvm-project/commit/c62e61acb428bb46ad834f8288b0c6f8c2ea8d31
Author: Xing Xue <xingxue at outlook.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M openmp/runtime/src/CMakeLists.txt
Log Message:
-----------
[libomp][AIX] Use SO version "1" for AIX libomp (#111384)
For `libomp` on AIX, we build shared object `libomp.so` first and then
archive it into libomp.a. This patch changes to use SO version `1` and
name the shared object `libomp.so.1` so that it is consistent with the
naming of other shared objects in AIX libraries, e.g., `libc++.so.1` in
`libc++.a`. With this change, the change made in commit
bde51d9b0d473447ea12fb14924f14ea167eec85 to ensure only `libomp.a` is
published on AIX is no longer necessary and is removed.
Commit: 9fd15adf1d26d98ce082f252471b5c1f55ed2de1
https://github.com/llvm/llvm-project/commit/9fd15adf1d26d98ce082f252471b5c1f55ed2de1
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64RegisterInfo.td
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/test/CodeGen/AArch64/sme-avoid-coalescing-locally-streaming.ll
Log Message:
-----------
[AArch64] NFC: rename subreg zsub to qsub (#111154)
I believe this is more correct, because 'dsub' represents the lower 64
bits in a 128 bit register. Similarly, I would expect 'qsub' to
represent the lower 128 bits in a 128+ bit register.
Commit: e3e55173ed891da334990103c12206a4e4e8fc98
https://github.com/llvm/llvm-project/commit/e3e55173ed891da334990103c12206a4e4e8fc98
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/lib/Headers/pmmintrin.h
M clang/test/CodeGen/X86/sse3-builtins.c
Log Message:
-----------
[clang][x86] Enable _mm_movehdup_ps, _mm_moveldup_ps and _mm_movedup_pd in constant expressions
These just wrap generic shuffles
Commit: a649e8ff891e54a279768a8e877b76c8f000a5a7
https://github.com/llvm/llvm-project/commit/a649e8ff891e54a279768a8e877b76c8f000a5a7
Author: Alex Bradbury <asb at igalia.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/utils/lit/lit/TestingConfig.py
Log Message:
-----------
[lit] Allow passthrough of some QEMU_* environment variables to lit (#111373)
This is an alternate implementation of a patch proposed by @preames in
<https://reviews.llvm.org/D128840>. As noted there, when running
non-native binaries with binfmt_misc and qemu-user you typically need to
set some environment variables (at least, QEMU_LD_PREFIX), but lit
strips them by default. This patch adds what I think are the two main
ones to the list of those that aren't stripped. It does so in a place
that applies to all lit test suites (rather than just LLVM's), and as
can be seen from the other env vars in `pass_vars` I think there's
already plenty of precedent for passing through environment variables
known to be potentially useful to LLVM developers.
Commit: bfe066676b8ebe8b2db502c24acadd2bc830b738
https://github.com/llvm/llvm-project/commit/bfe066676b8ebe8b2db502c24acadd2bc830b738
Author: Paul Walker <paul.walker at arm.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/AArch64Subtarget.h
M llvm/lib/Target/AArch64/SVEInstrFormats.td
A llvm/test/CodeGen/AArch64/sve2-bf16-converts.ll
Log Message:
-----------
[LLVM][CodeGen][SVE2] Implement nxvf64 fpround to nxvbf16. (#111012)
NOTE: SVE2 only because that is when FCVTX is available, which is
required to perform the necessary two-step rounding.
Commit: 871f69f0b657a4c60d5ad26b5dc4cc2b1f0e5f3b
https://github.com/llvm/llvm-project/commit/871f69f0b657a4c60d5ad26b5dc4cc2b1f0e5f3b
Author: ivanaivanovska <iivanovska at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/include/llvm/Support/TimeProfiler.h
M llvm/lib/Support/TimeProfiler.cpp
M llvm/unittests/Support/TimeProfilerTest.cpp
Log Message:
-----------
[TimeProfiler] Added instant events to llvm TimeProfiler. (#103039)
This adds support for adding instant events to the TimeProfiler. Later we plan to use it to record deferring of template instantiations.
Commit: 3ec6f805c5184b3933cba94e241b44da362437d7
https://github.com/llvm/llvm-project/commit/3ec6f805c5184b3933cba94e241b44da362437d7
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/interleave-allocsize-not-equal-typesize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleaved-store-of-first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-strict-fadd.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-gather-scatter-tailpred.ll
M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-interleave.ll
M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
M llvm/test/Transforms/LoopVectorize/X86/interleave-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/interleave-opaque-pointers.ll
M llvm/test/Transforms/LoopVectorize/X86/interleaved-accesses-hoist-load-across-store.ll
M llvm/test/Transforms/LoopVectorize/X86/interleaved-accesses-sink-store-across-load.ll
M llvm/test/Transforms/LoopVectorize/X86/limit-vf-by-tripcount.ll
M llvm/test/Transforms/LoopVectorize/X86/masked-store-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/pr47437.ll
M llvm/test/Transforms/LoopVectorize/X86/pr56319-vector-exit-cond-optimization-epilogue-vectorization.ll
M llvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll
M llvm/test/Transforms/LoopVectorize/X86/vectorize-interleaved-accesses-gap.ll
M llvm/test/Transforms/LoopVectorize/X86/vplan-native-inner-loop-only.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses-different-insert-position.ll
Log Message:
-----------
[VPlan] Don't created GEP x, 0 for interleave group pointers.
The GEP with offet 0 is redundant, remove it. This addresses a TODO
from 7f74651837b ((#106431).
Commit: 326b381ac030c9ac0764b9db712b33a447d04f98
https://github.com/llvm/llvm-project/commit/326b381ac030c9ac0764b9db712b33a447d04f98
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/Maintainers.md
Log Message:
-----------
[LLVM][Maintainers] Update lead maintainer for LLVM (#111180)
Set myself as the current lead maintainer for LLVM, and Chris Lattner as
the emeritus lead maintainer.
This implements
https://discourse.llvm.org/t/rfc-proposing-a-new-lead-maintainer-for-llvm/81290.
Commit: 1312369afbeb2083094b3d34a88c346b22e86971
https://github.com/llvm/llvm-project/commit/1312369afbeb2083094b3d34a88c346b22e86971
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/lib/Headers/avx512fintrin.h
M clang/lib/Headers/avxintrin.h
M clang/lib/Headers/emmintrin.h
M clang/test/CodeGen/X86/avx-builtins.c
M clang/test/CodeGen/X86/avx512f-builtins.c
M clang/test/CodeGen/X86/sse2-builtins.c
Log Message:
-----------
[clang][x86] Enable SSE2/AVX/AVX512 setzero intrinsics in constant expressions
Basic setup for future constant expression tests
Commit: 235067b222e4734839b963e152b6554e20413d11
https://github.com/llvm/llvm-project/commit/235067b222e4734839b963e152b6554e20413d11
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[clang][bytecode] Make sure ia32_bzhi input is an integer (#111505)
Commit: f01364ebc88d875fbfc0e00413538465aaa8a2b3
https://github.com/llvm/llvm-project/commit/f01364ebc88d875fbfc0e00413538465aaa8a2b3
Author: Sirraide <aeternalmail at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/DeclCXX.cpp
A clang/test/Modules/gh110401.cppm
Log Message:
-----------
[Clang] Instantiate the correct lambda call operator (#110446)
This is a fix for the following issue: when a lambda’s class type is
merged across modules (e.g. because it is defined in a template in the
GMF of some module `A`, and some other module `B` both imports `A` and
has the same template in its GMF), then `getLambdaCallOperator()` might
return the wrong operator (e.g. while compiling `B`, the lambda’s class
type would be the one attached to `B`’s GMF, but the call operator ends
up being the one attached to `A`’s GMF).
This causes issues in situations where the call operator is in a
template and accesses declarations in the surrounding context: when
those declarations are instantated, a mapping is introduced from the
original node in the template to that of the instantiation. If such an
instantiation happens in `B`, and we then try to instantiate `A`’s call
operator, any nodes in that call operator refer to declarations in the
template in `A`, but the `LocalInstantiationScope` only contains
mappings for declarations in `B`! This causes the following assertion
(for godbolt links and more, see the issue below):
```
Assertion `isa<LabelDecl>(D) && "declaration not instantiated in this scope"' failed.
```
We now walk the redecl chain of the call operator to find the
one that is in the same module as the record decl.
This fixes #110401.
Commit: db1a76206902e6926464e30cc47249e217405dab
https://github.com/llvm/llvm-project/commit/db1a76206902e6926464e30cc47249e217405dab
Author: Sam Elliott <quic_aelliott at quicinc.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M lld/ELF/InputSection.cpp
A lld/test/ELF/riscv-pcrel-hilo-error-sections.s
M lld/test/ELF/riscv-pcrel-hilo-error.s
Log Message:
-----------
[LLD][RISCV] Error on PCREL_LO referencing other Section (#107558)
The RISC-V psABI states that "The `R_RISCV_PCREL_LO12_I` or
`R_RISCV_PCREL_LO12_S` relocations contain a label pointing to an
instruction in the same section with an `R_RISCV_PCREL_HI20` relocation
entry that points to the target symbol."
Without this patch, GNU ld errors, but LLD does not -- I think because LLD is
doing the right thing, certainly in the testcase provided.
Nonetheless, I think an error is good here to bring LLD in line with
what GNU ld is doing in showing that the object the user provided is not
following the psABI as written.
Fixes #107304
Commit: e06e4932521b0ba578d34495186cde522de8eaec
https://github.com/llvm/llvm-project/commit/e06e4932521b0ba578d34495186cde522de8eaec
Author: Ying Yi <ying.yi at sony.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table.td
Log Message:
-----------
Make a tablegen test match-table.td more robust.
Some organizations have added operators downstream, and the test match-table.td tends to fail with off-by-n errors (with n being the number of `added operators`) periodically. This patch will increase the test robust and reduce the impact of merge process.
Commit: 87cdc8328d6c79da6dcce85eb318296bc5b42e82
https://github.com/llvm/llvm-project/commit/87cdc8328d6c79da6dcce85eb318296bc5b42e82
Author: Paul Walker <paul.walker at arm.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/IR/ConstantFold.cpp
M llvm/test/Transforms/InstSimplify/bitcast-vector-fold.ll
Log Message:
-----------
[LLVM][ConstFolds] Verify a scalar src before attempting scalar->vector bitcast transformation. (#111149)
It was previously safe to assume isa<Constant{Int,FP}> meant a scalar
value. This is not true when use-constant-##-for-###-splat are enabled.
Commit: 2d666dede0e192c919b39a20e077cf80100c4759
https://github.com/llvm/llvm-project/commit/2d666dede0e192c919b39a20e077cf80100c4759
Author: Hans Wennborg <hans at chromium.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64RegisterInfo.td
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/test/CodeGen/AArch64/sme-avoid-coalescing-locally-streaming.ll
Log Message:
-----------
Revert "[AArch64] NFC: rename subreg zsub to qsub (#111154)"
This caused asserts to fire:
(Subtarget.isSVEorStreamingSVEAvailable() && "Unexpected register store without SVE store instructions"),
function storeRegToStackSlot, file AArch64InstrInfo.cpp, line 5346.
See comment on the PR for reproducer.
This reverts commit 9fd15adf1d26d98ce082f252471b5c1f55ed2de1.
Commit: f93f925d4f3b9505eecf02097713003d3cf4b6fa
https://github.com/llvm/llvm-project/commit/f93f925d4f3b9505eecf02097713003d3cf4b6fa
Author: Sam Elliott <quic_aelliott at quicinc.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/docs/RISCVUsage.rst
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/RISCVInstrFormats.td
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/test/MC/RISCV/insn-invalid.s
M llvm/test/MC/RISCV/insn.s
M llvm/test/MC/RISCV/insn_c-invalid.s
Log Message:
-----------
[RISCV][MC] Support Assembling 48- and 64-bit Instructions (#110022)
This adds `.insn` support for assembling instructions of 48- and
64-bits (only when giving an explicit length). Disassembly already
knows to bunch up the instruction bits for these instructions.
This changes some error messages so they are a little clearer.
Co-authored-by: Sudharsan Veeravalli <quic_svs at quicinc.com>
Commit: c0a2915321870672b1870c1ee1d192c07dddcd04
https://github.com/llvm/llvm-project/commit/c0a2915321870672b1870c1ee1d192c07dddcd04
Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/test/SemaCXX/pragma-pack-packed-2.cpp
Log Message:
-----------
[SystemZ][z/OS] don't write to source
test invoked clang that has tried to write in source directory that
might be readonly #111053
for 4c26a1e4d7e490a38dcd2a24e4c8939075fd4a5a
Commit: 6e5d6129fa36a7c1a2931d1c51208d1d254f3efb
https://github.com/llvm/llvm-project/commit/6e5d6129fa36a7c1a2931d1c51208d1d254f3efb
Author: Tyler Nowicki <tyler.nowicki at amd.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Coroutines/ABI.h
M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
M llvm/lib/Transforms/Coroutines/CoroShape.h
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
Log Message:
-----------
[Coroutines] Move OptimizeFrame out of Shape (#111017)
* OptimizeFrame is not really a part of the Coroutine Shape info, rather
it is specifically for the addFieldForAllocas method called indirectly
by buildCoroutineFrame.
* This patch passes OptimizeFrame directly to buildCoroutineFrame so it
can be provided to addFieldForAllocas instead of keeping it in the
Shape.
Co-authored-by: tnowicki <tnowicki.nowicki at amd.com>
Commit: 388c693a619cd84cff838e5cada17d70bed222cc
https://github.com/llvm/llvm-project/commit/388c693a619cd84cff838e5cada17d70bed222cc
Author: Zibi Sarbinowski <zibi at ca.ibm.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/test/tools/llvm-profdata/sample-split-layout.test
Log Message:
-----------
[SystemZ][z/OS] fix sample-split-layout.test on z/OS (#109679)
The Lit in subject fails on z/OS since the input file
`Inputs/split-layout.profdata` is marked as ASCII even though it is
binary and the output file `Output/sample-split-layout.test.tmp-output`
is binary.
This PR removes the diff command which fails because it compares a
binary file and a text file. The rational is that this diff command
seems to be redundant to the `FileCheck` on the next command.
Commit: a7968f6b636763a362939b2d2fb9717fdfbe5f7e
https://github.com/llvm/llvm-project/commit/a7968f6b636763a362939b2d2fb9717fdfbe5f7e
Author: Nico Weber <thakis at chromium.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/lldb/test/BUILD.gn
Log Message:
-----------
[gn] port 32e90bbe579d39356eb (lldb remote tests)
Possibly not enough to run tests, but enough to fix build.
Commit: 48ac846fbc7568b220d8fe3f796c4f26e117ab26
https://github.com/llvm/llvm-project/commit/48ac846fbc7568b220d8fe3f796c4f26e117ab26
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-ext-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f16.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/fmamix-constant-bus-violation.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/fmamix-constant-bus-violation.mir
A llvm/test/CodeGen/AMDGPU/GlobalISel/madmix-constant-bus-violation.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/madmix-constant-bus-violation.mir
Log Message:
-----------
[AMDGPU][GlobalISel] Align `selectVOP3PMadMixModsImpl` with the `SelectionDAG` counterpart (#110168)
The current `selectVOP3PMadMixModsImpl` can produce `V_MAD_FIX_F32`
instruction
that violates constant bus restriction, while its `SelectionDAG`
counterpart
doesn't. The culprit is in the copy stripping while the `SelectionDAG`
version
only has a bitcast stripping. This PR simply aligns the two version.
Commit: 88a239d292da80f260788c0817a07cbc0a8ac758
https://github.com/llvm/llvm-project/commit/88a239d292da80f260788c0817a07cbc0a8ac758
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/frem.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fdiv.mir
M llvm/test/CodeGen/AMDGPU/fdiv.f16.ll
M llvm/test/CodeGen/AMDGPU/fold-int-pow2-with-fmul-or-fdiv.ll
M llvm/test/CodeGen/AMDGPU/frem.ll
Log Message:
-----------
[AMDGPU] Adopt new lowering sequence for `fdiv16` (#109295)
The current lowering of `fdiv16` can generate incorrectly rounded result
in some cases. The new sequence was provided by the HW team, as shown
below written in C++.
```
half fdiv(half a, half b) {
float a32 = float(a);
float b32 = float(b);
float r32 = 1.0f / b32;
float q32 = a32 * r32;
float e32 = -b32 * q32 + a32;
q32 = e32 * r32 + q32;
e32 = -b32 * q32 + a32;
float tmp = e32 * r32;
uin32_t tmp32 = std::bit_cast<uint32_t>(tmp);
tmp32 = tmp32 & 0xff800000;
tmp = std::bit_cast<float>(tmp32);
q32 = tmp + q32;
half q16 = half(q32);
q16 = div_fixup_f16(q16);
return q16;
}
```
Fixes SWDEV-477608.
Commit: 97a784ecacef82ea72f2e86892521e5e6aabf55d
https://github.com/llvm/llvm-project/commit/97a784ecacef82ea72f2e86892521e5e6aabf55d
Author: Mészáros Gergely <gergely.meszaros at intel.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/cmake/modules/HandleLLVMOptions.cmake
Log Message:
-----------
[llvm][cmake][Trivial] use /Zc:preprocessor with MSVC only explicitly (#111520)
Only MSVC recognizes this flag, so be explicit. As an example the Intel
C++ Compiler (IntelLLVM in CMake) also has an MSVC compatible CLI, but
does not suppport this flag.
Commit: db98be3c714d8a18c2d020252f790a7f0fb5d754
https://github.com/llvm/llvm-project/commit/db98be3c714d8a18c2d020252f790a7f0fb5d754
Author: David Green <david.green at arm.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
Log Message:
-----------
[InstCombine] Minor cleanup for optimizeFMod. NFC
Commit: 148a8fef10031a5df5dac5de9bde9ddc4735ab9c
https://github.com/llvm/llvm-project/commit/148a8fef10031a5df5dac5de9bde9ddc4735ab9c
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/test/Transforms/GVN/edge.ll
Log Message:
-----------
GVN/test: regen a test with UTC (NFC) (#111365)
Commit: 4da8ac34f76e707ab94380b94f616457cfd2cb83
https://github.com/llvm/llvm-project/commit/4da8ac34f76e707ab94380b94f616457cfd2cb83
Author: Krystian Stasiowski <sdkrystian at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/DeclTemplate.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/DeclTemplate.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
A clang/test/CXX/temp/temp.constr/temp.constr.decl/p4.cpp
A clang/test/CXX/temp/temp.spec/temp.expl.spec/p7.cpp
M clang/test/Modules/cxx-templates.cpp
Log Message:
-----------
Reapply "[Clang][Sema] Refactor collection of multi-level template argument lists (#106585)" (#111173)
Reapplies #106585, fixing an issue where non-dependent names of member
templates appearing prior to that member template being explicitly
specialized for an implicitly instantiated class template specialization
would incorrectly use the definition of the explicitly specialized
member template.
Commit: 416d1bd24e974932cbe93a5310d2ceaacdddd273
https://github.com/llvm/llvm-project/commit/416d1bd24e974932cbe93a5310d2ceaacdddd273
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/include/clang/Basic/PlistSupport.h
Log Message:
-----------
[Basic] Avoid repeated hash lookups (NFC) (#111467)
Commit: dec641e473cf416d54766ced34a36be71ecd0037
https://github.com/llvm/llvm-project/commit/dec641e473cf416d54766ced34a36be71ecd0037
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/lib/Driver/MultilibBuilder.cpp
Log Message:
-----------
[Driver] Avoid repeated hash lookups (NFC) (#111468)
Commit: a8289a35d06b9f7cb3d9b18dba6be0f1f0a8a898
https://github.com/llvm/llvm-project/commit/a8289a35d06b9f7cb3d9b18dba6be0f1f0a8a898
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/lib/Tooling/Inclusions/HeaderIncludes.cpp
Log Message:
-----------
[Tooling] Avoid repeated hash lookups (NFC) (#111469)
Commit: 98c9c1a4d2d4fc41b34f73e4630de435c9c0c396
https://github.com/llvm/llvm-project/commit/98c9c1a4d2d4fc41b34f73e4630de435c9c0c396
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py
Log Message:
-----------
[lldb][test] Disable new lldb-dap test on non-x86
Guessing that this is missing because it's failing on Arm 32 bit
and every other test has this requirement.
Commit: 1e5f32e81f96af45551dafb369279c6d55ac9b97
https://github.com/llvm/llvm-project/commit/1e5f32e81f96af45551dafb369279c6d55ac9b97
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M mlir/lib/Transforms/Utils/RegionUtils.cpp
Log Message:
-----------
[Transforms] Avoid repeated hash lookups (NFC) (#111470)
Commit: d48920dc9d69abbfbef28ce6f70c4680c21795b2
https://github.com/llvm/llvm-project/commit/d48920dc9d69abbfbef28ce6f70c4680c21795b2
Author: Nico Weber <thakis at chromium.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/BUILD.gn
Log Message:
-----------
[gn build] Port 93bfa7886b1a
Commit: 7fa0d05a04056aac4365c69c4b515f613a43e454
https://github.com/llvm/llvm-project/commit/7fa0d05a04056aac4365c69c4b515f613a43e454
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/AsmParser/LLParser.cpp
Log Message:
-----------
[AsmParser] Simplify code with std::map::operator[] (NFC) (#111480)
Commit: 64f7e1b697d834f620b069f2c3dc701ed8ff732a
https://github.com/llvm/llvm-project/commit/64f7e1b697d834f620b069f2c3dc701ed8ff732a
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M libclc/README.TXT
Log Message:
-----------
[libclc] Update build instructions in readme (#111369)
The configure Python script was removed by
d6e0e6d255a7d54a3873b7a5d048eee00ef6bb6d /
https://reviews.llvm.org/D69966.
The readme was never updated with the cmake way to do it. I couldn't
find any dedicated buildbots for this so I'm making an educated guess.
This is what built locally for me.
Commit: e542202c2763c53c35d1bbe7a3853d683add1303
https://github.com/llvm/llvm-project/commit/e542202c2763c53c35d1bbe7a3853d683add1303
Author: Brandon Wu <brandon.wu at sifive.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/calling-conv.ll
Log Message:
-----------
[RISCV] Update vector calling convention test for tuple type. NFC (#111336)
Commit: 4e6a6eda30091dd2186949506a5df515b8d88b6a
https://github.com/llvm/llvm-project/commit/4e6a6eda30091dd2186949506a5df515b8d88b6a
Author: Lei Huang <lei at ca.ibm.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp
Log Message:
-----------
[PowerPC] Update matchRegisterName() to return MCRegister instead of bool (#111186)
Initial patch to start using TableGen's auto generated function
`MatchRegisterName()`.
Update `PPCAsmParser::matchRegisterName()` implementation to align more
with tablegen's auto generated function.
Commit: 8ab77184dde2583950fc6e4886ff526e7e598f7e
https://github.com/llvm/llvm-project/commit/8ab77184dde2583950fc6e4886ff526e7e598f7e
Author: Brandon Wu <brandon.wu at sifive.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/include/clang/Basic/riscv_vector.td
A clang/test/CodeGen/RISCV/rvv-intrinsics-handcrafted/rvv-tuple-utils.c
Log Message:
-----------
[clang][RISCV] Make the index of riscv_tuple_extract and riscv_tuple_insert be truncated rather than zero extended (#111466)
It's illegal if the index is 64 bits and is zero-extend to 32 bits.
Commit: 45826513ef6e94b718110ed5a4ead6dcc69127b6
https://github.com/llvm/llvm-project/commit/45826513ef6e94b718110ed5a4ead6dcc69127b6
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC]Fix clang-tidy suggestions, cleanup, NFC.
Commit: 74f3cc0f96ef89912e34f6e903b56a3c468d1a44
https://github.com/llvm/llvm-project/commit/74f3cc0f96ef89912e34f6e903b56a3c468d1a44
Author: Kelvin Li <kkwli at users.noreply.github.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/test/Lower/Intrinsics/log.f90
Log Message:
-----------
[flang] Call __clog instead of clog on AIX (#111442)
Commit: adc6a9e8189cc0a8a02a2fcea3f820ea2b402251
https://github.com/llvm/llvm-project/commit/adc6a9e8189cc0a8a02a2fcea3f820ea2b402251
Author: Rose <gfunni234 at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
M llvm/test/CodeGen/X86/memcpy-struct-by-value.ll
M llvm/test/CodeGen/X86/memcpy.ll
M llvm/test/CodeGen/X86/memset-minsize.ll
M llvm/test/CodeGen/X86/memset-vs-memset-inline.ll
M llvm/test/CodeGen/X86/memset.ll
Log Message:
-----------
Reapply "[X86] For minsize memset/memcpy, use byte or double-word accesses (#87003)" (#111393)
Restore old Val if bytes are left over to prevent an assertion failure.
Commit: d079743fe67e05697fe55409115a3614e6fe5c45
https://github.com/llvm/llvm-project/commit/d079743fe67e05697fe55409115a3614e6fe5c45
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/lib/CodeGen/CGExpr.cpp
Log Message:
-----------
[clang] Fix comment typos in CodeGen::EmitLoadOfGlobalRegLValue
Commit: 10054ba4acbc5378d2e2aa869a5bccd88aa4b59e
https://github.com/llvm/llvm-project/commit/10054ba4acbc5378d2e2aa869a5bccd88aa4b59e
Author: Benoit Jacob <jacob.benoit.1 at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
M mlir/lib/Dialect/Vector/Transforms/VectorInsertExtractStridedSliceRewritePatterns.cpp
A mlir/test/Dialect/Vector/vector-contiguous-extract-strided-slice-to-extract.mlir
M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp
Log Message:
-----------
[mlir][vector] Add pattern to rewrite contiguous ExtractStridedSlice into Extract (#111541)
Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>
Commit: 70e0a7e7e6a8541bcc46908c592eed561850e416
https://github.com/llvm/llvm-project/commit/70e0a7e7e6a8541bcc46908c592eed561850e416
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
R libclc/README.TXT
A libclc/README.md
Log Message:
-----------
[libclc] Convert README to Markdown (#111549)
A bit nicer to read on GitHub and with clickable links.
No content changes purely formatting.
Commit: baa51ffd9c417c9ec272c601673c484bc4335319
https://github.com/llvm/llvm-project/commit/baa51ffd9c417c9ec272c601673c484bc4335319
Author: bigb4ng <130478744+bigb4ng at users.noreply.github.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/docs/AddressSanitizer.rst
M clang/docs/HardwareAssistedAddressSanitizerDesign.rst
M clang/docs/LeakSanitizer.rst
M clang/docs/MemorySanitizer.rst
M clang/docs/ThreadSanitizer.rst
M clang/docs/UndefinedBehaviorSanitizer.rst
M llvm/docs/GwpAsan.rst
Log Message:
-----------
[sanitizer] Document AddressSanitizer security considerations (#100937)
Follow-up to #92593.
Also makes #92611, https://github.com/google/sanitizers/issues/1130
obsolete.
Commit: 5af7ae501a7ce7bd9d284876fef04b84e441abbd
https://github.com/llvm/llvm-project/commit/5af7ae501a7ce7bd9d284876fef04b84e441abbd
Author: Steven Perron <stevenperron at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/docs/SPIRVUsage.rst
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
A llvm/test/CodeGen/SPIRV/HlslBufferLoad.ll
Log Message:
-----------
[SPIRV] Implement handle_fromBinding intrinsic. (#111052)
Implement the intrinsic `llvm.spv.handle.fromBinding`, which returns the
handle for a global resource. This involves creating a global variable
that matches the return-type, set, and binding in the call, and
returning the handle to that resource.
This commit implements the scalar version. It does not handle arrays of
resources yet. It also does not handle storage buffers yet. We do not
have the type for the storage buffers designed yet.
Part of #81036
Commit: 1dcb6dc757c107f8139f36ac9b240502206caa93
https://github.com/llvm/llvm-project/commit/1dcb6dc757c107f8139f36ac9b240502206caa93
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAG] foldVSelectToSignBitSplatMask - pull out repeated code and use getShiftAmountConstant helper.
We're assuming shift amount type matches the result type - which is true for vectors, but I'm hoping to generalize this fold in the future.
Commit: d38addf09996498adfff37f300bd9ac21fdd9810
https://github.com/llvm/llvm-project/commit/d38addf09996498adfff37f300bd9ac21fdd9810
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
Fix MSVC signed/unsigned mismatch warning
Commit: 55890968ac2d297803fa538c2eff66988dbb221f
https://github.com/llvm/llvm-project/commit/55890968ac2d297803fa538c2eff66988dbb221f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/test/CodeGen/PowerPC/vec-min-max.ll
Log Message:
-----------
[PowerPC] vec-min-max.ll - regenerate with common check prefixes to reduce duplication. NFC.
Commit: cc5ddae5e29ef2d7dd132469caee5cac54523ce5
https://github.com/llvm/llvm-project/commit/cc5ddae5e29ef2d7dd132469caee5cac54523ce5
Author: Lewis Crawford <lcrawford at nvidia.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/test/CodeGen/NVPTX/i1-int-to-fp.ll
Log Message:
-----------
[NVPTX] Fix ISel patterns for i1 sint_to_fp (#110866)
NVPTX has ZeroOrNegativeOneBooleanContent, therefore we need to use -1
as the constant for i1 sint_to_fp operations in instruction selection.
Commit: 6f2ebc435f1cd8f121d227a52c76b6477cec8c91
https://github.com/llvm/llvm-project/commit/6f2ebc435f1cd8f121d227a52c76b6477cec8c91
Author: AbdAlRahman Gad <89566409+AbdAlRahmanGad at users.noreply.github.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M lldb/include/lldb/Symbol/SymbolContext.h
M lldb/source/API/SBThread.cpp
M lldb/source/Commands/CommandObjectThread.cpp
M lldb/source/Symbol/SymbolContext.cpp
Log Message:
-----------
[lldb] Change SymbolContext::GetAddressRangeFromHereToEndLine to return Expected (NFC) (#110718)
Signed-off-by: AbdAlRahman Gad <abdobngad at gmail.com>
Co-authored-by: Adrian Prantl <adrian.prantl at gmail.com>
Commit: ababa483b2ff31357f8c504b1110e255a56ff762
https://github.com/llvm/llvm-project/commit/ababa483b2ff31357f8c504b1110e255a56ff762
Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M lldb/include/lldb/API/SBDefines.h
Log Message:
-----------
[lldb] Add SBTypeStaticField to SBDefines (#111560)
SBTypeStaticField was missing from SBDefines, this commit adds the class
there.
Commit: f576c1f76d13059b9e60604a37a4b5c12ead7ef9
https://github.com/llvm/llvm-project/commit/f576c1f76d13059b9e60604a37a4b5c12ead7ef9
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast_from_memory.ll
M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll
M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast_from_memory.ll
Log Message:
-----------
[X86] Regenerate test checks with vpternlog comments
Commit: 84088d3a28fdc2d6314c59bfa11026a72b9b0bff
https://github.com/llvm/llvm-project/commit/84088d3a28fdc2d6314c59bfa11026a72b9b0bff
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/CMakeLists.txt
M llvm/cmake/modules/HandleLLVMOptions.cmake
M llvm/docs/CMake.rst
M llvm/include/llvm/Config/config.h.cmake
Log Message:
-----------
[DLCov 1/5] Add CMake option for enhanced debug line coverage tracking (#107278)
This is part of a series of patches that tries to improve DILocation bug
detection in Debugify. This first patch adds the necessary CMake flag to
LLVM and a variable defined by that flag to LLVM's config header, allowing
the next patch to track information without affecting normal builds.
This series of patches adds a "DebugLoc coverage tracking" feature, that
inserts conditionally-compiled tracking information into DebugLocs (and
by extension, to Instructions), which is used by Debugify to provide
more accurate and detailed coverage reports. When enabled, this features
tracks whether and why we have intentionally dropped a DebugLoc,
allowing Debugify to ignore false positives. An optional additional
feature allows also storing a stack trace of the point where a DebugLoc
was unintentionally dropped/not generated, which is used to make fixing
detected errors significantly easier. The goal of these features is to
provide useful tools for developers to fix existing DebugLoc errors and
allow reliable detection of regressions by either manual inspection or
an automated script.
Commit: 7e31eaab575d15384654ed989717e5579e963e72
https://github.com/llvm/llvm-project/commit/7e31eaab575d15384654ed989717e5579e963e72
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/cmake/caches/Android.cmake
Log Message:
-----------
[libc++] Remove unused HAVE_LIBCXXABI variable from Android cache (#111007)
This variable isn't used anymore in libc++'s build and hasn't been for a
few years, so this is likely a remnant of the past.
Commit: 5cb6b15568c1554a2ea89fee849ed0e27b785ee0
https://github.com/llvm/llvm-project/commit/5cb6b15568c1554a2ea89fee849ed0e27b785ee0
Author: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNRegPressure.cpp
M llvm/lib/Target/AMDGPU/GCNRegPressure.h
Log Message:
-----------
[AMDGPU] Constrain use LiveMask by the operand's LaneMask for RP calculation.
For speculative RP queries, recede may calculate inaccurate masks for subreg uses. Previously, the calculation would look at any live lane for the use at the position of the MI in the LIS. This also adds lanes for any subregs which are live at but not used by the instruction. By constraining against the getSubRegIndexLaneMask for the operand's subreg, we are sure to not pick up on these extra lanes.
For current clients of recede, this is not an issue. This is because 1. the current clients do not violate the program order in the LIS, and 2. the change to RP is based on the difference between previous mask and new mask. Since current clients are not exposed to this issue, this patch is sort of NFC.
Co-authored-by: Valery Pykhtin Valery.Pykhtin at amd.com
Change-Id: Iaed80271226b2587297e6fb78fe081afec1a9275
Commit: 01b8dd1dbaa5f764e43f45a137450dfd604ede0e
https://github.com/llvm/llvm-project/commit/01b8dd1dbaa5f764e43f45a137450dfd604ede0e
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
Log Message:
-----------
[RISCV][NFC] Remove the unused RISCV_COALESCE_VSETVLI_NAME (#111536)
This pass was removed in 1cff74130f30aaf47a995c5f6b637a04eaab2617
Commit: c563fe5c71239a8938e1925fce4c19954564faf0
https://github.com/llvm/llvm-project/commit/c563fe5c71239a8938e1925fce4c19954564faf0
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
Log Message:
-----------
[gn build] Manually port 84088d3a
Commit: 3c6041d28c6c185c9d7bc1de6d93148e383b58ed
https://github.com/llvm/llvm-project/commit/3c6041d28c6c185c9d7bc1de6d93148e383b58ed
Author: vporpo <vporpodas at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Interval.h
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/IntervalTest.cpp
Log Message:
-----------
[SandboxVec][Interval] Implement getUnionInterval() and getSingleDiff() (#111455)
Commit: 9e954b2d6ab2d5704169df523c8588a9d15271d9
https://github.com/llvm/llvm-project/commit/9e954b2d6ab2d5704169df523c8588a9d15271d9
Author: Johan Engelen <jbc.engelen at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
[docs] Fix llround typo in LangRef (#111426)
Commit: eaea5f6f952b6059cebfe87ea9800a3a6516f9ed
https://github.com/llvm/llvm-project/commit/eaea5f6f952b6059cebfe87ea9800a3a6516f9ed
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/test/CXX/drs/cwg1xx.cpp
M clang/www/cxx_dr_status.html
Log Message:
-----------
[clang] Add test for CWG110 "Can template functions and classes be declared in the same scope?" (#111446)
[P1787R6](https://wg21.link/p1787r6):
> [CWG110](https://cplusplus.github.io/CWG/issues/110.html) is resolved
by reducing the restriction in [temp.pre] to a note (matching the
behavior of GCC, Clang, and ICC).
Wording: see changes to [temp.pre]/7
I believe the wording for the questions raised in the issue is now the
definition of corresponding declarations that is given in
[[basic.scope.scope]/4](https://eel.is/c++draft/basic.scope#scope-4):
> Two declarations correspond if they (re)introduce the same name, both
declare constructors, or both declare destructors, unless
> — either is a using-declarator, or
> — one declares a type (not a typedef-name) and the other declares a
variable, non-static data member other than of an anonymous union
([class.union.anon]), enumerator, function, or function template, or
> — each declares a function or function template and they do not
declare corresponding overloads.
Then it's used as an input for the definition of potentially conflicting
declarations given in
[[basic.scope.scope]/6](https://eel.is/c++draft/basic.scope#scope-6).
Answering the question in the title: yes, having a function template and
a type with the same name that has the same target scope is well-formed.
A keen eye might spot that the current
[[temp.pre]/7](https://eel.is/c++draft/temp.pre#7) note doesn't reflect
all of the exceptions from the definition of corresponding declarations
in [basic.scope.scope]/4, namely 4.1 and 4.2. I believe the note is
defective, and I opened an editorial PR against the draft to fix that:
https://github.com/cplusplus/draft/pull/7284.
Commit: d17ad77c959933286d9f30a38d050d239a6f4378
https://github.com/llvm/llvm-project/commit/d17ad77c959933286d9f30a38d050d239a6f4378
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
A flang/test/Semantics/named-construct-declaration-conflict.f90
Log Message:
-----------
[flang][Semantics] Testcase for declaration conflict with named-const… (#111556)
…ruct
Commit: 418920b3fbdefec5b56ee2b9db96884d0ada7329
https://github.com/llvm/llvm-project/commit/418920b3fbdefec5b56ee2b9db96884d0ada7329
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
A flang/test/Semantics/OpenMP/name-conflict.f90
Log Message:
-----------
[flang][OpenMP] Diagnose non-variable symbols in OpenMP clauses (#111394)
The original motivation came from this scenario:
```
!$omp parallel do shared(xyz)
xyz: do i = 1, 100
enddo xyz
!$omp end parallel do
```
Implement a general check for validity of items listed in OpenMP
clauses. In most cases they need to be variables, some clauses allow
"extended list items", i.e. variables or procedures.
Commit: 3829fd75c858c97437c0f7411238d57c2687dcb1
https://github.com/llvm/llvm-project/commit/3829fd75c858c97437c0f7411238d57c2687dcb1
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Remove redundant getVPSingleValue for VPSingleDefRecipes (NFC).
Commit: d905b1caf14d51ebdc67a3c114a2265d479f818c
https://github.com/llvm/llvm-project/commit/d905b1caf14d51ebdc67a3c114a2265d479f818c
Author: Benoit Jacob <jacob.benoit.1 at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorInsertExtractStridedSliceRewritePatterns.cpp
M mlir/test/Dialect/Vector/vector-contiguous-extract-strided-slice-to-extract.mlir
Log Message:
-----------
[MLIR] Vector dialect: Address post-merge review comments on #111541 (#111552)
Co-authored-by: Andrzej Warzyński <andrzej.warzynski at gmail.com>
Commit: a199fb1229987d0885a4367e3a439db336069156
https://github.com/llvm/llvm-project/commit/a199fb1229987d0885a4367e3a439db336069156
Author: Mike Crowe <mac at mcrowe.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.h
M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.h
M clang-tools-extra/clang-tidy/utils/FormatStringConverter.cpp
M clang-tools-extra/clang-tidy/utils/FormatStringConverter.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-std-format.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-std-print.rst
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/inttypes.h
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print.cpp
Log Message:
-----------
[clang-tidy] Only expand <inttypes.h> macros in modernize-use-std-format/print (#97911)
Expanding all macros in the printf/absl::StrFormat format string before
conversion could easily break code if those macros are expanded change
their definition between builds. It's important for this check to expand
the <inttypes.h> PRI macros though, so let's ensure that the presence of
any other macros in the format string causes the check to emit a warning
and not perform any conversion.
Commit: 36fc291b6ec6d4c8e3d956d6855631ab2db7b05a
https://github.com/llvm/llvm-project/commit/36fc291b6ec6d4c8e3d956d6855631ab2db7b05a
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
A llvm/test/Transforms/LoopVectorize/AArch64/blend-costs.ll
M llvm/test/Transforms/LoopVectorize/X86/replicate-uniform-call.ll
Log Message:
-----------
[VPlan] Implement VPBlendRecipe::computeCost.
Implement VPBlendRecipe::computeCost. VPBlendRecipe is currently is also
used if only the first lane is used.
This also requires pre-computing costs for forced scalars and
instructions considered profitable to scalarize. For those, the cost
will be computed separately in the legacy cost model. This will also be
needed when implementing VPReplicateRecipe::computeCost.
Commit: a65a5feb1a20581c85ee817dae8826f65fef62af
https://github.com/llvm/llvm-project/commit/a65a5feb1a20581c85ee817dae8826f65fef62af
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/remarks-insert-into-small-vector.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/reversed-strided-node-with-external-ptr.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/scatter-vectorize-reversed.ll
M llvm/test/Transforms/SLPVectorizer/X86/remark_gather-load-redux-cost.ll
Log Message:
-----------
[SLP]Improve masked loads vectorization, attempting gathered loads
If the vector of loads can be vectorized as masked gather and there are
several other masked gather nodes, compiler can try to attempt to check,
if it possible to gather such nodes into big consecutive/strided loads
node, which provide better performance.
Reviewers: RKSimon
Reviewed By: RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/110151
Commit: 9f3c55954eaa71910caa0abbb404db02d3a104c1
https://github.com/llvm/llvm-project/commit/9f3c55954eaa71910caa0abbb404db02d3a104c1
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
Log Message:
-----------
[SLP]Fix loads sorting for loads from diffrent basic blocks
Patch fixes lookup for loads from different basic blocks. Originally,
the code checked is the main key (combined with parent basic block) was
created, but did not include the key into LoadsMap. When the code looked for
the load pointer in LoadsMap, it skipped check for parent basic block
and could mix loads from different basic blocks (but the same underlying
pointer). Currently, it does lead to any issues, since later the code
compares parent basic blocks and sorts loads properly. But it increases
compile time and affects compile time.
Reviewers: RKSimon
Reviewed By: RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/111521
Commit: 75611caff4fab2f73358ae1f4c4f490622cfaa1d
https://github.com/llvm/llvm-project/commit/75611caff4fab2f73358ae1f4c4f490622cfaa1d
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/TokenKinds.def
M clang/lib/Lex/PPMacroExpansion.cpp
M clang/test/Preprocessor/feature_tests.cpp
Log Message:
-----------
[Clang] Improve type traits recognition in `__has_builtin` (#111516)
`__has_builtin` was relying on reversible identifiers and string
matching to recognize builtin-type traits, leading to some newer type
traits not being recognized.
Fixes #111477
Commit: 9b82e85d81756531ca645e83010905e2679245bc
https://github.com/llvm/llvm-project/commit/9b82e85d81756531ca645e83010905e2679245bc
Author: Zequan Wu <zequanwu at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/include/llvm/DebugInfo/DWARF/DWARFDie.h
M llvm/include/llvm/DebugInfo/DWARF/DWARFTypePrinter.h
M llvm/lib/DebugInfo/DWARF/CMakeLists.txt
M llvm/lib/DebugInfo/DWARF/DWARFDie.cpp
R llvm/lib/DebugInfo/DWARF/DWARFTypePrinter.cpp
Log Message:
-----------
[DWARF] Generalize DWARFTypePrinter to a template class (#109459)
This generalizes DWARFTypePrinter class to a template class so that it
can be reused for lldb's DWARFDIE type.
This is a split of https://github.com/llvm/llvm-project/pull/90008. The
difference is that this doesn't have `Visitor` template parameter which
can be added later if necessary.
Commit: 3423a5e3b779db8f2e8018fad477abff67b33404
https://github.com/llvm/llvm-project/commit/3423a5e3b779db8f2e8018fad477abff67b33404
Author: Chris Apple <cja-private at pm.me>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M compiler-rt/lib/rtsan/rtsan.cpp
M compiler-rt/lib/rtsan/rtsan_assertions.h
M compiler-rt/lib/rtsan/tests/rtsan_test_assertions.cpp
Log Message:
-----------
[rtsan][NFC] Refactor where we unwind the stack (#111443)
This change alters where we unwind the stack. We now do it in ExpectNotRealtime, and pass in the DiagnosticInfo and Stack to OnViolation.
Commit: 29d6f8aadba3e72c4dd093a0ae09e1207db4b10e
https://github.com/llvm/llvm-project/commit/29d6f8aadba3e72c4dd093a0ae09e1207db4b10e
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/DebugInfo/DWARF/BUILD.gn
Log Message:
-----------
[gn build] Port 9b82e85d8175
Commit: 6fbbe152fa795dffde72982d928550ff9c520392
https://github.com/llvm/llvm-project/commit/6fbbe152fa795dffde72982d928550ff9c520392
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanValue.h
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-call.ll
M llvm/test/Transforms/LoopVectorize/AArch64/widen-call-with-intrinsic-or-libfunc.ll
M llvm/test/Transforms/LoopVectorize/vplan-dot-printing.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
Log Message:
-----------
[VPlan] Introduce VPWidenIntrinsicRecipe to separate from libcall. (#110486)
This patch splits off intrinsic hanlding to a new
VPWidenIntrinsicRecipe. VPWidenIntrinsicRecipes only need access to the
intrinsic ID to widen and the scalar result type (in case the intrinsic
is overloaded on the result type). It does not need access to an
underlying IR call instruction or function.
This means VPWidenIntrinsicRecipe can be created easily without access
to underlying IR.
Commit: c6d6da4659599507b44c167f335639082f28fae6
https://github.com/llvm/llvm-project/commit/c6d6da4659599507b44c167f335639082f28fae6
Author: Lang Hames <lhames at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h
M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
Log Message:
-----------
[ORC][MachO] Remove the ExecutionSession& argument to MachOPlatform::Create.
We can get a reference to the ExecutionSession from the ObjectLinkingLayer
argument, so there's no need to pass it in separately.
Commit: 56d2c626f75e86923facefb9f0c27c94152afc50
https://github.com/llvm/llvm-project/commit/56d2c626f75e86923facefb9f0c27c94152afc50
Author: Vasileios Porpodas <vporpodas at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Interval.h
M llvm/lib/Transforms/Vectorize/CMakeLists.txt
A llvm/lib/Transforms/Vectorize/SandboxVectorizer/Interval.cpp
Log Message:
-----------
[SandboxVec][Interval] Add print() and dump()
Commit: 0c0ec040ac89608d5f746750a654f645c97434bc
https://github.com/llvm/llvm-project/commit/0c0ec040ac89608d5f746750a654f645c97434bc
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/BUILD.gn
Log Message:
-----------
[gn build] Port 56d2c626f75e
Commit: e5fae7682dac8c3ffa5f062078e6112d021cc63b
https://github.com/llvm/llvm-project/commit/e5fae7682dac8c3ffa5f062078e6112d021cc63b
Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/SeedCollectorTest.cpp
Log Message:
-----------
[SandboxVectorizer] Add MemSeed bundle types (#111584)
Commit: a8eb12cdc9a218e4828863f280d2b9f022dac757
https://github.com/llvm/llvm-project/commit/a8eb12cdc9a218e4828863f280d2b9f022dac757
Author: David CARLIER <devnexen at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
A compiler-rt/test/sanitizer_common/TestCases/Darwin/freadlink.c
Log Message:
-----------
[compiler-rt] Reapply freadlink interception for macOs. (#110917)
Fixed test, needed explicit O_SYMLINK on symbolic link opening.
Commit: 87b491a95c3a8f17bd5c6e578104289954c16456
https://github.com/llvm/llvm-project/commit/87b491a95c3a8f17bd5c6e578104289954c16456
Author: Florian Mayer <fmayer at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
Log Message:
-----------
[NFC] [MTE] get rid of unnecessary cast (#110336)
Commit: 5f36042508c1ba765df503a493beafb20bf9ddd0
https://github.com/llvm/llvm-project/commit/5f36042508c1ba765df503a493beafb20bf9ddd0
Author: Florian Mayer <fmayer at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
Log Message:
-----------
[NFC] [HWASan] [MTE] factor out threadlong increment (#110340)
Commit: 1a193137e3125c3abb107dd4e526163e0851253a
https://github.com/llvm/llvm-project/commit/1a193137e3125c3abb107dd4e526163e0851253a
Author: Samuel Holland <samuel.holland at sifive.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
Log Message:
-----------
[RISC-V][HWASAN] Fix incorrect comments (#103728)
These comments were confusing because they do not match the code.
Commit: 4cab01f07262e0347cf08b061eef9a89957151ce
https://github.com/llvm/llvm-project/commit/4cab01f07262e0347cf08b061eef9a89957151ce
Author: ShatianWang <38512325+ShatianWang at users.noreply.github.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
A bolt/include/bolt/Passes/ContinuityStats.h
M bolt/lib/Passes/CMakeLists.txt
A bolt/lib/Passes/ContinuityStats.cpp
M bolt/lib/Rewrite/BinaryPassManager.cpp
A bolt/test/X86/cfg-discontinuity-reporting.test
Log Message:
-----------
[BOLT] Profile quality stats -- CFG discontinuity (#109683)
In a perfect profile, each positive-execution-count block in the
function’s CFG should be reachable from a positive-execution-count
function entry block through a positive-execution-count path. This new
pass checks how well the BOLT input profile satisfies this “CFG
continuity” property.
More specifically, for each of the hottest 1000 functions, the pass
calculates the function’s fraction of basic block execution counts that
is “unreachable”. It then reports the 95th percentile of the
distribution of the 1000 unreachable fractions in a single BOLT-INFO
line. The smaller the reported value is, the better the BOLT profile
satisfies the CFG continuity property.
The default value of 1000 above can be changed via the hidden BOLT
option `-num-functions-for-continuity-check=[N]`. If more detailed stats
are needed, `-v=1` can be added to the BOLT invocation: the hottest N
functions will be grouped into 5 equally-sized buckets, from the hottest
to the coldest; for each bucket, various summary statistics of the
distribution of the fractions and the raw unreachable execution counts
will be reported.
Commit: a85eb345603b9588ecf0e0c782d2c599580acc58
https://github.com/llvm/llvm-project/commit/a85eb345603b9588ecf0e0c782d2c599580acc58
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/bolt/lib/Passes/BUILD.gn
Log Message:
-----------
[gn build] Port 4cab01f07262
Commit: 0e86e5214c7ba4fbf99b632b080db82716fd9db0
https://github.com/llvm/llvm-project/commit/0e86e5214c7ba4fbf99b632b080db82716fd9db0
Author: Maksim Panchenko <maks at fb.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M bolt/lib/Passes/ADRRelaxationPass.cpp
A bolt/test/AArch64/adr-relaxation.s
Log Message:
-----------
[BOLT][AArch64] Reduce the number of ADR relaxations (#111577)
If ADR instruction references the same function, we can skip relaxation
even if the function is split but ADR is in the main fragment.
Commit: 04a8bffdf7b1d6e30616561de1734373375cfef5
https://github.com/llvm/llvm-project/commit/04a8bffdf7b1d6e30616561de1734373375cfef5
Author: vporpo <vporpodas at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/Utils.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Interval.h
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp
Log Message:
-----------
[SandboxVec][DAG] Build actual dependencies (#111094)
This patch implements actual dependencies checking using BatchAA. This
adds memory dep edges between MemDGNodes.
Commit: aabddc91b475b2cbb64320a35d3bc595d48fddfb
https://github.com/llvm/llvm-project/commit/aabddc91b475b2cbb64320a35d3bc595d48fddfb
Author: DarshanRamakant <darshanbhatsirsi at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Affine/Utils/Utils.cpp
M mlir/test/Dialect/MemRef/normalize-memrefs.mlir
Log Message:
-----------
[MLIR][memref] Fix normalization issue in memref.load (#107771)
This change will fix the normalization issue with
memref.load when the associated affine map is
reducing the dimension.
This PR fixes #82675
Co-authored-by: Kai Sasaki <lewuathe at gmail.com>
Commit: c80f48491b150197d758f0906011b44472fa2dd5
https://github.com/llvm/llvm-project/commit/c80f48491b150197d758f0906011b44472fa2dd5
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M lldb/include/lldb/Utility/Status.h
Log Message:
-----------
[lldb][NFC] Fix a build failure with MSVC (#111231)
This fixes a build error with msvc for code introduced in #106442:
```
...\lldb\source\Expression\DiagnosticManager.cpp(37): error C2668: 'llvm::ErrorInfo<lldb_private::ExpressionError,lldb_private::ExpressionErrorBase>::ErrorInfo': ambiguous call to overloaded function
...\llvm\include\llvm/Support/Error.h(357): note: could be 'llvm::ErrorInfo<lldb_private::ExpressionError,lldb_private::ExpressionErrorBase>::ErrorInfo(std::error_code)', which inherits 'lldb_private::CloneableECError::CloneableECError(std::error_code)' via base class 'lldb_private::ExpressionErrorBase'
...\llvm\include\llvm/Support/Error.h(357): note: or 'llvm::ErrorInfo<lldb_private::ExpressionError,lldb_private::ExpressionErrorBase>::ErrorInfo(std::error_code,std::string)', which inherits 'lldb_private::ExpressionErrorBase::ExpressionErrorBase(std::error_code,std::string)' via base class 'lldb_private::ExpressionErrorBase'
...\lldb\source\Expression\DiagnosticManager.cpp(37): note: while trying to match the argument list '(std::error_code)'
```
Commit: ff6facaa61d9bd58ec375be80fc725b2bb6fbadf
https://github.com/llvm/llvm-project/commit/ff6facaa61d9bd58ec375be80fc725b2bb6fbadf
Author: Enna1 <xumingjie.enna1 at bytedance.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/test/CodeGen/RISCV/riscv-atomics.c
M clang/test/CodeGen/atomics-sema-alignment.c
M libcxx/test/configs/armv7m-picolibc-libc++.cfg.in
Log Message:
-----------
[clang] remove extra space in warn_atomic_op_oversized (NFC) (#110955)
Commit: 181840459d2c8841ab8a564d4fbac6efc65e0fa9
https://github.com/llvm/llvm-project/commit/181840459d2c8841ab8a564d4fbac6efc65e0fa9
Author: William G Hatch <william at hatch.uno>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/LiveDebugValues/LiveDebugValues.cpp
M llvm/lib/CodeGen/LiveDebugValues/VarLocBasedImpl.cpp
M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
M llvm/test/DebugInfo/NVPTX/debug-info.ll
Log Message:
-----------
[LiveDebugValues][NVPTX]VarLocBasedImpl handle vregs, enable for NVPTX (#111456)
This patch handles virtual registers in the VarLocBasedImpl of the
LiveDebugVariables pass, allowing it to be used on architectures that
depend on virtual registers in debugging, like NVPTX. It enables the
pass for NVPTX.
Commit: 64a22b3e69587c83566a83e793764f2a13733f0b
https://github.com/llvm/llvm-project/commit/64a22b3e69587c83566a83e793764f2a13733f0b
Author: William G Hatch <william at hatch.uno>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXRegisterInfo.cpp
Log Message:
-----------
[NVPTX] fix debug register encoding of special %Depot register (#111596)
cuda-gdb doesn't seem to be able to read the `%Depot` register, but
because we always copy it to `%SP` in lowering, simply switching to use
it fixes the problem.
Commit: bb8df02dfbb40c5a6717ad3b7e8e5811acc6d164
https://github.com/llvm/llvm-project/commit/bb8df02dfbb40c5a6717ad3b7e8e5811acc6d164
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
Log Message:
-----------
[RISCV] Use the MCStreamer reference passed to RISCVAsmPrinter::EmitToStreamer. NFCI (#111607)
We passed a MCStreamer to the function but hardcoded *OutStreamer
instead of using it. It's very likely that OutStreamer is the only
streamer used, but lets not assume that without doing the audit.
Commit: 267e852109381fe35cff0a92915a0418b872213f
https://github.com/llvm/llvm-project/commit/267e852109381fe35cff0a92915a0418b872213f
Author: Vasileios Porpodas <vporpodas at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
Log Message:
-----------
[SandboxVec][DAG][NFC] Rename enumerators
Commit: 1e81056b31749f7b60d56260089f75a4813749c0
https://github.com/llvm/llvm-project/commit/1e81056b31749f7b60d56260089f75a4813749c0
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
Log Message:
-----------
[Coroutines] Avoid repeated hash lookups (NFC) (#111617)
Commit: 2d8cd32ae5a69a9f3baaeca18a8318115586b3b8
https://github.com/llvm/llvm-project/commit/2d8cd32ae5a69a9f3baaeca18a8318115586b3b8
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
Log Message:
-----------
[InstCombine] Avoid repeated hash lookups (NFC) (#111618)
Commit: 0ee5c869fc003b09e464e079d6bbaab1baf59aba
https://github.com/llvm/llvm-project/commit/0ee5c869fc003b09e464e079d6bbaab1baf59aba
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M mlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
Log Message:
-----------
[mlir][spirv] Avoid repeated hash lookups (NFC) (#111619)
Commit: a579782a775ebc2bfe6203d7178ee524b3559006
https://github.com/llvm/llvm-project/commit/a579782a775ebc2bfe6203d7178ee524b3559006
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/ADT/APFixedPoint.h
M llvm/lib/Support/APFixedPoint.cpp
M llvm/unittests/ADT/APFixedPointTest.cpp
Log Message:
-----------
[llvm] Add serialization to uint32_t for FixedPointSemantics (#110288)
FixedPointSemantics is exactly 32bits and this static_assert'ed after
its declaration. Add support for converting it to and from a uint32_t.
Commit: 1809d0fa1c15b16ca94381d8be3ef70c4a83c36b
https://github.com/llvm/llvm-project/commit/1809d0fa1c15b16ca94381d8be3ef70c4a83c36b
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Insert a space between l_paren and ref-qualifier (#111465)
Fixes #111346.
Commit: d0b9c2c5647656738cda3fb670aa5d3b3a69d784
https://github.com/llvm/llvm-project/commit/d0b9c2c5647656738cda3fb670aa5d3b3a69d784
Author: David CARLIER <devnexen at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
R compiler-rt/test/sanitizer_common/TestCases/FreeBSD/md5.cpp
R compiler-rt/test/sanitizer_common/TestCases/FreeBSD/sha2.cpp
R compiler-rt/test/sanitizer_common/TestCases/NetBSD/md5.cpp
R compiler-rt/test/sanitizer_common/TestCases/NetBSD/sha2.cpp
Log Message:
-----------
[compiler-rt] Remove SHA2 interceptions for NetBSD/FreeBSD. (#110246)
To Fix #110215
Interceptors introduced with 18a7ebda99044473fdbce6376993714ff54e6690
Commit: d50302f31cee86d3270a34f5739c63a41f60f2c1
https://github.com/llvm/llvm-project/commit/d50302f31cee86d3270a34f5739c63a41f60f2c1
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/CodeGen/Targets/AMDGPU.cpp
R clang/test/CodeGenCUDA/amdgpu-func-attrs.cu
M clang/test/OpenMP/amdgcn-attributes.cpp
Log Message:
-----------
clang/AMDGPU: Stop emitting amdgpu-unsafe-fp-atomics attribute (#111579)
Commit: 4336f00f2156970cc0af2816331387a0a4039317
https://github.com/llvm/llvm-project/commit/4336f00f2156970cc0af2816331387a0a4039317
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/Decl.h
M clang/include/clang/AST/DeclBase.h
M clang/include/clang/AST/DeclTemplate.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/Decl.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
A clang/test/SemaTemplate/GH55509.cpp
Log Message:
-----------
[clang] Track function template instantiation from definition (#110387)
This fixes instantiation of definition for friend function templates,
when the declaration found and the one containing the definition
have different template contexts.
In these cases, the the function declaration corresponding to the
definition is not available; it may not even be instantiated at all.
So this patch adds a bit which tracks which function template
declaration was instantiated from the member template.
It's used to find which primary template serves as a context
for the purpose of obtaining the template arguments needed
to instantiate the definition.
Fixes #55509
Commit: fbd2a918652894b31199dffe1ce5335b019332d7
https://github.com/llvm/llvm-project/commit/fbd2a918652894b31199dffe1ce5335b019332d7
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
A llvm/test/Transforms/InferAddressSpaces/fake-use.ll
Log Message:
-----------
InferAddressSpaces: Handle llvm.fake.use (#109567)
Commit: c198f775cdcd731f68fb482c223702c7273d41ca
https://github.com/llvm/llvm-project/commit/c198f775cdcd731f68fb482c223702c7273d41ca
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/FLATInstructions.td
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/Bitcode/amdgcn-atomic.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/dag-divergence-atomic.ll
R llvm/test/CodeGen/AMDGPU/fp-min-max-flat-atomics-f64.ll
R llvm/test/CodeGen/AMDGPU/fp-min-max-flat-atomics.ll
R llvm/test/CodeGen/AMDGPU/fp-min-max-global-atomics-f64.ll
R llvm/test/CodeGen/AMDGPU/fp-min-max-global-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
R llvm/test/Transforms/InferAddressSpaces/AMDGPU/flat-fadd-fmin-fmax-intrinsics.ll
M llvm/test/Transforms/InferAddressSpaces/AMDGPU/flat_atomic.ll
Log Message:
-----------
AMDGPU: Remove flat/global fmin/fmax intrinsics (#105642)
These have been replaced with atomicrmw
Commit: 3dba4ca155e0b460ca82917b25d3624eb5825940
https://github.com/llvm/llvm-project/commit/3dba4ca155e0b460ca82917b25d3624eb5825940
Author: Lang Hames <lhames at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h
M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
Log Message:
-----------
[ORC][MachO] Remove the ExecutionSession& argument to MachOPlatform constructor.
We can get a reference to the ExecutionSession from the ObjectLinkingLayer
argument, so there's no need to pass it in separately.
Commit: 55dd29c61d1bd5509504ef0c6014b3879567eb17
https://github.com/llvm/llvm-project/commit/55dd29c61d1bd5509504ef0c6014b3879567eb17
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/tools/llvm-profdata/llvm-profdata.cpp
Log Message:
-----------
[llvm-profdata] Avoid repeated hash lookups (NFC) (#111629)
Commit: b26aac5a440d03791a367a1ee19d0341b68a28bc
https://github.com/llvm/llvm-project/commit/b26aac5a440d03791a367a1ee19d0341b68a28bc
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp
Log Message:
-----------
[sanitizer] Report -> VReport for ThreadLister failure
Commit: a06591b4d4fb270b587fc5ef67b5a03dad752b40
https://github.com/llvm/llvm-project/commit/a06591b4d4fb270b587fc5ef67b5a03dad752b40
Author: Hristo Hristov <hghristov.rmm at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/ReleaseNotes/20.rst
M libcxx/docs/Status/Cxx23Papers.csv
M libcxx/include/CMakeLists.txt
A libcxx/include/__type_traits/is_implicit_lifetime.h
M libcxx/include/module.modulemap
M libcxx/include/type_traits
M libcxx/include/version
M libcxx/modules/std/type_traits.inc
M libcxx/test/std/language.support/support.limits/support.limits.general/type_traits.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
A libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.pass.cpp
A libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.verify.cpp
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++][type_traits] P2674R1: A trait for implicit lifetime types (#106870)
Implements P2674R1: https://wg21.link/P2674R1
- https://eel.is/c++draft/type.traits
- https://eel.is/c++draft/meta.type.synop
- https://eel.is/c++draft/meta.unary.prop
- https://eel.is/c++draft/support.limits
- https://eel.is/c++draft/version.syn
Implementation details:
- Uses compiler intrinsic `__builtin_is_implicit_lifetime`:
- https://github.com/llvm/llvm-project/pull/101807
- Tests based on:
-
https://github.com/llvm/llvm-project/blob/d213981c80626698a07b11ce872acba098a863d4/clang/test/SemaCXX/type-traits.cpp#L1989
References:
- Implicit-lifetime
- Implicit-lifetime types [basic.types.general]/9:
https://eel.is/c++draft/basic.types.general
- Implicit-lifetime class [class.prop]/9:
https://eel.is/c++draft/class.prop
- P0593R6 Implicit creation of objects for low-level object
manipulation: https://wg21.link/P0593R6
- P1010R1 Container support for implicit lifetime types:
https://wg21.link/P1010R1
- P0593R6 Implicit creation of objects for low-level object
manipulation: https://wg21.link/P0593R6
Closes: #105259
---------
Co-authored-by: Hristo Hristov <zingam at outlook.com>
Commit: 3c1d9b8ec7474f076ddd842d2b6c562728e9b90a
https://github.com/llvm/llvm-project/commit/3c1d9b8ec7474f076ddd842d2b6c562728e9b90a
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
Log Message:
-----------
[gn build] Port a06591b4d4fb
Commit: fb2960aad93f6c02e0ea8de0568c0aef8896eee8
https://github.com/llvm/llvm-project/commit/fb2960aad93f6c02e0ea8de0568c0aef8896eee8
Author: Martin Storsjö <martin at martin.st>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M compiler-rt/lib/profile/InstrProfiling.h
M compiler-rt/lib/profile/InstrProfilingInternal.h
M compiler-rt/lib/profile/InstrProfilingPort.h
M compiler-rt/lib/profile/InstrProfilingUtil.h
Log Message:
-----------
[compiler-rt] [profile] Add missing (void) to prototypes, for C sources (#110642)
If built as part of the main llvm build, via
ENABLE_LLVM_PROJECTS=compiler-rt, the code gets built with more warning
options than if built standalone. Some of these trigger warnings like:
warning: a function declaration without a prototype is deprecated in all
versions of C [-Wstrict-prototypes]
Commit: 3be691651a2143f23bcf8f2704e55b01bbaa2550
https://github.com/llvm/llvm-project/commit/3be691651a2143f23bcf8f2704e55b01bbaa2550
Author: Thomas Fransham <tfransham at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/Config/abi-breaking.h.cmake
Log Message:
-----------
Add symbol visibility macros to abi-breaking.h.cmake (#110898)
Annotating these symbols will fix missing symbols errors for Bugpoint
when when the default symbol visibility is set to hidden for LLVM.
This is part of the work to enable LLVM_BUILD_LLVM_DYLIB and plugins on
window.
Co-authored-by: Tom Stellard <tstellar at redhat.com>
Commit: ada6372e52547ba0090f52a2e9e9d95d7eca28d3
https://github.com/llvm/llvm-project/commit/ada6372e52547ba0090f52a2e9e9d95d7eca28d3
Author: Hans Wennborg <hans at chromium.org>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/Sema.h
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.template/p3-0x.cpp
M clang/test/CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.type/p9-0x.cpp
M clang/test/CXX/temp/temp.param/p12.cpp
M clang/test/Modules/cxx-templates.cpp
M clang/test/SemaCXX/make_integer_seq.cpp
M clang/test/SemaTemplate/cwg2398.cpp
M clang/test/SemaTemplate/temp_arg_nontype.cpp
M clang/test/SemaTemplate/temp_arg_template.cpp
M clang/test/SemaTemplate/temp_arg_template_p0522.cpp
M clang/test/Templight/templight-empty-entries-fix.cpp
M clang/test/Templight/templight-prior-template-arg.cpp
M libcxx/test/libcxx/type_traits/is_specialization.verify.cpp
Log Message:
-----------
Revert "[clang] Finish implementation of P0522 (#96023)"
This caused Clang to reject valid code, see discussion on the PR
https://github.com/llvm/llvm-project/pull/96023#issuecomment-2393228464
and https://github.com/llvm/llvm-project/issues/111363
This reverts commit 6afe56732a172d3f2cbd0330b1fcb34bbfd002a9 and
follow-up commit 9abb97f9663a27fe5b8e346ed557b3435aa9ec2f.
Commit: 3bf33ecec8f0501f6b370bb2bc6ef01f4f98eaa2
https://github.com/llvm/llvm-project/commit/3bf33ecec8f0501f6b370bb2bc6ef01f4f98eaa2
Author: David Green <david.green at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/test/CodeGen/AArch64/concat-vector.ll
Log Message:
-----------
[GlobalISel] Fold bitcast(undef) to undef. (#111491)
As with other operations such as trunc and fp converts, it should be
valid to convert bitcast(undef) to undef.
Commit: e2dc50c92987e6886b1b1641ebdbe9cc53bae192
https://github.com/llvm/llvm-project/commit/e2dc50c92987e6886b1b1641ebdbe9cc53bae192
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/docs/CMake.rst
Log Message:
-----------
[docs] Update the libc++ documentation link
The link has changed a while ago, which means that the old link is now a
404. This fixes the link to point to the correct documentation.
Commit: 275a2b05813b2f10f403375abd72d1843e4544c3
https://github.com/llvm/llvm-project/commit/275a2b05813b2f10f403375abd72d1843e4544c3
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
Log Message:
-----------
[MLIR][Tensor] Perform shape inference via in-place modification (NFC) (#111593)
This is more efficient to avoid a clone that is immediately removed.
Also guard the insertion of a cast on the result on whether the
destination type changed.
Commit: fed8695bb846bf99884c1b54863d58b369c2b340
https://github.com/llvm/llvm-project/commit/fed8695bb846bf99884c1b54863d58b369c2b340
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Emit better diagnostic for invalid shufflevector index (#111643)
Commit: b9314a82196a656e2bcc48459123a98ccc02a54d
https://github.com/llvm/llvm-project/commit/b9314a82196a656e2bcc48459123a98ccc02a54d
Author: Dmitriy Smirnov <dmitriy.smirnov at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/lib/Conversion/MathToSPIRV/MathToSPIRV.cpp
M mlir/test/Conversion/MathToSPIRV/math-to-gl-spirv.mlir
Log Message:
-----------
[mlir][spirv] Update math.powf lowering (#111388)
The PR updates math.powf lowering to produce NaN result for a negative
base with a fractional exponent which matches the actual behaviour of
the C/C++ implementation.
Commit: ef739e78ff82d15dfdb4d7817c5a2990a89cf5ea
https://github.com/llvm/llvm-project/commit/ef739e78ff82d15dfdb4d7817c5a2990a89cf5ea
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaDecl.cpp
M clang/test/Sema/asm.c
M clang/test/Sema/caret-diags-register-variable.cpp
Log Message:
-----------
[clang] Change "bad" to "unsupported" in register type error (#111550)
This is maybe a personal take but I expect "bad" to either mean:
* Allowed but not ideal, like a "bad" memory alignment might work but it
is slow.
* The tool won't allow it but is going to tell me why it didn't.
The current error doesn't elaborate so I think it's best we just say
"unsupported" instead. This is clear that the type used is not allowed
at all.
Commit: a4de127086ba4e39effb28642973edbb758e9656
https://github.com/llvm/llvm-project/commit/a4de127086ba4e39effb28642973edbb758e9656
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M libclc/CMakeLists.txt
Log Message:
-----------
[libclc] Give a helpful error when an unknown target is requested (#111528)
I just tried using LLVM backend names here e.g. NVPTX but libclc want's
targets more like triples. This change adds a mesasge to tell you that.
Before you got:
```
libclc target 'AMDGCN' is enabled
CMake Error at CMakeLists.txt:253 (list):
list index: 1 out of range (-1, 0)
CMake Error at CMakeLists.txt:254 (list):
list index: 2 out of range (-1, 0)
Configuring incomplete, errors occurred!
```
Now you get:
```
CMake Error at CMakeLists.txt:145 (message):
Unknown target in LIBCLC_TARGETS_TO_BUILD: "AMDGCN"
Valid targets are:
amdgcn--;amdgcn--amdhsa;clspv--;clspv64--;r600--;nvptx--;nvptx64--;nvptx--nvidiacl;nvptx64--nvidiacl;amdgcn-mesa-mesa3d
```
Some of the targets are dynamic based on what is installed, so spirv
isn't here for me because I don't have llvm-spirv installed yet.
So this is not perfect but it's an improvement on the current behaviour.
Commit: de4f2c976f9fa11173c71b2b070225c9be89ceef
https://github.com/llvm/llvm-project/commit/de4f2c976f9fa11173c71b2b070225c9be89ceef
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py
Log Message:
-----------
[lldb][test] Enable TestDAP_runInTerminal on non-x86 architectures (#111543)
I don't see an obvious reason it has to be x86 specific and local
testing on Arm and AArch64 is fine.
Originally disabled in 50337fb933e0f666d34d747a43d46840b3982bf7 in
response to failures apparently caused by
https://reviews.llvm.org/D93951.
Perhaps those still exist but worth trying this and checking I think.
Commit: 5be1024ea7518b8823fa97c00cbda7ea29b0a259
https://github.com/llvm/llvm-project/commit/5be1024ea7518b8823fa97c00cbda7ea29b0a259
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M .ci/generate-buildkite-pipeline-premerge
Log Message:
-----------
[ci] Use check-compiler-rt target for testing compiler-rt (#111515)
Instead of "check-all" which leads to us running some tests twice if
there are other "check-..." targets. For example on one of my PRs this
script produced:
```
commands:
- './.ci/monolithic-linux.sh "clang;clang;lld;clang-tools-extra;compiler-rt;llvm" "check-all check-clang check-clang-tools" "libcxx;libcxxabi;libunwind" "check-cxx check-cxxabi check-unwind"'
commands:
- 'C:\BuildTools\Common7\Tools\VsDevCmd.bat -arch=amd64 -host_arch=amd64'
- 'bash .ci/monolithic-windows.sh "clang;clang-tools-extra;llvm" "check-clang check-clang-tools"'
```
Which meant that Linux ran the clang and clang-tools tests twice. These
extra tests were about 24% of the test run and increased testing time
(on my local machine) by 45%.
This problem can also happen with other projects but there isn't a
simple fix like this one at the moment.
* pstl has a check-pstl target but it is not part of check-all and when
I tried it locally I couldn't build it.
* libclc has no check- target.
I will deal with those projects later.
Commit: 10008f731d4afd1f2a0b48da38d482b23232a09d
https://github.com/llvm/llvm-project/commit/10008f731d4afd1f2a0b48da38d482b23232a09d
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M .ci/generate-buildkite-pipeline-premerge
Log Message:
-----------
[ci] Don't add a testing target for libclc (#111547)
According to
https://github.com/llvm/llvm-project/pull/111369#issuecomment-2400152471
there is no testing to be done here.
Adding "check-all" only risks duplicating tests if other project
specific "check-" targets are also added.
Commit: 587f31fb28bab388ff87f1e321a2b32a07c5c0c2
https://github.com/llvm/llvm-project/commit/587f31fb28bab388ff87f1e321a2b32a07c5c0c2
Author: David Green <david.green at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
A llvm/test/Transforms/InstCombine/log-to-intrinsic.ll
Log Message:
-----------
[InstCombine] Add a test for converting log to an intrinsic. NFC
Commit: e080be5ac2163bcc4fd81f9770dbaf4360bc1a8c
https://github.com/llvm/llvm-project/commit/e080be5ac2163bcc4fd81f9770dbaf4360bc1a8c
Author: David Sherwood <david.sherwood at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[NFC][LoopVectorize] Clean up some code around getting a context (#111114)
There are several places in LoopVectorize where we do more work
than necessary to obtain a LLVMContext. I've tried to make the
code more efficient.
Commit: 67200f5dc8a662edd05928f97940c2fcabf42043
https://github.com/llvm/llvm-project/commit/67200f5dc8a662edd05928f97940c2fcabf42043
Author: Oliver Stannard <oliver.stannard at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
M llvm/lib/Target/ARM/ARMSubtarget.cpp
M llvm/lib/Target/ARM/ARMSubtarget.h
M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp
Log Message:
-----------
[ARM] Tidy up stack frame strategy code (NFC) (#110283)
We have two different ways of splitting the pushes of callee-saved
registers onto the stack, controlled by the confusingly similar names
STI.splitFramePushPop() and STI.splitFramePointerPush(). This removes
those functions and replaces them with a single function which returns
an enum. This is in preparation for adding another value to that enum.
The original work of this patch was done by James Westwood, reviewed as
#82801 and #81249, with some tidy-ups done by Mark Murray and myself.
Commit: 2ecf2e242b5e4c808fc3f6f2230d2f68b9ee1004
https://github.com/llvm/llvm-project/commit/2ecf2e242b5e4c808fc3f6f2230d2f68b9ee1004
Author: Oliver Stannard <oliver.stannard at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
Log Message:
-----------
[ARM] Factor out code to determine spill areas (NFC) (#110283)
There were multiple loops in ARMFrameLowering which sort the callee
saved registers into spill areas, which were hard to understand and
modify. This splits the information about which register is in which
save area into a separate function.
Commit: e817cfde41e661886538d7991c8fcf4164b98ee3
https://github.com/llvm/llvm-project/commit/e817cfde41e661886538d7991c8fcf4164b98ee3
Author: Oliver Stannard <oliver.stannard at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/ARM/ARMBaseRegisterInfo.h
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
M llvm/lib/Target/ARM/ARMFrameLowering.h
Log Message:
-----------
[ARM] Refactor generation of push/pop instructions (NFC) (#110283)
These used a set of callback functions to check which callee-save area a
register is in, refactor them to use the same data as other parts of
ARMFrameLowering. This will make it easier to add a new variant to the
register splitting.
Commit: 754c1f21700d7f6df3ee3bf86769c59cce1a6cfd
https://github.com/llvm/llvm-project/commit/754c1f21700d7f6df3ee3bf86769c59cce1a6cfd
Author: Oliver Stannard <oliver.stannard at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
Log Message:
-----------
[ARM] Add debug dump for StackAdjustingInsts (NFC) (#110283)
Commit: baa1fc9825ca29a81f98146da6036e3415182f16
https://github.com/llvm/llvm-project/commit/baa1fc9825ca29a81f98146da6036e3415182f16
Author: Oliver Stannard <oliver.stannard at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp
Log Message:
-----------
[ARM] Remove always-true checks from Thumb1 frame lowering (NFC) (#110283)
For Thumb1, we always split the callee-saved register pushes at R7, so
we don't need to check for this.
Commit: 6004f5550c8032f4c632cdbf5dbc0894bb33e51f
https://github.com/llvm/llvm-project/commit/6004f5550c8032f4c632cdbf5dbc0894bb33e51f
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/ADT/APFloat.h
M llvm/lib/Support/APFloat.cpp
Log Message:
-----------
[ADT][APFloat] Make sure EBO is performed on APFloat (#111641)
Since both APFloat and (Double)IEEEFloat inherit from APFloatBase, empty
base optimization is not performed by GCC/Clang (Minimal reproducer:
https://godbolt.org/z/dY8cM3Wre). This patch removes inheritance
relation between (Double)IEEEFloat and APFloatBase to make sure EBO is
performed on APFloat. After this patch, the size of `ConstantFPRange`
will be reduced from 72 to 56.
Address comment
https://github.com/llvm/llvm-project/pull/111544#discussion_r1792398427.
Commit: 146d3f04ff92e396ea40ab581304e65e8511d8ac
https://github.com/llvm/llvm-project/commit/146d3f04ff92e396ea40ab581304e65e8511d8ac
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M lldb/test/API/lang/c/shared_lib_stripped_symbols/TestSharedLibStrippedSymbols.py
Log Message:
-----------
[lldb][test] Disable TestSharedLibStrippedSymbols on Arm
This has been flakey lately for example:
https://lab.llvm.org/buildbot/#/builders/18/builds/5139
Commit: b43e003d90f0a7c045e9961a80013fc9c6d6e9b3
https://github.com/llvm/llvm-project/commit/b43e003d90f0a7c045e9961a80013fc9c6d6e9b3
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py
Log Message:
-----------
Revert "[lldb][test] Enable TestDAP_runInTerminal on non-x86 architectures" (#111648)
Reverts llvm/llvm-project#111543
https://lab.llvm.org/buildbot/#/builders/18/builds/5140 failed here
again. Clearly there is something different on Arm but I don't know what
it is yet.
Commit: a1bc3e63cc020aad75b55d8732ab7ae15ea1c973
https://github.com/llvm/llvm-project/commit/a1bc3e63cc020aad75b55d8732ab7ae15ea1c973
Author: Jonathan Cohen <jcohen22 at apple.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
A llvm/test/MC/ARM/macho-relocs-with-addend-invalid.s
M llvm/test/MC/ARM/macho-relocs-with-addend.s
Log Message:
-----------
[ARMAsmBackend] Add checks for relocation addends in assembler (#109969)
This PR adds checks that any addends attached to branch instructions are
valid, and can be properly encoded in the branch instruction. Before
this fix, the assembler would silently truncate or round invalid addend
values, creating incorrect branch instructions.
Commit: f016e105b31b29963cca87bfb30a179dacf260af
https://github.com/llvm/llvm-project/commit/f016e105b31b29963cca87bfb30a179dacf260af
Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M utils/bazel/llvm_configs/config.h.cmake
Log Message:
-----------
[bazel] update config.h.cmake
for 84088d3a28fdc2d6314c59bfa11026a72b9b0bff
Commit: 1a1de2465d8399b178149e7e23c7450fdc5dde9f
https://github.com/llvm/llvm-project/commit/1a1de2465d8399b178149e7e23c7450fdc5dde9f
Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M utils/bazel/llvm_configs/abi-breaking.h.cmake
Log Message:
-----------
[bazel] update abi-breaking.h.cmake for 3be691651a2143f23bcf8f2704e55b01bbaa2550
Commit: cc99bddb71738761bfe21490f3b6853da036cf97
https://github.com/llvm/llvm-project/commit/cc99bddb71738761bfe21490f3b6853da036cf97
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCtorDtorLowering.cpp
Log Message:
-----------
AMDGPU: Avoid using hardcoded address space number
Commit: b124c04597166cc93ca791d0ad07834c85de824d
https://github.com/llvm/llvm-project/commit/b124c04597166cc93ca791d0ad07834c85de824d
Author: Sergio Afonso <safonsof at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
Log Message:
-----------
[Flang][OpenMP] Remove omp.simd reduction block args (#111523)
This patch reverts previous changes to create entry block arguments for
reduction variables attached to `simd` constructs.
This can't currently be done because reduction variables stored in the
corresponding clause structure are not added to the `omp.simd` operation
when created, as this is not supported yet. Adding block arguments for
non-existent reduction variables results in some tests from the Fujitsu
compiler testsuite breaking:
https://linaro.atlassian.net/browse/LLVM-1389.
Commit: e71ac933716dc9a747b93b73e899e50b421ebcde
https://github.com/llvm/llvm-project/commit/e71ac933716dc9a747b93b73e899e50b421ebcde
Author: Sergio Afonso <safonsof at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
Log Message:
-----------
[Flang][OpenMP] Properly reserve space for entry block argument lists (NFC) (#111529)
This patch adds the size for `use_device_ptr`, which was missing.
Commit: 6472cb1e219f631ed504bb1c5675853168748d21
https://github.com/llvm/llvm-project/commit/6472cb1e219f631ed504bb1c5675853168748d21
Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
M llvm/unittests/Transforms/IPO/FunctionSpecializationTest.cpp
Log Message:
-----------
[FuncSpec] Improve estimation of select instruction. (#111176)
When propagating a constant to a select instruction we only consider the
condition operand as the use. I am extending the logic to consider the
true and false values too, in case the condition had been found to be
constant in a previous propagation but halted.
Commit: af933f0661b0d3aed84bbe521420b83efd5b8685
https://github.com/llvm/llvm-project/commit/af933f0661b0d3aed84bbe521420b83efd5b8685
Author: Ash Vardanian <1983160+ashvardanian at users.noreply.github.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/Headers/cpuid.h
Log Message:
-----------
[clang][x86] Missing `AVX512VP2INTERSECT` flag (#111435)
This patch adds support for detecting the `AVX512VP2INTERSECT` ISA extension.
It's useful for Intel Tiger Lake mobile CPUs and any Zen 5 AMD CPUs.
No functional changes yet, just defining the feature flag.
Commit: b2edeb58b8cb3268acee425cd52b406eb60a8095
https://github.com/llvm/llvm-project/commit/b2edeb58b8cb3268acee425cd52b406eb60a8095
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M openmp/cmake/OpenMPTesting.cmake
M openmp/tools/archer/tests/CMakeLists.txt
M openmp/tools/archer/tests/lit.site.cfg.in
Log Message:
-----------
[openmp] Add option to disable tsan tests (#111548)
This adds a OPENMP_TEST_ENABLE_TSAN option that allows to override
whether tests using tsan will be enabled. The option defaults to the
existing auto-detection.
The background here is
https://github.com/llvm/llvm-project/issues/111492, where we have some
systems where tsan doesn't work, but we do still want to build it and
run tests that don't use tsan.
Commit: 068d76b48093ccf8b55c4af6a6ccacfc1ce0ae53
https://github.com/llvm/llvm-project/commit/068d76b48093ccf8b55c4af6a6ccacfc1ce0ae53
Author: Balazs Benics <benicsbalazs at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
M clang/test/Analysis/range_casts.c
Log Message:
-----------
[analyzer] Fix crash when casting the result of a malformed fptr call (#111390)
Ideally, we wouldn't workaround our current cast-modeling, but the
experimental "support-symbolic-integer-casts" is not finished so we need
to live with our current modeling.
Ideally, we could probably bind `UndefinedVal` as the result of the call
even without evaluating the call, as the result types mismatch between
the static type of the `CallExpr` and the actually function that happens
to be called.
Nevertheless, let's not crash.
https://compiler-explorer.com/z/WvcqK6MbY
CPP-5768
Commit: 1be64e5413cbe9cfa89539f70ad02ee1d8945ebe
https://github.com/llvm/llvm-project/commit/1be64e5413cbe9cfa89539f70ad02ee1d8945ebe
Author: ivanaivanovska <iivanovska at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/unittests/Support/TimeProfilerTest.cpp
Log Message:
-----------
[clang][Sema] Add instant event when template instantiation is deferred. (#111524)
While profiling a clang invocation using `-ftime-trace`, now we add
instant events when template instantiation is deferred.
These events include the fully qualified name of the function template
being deferred and therefore could be very verbose. This is therefore
only added in verbose mode (when `TimeTraceVerbose` is enabled).
The point of time when a particular instantiation is deferred can be
used to identify the parent TimeTrace scope (usually another function
instantiation), which is responsible for deferring this instantiation.
This relationship can be used to attribute the cost of a deferred
template instantiation to the function deferring this particular
instantiation.
Commit: 671cbcf6420a9dfc81754d8dc683619f6f396ed8
https://github.com/llvm/llvm-project/commit/671cbcf6420a9dfc81754d8dc683619f6f396ed8
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
A llvm/test/CodeGen/AMDGPU/gep-flags-stack-offsets.ll
Log Message:
-----------
AMDGPU: Add baseline tests for gep flag handling (#110814)
We need to know the address computation won't overflow on
older subtargets to match the addressing mode of stack instructions.
Commit: ced15cd418d96fc3d078e687bdcc5875656c71f6
https://github.com/llvm/llvm-project/commit/ced15cd418d96fc3d078e687bdcc5875656c71f6
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/test/DebugInfo/Sparc/pointer-add-unknown-offset-debug-info.ll
Log Message:
-----------
DAG: Preserve more flags when expanding gep (#110815)
This allows selecting the addressing mode for stack instructions
in cases where we need to prove the sign bit is zero.
Commit: 886d98e149843f3890ef4dd556a5dee45ff97fe9
https://github.com/llvm/llvm-project/commit/886d98e149843f3890ef4dd556a5dee45ff97fe9
Author: Paul Walker <paul.walker at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
Log Message:
-----------
[LLVM][AArch64] Enable SVEIntrinsicOpts at all optimisation levels.
Commit: 1b3fc754515c64fdbe4a34292abe1082cb63942c
https://github.com/llvm/llvm-project/commit/1b3fc754515c64fdbe4a34292abe1082cb63942c
Author: Paul Walker <paul.walker at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
Log Message:
-----------
Revert "[LLVM][AArch64] Enable SVEIntrinsicOpts at all optimisation levels."
This reverts commit 886d98e149843f3890ef4dd556a5dee45ff97fe9.
Commit: 00c1c589e0d8878251993db57e3fd71f7105402d
https://github.com/llvm/llvm-project/commit/00c1c589e0d8878251993db57e3fd71f7105402d
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
Log Message:
-----------
DependencyGraph.cpp - mix MSVC "not all control paths return a value" warning. NFC.
Commit: a9f5a44aa0032c6efb262d2d5f79847045e525f1
https://github.com/llvm/llvm-project/commit/a9f5a44aa0032c6efb262d2d5f79847045e525f1
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/test/CodeGen/X86/avx512vl-logic.ll
M llvm/test/CodeGen/X86/vec_smulo.ll
M llvm/test/CodeGen/X86/vec_umulo.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-3.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-3.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-5.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-7.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-3.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-5.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-6.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-7.ll
M llvm/test/CodeGen/X86/vector-lzcnt-512.ll
M llvm/test/CodeGen/X86/vector-tzcnt-512.ll
Log Message:
-----------
[X86] Regenerate test checks with vpternlog comments
Commit: 374fffe015b48676fb3785167d363454a2f4dd1f
https://github.com/llvm/llvm-project/commit/374fffe015b48676fb3785167d363454a2f4dd1f
Author: Alexander Kornienko <alexfh at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/Frontend/TextDiagnostic.cpp
A clang/test/Frontend/highlight-text.c
Log Message:
-----------
Fix out-of-bounds access to std::unique_ptr<T[]> (#111581)
This manifested as an assertion failure in Clang built against libc++
with
hardening enabled (e.g.
-D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_DEBUG):
`libcxx/include/__memory/unique_ptr.h:596: assertion
__checker_.__in_bounds(std::__to_address(__ptr_), __i) failed:
unique_ptr<T[]>::operator[](index): index out of range`
Commit: 01cbbc52dc95fe5d9e30ecbfb2ec8c7c1e0199c4
https://github.com/llvm/llvm-project/commit/01cbbc52dc95fe5d9e30ecbfb2ec8c7c1e0199c4
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
A llvm/test/Transforms/LoopVectorize/X86/interleave-ptradd-with-replicated-operand.ll
Log Message:
-----------
[VPlan] Request lane 0 for pointer arg in PtrAdd.
After 7f74651, the pointer operand may be replicated of a PtrAdd. Instead
of requesting a single scalar, request lane 0, which correctly handles the
case when there is a scalar-per-lane.
Fixes https://github.com/llvm/llvm-project/issues/111606.
Commit: 25c3ecf28f0a3a404305b5eefac23baf7e4e0754
https://github.com/llvm/llvm-project/commit/25c3ecf28f0a3a404305b5eefac23baf7e4e0754
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] Add isConstantPowerOf2 helper to replace repeated code. NFC.
Prep work for #110875
Commit: e17f701f559fc637b41c27ea240568bb33b56d1f
https://github.com/llvm/llvm-project/commit/e17f701f559fc637b41c27ea240568bb33b56d1f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/test/CodeGen/X86/vselect-pcmp.ll
Log Message:
-----------
[X86] vselect-pcmp.ll - regenerate test checks with vpternlog comments
Commit: 4b4078a5cf95ad4a5e18704d9b88129c3a0bcb88
https://github.com/llvm/llvm-project/commit/4b4078a5cf95ad4a5e18704d9b88129c3a0bcb88
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/test/CodeGen/X86/vselect-pcmp.ll
Log Message:
-----------
[X86] Add test coverage for #110875
Commit: 8e2ccdc4deedd463a20237b4d842b4c51f9fe603
https://github.com/llvm/llvm-project/commit/8e2ccdc4deedd463a20237b4d842b4c51f9fe603
Author: Tobias Gysi <tobias.gysi at nextsilicon.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMDialect.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
Log Message:
-----------
[MLIR][LLVM] Use ViewLikeOpInterface (#111663)
This commit adds the ViewLikeOpInterface to the GEP and AddrSpaceCast
operations. This allows us to simplify the inliner interface. At the
same time, the change also makes the inliner interface more extensible
for downstream users that have custom view-like operations.
Commit: 3b2bfb48239e674805a9c4e65be3c3a9eeabdf9c
https://github.com/llvm/llvm-project/commit/3b2bfb48239e674805a9c4e65be3c3a9eeabdf9c
Author: roderickzzc <32364736+Zhang-Zecheng at users.noreply.github.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Linalg/IR/CMakeLists.txt
Log Message:
-----------
[mlir] add missing CMake dependency on ShardingInterface generated headers for LinalgDialect (#111603)
This fixes non-deterministic build failures.
Fixes https://github.com/llvm/llvm-project/issues/111527
---------
Co-authored-by: zecheng.zhang <zecheng.zhang at bytedance.com>
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>
Commit: 3b7091bcf3b48b63724500d821dc7a0ce8ffa3c9
https://github.com/llvm/llvm-project/commit/3b7091bcf3b48b63724500d821dc7a0ce8ffa3c9
Author: Ariel-Burton <arielburton at yahoo.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/ADT/APFloat.h
M llvm/lib/Support/APFloat.cpp
Log Message:
-----------
[APFloat] add predicates to fltSemantics for hasZero and hasSignedRepr (#111451)
We add static methods to APFloatBase to allow the hasZero and
hasSignedRepr properties of fltSemantics to be obtained.
Commit: 890e481358d6cb4e81629742eda32f9a1d6785d2
https://github.com/llvm/llvm-project/commit/890e481358d6cb4e81629742eda32f9a1d6785d2
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/test/CodeGen/AMDGPU/gep-flags-stack-offsets.ll
Log Message:
-----------
AMDGPU: Regenerate test checks
Commit: 21da4e7f51c7adfd0b1c5defc8bd0d16ea1ce759
https://github.com/llvm/llvm-project/commit/21da4e7f51c7adfd0b1c5defc8bd0d16ea1ce759
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M libcxx/cmake/Modules/HandleLibCXXABI.cmake
M libcxx/src/CMakeLists.txt
M libcxxabi/src/CMakeLists.txt
Log Message:
-----------
[libc++] Fix broken configuration system-libcxxabi on Apple (#110920)
On Apple platforms, using system-libcxxabi as an ABI library wouldn't
work because we'd try to re-export symbols from libc++abi that the
system libc++abi.dylib might not have. Instead, only re-export those
symbols when we're using the in-tree libc++abi.
This does mean that libc++.dylib won't re-export any libc++abi symbols
when building against the system libc++abi, which could be fixed in
various ways. However, the best solution really depends on the intended
use case, so this patch doesn't try to solve that problem.
As a drive-by, also improve the diagnostic message when the user forgets
to set the LIBCXX_CXX_ABI_INCLUDE_PATHS variable, which would previously
lead to a confusing error.
Closes #104672
Commit: 32db6fbdb9a8173813e67606b87555c31ea557bb
https://github.com/llvm/llvm-project/commit/32db6fbdb9a8173813e67606b87555c31ea557bb
Author: Kunwar Grover <groverkss at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Transforms/loop-invariant-code-motion.mlir
Log Message:
-----------
[mlir][vector] Implement speculation for vector.transferx ops (#111533)
This patch implements speculation for
vector.transfer_read/vector.transfer_write ops, allowing these ops to
work with LICM.
Commit: 5b03efb85d63d1f4033ed649a56a177dd4ed62b4
https://github.com/llvm/llvm-project/commit/5b03efb85d63d1f4033ed649a56a177dd4ed62b4
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/include/clang/AST/OpenMPClause.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/SemaOpenMP.h
M clang/lib/AST/OpenMPClause.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/Basic/OpenMPKinds.cpp
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/test/OpenMP/interchange_ast_print.cpp
M clang/test/OpenMP/interchange_codegen.cpp
M clang/test/OpenMP/interchange_messages.cpp
M clang/tools/libclang/CIndex.cpp
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/Clauses.h
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
M llvm/include/llvm/Frontend/OpenMP/OMP.td
Log Message:
-----------
[Clang][OpenMP] Add permutation clause (#92030)
Add the permutation clause for the interchange directive which will be
introduced in the upcoming OpenMP 6.0 specification. A preview has been
published in
[Technical Report12](https://www.openmp.org/wp-content/uploads/openmp-TR12.pdf).
Commit: fa3258ecb8f18702bb45fa7f7c5c436be9e575cc
https://github.com/llvm/llvm-project/commit/fa3258ecb8f18702bb45fa7f7c5c436be9e575cc
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Sink retrieving legacy costs to more specific computeCost impls. (#109708)
Make legacy cost retrieval independent of getInstructionForCost by
sinking it to more specific ::computeCost implementation (specifically
VPInterleaveRecipe::computeCost and VPSingleDefRecipe::computeCost).
Inline getInstructionForCost to VPRecipeBase::cost(), as it is now only
used to decide which recipes to skip during cost computation and when to
apply forced costs.
PR: https://github.com/llvm/llvm-project/pull/109708
Commit: c47f3e8c7027fbf13495dc865c28d852bf77836d
https://github.com/llvm/llvm-project/commit/c47f3e8c7027fbf13495dc865c28d852bf77836d
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vselect-pcmp.ll
Log Message:
-----------
[X86] combineSelect - Fold select(pcmpeq(and(X,Pow2),0),A,B) -> select(pcmpeq(and(X,Pow2),Pow2),B,A)
Matches what we already do in LowerVSETCC to reuse an existing constant
Fixes #110875
Commit: 15dc2d5c5e55e6f0b9e3a78d352698b8873f2566
https://github.com/llvm/llvm-project/commit/15dc2d5c5e55e6f0b9e3a78d352698b8873f2566
Author: Victor Mustya <victor.mustya at intel.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/IR/SymbolTableListTraits.h
Log Message:
-----------
[IR] Prevent implicit SymbolTableListTraits template instantiation (#111600)
The `SymbolTableListTraits` template is explicitly instantiated for the
following types:
* `llvm/lib/IR/Function.cpp`
- `BasicBlock`
* `llvm/lib/IR/Module.cpp`
- `Function`
- `GlobalAlias`
- `GlobalIFunc`
- `GlobalVariable`
When LLVM is built on Windows with the `LLVM_EXPORT_SYMBOLS_FOR_PLUGINS`
option enabled, the implicit instantiation of the template prevents the
`SymbolTableListTraits` template from being exported. This causes link
errors when the template or IR API is used in a plugin.
This change prevents the template being implicitly instantiated for
these types.
Commit: d25f1a19c8cc68f3ff4659192605d39c35474cc8
https://github.com/llvm/llvm-project/commit/d25f1a19c8cc68f3ff4659192605d39c35474cc8
Author: simpal01 <simi.pallipurath at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M libcxx/test/std/atomics/atomics.lockfree/is_always_lock_free.pass.cpp
Log Message:
-----------
Add 64bit atomic check in the is_always_lock_free_pass test. (#111540)
Currently this test is completely xfailed as part of the patch
https://github.com/llvm/llvm-project/pull/106077. But this test works on
A and R profile, not in v7M profile. Because the test contain cases in
which m-profile will fail for atomic types greater than 4 bytes in size.
Commit: 1e357cde4836d034d2f7a6d9af099eef23271756
https://github.com/llvm/llvm-project/commit/1e357cde4836d034d2f7a6d9af099eef23271756
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCtorDtorLowering.cpp
M llvm/test/CodeGen/AMDGPU/lower-ctor-dtor-constexpr-alias.ll
M llvm/test/CodeGen/AMDGPU/lower-ctor-dtor.ll
M llvm/test/CodeGen/AMDGPU/lower-multiple-ctor-dtor.ll
Log Message:
-----------
AMDGPU: Use pointer types more consistently (#111651)
This was using addrspace 0 and 1 pointers interchangably. This works
out since they happen to use the same size, but consistently query
or use the correct one.
Commit: a9ebdbb5ac7de7a028f6060b789196a43aea7580
https://github.com/llvm/llvm-project/commit/a9ebdbb5ac7de7a028f6060b789196a43aea7580
Author: Benoit Jacob <jacob.benoit.1 at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorInsertExtractStridedSliceRewritePatterns.cpp
M mlir/test/Dialect/Vector/canonicalize.mlir
R mlir/test/Dialect/Vector/vector-contiguous-extract-strided-slice-to-extract.mlir
M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp
Log Message:
-----------
[MLIR] Vector: turn the ExtractStridedSlice rewrite pattern from #111541 into a canonicalization (#111614)
This is a reasonable canonicalization because `extract` is more
constrained than `extract_strided_slices`, so there is no loss of
semantics here, just lifting an op to a special-case higher/constrained
op. And the additional `shape_cast` is merely adding leading unit dims
to match the original result type.
Context: discussion on #111541. I wasn't sure how this would turn out,
but in the process of writing this PR, I discovered at least 2 bugs in
the pattern introduced in #111541, which shows the value of shared
canonicalization patterns which are exercised on a high number of
testcases.
---------
Signed-off-by: Benoit Jacob <jacob.benoit.1 at gmail.com>
Commit: 390943f25b18a352bb3a72fe1b0908df355f77d9
https://github.com/llvm/llvm-project/commit/390943f25b18a352bb3a72fe1b0908df355f77d9
Author: Leandro Lupori <leandro.lupori at linaro.org>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/test/Fir/convert-to-llvm.fir
M flang/test/Fir/invalid.fir
Log Message:
-----------
[flang] Implement conversion of compatible derived types (#111165)
With some restrictions, BIND(C) derived types can be converted to
compatible BIND(C) derived types.
Semantics already support this, but ConvertOp was missing the
conversion of such types.
Fixes https://github.com/llvm/llvm-project/issues/107783
Commit: 6f8e855150534358ea8c9301960c7c83119b1394
https://github.com/llvm/llvm-project/commit/6f8e855150534358ea8c9301960c7c83119b1394
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/Function.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[clang][bytecode] Implement __builtin_ai32_addcarryx* (#111671)
Commit: 7d9f9938ff788aa7565c61ce6f391264750515af
https://github.com/llvm/llvm-project/commit/7d9f9938ff788aa7565c61ce6f391264750515af
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Transform/Transforms/CheckUses.cpp
Log Message:
-----------
[Transform] Avoid repeated hash lookups (NFC) (#111620)
Commit: 48e4d67537ba4cc2cec2600628015f4ae167d88c
https://github.com/llvm/llvm-project/commit/48e4d67537ba4cc2cec2600628015f4ae167d88c
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
Log Message:
-----------
[DSE] Simplify code with MapVector::operator[] (NFC) (#111621)
Commit: bda4fc05cfcc4eb3c9d69e0acaa9533bfe5b3de3
https://github.com/llvm/llvm-project/commit/bda4fc05cfcc4eb3c9d69e0acaa9533bfe5b3de3
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
Log Message:
-----------
[NVPTX] Avoid repeated map lookups (NFC) (#111627)
Commit: 1ad5f315ae1cd44369a72cc8dc44fc9ef0cbe638
https://github.com/llvm/llvm-project/commit/1ad5f315ae1cd44369a72cc8dc44fc9ef0cbe638
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExprCXX.cpp
M clang/test/Parser/cxx2c-pack-indexing.cpp
Log Message:
-----------
[Clang] Avoid a crash when parsing an invalid pseudo-destructor (#111666)
Fixes #111460.
Commit: c911b0a73ca08e7cd2409486aff721f7a6339432
https://github.com/llvm/llvm-project/commit/c911b0a73ca08e7cd2409486aff721f7a6339432
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
Log Message:
-----------
[clang-tidy] Avoid repeated hash lookups (NFC) (#111628)
Commit: 01a0e85ab7183144816bd569b7ab3899663b3a0c
https://github.com/llvm/llvm-project/commit/01a0e85ab7183144816bd569b7ab3899663b3a0c
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/lib/Conversion/SCFToGPU/SCFToGPU.cpp
Log Message:
-----------
[Conversion] Avoid repeated hash lookups (NFC) (#111637)
Commit: f59b151f094376e135955810f523dcf6b5acde80
https://github.com/llvm/llvm-project/commit/f59b151f094376e135955810f523dcf6b5acde80
Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel] port 8e2ccdc4deedd463a20237b4d842b4c51f9fe603
Commit: e85fcb763173590fdcd5cb922b7ca1fc97cf170b
https://github.com/llvm/llvm-project/commit/e85fcb763173590fdcd5cb922b7ca1fc97cf170b
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCtorDtorLowering.cpp
M llvm/test/CodeGen/AMDGPU/lower-ctor-dtor-constexpr-alias.ll
M llvm/test/CodeGen/AMDGPU/lower-ctor-dtor.ll
M llvm/test/CodeGen/AMDGPU/lower-multiple-ctor-dtor.ll
Log Message:
-----------
AMDGPU: Add instruction flags when lowering ctor/dtor (#111652)
These should be well behaved address computations.
Commit: 665457815f11118f7e755a471f33606c8562a4be
https://github.com/llvm/llvm-project/commit/665457815f11118f7e755a471f33606c8562a4be
Author: Paul Walker <paul.walker at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M flang/test/Driver/default-backend-pipelines.f90
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
Log Message:
-----------
[LLVM][AArch64] Enable SVEIntrinsicOpts at all optimisation levels.
Commit: c4d288d9e21f44bc4a0f26e7655eba851a9b6225
https://github.com/llvm/llvm-project/commit/c4d288d9e21f44bc4a0f26e7655eba851a9b6225
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M flang/lib/Semantics/check-directive-structure.h
M flang/test/Semantics/OpenMP/do05-positivecase.f90
Log Message:
-----------
[flang][OpenMP] Don't check unlabelled `cycle` branching for target loops (#111656)
Properly handles `cycle` branching inside target distribute loops.
Commit: 1731bb79a97537c71f916f1e70a442a6615599d0
https://github.com/llvm/llvm-project/commit/1731bb79a97537c71f916f1e70a442a6615599d0
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
A llvm/test/tools/llvm-reduce/special-globals-missing-should-keep-assert.ll
M llvm/tools/llvm-reduce/deltas/ReduceSpecialGlobals.cpp
Log Message:
-----------
llvm-reduce: Fix not checking shouldKeep in special-globals reduction (#111647)
Commit: e637a5c9fef866158018dcaecc3c385d157460f5
https://github.com/llvm/llvm-project/commit/e637a5c9fef866158018dcaecc3c385d157460f5
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/test/AST/ByteCode/codegen.cpp
Log Message:
-----------
[clang][bytecode] Only allow lossless ptr-to-int casts (#111669)
Only allow those casts if the bitwidth of the two types match.
Commit: 72a957ba4c8ef059f1572f6d4ee0cba8dc615268
https://github.com/llvm/llvm-project/commit/72a957ba4c8ef059f1572f6d4ee0cba8dc615268
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Cuda.cpp
A clang/test/Driver/cuda-short-ptr.cu
Log Message:
-----------
[Cuda] Handle -fcuda-short-ptr even with -nocudalib (#111682)
When passed -nocudalib/-nogpulib, Cuda's argument handling would bail
out before handling -fcuda-short-ptr, meaning the frontend and backend
data layouts would mismatch.
Commit: c136d3237a3c6230cfe1ab3f0f6790f903c54a27
https://github.com/llvm/llvm-project/commit/c136d3237a3c6230cfe1ab3f0f6790f903c54a27
Author: David Green <david.green at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Transforms/VectorCombine/AArch64/shuffletoidentity.ll
Log Message:
-----------
[VectorCombine] Do not try to operate on OperandBundles. (#111635)
This bails out if we see an intrinsic with an operand bundle on it, to
make sure we don't process the bundles incorrectly.
Fixes #110382.
Commit: d905a3c51b31775791c15132a1b3613d75871853
https://github.com/llvm/llvm-project/commit/d905a3c51b31775791c15132a1b3613d75871853
Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/MachineVerifier.cpp
Log Message:
-----------
[NFC] Format MachineVerifier.cpp to remove extra indentation (#111602)
Many structs in this class have the wrong indentation. To generate this
diff, I touched the first line of each struct and then ran `git
clang-format`. This will make blaming more difficult, but this
autoformatting is difficult to avoid triggering. I think it's best to
push this as one NFC PR.
Commit: 774893dcd929c370bad714a70a7d670bb2d6f649
https://github.com/llvm/llvm-project/commit/774893dcd929c370bad714a70a7d670bb2d6f649
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
M mlir/lib/Target/LLVMIR/Dialect/ROCDL/ROCDLToLLVMIRTranslation.cpp
M mlir/test/Target/LLVMIR/rocdl.mlir
Log Message:
-----------
[mlir][ROCDL] Plumb through AMDGPU memory access metadata (#110916)
The LLVM backend has moved from function-wide attributes for making
assurances about potentially unsafe atomic operations (like
"unsafe-fp-atomics") to metadata on individual atomic operations.
This commit adds support for generating this metadata from MLIR.
---------
Co-authored-by: Quinn Dawkins <quinn.dawkins at gmail.com>
Commit: 18952bdcd6f987620e6396261c2bb444e428e07e
https://github.com/llvm/llvm-project/commit/18952bdcd6f987620e6396261c2bb444e428e07e
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/utils/gn/build/BUILD.gn
M llvm/utils/gn/build/toolchain/BUILD.gn
M llvm/utils/gn/build/toolchain/target_flags.gni
M llvm/utils/gn/secondary/compiler-rt/BUILD.gn
M llvm/utils/gn/secondary/compiler-rt/lib/BUILD.gn
M llvm/utils/gn/secondary/compiler-rt/test/test.gni
Log Message:
-----------
[gn build] Fix up win/x86 flags and add stage2_unix_x86 (#111595)
Commit: 2e47b93fd29ad6ef13a4134f3b0be3c42e91180c
https://github.com/llvm/llvm-project/commit/2e47b93fd29ad6ef13a4134f3b0be3c42e91180c
Author: Ard Biesheuvel <ardb at kernel.org>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/ARM/Thumb2InstrInfo.cpp
A llvm/test/CodeGen/ARM/stack-guard-nomovt.ll
Log Message:
-----------
[ARM] Honour -mno-movt in stack protector handling (#109022)
When -mno-movt is passed to Clang, the ARM codegen correctly avoids
movt/movw pairs to take the address of __stack_chk_guard in the stack
protector code emitted into the function pro- and epilogues. However,
the Thumb2 codegen fails to do so, and happily emits movw/movt pairs
unless it is generating an ELF binary and the symbol might be in a
different DSO. Let's incorporate a check for useMovt() in the logic
here, so movt/movw are never emitted when -mno-movt is specified.
Suggestions welcome for how/where to add a test case for this.
Signed-off-by: Ard Biesheuvel <ardb at kernel.org>
Commit: cf5bbeb533d49fd3f3c174af2239188e2d47b7db
https://github.com/llvm/llvm-project/commit/cf5bbeb533d49fd3f3c174af2239188e2d47b7db
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/compiler-rt/BUILD.gn
Log Message:
-----------
[gn build] Remove unix x86 stage2 toolchain
It's breaking the bots, e.g. http://45.33.8.238/linux/149792/step_3.txt
Commit: 1553cb5d3b14a0516c2796c295a3b32d147d13d0
https://github.com/llvm/llvm-project/commit/1553cb5d3b14a0516c2796c295a3b32d147d13d0
Author: George Burgess IV <george.burgess.iv at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/Sema/SemaAvailability.cpp
M clang/test/Sema/attr-availability.c
Log Message:
-----------
[Sema] Support negation/parens with __builtin_available (#111439)
At present, `__builtin_available` is really restrictive with its use.
Overall, this seems like a good thing, since the analyses behind it are
not very expensive.
That said, it's very straightforward to support these two cases:
```
if ((__builtin_available(foo, *))) {
// ...
}
```
and
```
if (!__builtin_available(foo, *)) {
// ...
} else {
// ...
}
```
Seems nice to do so.
Commit: 17bc959961aa5792821516b547100316fc886ab4
https://github.com/llvm/llvm-project/commit/17bc959961aa5792821516b547100316fc886ab4
Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNIterativeScheduler.cpp
M llvm/lib/Target/AMDGPU/GCNRegPressure.cpp
M llvm/lib/Target/AMDGPU/GCNRegPressure.h
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
M llvm/test/CodeGen/AMDGPU/high-RP-reschedule.mir
M llvm/test/CodeGen/AMDGPU/pr51516.mir
A llvm/test/CodeGen/AMDGPU/schedule-amdgpu-tracker-physreg-crash.ll
A llvm/test/CodeGen/AMDGPU/schedule-amdgpu-tracker-physreg.ll
A llvm/test/CodeGen/AMDGPU/schedule-amdgpu-trackers.ll
M llvm/test/CodeGen/AMDGPU/schedule-regpressure-ilp-metric-spills.mir
M llvm/test/CodeGen/AMDGPU/schedule-relaxed-occupancy.ll
Log Message:
-----------
[AMDGPU] Optionally Use GCNRPTrackers during scheduling (#93090)
This adds the ability to use the GCNRPTrackers during scheduling. These trackers have several advantages over the generic trackers: 1. global live-thru trackers, 2. subregister based RP deltas, and 3. flexible vreg -> PressureSet mappings.
This feature is off-by-default to ease with the roll-out process. In particular, when using the optional trackers, the scheduler will still maintain the generic trackers leading to unnecessary compile time.
Commit: ec450b19004a653f3db3ad50e88fbf6529a9d841
https://github.com/llvm/llvm-project/commit/ec450b19004a653f3db3ad50e88fbf6529a9d841
Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/lib/Conversion/VectorToXeGPU/VectorToXeGPU.cpp
M mlir/test/Conversion/VectorToXeGPU/transfer-write-to-xegpu.mlir
Log Message:
-----------
[mlir][xegpu] Allow out-of-bounds writes (#110811)
Relaxes vector.transfer_write lowering to allow out-of-bound writes.
This aligns lowering with the current hardware specification which does
not update bytes in out-of-bound locations during block stores.
Commit: 18d655fdcce4d17080e6cb2721f93f6db856277e
https://github.com/llvm/llvm-project/commit/18d655fdcce4d17080e6cb2721f93f6db856277e
Author: Amara Emerson <amara at apple.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Utils/Local.cpp
Log Message:
-----------
[SimplifyCFG][NFC] Improve compile time for TryToSimplifyUncondBranchFromEmptyBlock optimization. (#110715)
In some pathological cases this optimization can spend an unreasonable
amount of time populating the set for predecessors of the successor
block. This change sinks some of that initializing to the point where
it's actually necessary so we can take advantage of the existing
early-exits.
rdar://137063034
Commit: 13cd43aa6fa1dc5bfb96119db43b8c549386a86e
https://github.com/llvm/llvm-project/commit/13cd43aa6fa1dc5bfb96119db43b8c549386a86e
Author: Saiyedul Islam <Saiyedul.Islam at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/amdgpu-openmp-toolchain.c
Log Message:
-----------
[Clang][OpenMP] Do not use feature option during packaging (#111702)
Clang-offload-packager allows packaging of images based on an arbitrary
list of key-value pairs where only triple-key is mandatory.
Using target features as a key during packaging is not correct, as clang
does not allow packaging multiple images in one binary which only differ
in a target feature.
TargetID features (xnack and sramecc) anyways are handled using arch-key
and not as target features.
Commit: 3a08551a0337e999d5d8ca0b0e591d1a2b934865
https://github.com/llvm/llvm-project/commit/3a08551a0337e999d5d8ca0b0e591d1a2b934865
Author: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
Log Message:
-----------
[AMDGPU] Fix expensive check
Change-Id: I0b26d5db6d3da8936ab25ee2b1e9002840b9853e
Commit: 4e33afee5a167d5293edeef15e414c0dbbcf3cef
https://github.com/llvm/llvm-project/commit/4e33afee5a167d5293edeef15e414c0dbbcf3cef
Author: Shourya Goel <shouryagoel10000 at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M libc/cmake/modules/LLVMLibCTestRules.cmake
M libc/include/llvm-libc-macros/math-function-macros.h
M libc/test/include/CMakeLists.txt
R libc/test/include/IsSignalingTest.h
A libc/test/include/iscanonical_test.c
M libc/test/include/issignaling_test.c
R libc/test/include/issignaling_test.cpp
R libc/test/include/issignalingf_test.cpp
R libc/test/include/issignalingl_test.cpp
Log Message:
-----------
[libc][math] Implement `issignaling` and `iscanonical` macro. (#111403)
#109201
Commit: ee0e17a4d8b42278ded1217e415073e8bce88b2a
https://github.com/llvm/llvm-project/commit/ee0e17a4d8b42278ded1217e415073e8bce88b2a
Author: vporpo <vporpodas at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
Log Message:
-----------
[SandboxVec][DAG] Drop RAR and fix dependency scanning loop (#111715)
Commit: 10ada4ae738b9d93174e516ca841e61a8f4fd612
https://github.com/llvm/llvm-project/commit/10ada4ae738b9d93174e516ca841e61a8f4fd612
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/PassManager.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
A llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/NullPass.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.h
M llvm/lib/SandboxIR/PassManager.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
A llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/PassRegistry.def
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.cpp
M llvm/test/Transforms/SandboxVectorizer/default_pass_pipeline.ll
M llvm/test/Transforms/SandboxVectorizer/user_pass_pipeline.ll
M llvm/unittests/SandboxIR/PassTest.cpp
Log Message:
-----------
[SandboxVectorizer] Use sbvec-passes flag to create a pipeline of Region passes after BottomUpVec. (#111223)
The main change is that the main SandboxVectorizer pass no longer has a
pipeline of function passes. Now it is a wrapper that creates sandbox IR
from functions before calling BottomUpVec.
BottomUpVec now builds its own RegionPassManager from the `sbvec-passes`
flag, using a PassRegistry.def file. For now, these region passes are
not run (BottomUpVec doesn't create Regions yet), and only a null pass
for testing exists.
This commit also changes the ownership model for sandboxir::PassManager:
instead of having a PassRegistry that owns passes, and PassManagers that
contain non-owning pointers to the passes, now PassManager owns (via
unique pointers) the passes it contains.
PassRegistry is now deleted, and the logic to parse and create a pass
pipeline is now in PassManager::setPassPipeline.
Commit: a075e785b8f4e2323ce89b742185386314909f21
https://github.com/llvm/llvm-project/commit/a075e785b8f4e2323ce89b742185386314909f21
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.f32.fp8.err.ll
Log Message:
-----------
AMDGPU: Fix incorrectly selecting fp8/bf8 conversion intrinsics (#107291)
Trying to codegen these on targets without the instructions should
fail to select. Not sure if all the predicates are correct. We had
a fake one disconnected to a feature which was always true.
Fixes: SWDEV-482274
Commit: dc09f9644144a9598837a3684414603edb175e51
https://github.com/llvm/llvm-project/commit/dc09f9644144a9598837a3684414603edb175e51
Author: Wael Yehia <wyehia at ca.ibm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M compiler-rt/test/profile/instrprof-write-file-atexit-explicitly.c
Log Message:
-----------
[test] remove profile file at the start of profile/instrprof-write-file-atexit-explicitly.c
Commit: 102c384b5792eaa4e1b0095f9794637a23196ea3
https://github.com/llvm/llvm-project/commit/102c384b5792eaa4e1b0095f9794637a23196ea3
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/PassManager.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
R llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/NullPass.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.h
M llvm/lib/SandboxIR/PassManager.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
R llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/PassRegistry.def
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.cpp
M llvm/test/Transforms/SandboxVectorizer/default_pass_pipeline.ll
M llvm/test/Transforms/SandboxVectorizer/user_pass_pipeline.ll
M llvm/unittests/SandboxIR/PassTest.cpp
Log Message:
-----------
Revert "[SandboxVectorizer] Use sbvec-passes flag to create a pipeline of Region passes after BottomUpVec." (#111727)
Reverts llvm/llvm-project#111223
It broke one of the build bots:
LLVM Buildbot has detected a new failure on builder flang-aarch64-libcxx
running on linaro-flang-aarch64-libcxx while building llvm at step 5
"build-unified-tree".
Full details are available at:
https://lab.llvm.org/buildbot/#/builders/89/builds/8127
Commit: 208584d91ae138d752d89436e3df12fa8f2e60a8
https://github.com/llvm/llvm-project/commit/208584d91ae138d752d89436e3df12fa8f2e60a8
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/EvaluationResult.cpp
M clang/test/Misc/constexpr-subobj-init-source-ranges.cpp
Log Message:
-----------
[clang][bytecode] Fix source range of uncalled base dtor (#111683)
Make this emit the same source range as the current interpreter.
Commit: 1bb52e94621d2cba4f34504697cb0ea83805cb98
https://github.com/llvm/llvm-project/commit/1bb52e94621d2cba4f34504697cb0ea83805cb98
Author: Nathan Lanza <nathanlanza at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
A clang/include/clang/CIR/CIRGenerator.h
A clang/include/clang/CIR/FrontendAction/CIRGenAction.h
M clang/include/clang/Driver/Options.td
M clang/lib/CIR/CMakeLists.txt
A clang/lib/CIR/CodeGen/CIRGenModule.cpp
A clang/lib/CIR/CodeGen/CIRGenModule.h
A clang/lib/CIR/CodeGen/CIRGenTypeCache.h
A clang/lib/CIR/CodeGen/CIRGenerator.cpp
A clang/lib/CIR/CodeGen/CMakeLists.txt
A clang/lib/CIR/FrontendAction/CIRGenAction.cpp
A clang/lib/CIR/FrontendAction/CMakeLists.txt
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/FrontendTool/CMakeLists.txt
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
A clang/test/CIR/hello.c
A clang/test/CIR/lit.local.cfg
Log Message:
-----------
[CIR] Build out AST consumer patterns to reach the entry point into CIRGen
Build out the necessary infrastructure for the main entry point into
ClangIR generation -- CIRGenModule. A set of boilerplate classes exist
to facilitate this -- CIRGenerator, CIRGenAction, EmitCIRAction and
CIRGenConsumer. These all mirror the corresponding types from LLVM
generation by Clang's CodeGen.
The main entry point to CIR generation is
`CIRGenModule::buildTopLevelDecl`. It is currently just an empty
function. We've added a test to ensure that the pipeline reaches this
point and doesn't fail, but does nothing else. This will be removed in
one of the subsequent patches that'll add basic `cir.func` emission.
This patch also re-adds `-emit-cir` to the driver. lib/Driver/Driver.cpp
requires that a driver flag exists to facilirate the selection of the
right actions for the driver to create. Without a driver flag you get
the standard behaviors of `-S`, `-c`, etc. If we want to emit CIR IR
and, eventually, bytecode we'll need a driver flag to force this. This
is why `-emit-llvm` is a driver flag. Notably, `-emit-llvm-bc` as a cc1
flag doesn't ever do the right thing. Without a driver flag it is
incorrectly ignored and an executable is emitted. With `-S` a file named
`something.s` is emitted which actually contains bitcode.
Reviewers: AaronBallman, MaskRay, bcardosolopes
Reviewed By: bcardosolopes, AaronBallman
Pull Request: https://github.com/llvm/llvm-project/pull/91007
Commit: 1cfe5b89b70c8170da041e9507fd0801be766669
https://github.com/llvm/llvm-project/commit/1cfe5b89b70c8170da041e9507fd0801be766669
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M lldb/test/CMakeLists.txt
Log Message:
-----------
[lldb] Use SEND_ERROR instead of FATAL_ERROR in test/CMakeLists.txt (#111729)
Use SEND_ERROR (continue processing, but skip generation) instead of
FATAL_ERROR (stop processing and generation). This means that developers
get to see all errors at once, instead of seeing just the first error
and having to reconfigure to discover the next one.
Commit: e82fcda1475b6708b7d314fd7a54e551306d5739
https://github.com/llvm/llvm-project/commit/e82fcda1475b6708b7d314fd7a54e551306d5739
Author: Tyler Nowicki <tyler.nowicki at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
A llvm/include/llvm/Transforms/Coroutines/ABI.h
A llvm/include/llvm/Transforms/Coroutines/CoroInstr.h
A llvm/include/llvm/Transforms/Coroutines/CoroShape.h
M llvm/include/llvm/Transforms/Coroutines/CoroSplit.h
A llvm/include/llvm/Transforms/Coroutines/MaterializationUtils.h
A llvm/include/llvm/Transforms/Coroutines/SpillUtils.h
A llvm/include/llvm/Transforms/Coroutines/SuspendCrossingInfo.h
R llvm/lib/Transforms/Coroutines/ABI.h
M llvm/lib/Transforms/Coroutines/CoroEarly.cpp
M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
R llvm/lib/Transforms/Coroutines/CoroInstr.h
M llvm/lib/Transforms/Coroutines/CoroInternal.h
R llvm/lib/Transforms/Coroutines/CoroShape.h
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/lib/Transforms/Coroutines/Coroutines.cpp
M llvm/lib/Transforms/Coroutines/MaterializationUtils.cpp
R llvm/lib/Transforms/Coroutines/MaterializationUtils.h
M llvm/lib/Transforms/Coroutines/SpillUtils.cpp
R llvm/lib/Transforms/Coroutines/SpillUtils.h
M llvm/lib/Transforms/Coroutines/SuspendCrossingInfo.cpp
R llvm/lib/Transforms/Coroutines/SuspendCrossingInfo.h
M llvm/unittests/Transforms/Coroutines/ExtraRematTest.cpp
Log Message:
-----------
[Coroutines] Move util headers to include/llvm (#111599)
Plugin libraries that use coroutines can do so right now, however, to
provide their own ABI they need to be able to use various headers, some
of which such are required (such as the ABI header). This change exposes
the coro utils and required headers by moving them to
include/llvm/Transforms/Coroutines. My experience with our out-of-tree
plugin ABI has been that at least these headers are needed. The headers
moved are:
* ABI.h (ABI object)
* CoroInstr.h (helpers)
* Coroshape.h (Shape object)
* MaterializationUtils.h (helpers)
* SpillingUtils.h (helpers)
* SuspendCrossingInfo.h (analysis)
This has no code changes other than those required to move the headers
and these are:
* include guard name changes
* include path changes
* minor clang-format induced changes
* removal of LLVM_LIBRARY_VISIBILITY
Commit: 9200adee266b5bfaa468c5ce2715ed9794e1a7a8
https://github.com/llvm/llvm-project/commit/9200adee266b5bfaa468c5ce2715ed9794e1a7a8
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M libcxx/include/module.modulemap
Log Message:
-----------
[libc++] Narrow the exports for common_type (#111681)
Based on a comment in #99473, it seems like `export *` may be overkill.
Commit: 749e21860061a1b317916579252a864b92a134d7
https://github.com/llvm/llvm-project/commit/749e21860061a1b317916579252a864b92a134d7
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M libcxx/utils/ci/run-buildbot
Log Message:
-----------
[libc++][NFC] Remove obsolete --osx-roots parameter to run-buildbot
That isn't used anymore since we now run backdeployment testing
on the target system directly instead of using pre-packaged roots.
Commit: 4605ba0437728ecf8233ba6dbb52ffba30a22743
https://github.com/llvm/llvm-project/commit/4605ba0437728ecf8233ba6dbb52ffba30a22743
Author: Tarun Prabhu <tarun at lanl.gov>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M flang/lib/Optimizer/Passes/CMakeLists.txt
Log Message:
-----------
[flang] Link libflangPasses against correct libraries
libflangPasses.so was not linked against the correct libraries which
caused a build failure with -DBUILD_SHARED_LIBS=On. Fixes #110425
Commit: e0737174f944e6da2d3052e57de04ad93503956b
https://github.com/llvm/llvm-project/commit/e0737174f944e6da2d3052e57de04ad93503956b
Author: Petr Hosek <phosek at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M libcxxabi/src/abort_message.cpp
M libcxxabi/src/abort_message.h
M libcxxabi/src/cxa_default_handlers.cpp
M libcxxabi/src/cxa_exception_storage.cpp
M libcxxabi/src/cxa_guard_impl.h
M libcxxabi/src/cxa_handlers.cpp
M libcxxabi/src/cxa_thread_atexit.cpp
M libcxxabi/src/cxa_vector.cpp
M libcxxabi/src/cxa_virtual.cpp
M libcxxabi/src/demangle/DemangleConfig.h
M libcxxabi/src/stdlib_new_delete.cpp
Log Message:
-----------
[libc++abi] Rename abort_message to __abort_message (#111413)
This is an internal API and the name should reflect that.
This is a reland of #108887.
Commit: d602f935daebce2ae6a023420133b3fa7da3c923
https://github.com/llvm/llvm-project/commit/d602f935daebce2ae6a023420133b3fa7da3c923
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
A flang/test/Semantics/OpenMP/shared-pointer.f90
Log Message:
-----------
[flang][OpenMP] Treat POINTER variables as valid variable list items (#111722)
Follow-up to 418920b3fbdefec5b56ee2b9db96884d0ada7329, which started
diagnosing the legality of objects in OpenMP clauses (and caused some
test failures).
Commit: f020bf15263f71e76e8b64fd0c333fff9744beae
https://github.com/llvm/llvm-project/commit/f020bf15263f71e76e8b64fd0c333fff9744beae
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/long-full-reg-stores.ll
Log Message:
-----------
[SLP]Initial support for non-power-of-2 (but whole reg) vectorization for stores
Allows non-power-of-2 vectorization for stores, but still requires, that
vectorized number of elements forms full vector registers.
Reviewers: RKSimon
Reviewed By: RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/111194
Commit: 74e1062e34542c6c43293da51ad6e1c7d41ced2c
https://github.com/llvm/llvm-project/commit/74e1062e34542c6c43293da51ad6e1c7d41ced2c
Author: Zentrik <llvm.zentrik at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/lib/ExecutionEngine/CMakeLists.txt
Log Message:
-----------
[MLIR] Don't build MLIRExecutionEngineShared on Windows (#109524)
This disabled the build of `MLIRExecutionEngineShared` because this causes linkage issues in windows for currently unknown reasons.
Related issue: https://github.com/llvm/llvm-project/issues/106859.
Commit: f0fc1d376c85d226e6623a3981da0bf4f4efc2ec
https://github.com/llvm/llvm-project/commit/f0fc1d376c85d226e6623a3981da0bf4f4efc2ec
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
Log Message:
-----------
[RISCV] Use MCStreamer::emitInstruction instead of calling AsmPrinter::EmitToStreamer. NFC (#111714)
This allows us to pass the STI we already have cached instead of
AsmPrinter::EmitToStreamer looking it up from the MachineFunction again.
My plan is to make EmitHwasanMemaccessSymbols use
RISCVAsmPrinter::EmitToStreamer instead of calling
MCStreamer::emitInstruction. To do that I need control of the
MCSubtargetInfo.
Commit: 65bd5ed84f8b5e24bbee094a721c386ee6670798
https://github.com/llvm/llvm-project/commit/65bd5ed84f8b5e24bbee094a721c386ee6670798
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
M mlir/test/Dialect/OpenACC/invalid.mlir
Log Message:
-----------
[mlir][openacc] Update verifier to catch missing device type attribute (#111586)
Operands with device_type support need the corresponding attribute but
this was not catches in the verifier if it was missing. The custom
parser usually constructs it but creating the op from python could lead
to a segfault in the printer. This patch updates the verifier so we
catch this early on.
Commit: 35684fa4bc8d2288d479cb8aa9d275b14bfefead
https://github.com/llvm/llvm-project/commit/35684fa4bc8d2288d479cb8aa9d275b14bfefead
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M .github/new-prs-labeler.yml
Log Message:
-----------
[Github] Switch vectorization PR label to vectorizers (#111633)
This changes the PR label to match the name of the subscriber team.
Fixes #111485.
Commit: 853c43d04a378c379e49db552e856f02a5ad9216
https://github.com/llvm/llvm-project/commit/853c43d04a378c379e49db552e856f02a5ad9216
Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMISelLowering.h
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h
M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.h
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.h
Log Message:
-----------
[TTI] NFC: Port TLI.shouldSinkOperands to TTI (#110564)
Porting to TTI provides direct access to the instruction cost model,
which can enable instruction cost based sinking without introducing code
duplication.
Commit: 115cb402d8ed91f94d22afcc4c2c9ed9def53cc7
https://github.com/llvm/llvm-project/commit/115cb402d8ed91f94d22afcc4c2c9ed9def53cc7
Author: Heejin Ahn <aheejin at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
A llvm/test/CodeGen/WebAssembly/fast-isel-no-offset.ll
M llvm/test/CodeGen/WebAssembly/fast-isel-pr47040.ll
Log Message:
-----------
[WebAssembly] Don't fold non-nuw add/sub in FastISel (#111278)
We should not fold one of add/sub operands into a load/store's offset
when `nuw` (no unsigned wrap) is not present, because the address
calculation, which adds the offset with the operand, does not wrap.
This is handled correctly in the normal ISel:
https://github.com/llvm/llvm-project/blob/6de5305b3d7a4a19a29b35d481a8090e2a6d3a7e/llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp#L328-L332
but not in FastISel.
This positivity check in FastISel is not sufficient to avoid this case
fully:
https://github.com/llvm/llvm-project/blob/6de5305b3d7a4a19a29b35d481a8090e2a6d3a7e/llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp#L348-L352
because
1. Even if RHS is within signed int range, depending on the value of the
LHS, the resulting value can exceed uint32 max.
2. When one of the operands is a label, `Address` can contain a
`GlobalValue` and a `Reg` at the same time, so the `GlobalValue` becomes
incorrectly an offset:
https://github.com/llvm/llvm-project/blob/6de5305b3d7a4a19a29b35d481a8090e2a6d3a7e/llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp#L53-L69
https://github.com/llvm/llvm-project/blob/6de5305b3d7a4a19a29b35d481a8090e2a6d3a7e/llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp#L409-L417
Both cases are in the newly added test.
We should handle `SUB` too because `SUB` is the same as `ADD` when RHS's
sign changes. I checked why our current normal ISel only handles `ADD`,
and the reason it's OK for the normal ISel to handle only `ADD` seems
that DAGCombiner replaces `SUB` with `ADD` here:
https://github.com/llvm/llvm-project/blob/6de5305b3d7a4a19a29b35d481a8090e2a6d3a7e/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp#L3904-L3907
Fixes #111018.
Commit: ac3321f104ae2a0639845f860b05c97568bb24e2
https://github.com/llvm/llvm-project/commit/ac3321f104ae2a0639845f860b05c97568bb24e2
Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M lldb/scripts/generate-sbapi-dwarf-enum.py
Log Message:
-----------
[lldb] Add missing include to SBLanguages.h (#111763)
SBLanguages.h uses a uint16_t but is missing the include for
`<cstdint>`, if any file includes this without including that it will
cause a build error so this commit adds this include.
Commit: 91dd4ec20e8371ea5e920f5493688e13306a67d2
https://github.com/llvm/llvm-project/commit/91dd4ec20e8371ea5e920f5493688e13306a67d2
Author: Krystian Stasiowski <sdkrystian at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/Decl.h
M clang/include/clang/AST/DeclBase.h
M clang/include/clang/AST/DeclTemplate.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/Decl.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
R clang/test/SemaTemplate/GH55509.cpp
Log Message:
-----------
Revert "[clang] Track function template instantiation from definition (#110387)" (#111764)
This reverts commit 4336f00f2156970cc0af2816331387a0a4039317.
Commit: c55d68fcc67d70235d6e4b75fe3879ab4d24a6b6
https://github.com/llvm/llvm-project/commit/c55d68fcc67d70235d6e4b75fe3879ab4d24a6b6
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/tools/clang-scan-deps/ClangScanDeps.cpp
Log Message:
-----------
[clang][deps] Serialize JSON without creating intermediate objects (#111734)
The dependency scanner uses the `llvm::json` library for outputting the
dependency information. Until now, it created an in-memory
representation of the dependency graph using the `llvm::json::Object`
hierarchy. This not only creates unnecessary copies of the data, but
also forces lexicographical ordering of attributes in the output, both
of which I'd like to avoid. This patch adopts the `llvm::json::OStream`
API instead and reorders the attribute printing logic such that the
existing lexicographical ordering is preserved (for now).
Commit: 1dff3309fd3c956fce9e6f60ff57a26f364733d1
https://github.com/llvm/llvm-project/commit/1dff3309fd3c956fce9e6f60ff57a26f364733d1
Author: Krystian Stasiowski <sdkrystian at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/DeclTemplate.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/DeclTemplate.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
R clang/test/CXX/temp/temp.constr/temp.constr.decl/p4.cpp
R clang/test/CXX/temp/temp.spec/temp.expl.spec/p7.cpp
M clang/test/Modules/cxx-templates.cpp
Log Message:
-----------
Revert "Reapply "[Clang][Sema] Refactor collection of multi-level template argument lists (#106585)" (#111173)" (#111766)
This reverts commit 4da8ac34f76e707ab94380b94f616457cfd2cb83.
Commit: 4b4a0d419c81b8b12a7dbb33dae1f7e9be91a88f
https://github.com/llvm/llvm-project/commit/4b4a0d419c81b8b12a7dbb33dae1f7e9be91a88f
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
A llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-load-store-pointers.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-global-old-legalization.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-local.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-constant.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-flat.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-global.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-local.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-private.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-store-global.mir
Log Message:
-----------
Reapply "[AMDGPU][GlobalISel] Fix load/store of pointer vectors, buffer.*.pN (#110714)" v2 (#111708)
This adds `-disable-gisel-legality-check` to some gfx6 and gfx7 test
lines to prevent behavior mismatches between debug and release builds
The first attempted reapply was #111059
This reverts commit e075dcf7d270fd52dc837163ff24e8c872dfeb49.
Commit: 0aaac4fe194ae2249e1a01f9d6f5eac0d75c5bb2
https://github.com/llvm/llvm-project/commit/0aaac4fe194ae2249e1a01f9d6f5eac0d75c5bb2
Author: Nicolas van Kempen <nvankemp at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang-tools-extra/clang-tidy/performance/MoveConstArgCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/performance/move-const-arg.cpp
Log Message:
-----------
[clang-tidy][performance-move-const-arg] Fix crash when argument type has no definition (#111472)
Fix #111450.
Commit: 4aba20fecaa09089132afe451aa04a22cd3794ca
https://github.com/llvm/llvm-project/commit/4aba20fecaa09089132afe451aa04a22cd3794ca
Author: Nicolas van Kempen <nvankemp at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang-tools-extra/clang-tidy/rename_check.py
Log Message:
-----------
[NFC][clang-tidy] Add type annotations to rename_check.py (#108443)
```
> python3 -m mypy --strict clang-tools-extra/clang-tidy/rename_check.py
Success: no issues found in 1 source file
```
Commit: dc85d5263ed5e416cb4ddf405611472f4ef12fd3
https://github.com/llvm/llvm-project/commit/dc85d5263ed5e416cb4ddf405611472f4ef12fd3
Author: Kyungwoo Lee <kyulee at meta.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/CodeGen/BackendUtil.cpp
M llvm/include/llvm/CGData/CodeGenData.h
M llvm/include/llvm/CGData/CodeGenDataReader.h
M llvm/include/llvm/LTO/LTO.h
M llvm/include/llvm/LTO/LTOBackend.h
M llvm/lib/CGData/CMakeLists.txt
M llvm/lib/CGData/CodeGenData.cpp
M llvm/lib/CGData/CodeGenDataReader.cpp
M llvm/lib/LTO/CMakeLists.txt
M llvm/lib/LTO/LTO.cpp
M llvm/lib/LTO/LTOBackend.cpp
A llvm/test/ThinLTO/AArch64/cgdata-two-rounds-caching.ll
A llvm/test/ThinLTO/AArch64/cgdata-two-rounds.ll
A llvm/test/ThinLTO/AArch64/lit.local.cfg
Log Message:
-----------
[CGData][ThinLTO] Global Outlining with Two-CodeGen Rounds (#90933)
This feature is enabled by `-codegen-data-thinlto-two-rounds`, which
effectively runs the `-codegen-data-generate` and `-codegen-data-use` in
two rounds to enable global outlining with ThinLTO.
1. The first round: Run both optimization + codegen with a scratch
output.
Before running codegen, we serialize the optimized bitcode modules to a
temporary path.
2. From the scratch object files, we merge them into the codegen data.
3. The second round: Read the optimized bitcode modules and start the
codegen only this time.
Using the codegen data, the machine outliner effectively performs the
global outlining.
Depends on #90934, #110461 and #110463.
This is a patch for
https://discourse.llvm.org/t/rfc-enhanced-machine-outliner-part-2-thinlto-nolto/78753.
Commit: a7971449e59215fb2fefbfcbd8bd1e7b40d4cd1f
https://github.com/llvm/llvm-project/commit/a7971449e59215fb2fefbfcbd8bd1e7b40d4cd1f
Author: Florian Mayer <fmayer at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64GlobalsTagging.cpp
Log Message:
-----------
[NFC] [MTE] Improve readability of AArch64GlobalsTagging (#111580)
`shouldTagGlobal` doesn't sound like it should modify anything, so don't
do that. Remove unused code. Use SmallVector over std::vector
Commit: e547d041faf455986e511f375f1a3d2bb084ef87
https://github.com/llvm/llvm-project/commit/e547d041faf455986e511f375f1a3d2bb084ef87
Author: Kyungwoo Lee <kyulee at meta.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/LTO/LTO.cpp
Log Message:
-----------
Fix build failure for [CGData][ThinLTO] Global Outlining with Two-CodeGen Rounds (#90933)
Commit: a31d0b2e2bcc8c0c8907721896506c7ffd3e9502
https://github.com/llvm/llvm-project/commit/a31d0b2e2bcc8c0c8907721896506c7ffd3e9502
Author: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/test/CodeGen/AMDGPU/schedule-amdgpu-tracker-physreg.ll
M llvm/test/CodeGen/AMDGPU/schedule-amdgpu-trackers.ll
Log Message:
-----------
[AMDGPU] Remove some lit check lines
Change-Id: I77e72d23d41095b8fcc47996d8004f9e264968de
Commit: 61a46780d10c8f4e12c9b5496f5ca3f2cc7fba66
https://github.com/llvm/llvm-project/commit/61a46780d10c8f4e12c9b5496f5ca3f2cc7fba66
Author: jeffreytan81 <jeffreytan at meta.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/DWARFIndex.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFIndex.h
M lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.h
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
Log Message:
-----------
Improve type lookup using .debug_names parent chain (#108907)
## Summary
This PR improves `SymbolFileDWARF::FindTypes()` by utilizing the newly
added parent chain `DW_IDX_parent` in `.debug_names`. The proposal was
originally discussed in [this
RFC](https://discourse.llvm.org/t/rfc-improve-dwarf-5-debug-names-type-lookup-parsing-speed/74151).
## Implementation
To leverage the parent chain for `SymbolFileDWARF::FindTypes()`, this PR
adds a new API: `GetTypesWithQuery` in `DWARFIndex` base class. The API
performs the same function as `GetTypes` with additional filtering using
`TypeQuery`. Since this only introduces filtering, the callback
mechanisms at all call sites remain unchanged. A default implementation
is given in `DWARFIndex` class which parses debug info and performs the
matching. In the `DebugNameDWARFIndex` override, the parent_contexts in
the `TypeQuery` is cross checked with parent chain in `.debug_names` for
for much faster filtering before fallback to base implementation for
final filtering.
Unlike the `GetFullyQualifiedType` API, which fully consumes the
`DW_IDX_parent` parent chain for exact matching, these new APIs perform
partial subset matching for type/namespace queries. This is necessary to
support queries involving anonymous or inline namespaces. For instance,
a user might request `NS1::NS2::NS3::Foo`, while the index table's
parent chain might contain `NS1::inline_NS2::NS3::Foo`, which would fail
exact matching.
## Performance Results
In one of our internal target using `.debug_names` + split dwarf.
Expanding a "this" pointer in locals view in VSCode:
94s => 48s. (Not sure why I got 94s this time instead of 70s last week).
---------
Co-authored-by: jeffreytan81 <jeffreytan at fb.com>
Commit: 923566a67de39a00eb6fc5cabbad307a72aa338e
https://github.com/llvm/llvm-project/commit/923566a67de39a00eb6fc5cabbad307a72aa338e
Author: c8ef <c8ef at outlook.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
A llvm/test/Transforms/InstCombine/logb.ll
Log Message:
-----------
[ConstantFold] Fold `logb` and `logbf` when the input parameter is a constant value. (#111232)
This patch adds support for constant folding for the `logb` and `logbf`
libc functions.
Commit: d52c8408ff2cd9d0125f0e3096731a039ba0d33d
https://github.com/llvm/llvm-project/commit/d52c8408ff2cd9d0125f0e3096731a039ba0d33d
Author: YunQiang Su <yunqiang at isrc.iscas.ac.cn>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/test/CodeGen/AArch64/vecreduce-fmax-legalization.ll
M llvm/test/CodeGen/AArch64/vecreduce-fmin-legalization.ll
M llvm/test/CodeGen/ARM/minnum-maxnum-intrinsics.ll
M llvm/test/CodeGen/Thumb2/mve-vecreduce-fminmax.ll
Log Message:
-----------
SelectionDAG/expandFMINNUM_FMAXNUM: skips vector if SETCC/VSELECT is not legal (#109570)
If SETCC or VSELECT is not legal for vector, we should not expand it,
instead we can split the vectors.
So that, some simple scale instructions can be emitted instead of
some pairs of comparation+selection.
Commit: 756ec99c3629b433d803022d6d33e01d2ecd34a0
https://github.com/llvm/llvm-project/commit/756ec99c3629b433d803022d6d33e01d2ecd34a0
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/PassManager.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
A llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/NullPass.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.h
M llvm/lib/SandboxIR/PassManager.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
A llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/PassRegistry.def
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.cpp
M llvm/test/Transforms/SandboxVectorizer/default_pass_pipeline.ll
M llvm/test/Transforms/SandboxVectorizer/user_pass_pipeline.ll
M llvm/unittests/SandboxIR/PassTest.cpp
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
[SandboxVec] Re-land "Use sbvec-passes flag to create a pipeline of Region passes after BottomUpVec. (#111223)" (#111772)
https://github.com/llvm/llvm-project/pull/111223 was reverted because of
a build failure with `-DBUILD_SHARED_LIBS=on`.
The Passes component depends on Vectorizer (because PassBuilder needs to
be able to instantiate SandboxVectorizerPass). This resulted in CMake
doing this
1. when it builds lib/libLLVMVectorize.so.20.0git it adds
lib/libLLVMSandboxIR.so.20.0git to the command line, because it's listed
as a dependency (as expected)
2. when it's trying to build lib/libLLVMPasses.so.20.0git it adds
lib/libLLVMVectorize.so.20.0git to the command line, because it's listed
as a dependency (also as expected). But not libLLVMSandboxIR.so.
When SandboxVectorizerPass has its ctors/dtors defined inline, this
caused "undefined reference to vtable" linker errors. This change works
around that by moving ctors/dtors out of line.
Also fix a bazel build problem by adding the new
`llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/PassRegistry.def`
as a textual header in the Vectorizer target.
Commit: 68a5f5db7c970d22dc40637d7951b627fa50d5c1
https://github.com/llvm/llvm-project/commit/68a5f5db7c970d22dc40637d7951b627fa50d5c1
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M lldb/test/API/python_api/global_module_cache/TestGlobalModuleCache.py
Log Message:
-----------
[lldb] Fix TestGlobalModuleCache.py for remote debugging (#111483)
`SBDebugger().Create()` returns a debugger with only the host platform
in its platform list. If the test suite is running for a remote
platform, it should be explicitly added and selected in the new debugger
created within the test, otherwise, the test will fail because the host
platform may not be able to launch the built binary.
Commit: 03229e7c0b1f28b01a75d2d258b16b37c2d2e9b9
https://github.com/llvm/llvm-project/commit/03229e7c0b1f28b01a75d2d258b16b37c2d2e9b9
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/lib/Parse/ParseTemplate.cpp
M clang/test/SemaTemplate/concepts.cpp
Log Message:
-----------
[Clang][Parser] Don't evaluate concept when its definition is invalid (#111179)
Since #103867, the nullness of the concept declaration has been turned
to represent a state in which the concept definition is being parsed and
used for self-reference checking.
However, PR missed a case where such a definition could be invalid, and
we shall inhibit making it into evaluation.
Fixes https://github.com/llvm/llvm-project/issues/109780
Commit: 5a74a4a667c99a76317e80c49ae7b087b779d6a9
https://github.com/llvm/llvm-project/commit/5a74a4a667c99a76317e80c49ae7b087b779d6a9
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
M llvm/test/CodeGen/AMDGPU/aa-as-infer.ll
Log Message:
-----------
[Attributor] Take the address space from addrspacecast directly (#108258)
Currently `AAAddressSpace` relies on identifying the address spaces of
all underlying objects. However, it might infer sub-optimal address
space when the underlying object is a function argument. In
`AMDGPUPromoteKernelArgumentsPass`, the promotion of a pointer kernel
argument is by adding a series of `addrspacecast` instructions (as shown
below), and hoping `InferAddressSpacePass` can pick it up and do the
rewriting accordingly.
Before promotion:
```
define amdgpu_kernel void @kernel(ptr %to_be_promoted) {
%val = load i32, ptr %to_be_promoted
...
ret void
}
```
After promotion:
```
define amdgpu_kernel void @kernel(ptr %to_be_promoted) {
%ptr.cast.0 = addrspace cast ptr % to_be_promoted to ptr addrspace(1)
%ptr.cast.1 = addrspace cast ptr addrspace(1) %ptr.cast.0 to ptr
# all the use of %to_be_promoted will use %ptr.cast.1
%val = load i32, ptr %ptr.cast.1
...
ret void
}
```
When `AAAddressSpace` analyzes the code after promotion, it will take
`%to_be_promoted` as the underlying object of `%ptr.cast.1`, and use its
address space (which is 0) as its final address space, thus simply do
nothing in `manifest`. The attributor framework will them eliminate the
address space cast from 0 to 1 and back to 0, and replace `%ptr.cast.1`
with `%to_be_promoted`, which basically reverts all changes by
`AMDGPUPromoteKernelArgumentsPass`.
IMHO I'm not sure if `AMDGPUPromoteKernelArgumentsPass` promotes the
argument in a proper way. To improve the handling of this case, this PR
adds an extra handling when iterating over all underlying objects. If an
underlying object is a function argument, it means it reaches a terminal
such that we can't futher deduce its underlying object further. In this
case, we check all uses of the argument. If they are all `addrspacecast`
instructions and their destination address spaces are same, we take the
destination address space.
Fixes: SWDEV-482640.
Commit: 1be849c529f315732c509f8bf72c30de4bc45380
https://github.com/llvm/llvm-project/commit/1be849c529f315732c509f8bf72c30de4bc45380
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M bolt/lib/Profile/YAMLProfileReader.cpp
Log Message:
-----------
[BOLT] Avoid repeated hash lookups (NFC) (#111782)
Commit: 9093ba9f7ee58ccf62e58487a5028707a248c0b7
https://github.com/llvm/llvm-project/commit/9093ba9f7ee58ccf62e58487a5028707a248c0b7
Author: Thomas Fransham <tfransham at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Support/Unix/Threading.inc
M llvm/lib/Support/Windows/Threading.inc
Log Message:
-----------
[Support] Include Support/thread.h before api implementations (#111175)
This header was included after the implementations to work around an
issue with FreeBSD, however, , this causes some issues when
dllexport\explicit visibility
attributes will be added to the headers on Windows, since the
definitions need to see the declarations for the attributes to apply.
This is part of the work to enable LLVM_BUILD_LLVM_DYLIB and plugins on
windows.
---------
Co-authored-by: Tom Stellard <tstellar at redhat.com>
Commit: 562999a9f32779c7017235969ec62d99e51a7865
https://github.com/llvm/llvm-project/commit/562999a9f32779c7017235969ec62d99e51a7865
Author: Amr Hesham <amr96 at programmer.net>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/test/SemaCXX/alloc-align-attr.cpp
M clang/test/SemaCXX/builtin-assume-aligned-tmpl.cpp
A clang/test/SemaCXX/noescape-attr.cpp
M clang/test/SemaObjCXX/noescape.mm
Log Message:
-----------
[clang] assume_aligned incorrectly diagnoses a dependent return type (#111573)
Fix `assume_aligned` incorrectly diagnoses a dependent return type
Fixes: #111563
Commit: c86edd03adaaa49b70af8d74ab5e2a09c9daab37
https://github.com/llvm/llvm-project/commit/c86edd03adaaa49b70af8d74ab5e2a09c9daab37
Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/test/CodeGenHLSL/convergence/do.while.hlsl
M clang/test/CodeGenHLSL/convergence/for.hlsl
M clang/test/CodeGenHLSL/convergence/while.hlsl
Log Message:
-----------
[SPIR-V] strengthen some lit tests (#111636)
These tests were failing spuriously with unrelated changes under
development.
Commit: 9432f7074c8ebacd33cb0b271054881c8f566276
https://github.com/llvm/llvm-project/commit/9432f7074c8ebacd33cb0b271054881c8f566276
Author: Durgadoss R <durgadossr at nvidia.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M mlir/test/Integration/GPU/CUDA/sm90/tma_load_128x128_stride_noswizzle.mlir
Log Message:
-----------
[MLIR][NVGPU-Tests] Fix a failing sm90 test (#111731)
The memref.expand_shape explicitly takes an output_shape now.
This patch adds it to the Op and fixes the failing test.
Signed-off-by: Durgadoss R <durgadossr at nvidia.com>
Commit: 527cd117b2cb189f59ba64882b2bc5d15e35eefb
https://github.com/llvm/llvm-project/commit/527cd117b2cb189f59ba64882b2bc5d15e35eefb
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/test/MC/RISCV/machine-csr-names.s
M llvm/test/MC/RISCV/rv32-machine-csr-names.s
Log Message:
-----------
[RISCV] Move testing of Smrnmi CSRs to machine-csr-names.s. NFC (#111790)
I incorrectly put them in rv32-machine-csr-names.s which only tests
RV32.
Commit: 1d3bfbb05a33a7110c3af2baf6c1affc7d06bbb7
https://github.com/llvm/llvm-project/commit/1d3bfbb05a33a7110c3af2baf6c1affc7d06bbb7
Author: Christian Ulmann <christianulmann at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/test/Target/LLVMIR/Import/global-variables.ll
Log Message:
-----------
[MLIR][LLVM] Fix import of globals with references to other globals (#111703)
This commit addresses an issue with importing globals that reference
other globals. This case did not properly work due to not considering
that `llvm::GlobalVariables` are derived from `llvm::Constant`.
Commit: cd04a9d40191784b63a1f288afc534b6d91e293d
https://github.com/llvm/llvm-project/commit/cd04a9d40191784b63a1f288afc534b6d91e293d
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/test/Transforms/SimplifyCFG/X86/merge-compatible-invokes-of-landingpad.ll
Log Message:
-----------
[SimplifyCFG] Add/update tests for merging invokes with different attrs; NFC
Commit: 82ac3997334f0a128bc770383c09a5ded53daec1
https://github.com/llvm/llvm-project/commit/82ac3997334f0a128bc770383c09a5ded53daec1
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/test/Transforms/SimplifyCFG/X86/merge-compatible-invokes-of-landingpad.ll
Log Message:
-----------
[SimplifyCFG] Allow merging invoke's with different attrs
Same logic as other callsites, if the attributes are intersectable, we
merge.
Closes #111713
Commit: 9fb2378ad52927cafa918b51f2054c47108f2f24
https://github.com/llvm/llvm-project/commit/9fb2378ad52927cafa918b51f2054c47108f2f24
Author: Martin Storsjö <martin at martin.st>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M libcxx/CMakeLists.txt
A libcxx/test/configs/llvm-libc++-mingw.cfg.in
R libcxx/test/configs/llvm-libc++-shared-mingw.cfg.in
R libcxx/test/configs/llvm-libc++-static-mingw.cfg.in
Log Message:
-----------
[libcxx] [test] Merge the MinGW static/shared test config files (#111759)
These were split in 0e8208eca1c316b7302de7803ab0d85a1dd77076, with the
only functional difference between them at the time being `--prepend_env
PATH=%{lib-dir}` in the static config and `--prepend_env
PATH=%{install-prefix}/bin` in the shared library config.
However this difference is unnecessary - the static library config
doesn't need any `--prepend_env` argument at all. Before
0e8208eca1c316b7302de7803ab0d85a1dd77076, both configurations used the
same config file, where the `--prepend_env` argument was unnecessary but
benign in the static case.
Reduce the unnecessary config duplication in this case, and return these
configs to using one single config file for both setups.
Commit: c15611a6979c4962de285a26efd85bd34f6c6f29
https://github.com/llvm/llvm-project/commit/c15611a6979c4962de285a26efd85bd34f6c6f29
Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
[bazel] port dc85d5263ed5e416cb4ddf405611472f4ef12fd3
Commit: f93258e4aca518cba3d48db59ed6143ca19ca99b
https://github.com/llvm/llvm-project/commit/f93258e4aca518cba3d48db59ed6143ca19ca99b
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/test/AST/ByteCode/new-delete.cpp
Log Message:
-----------
[clang][bytecode] Diagnose class-specific operator delete calls (#111700)
Commit: 8d35ab80fc7a856ac6a60cf9074210f3983206ac
https://github.com/llvm/llvm-project/commit/8d35ab80fc7a856ac6a60cf9074210f3983206ac
Author: YunQiang Su <yunqiang at isrc.iscas.ac.cn>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/test/CodeGen/AArch64/combine_andor_with_cmps.ll
A llvm/test/CodeGen/AArch64/fp-maximumnum-minimumnum.ll
Log Message:
-----------
AArch64: Add FMINNUM_IEEE and FMAXNUM_IEEE support (#107855)
FMINNM/FMAXNM instructions of AArch64 follow IEEE754-2008. We can use
them to canonicalize a floating point number. And
FMINNUM_IEEE/FMAXNUM_IEEE is used by something like expanding
FMINIMUMNUM/FMAXIMUMNUM, so let's define them.
Update combine_andor_with_cmps.ll.
Add fp-maximumnum-minimumnum.ll, with nnan testcases only.
V1F64 is not supported yet.
If we set v1f64 as legal, FMINNUM/FMAXNUM will have some problem:
both of them use `if (isOperationLegalOrCustom(FMAXNUM_IEEE, VT))`.
AArch64 depends on `expandFMINNUM_FMAXNUM` returning `SDValue()`
for FMAXNUM and FMINNUM.
We should fix this problem, while it will be in future patch.
Commit: 6213aa5e58a7d32bdc82dd40322fb1bab83c4783
https://github.com/llvm/llvm-project/commit/6213aa5e58a7d32bdc82dd40322fb1bab83c4783
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/Sema.h
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.template/p3-0x.cpp
M clang/test/CXX/temp/temp.param/p12.cpp
M clang/test/Modules/cxx-templates.cpp
M clang/test/SemaCXX/make_integer_seq.cpp
M clang/test/SemaTemplate/cwg2398.cpp
M clang/test/SemaTemplate/temp_arg_nontype.cpp
M clang/test/SemaTemplate/temp_arg_template.cpp
M clang/test/SemaTemplate/temp_arg_template_p0522.cpp
M clang/test/Templight/templight-empty-entries-fix.cpp
M clang/test/Templight/templight-prior-template-arg.cpp
Log Message:
-----------
Reland: [clang] Finish implementation of P0522 (#111711)
This finishes the clang implementation of P0522, getting rid of the
fallback to the old, pre-P0522 rules.
Before this patch, when partial ordering template template parameters,
we would perform, in order:
* If the old rules would match, we would accept it. Otherwise, don't
generate diagnostics yet.
* If the new rules would match, just accept it. Otherwise, don't
generate any diagnostics yet again.
* Apply the old rules again, this time with diagnostics.
This situation was far from ideal, as we would sometimes:
* Accept some things we shouldn't.
* Reject some things we shouldn't.
* Only diagnose rejection in terms of the old rules.
With this patch, we apply the P0522 rules throughout.
This needed to extend template argument deduction in order to accept the
historial rule for TTP matching pack parameter to non-pack arguments.
This change also makes us accept some combinations of historical and
P0522 allowances we wouldn't before.
It also fixes a bunch of bugs that were documented in the test suite,
which I am not sure there are issues already created for them.
This causes a lot of changes to the way these failures are diagnosed,
with related test suite churn.
The problem here is that the old rules were very simple and
non-recursive, making it easy to provide customized diagnostics, and to
keep them consistent with each other.
The new rules are a lot more complex and rely on template argument
deduction, substitutions, and they are recursive.
The approach taken here is to mostly rely on existing diagnostics, and
create a new instantiation context that keeps track of this context.
So for example when a substitution failure occurs, we use the error
produced there unmodified, and just attach notes to it explaining that
it occurred in the context of partial ordering this template argument
against that template parameter.
This diverges from the old diagnostics, which would lead with an error
pointing to the template argument, explain the problem in subsequent
notes, and produce a final note pointing to the parameter.
Commit: 12ae1ea13e68657ac75d65fd62385cae5272e2cb
https://github.com/llvm/llvm-project/commit/12ae1ea13e68657ac75d65fd62385cae5272e2cb
Author: Dmitry Polukhin <34227995+dmpolukhin at users.noreply.github.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/include/clang/AST/DeclBase.h
M clang/include/clang/Serialization/ASTReader.h
M clang/lib/AST/DeclBase.cpp
A clang/test/Headers/header-unit-common-cmp-cat.cpp
Log Message:
-----------
[C++20][Modules] Relax ODR check in unnamed modules (#111160)
Summary:
Option `-fskip-odr-check-in-gmf` is set by default and I think it is
what most of C++ developers want. But in header units, Clang ODR
checking is too strict, making them hard to use, as seen in the example
in the diff. This diff relaxes ODR checks for unnamed modules to match
GMF ODR checking.
Test Plan: check-clang
Commit: 224519b08945637a85e9798c78286643288f7b77
https://github.com/llvm/llvm-project/commit/224519b08945637a85e9798c78286643288f7b77
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/TemplateDeduction.h
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/test/SemaTemplate/cwg2398.cpp
Log Message:
-----------
[clang] CWG2398: improve overload resolution backwards compat (#107350)
With this change, we discriminate if the primary template and which
partial specializations would have participated in overload resolution
prior to P0522 changes.
We collect those in an initial set. If this set is not empty, or the
primary template would have matched, we proceed with this set as the
candidates for overload resolution.
Otherwise, we build a new overload set with everything else, and proceed
as usual.
Commit: 4dadf42c1a74dd4e37db9ffd6fbb3027f59751a7
https://github.com/llvm/llvm-project/commit/4dadf42c1a74dd4e37db9ffd6fbb3027f59751a7
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/include/clang/Sema/Overload.h
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/test/SemaTemplate/cwg2398.cpp
Log Message:
-----------
[clang] Implement TTP P0522 pack matching for deduced function template calls. (#111457)
Clang previously missed implementing P0522 pack matching for deduced
function template calls.
Fixes #111363
Commit: 741ad3ab8e8b65b4efe423555797229d41be19f2
https://github.com/llvm/llvm-project/commit/741ad3ab8e8b65b4efe423555797229d41be19f2
Author: Finlay <finlay.marno at codeplay.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
Log Message:
-----------
[mlir][llvmir] Added extra builders for CallInstrinsicOp (#111664)
Extra builders for CallIntrinsicOp.
This is inspired by the comment from @antiagainst from
[here](https://github.com/llvm/llvm-project/pull/108933#issuecomment-2392751569).
Commit: 1fa3c857f011bfbca788d481680229accbf6e350
https://github.com/llvm/llvm-project/commit/1fa3c857f011bfbca788d481680229accbf6e350
Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExpr.cpp
A clang/test/SemaTemplate/recovery-crash-cxx20.cpp
Log Message:
-----------
[Clang] prevent recovery call expression from proceeding with explicit attributes and undeclared templates (#107786)
Fixes #107047
Fixes #49093
Commit: 1e49670b31e9bf79fc9d0639dcb3a71f4c7f2059
https://github.com/llvm/llvm-project/commit/1e49670b31e9bf79fc9d0639dcb3a71f4c7f2059
Author: Oliver Stannard <oliver.stannard at arm.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
A llvm/test/CodeGen/ARM/load-store-pair-volatile.ll
M llvm/test/CodeGen/PowerPC/aix-cc-abi-mir.ll
Log Message:
-----------
[DAGISel] Keep flags when converting FP load/store to integer (#111679)
This DAG combine replaces a floating-point load/store pair which has no
other uses with an integer one, but did not copy the memory operand
flags to the new instructions, resulting in it dropping the volatile
flag. This optimisation is still valid if one or both of the
instructions is volatile, so we can copy over the whole
MachineMemOperand to generate volatile integer loads and stores where
needed.
Commit: f1eac7761704fa4e16c2619a84890baad380fdce
https://github.com/llvm/llvm-project/commit/f1eac7761704fa4e16c2619a84890baad380fdce
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[clang][bytecode] Check new builtins for integer types (#111801)
These might also be called with vectors, but we don't support that.
Commit: 06eb10dadfaeaadc5d0d95d38bea4bfb5253e077
https://github.com/llvm/llvm-project/commit/06eb10dadfaeaadc5d0d95d38bea4bfb5253e077
Author: Brad Richardson <everythingfunctional at protonmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M .github/workflows/release-binaries.yml
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/test/Driver/flang/flang.f90
M clang/test/Driver/flang/flang_ucase.F90
M clang/test/Driver/flang/multiple-inputs-mixed.f90
M clang/test/Driver/flang/multiple-inputs.f90
M flang/docs/FlangDriver.md
M flang/docs/ImplementingASemanticCheck.md
M flang/docs/Overview.md
M flang/examples/FlangOmpReport/FlangOmpReport.cpp
M flang/include/flang/Optimizer/Analysis/AliasAnalysis.h
M flang/include/flang/Tools/CrossToolHelpers.h
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M flang/runtime/CMakeLists.txt
M flang/test/CMakeLists.txt
M flang/test/Driver/aarch64-outline-atomics.f90
M flang/test/Driver/color-diagnostics-forwarding.f90
M flang/test/Driver/compiler-options.f90
M flang/test/Driver/convert.f90
M flang/test/Driver/disable-ext-name-interop.f90
M flang/test/Driver/driver-version.f90
M flang/test/Driver/escaped-backslash.f90
M flang/test/Driver/fdefault.f90
M flang/test/Driver/flarge-sizes.f90
M flang/test/Driver/fopenmp.f90
M flang/test/Driver/frame-pointer-forwarding.f90
M flang/test/Driver/frontend-forwarding.f90
M flang/test/Driver/hlfir-no-hlfir-error.f90
M flang/test/Driver/intrinsic-module-path.f90
M flang/test/Driver/large-data-threshold.f90
M flang/test/Driver/lto-flags.f90
M flang/test/Driver/macro-def-undef.F90
M flang/test/Driver/missing-input.f90
M flang/test/Driver/multiple-input-files.f90
M flang/test/Driver/omp-driver-offload.f90
M flang/test/Driver/predefined-macros-compiler-version.F90
M flang/test/Driver/std2018-wrong.f90
M flang/test/Driver/std2018.f90
M flang/test/Driver/supported-suffices/f03-suffix.f03
M flang/test/Driver/supported-suffices/f08-suffix.f08
M flang/test/Driver/use-module-error.f90
M flang/test/Driver/use-module.f90
M flang/test/Driver/version-loops.f90
M flang/test/Driver/wextra-ok.f90
M flang/test/HLFIR/hlfir-flags.f90
M flang/test/Lower/Intrinsics/command_argument_count.f90
M flang/test/Lower/Intrinsics/exit.f90
M flang/test/Lower/Intrinsics/ieee_is_normal.f90
M flang/test/Lower/Intrinsics/isnan.f90
M flang/test/Lower/Intrinsics/modulo.f90
M flang/test/Lower/OpenMP/Todo/omp-declarative-allocate.f90
M flang/test/Lower/OpenMP/Todo/omp-declare-reduction.f90
M flang/test/Lower/OpenMP/Todo/omp-declare-simd.f90
M flang/test/Lower/OpenMP/parallel-lastprivate-clause-scalar.f90
M flang/test/Lower/OpenMP/parallel-wsloop-reduction-byref.f90
M flang/test/Lower/OpenMP/parallel-wsloop-reduction.f90
M flang/test/lit.cfg.py
M flang/tools/f18/CMakeLists.txt
M flang/tools/flang-driver/CMakeLists.txt
M flang/tools/flang-driver/driver.cpp
M llvm/runtimes/CMakeLists.txt
M offload/CMakeLists.txt
M openmp/CMakeLists.txt
Log Message:
-----------
[flang][driver] rename flang-new to flang (#110023)
This does a global rename from `flang-new` to `flang`. I also
removed/changed any TODOs that I found related to making this change.
---------
Co-authored-by: H. Vetinari <h.vetinari at gmx.com>
Co-authored-by: Andrzej Warzynski <andrzej.warzynski at arm.com>
Commit: 54d3cf14213f18e44ef9ed2ffe3b3131e472e2f5
https://github.com/llvm/llvm-project/commit/54d3cf14213f18e44ef9ed2ffe3b3131e472e2f5
Author: Christian Ulmann <christianulmann at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/test/Target/LLVMIR/Import/global-variables.ll
Log Message:
-----------
[MLIR][LLVM] Fix nameless global import to support use before def case (#111797)
This commit fixes a bug in the import of nameless globals. Before this
change, the fake symbol names were only generated during the
transformation of the definition. This caused issues when the symbol was
used before it was defined.
Commit: 5184d763c70bf0c64b309262a40d9528a7dc4a2f
https://github.com/llvm/llvm-project/commit/5184d763c70bf0c64b309262a40d9528a7dc4a2f
Author: David Green <david.green at arm.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
M llvm/test/Transforms/InstCombine/double-float-shrink-1.ll
M llvm/test/Transforms/InstCombine/log-pow.ll
M llvm/test/Transforms/InstCombine/log-to-intrinsic.ll
Log Message:
-----------
[InstCombine] Convert @log to @llvm.log if the input is known positive. (#111428)
Similar to 112aac4e8961b9626bb84f36deeaa5a674f03f5a, this converts log
libcalls to llvm.log.f64 intrinsics if we know they do not set errno, as
the input is not zero and not negative. As log will produce errno if the
input is 0 (returning -inf) or if the input is negative (returning nan),
we also perform the conversion when we have noinf and nonan.
Commit: d124b98eb6d492ce306dd28ecace326fb38457c5
https://github.com/llvm/llvm-project/commit/d124b98eb6d492ce306dd28ecace326fb38457c5
Author: Observer007 <45875558+Observer007 at users.noreply.github.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/Transforms/Passes.h
M mlir/include/mlir/Dialect/LLVMIR/Transforms/Passes.td
M mlir/lib/Dialect/LLVMIR/Transforms/DIScopeForLLVMFuncOp.cpp
Log Message:
-----------
[mlir] add overload `createDIScopeForLLVMFuncOp` function (#111689)
follow up work of https://github.com/llvm/llvm-project/pull/106229, add
create pass overload function to create pass.
---------
Co-authored-by: jingzec <jingzec at nvidia.com>
Commit: 99608f114f36efe30572d2bbf281cae56df78a9a
https://github.com/llvm/llvm-project/commit/99608f114f36efe30572d2bbf281cae56df78a9a
Author: Tim Gymnich <tgymnich at icloud.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/CodeGenHLSL/builtins/sign.hlsl
Log Message:
-----------
[clang][HLSL] Add sign intrinsic part 4 (#108396)
- Add handling for unsigned integers to hlsl_elementwise_sign
- Use `select` instead of adding dx and spirv intrinsics for unsigned
integers as [discussed previously
](https://github.com/llvm/llvm-project/pull/101988#discussion_r1736779424)
fixes #70078
### Related PRs
- https://github.com/llvm/llvm-project/pull/101987
- https://github.com/llvm/llvm-project/pull/101988
- https://github.com/llvm/llvm-project/pull/101989
cc @farzonl @pow2clk @bob80905 @bogner @llvm-beanz
Commit: 993de5512d81f4582373aa8bd7507e5aa44311ab
https://github.com/llvm/llvm-project/commit/993de5512d81f4582373aa8bd7507e5aa44311ab
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/docs/index.rst
Log Message:
-----------
[lldb][docs] Add link to RISC-V tracking issue in Platform Support
Saves me searching for this every time someone asks.
Commit: 3e4ee76fe0a015e306b58f0d8c1565f9f06ff9c3
https://github.com/llvm/llvm-project/commit/3e4ee76fe0a015e306b58f0d8c1565f9f06ff9c3
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
M llvm/test/CodeGen/X86/avx512-shuffles/partial_permute.ll
M llvm/test/CodeGen/X86/kshift.ll
M llvm/test/CodeGen/X86/vector-shuffle-512-v16.ll
M llvm/test/CodeGen/X86/vector-shuffle-512-v8.ll
M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll
Log Message:
-----------
[X86] Fold EXTRACT_SUBVECTOR(ONEUSE(EXTRACT_SUBVECTOR(V,C1))),C2) - EXTRACT_SUBVECTOR(V,C1+C2) (#111685)
Extract from the original source vector whenever possible.
This removes a number of dependency bottlenecks and helps a number of shuffle combining cases: either by allowing us to avoid a cross-lane variable shuffle on a slow target by keeping the instruction count below the threshold, or on fast targets make it easier to recognise that the subvectors all came form the same source.
Commit: 7890919fb8323faf70fb16a05f91d4f602ce52fb
https://github.com/llvm/llvm-project/commit/7890919fb8323faf70fb16a05f91d4f602ce52fb
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/test/CMakeLists.txt
Log Message:
-----------
[lldb] Check for Python 'packaging' module at configuration time (#111747)
This module is used in various helper scripts since
https://github.com/llvm/llvm-project/pull/93712
Commit: c36f902372db493fd291c8ac54816422b9dd80bb
https://github.com/llvm/llvm-project/commit/c36f902372db493fd291c8ac54816422b9dd80bb
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-sextload-local.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-zextload-local.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-local.128.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-local.96.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-unaligned.ll
M llvm/test/CodeGen/AMDGPU/med3-knownbits.ll
Log Message:
-----------
AMDGPU/GlobalISel: Insert m0 initialization before sextload/zextload (#111720)
Fixes missing m0 initialize for pre-gfx9 targets with local extending
loads.
Commit: 039e6f879cdbded38959763cc57da26477d2d454
https://github.com/llvm/llvm-project/commit/039e6f879cdbded38959763cc57da26477d2d454
Author: Akshat Oke <76596238+Akshat-Oke at users.noreply.github.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
Log Message:
-----------
[AMDGPU][NewPM] Fill out AMDGPU addMachineSSAOptimizations (#111658)
Implement the addMachineSSAOptimizations passes for AMDGPU. Porting
the other generic passes in this category is WIP.
Commit: b9754e9d285e6c056f04e00cc792c572d012ec02
https://github.com/llvm/llvm-project/commit/b9754e9d285e6c056f04e00cc792c572d012ec02
Author: Hari Limaye <hari.limaye at arm.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/test/Other/new-pm-lto-defaults.ll
Log Message:
-----------
[LTO] Run Argument Promotion before IPSCCP (#111163)
Run ArgumentPromotion before IPSCCP in the LTO pipeline, to expose more
constants to be propagated. We also run PostOrderFunctionAttrs to
improve the information available to ArgumentPromotion's alias analysis,
and SROA to clean up allocas.
Commit: a7a4daa429bb7b0601b4066713fb5b97748212ee
https://github.com/llvm/llvm-project/commit/a7a4daa429bb7b0601b4066713fb5b97748212ee
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[LV][NFC] Improve readability with `bool` instead of `auto` (#111532)
Commit: 003375fb2b62967580712a704934927553fe540f
https://github.com/llvm/llvm-project/commit/003375fb2b62967580712a704934927553fe540f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/lib/Headers/emmintrin.h
M clang/test/CodeGen/X86/sse2-builtins.c
Log Message:
-----------
[clang][x86] Add constexpr support for some basic SSE2 fp intrinsics
Followup to #111001
Commit: 6d8e966512f0b050e84b65c1deed479d5c92fe4c
https://github.com/llvm/llvm-project/commit/6d8e966512f0b050e84b65c1deed479d5c92fe4c
Author: isuckatcs <65320245+isuckatcs at users.noreply.github.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang-tools-extra/clang-tidy/portability/CMakeLists.txt
M clang-tools-extra/clang-tidy/portability/PortabilityTidyModule.cpp
A clang-tools-extra/clang-tidy/portability/TemplateVirtualMemberFunctionCheck.cpp
A clang-tools-extra/clang-tidy/portability/TemplateVirtualMemberFunctionCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
A clang-tools-extra/docs/clang-tidy/checks/portability/template-virtual-member-function.rst
A clang-tools-extra/test/clang-tidy/checkers/portability/template-virtual-member-function.cpp
Log Message:
-----------
[clang-tidy] Portability Template Virtual Member Function Check (#110099)
Introduced a new check that finds cases when an uninstantiated virtual member function in a template class causes cross-compiler incompatibility.
Commit: bb34008879f0a083604ede70db61f9d3c9a3ead8
https://github.com/llvm/llvm-project/commit/bb34008879f0a083604ede70db61f9d3c9a3ead8
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/portability/BUILD.gn
Log Message:
-----------
[gn build] Port 6d8e966512f0
Commit: 3645c64d87a0e4576c1195281efa005e90b529b7
https://github.com/llvm/llvm-project/commit/3645c64d87a0e4576c1195281efa005e90b529b7
Author: braw-lee <93831198+braw-lee at users.noreply.github.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h
M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
A llvm/test/Transforms/InstCombine/fdim.ll
A llvm/test/Transforms/InstCombine/win-fdim.ll
Log Message:
-----------
[SimplifyLibCalls] fdim constant fold (#109235)
2nd PR to fix #108695
based on #108702
---------
Signed-off-by: Kushal Pal <kushalpal109 at gmail.com>
Commit: 0e913237871e8c9290e82be30be8b3484952eee0
https://github.com/llvm/llvm-project/commit/0e913237871e8c9290e82be30be8b3484952eee0
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/packages/Python/lldbsuite/test/dotest.py
M lldb/test/API/CMakeLists.txt
M lldb/test/API/lit.cfg.py
M lldb/test/API/lit.site.cfg.py.in
Log Message:
-----------
[lldb] Add early CMake check for 'make' tool (#111531)
Many LLDB's dotest.py based tests require the `make` tool. If it's not found in Path, they fail with an obscure error and show up as `UNRESOLVED`. On Windows, llvm-lit takes care of MSYS based testing tools like cat, printf, etc., but `make` is not part of that. Let's catch the situation early and check for it at configuration time.
This error isn't fatal: It should fail the build, but not immediately stop the configuration process. There might be other issues further down the line that can be caught in the same buildbot run.
Commit: 99cec7ff8eabbec929d3d0b3a15b272867cf2a46
https://github.com/llvm/llvm-project/commit/99cec7ff8eabbec929d3d0b3a15b272867cf2a46
Author: Alex Bradbury <asb at igalia.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/test/Shell/ObjectFile/ELF/elf-memory.test
Log Message:
-----------
[lldb][test] elf-memory.test requires LLDB build with Python support (#111810)
Otherwise it fails with "error: Embedded script interpreter unavailable.
LLDB was built without scripting language support."
Commit: a1c9dd7c8093e30266f643e6832fbe61a6e506bc
https://github.com/llvm/llvm-project/commit/a1c9dd7c8093e30266f643e6832fbe61a6e506bc
Author: Andrey Timonin <timonina1909 at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
M mlir/lib/Target/Cpp/TranslateToCpp.cpp
M mlir/test/Target/Cpp/switch.mlir
Log Message:
-----------
[mlir][emitc] Fix the error with closing bracket in CppEmitter in switchOp (#110269)
While working with `emitc::SwitchOp`, it was identified that
`mlir-translate` emits **invalid C code** for switch.
This commit fixes the issue with the closing bracket in `CppEmitter`
within `printOperation` for `emitc::SwitchOp`.
Commit: 8a849a2a567d4e519b246a16936b6e7519936d4b
https://github.com/llvm/llvm-project/commit/8a849a2a567d4e519b246a16936b6e7519936d4b
Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
R llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-load-store-pointers.ll
R llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-global-old-legalization.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-local.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-constant.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-flat.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-global.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-local.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-private.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-store-global.mir
Log Message:
-----------
Revert "Reapply "[AMDGPU][GlobalISel] Fix load/store of pointer vectors, buffer.*.pN (#110714)" v2 (#111708)"
This reverts commit 4b4a0d419c81b8b12a7dbb33dae1f7e9be91a88f.
New test fails on buildbots https://lab.llvm.org/buildbot/#/builders/63/builds/2039 https://lab.llvm.org/buildbot/#/builders/127/builds/1055
Commit: 8306114ed2313a7febdb0d0d0c31df357ed53fdd
https://github.com/llvm/llvm-project/commit/8306114ed2313a7febdb0d0d0c31df357ed53fdd
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/lib/Headers/xmmintrin.h
M clang/test/CodeGen/X86/sse-builtins.c
Log Message:
-----------
[clang][x86] Add constexpr support for _mm_cvtsi32_ss/_mm_cvt_si2ss/_mm_cvtsi64_ss SSE1 intrinsics
Followup to #111001
Commit: ea2b8976e69ad70220f71abf28d6781dc1e41fab
https://github.com/llvm/llvm-project/commit/ea2b8976e69ad70220f71abf28d6781dc1e41fab
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M libcxx/utils/ci/run-buildbot
Log Message:
-----------
[libc++] Remove nonexistent directory from check-generated-output (#111746)
The libcxx/benchmarks directory was moved to libcxx/test/benchmarks,
which is already checked by that grep command.
Commit: b94c763b7c123995ae31a6ce44223e89ef9f226a
https://github.com/llvm/llvm-project/commit/b94c763b7c123995ae31a6ce44223e89ef9f226a
Author: Petr Hosek <phosek at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/cmake/caches/Fuchsia-stage2.cmake
Log Message:
-----------
[Fuchsia][CMake] Set output name for libc++ shared library (#111791)
This is a dependency of #80007.
Commit: 917ada35cd937ad4104dff89c48398bd796ba6b7
https://github.com/llvm/llvm-project/commit/917ada35cd937ad4104dff89c48398bd796ba6b7
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M libcxx/cmake/caches/AIX.cmake
M libcxx/cmake/caches/Armv7M-picolibc.cmake
M libcxx/src/CMakeLists.txt
M libcxxabi/src/CMakeLists.txt
M libunwind/src/CMakeLists.txt
Log Message:
-----------
[runtimes] Always define cxx_shared, cxx_static & other targets (#80007)
This patch always defines the cxx_shared, cxx_static & other top-level
targets. However, they are marked as EXCLUDE_FROM_ALL when we don't want
to build them. Simply declaring the targets should be of no harm, and it
allows other projects to mention these targets regardless of whether
they end up being built or not.
This patch basically moves the definition of e.g. cxx_shared out of the
`if (LIBCXX_ENABLE_SHARED)` and instead marks it as EXCLUDE_FROM_ALL
conditionally on whether LIBCXX_ENABLE_SHARED is passed. It then does
the same for libunwind and libc++abi targets. I purposefully avoided to
reformat the files (which now has inconsistent indentation) because I
wanted to keep the diff minimal, and I know this is an area of the code
where folks may have downstream diffs. I will re-indent the code
separately once this patch lands.
This is a reapplication of 79ee0342dbf0, which was reverted in
a3539090884c because it broke the TSAN and the Fuchsia builds.
Resolves #77654
Differential Revision: https://reviews.llvm.org/D134221
Commit: f8b7a65395a07073feff367145965214d95ba99a
https://github.com/llvm/llvm-project/commit/f8b7a65395a07073feff367145965214d95ba99a
Author: Petr Kurapov <petr.a.kurapov at intel.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M mlir/lib/Conversion/GPUToLLVMSPV/GPUToLLVMSPV.cpp
M mlir/test/Conversion/GPUToLLVMSPV/gpu-to-llvm-spv.mlir
Log Message:
-----------
[MLIR][GPU-LLVM] Add in-pass signature update for opencl kernels (#105664)
Default to Global address space for memrefs that do not have an explicit address space set in the IR.
---------
Co-authored-by: Victor Perez <victor.perez at intel.com>
Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>
Co-authored-by: Victor Perez <victor.perez at codeplay.com>
Commit: 55d51dd9dca8220ffaf9260d56dae9f5c34b7120
https://github.com/llvm/llvm-project/commit/55d51dd9dca8220ffaf9260d56dae9f5c34b7120
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
A clang/test/AST/ByteCode/cxx1z.cpp
Log Message:
-----------
[clang][bytecode] Fix temporary lvalue base expression (#111808)
We need to use the MaterializeTemporaryExpr here so the checks in
ExprConstant.cpp do the right thing.
Commit: b773da0c5eed06f21f4caeea5eae47cacefb376c
https://github.com/llvm/llvm-project/commit/b773da0c5eed06f21f4caeea5eae47cacefb376c
Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/packages/Python/lldbsuite/test/builders/builder.py
M lldb/test/API/lang/objc/hidden-ivars/Makefile
M lldb/test/API/lang/objc/objc-ivar-stripped/Makefile
M lldb/test/API/lang/objc/objc-static-method-stripped/Makefile
M lldb/test/API/macosx/add-dsym/Makefile
M lldb/test/API/tools/lldb-dap/module/Makefile
M lldb/test/API/tools/lldb-dap/terminated-event/Makefile
Log Message:
-----------
[lldb][test] Use $(STRIP) instead of strip in API tests (Darwin-only change) (#111816)
This makes tests more portable.
Make variables for LLVM utils are passed to `make` on Darwin as well.
Co-authored-by: Vladimir Vereschaka <vvereschaka at accesssoftek.com>
Commit: 36a0d442eb4d2f1e0782bc2a1b1715fc7631faec
https://github.com/llvm/llvm-project/commit/36a0d442eb4d2f1e0782bc2a1b1715fc7631faec
Author: Harrison Hao <57025411+harrisonGPU at users.noreply.github.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/docs/CMake.rst
Log Message:
-----------
[LLVM][DOCS] Add documentation for 'host' and 'Native' options in LLVM_TARGETS_TO_BUILD. (#111382)
>From https://github.com/llvm/llvm-project/issues/111356
Commit: 1f919aa77805b951fb06b44732a87f1f83929247
https://github.com/llvm/llvm-project/commit/1f919aa77805b951fb06b44732a87f1f83929247
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Transforms/VectorCombine/X86/extract-cmp-binop.ll
Log Message:
-----------
VectorCombine: lift one-use limitation in foldExtractedCmps (#110902)
There are artificial one-use limitations on foldExtractedCmps. Adjust
the costs to account for multi-use, and strip the one-use matcher,
lifting the limitations.
Commit: 159d694c05500a656775f4cbd6931dae9aab290a
https://github.com/llvm/llvm-project/commit/159d694c05500a656775f4cbd6931dae9aab290a
Author: A. Jiang <de34 at live.cn>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M libcxx/docs/ReleaseNotes/20.rst
M libcxx/include/bitset
A libcxx/test/std/utilities/template.bitset/bitset.members/nonstdmem.uglified.compile.pass.cpp
Log Message:
-----------
[libc++] __uglify internal member names of iterators in `bitset` (#111127)
[template.bitset.general] indicates that `bitset` shouldn't have member
typedef-names `iterator` and `const_iterator`. Currently libc++'s
typedef-names are causing ambiguity in name lookup, which isn't
conforming.
As these iterator types are themselves useful, I think we should just
use __uglified member typedef-names for them.
Fixes #111125
Commit: 90149204bd08c07eb672cd5b19d782fed3d96ddc
https://github.com/llvm/llvm-project/commit/90149204bd08c07eb672cd5b19d782fed3d96ddc
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M .ci/generate-buildkite-pipeline-premerge
Log Message:
-----------
[ci] Don't add check-all target when pstl project is enabled (#111803)
Fixes #110265
Adding check-all causes us to run some tests twice if a project specific
target like check-clang is also added.
check-pstl is an alternative but as far as I can tell, check-all does
not include this so we have not been running the tests in CI anyway.
When I tried to run check-pstl locally I got a lot of compiler errors
but have not found any instructions on how to setup a correct build
environment. Even if such instructions exist, it's probably more than we
want to do in CI.
According to Louis Dionne, the project is probably not active. So if
it's ever revived it'll be up to the new contributors to enable testing.
Commit: 480e7f0667794822f7f3a065bed73d9a2ecc2d58
https://github.com/llvm/llvm-project/commit/480e7f0667794822f7f3a065bed73d9a2ecc2d58
Author: jeanPerier <jperier at nvidia.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M flang/include/flang/Optimizer/CodeGen/Target.h
M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
M flang/lib/Optimizer/CodeGen/Target.cpp
M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
M flang/lib/Optimizer/Transforms/AbstractResult.cpp
A flang/test/Fir/abstract-results-bindc.fir
A flang/test/Fir/struct-return-x86-64.fir
Log Message:
-----------
[flang] correctly deal with bind(c) derived type result ABI (#111678)
Derived type results of BIND(C) function should be returned according
the the C ABI for returning the related C struct type.
This currently did not happen since the abstract-result pass was forcing
the Fortran ABI for all derived type results.
use the bind_c attribute that was added on call/func/dispatch in FIR to
prevent such rewrite in the abstract result pass, and update the
target-rewrite pass to deal with the struct return ABI.
So far, the target specific part of the target-rewrite is only
implemented for X86-64 according to the "System V Application Binary
Interface AMD64 v1", the other targets will hit a TODO, just like for
BIND(C), VALUE derived type arguments.
This intends to deal with
https://github.com/llvm/llvm-project/issues/102113.
Commit: 6779376ee917279b16e256839d236cfdf8fd9ab9
https://github.com/llvm/llvm-project/commit/6779376ee917279b16e256839d236cfdf8fd9ab9
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio/VisualStudio.py
M cross-project-tests/debuginfo-tests/dexter/dex/tools/Main.py
M cross-project-tests/debuginfo-tests/dexter/dex/tools/help/Tool.py
A cross-project-tests/debuginfo-tests/dexter/dex/utils/Imports.py
Log Message:
-----------
[Dexter] Remove outdated imp dependency (#111833)
Fixes: https://github.com/llvm/llvm-project/issues/111815
This patch replaces usage of the python `imp` library, which is
deprecated since python3.4 and removed in python3.12, with the
`importlib` library. As part of this update the repeated
find_module+load_module pattern is moved into a utility function, since
the importlib equivalent is much more verbose.
Commit: a3cd269fbebecb6971e216a9c29ad8933ad7b0fc
https://github.com/llvm/llvm-project/commit/a3cd269fbebecb6971e216a9c29ad8933ad7b0fc
Author: Luke Lau <luke at igalia.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/Analysis/CostModel/RISCV/cast-half.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp2i.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-i2fp.ll
Log Message:
-----------
[RISCV] Remove {s,u}int_to_fp custom op action for f16/bf16 (#111471)
It turns out that {s,u}int_to_fp nodes get their operation action from
their operand's type, not the result type, so we don't need to set it
for fp16 or bf16. vp_{s,u}int_to_fp uses the result type though so we
need to keep it.
This also means that we can lower int_to_fp for fixed length bf16
vectors already, so this adds tests for that.
The cost model test changes are due to BasicTTIImpl's getCastInstrCost
not taking into account that int_to_fp needs its legal type swapped.
This can be fixed in a later patch, but its worth noting that the
affected types in the tests currently crash when lowered anyway (due to
them needing split at LMUL > 8)
Commit: 0a0f100a70583725428ec317138b09f935a2b9bb
https://github.com/llvm/llvm-project/commit/0a0f100a70583725428ec317138b09f935a2b9bb
Author: Hari Limaye <hari.limaye at arm.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/test/Other/new-pm-lto-defaults.ll
Log Message:
-----------
Revert "[LTO] Run Argument Promotion before IPSCCP" (#111839)
Reverts llvm/llvm-project#111163, as this was merged prematurely.
Commit: dabb0ddbd7a7229855156c61df1d35ad845361ac
https://github.com/llvm/llvm-project/commit/dabb0ddbd7a7229855156c61df1d35ad845361ac
Author: Vladimir Radosavljevic <129192835+vladimirradosavljevic at users.noreply.github.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/MachineCopyPropagation.cpp
A llvm/test/CodeGen/AArch64/machine-cp-constant-reg.mir
Log Message:
-----------
[MCP] Skip invalidating def constant regs during forward propagation (#111129)
Before this patch, redundant COPY couldn't be removed for the following
case:
```
%reg1 = COPY %const-reg
... // There is a def of %const-reg
%reg2 = COPY killed %reg1
```
where this can be optimized to:
```
... // There is a def of %const-reg
%reg2 = COPY %const-reg
```
This patch allows for such optimization by not invalidating defined
constant registers. This is safe, as architectures like AArch64 and
RISCV replace a dead definition of a GPR with a zero constant register
for certain instructions.
Commit: 3737a5321901574b3f4b2cf0d798faea5c4a2302
https://github.com/llvm/llvm-project/commit/3737a5321901574b3f4b2cf0d798faea5c4a2302
Author: Tyler Nowicki <tyler.nowicki at amd.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/IR/Intrinsics.td
M llvm/include/llvm/Transforms/Coroutines/ABI.h
M llvm/include/llvm/Transforms/Coroutines/CoroInstr.h
M llvm/include/llvm/Transforms/Coroutines/CoroSplit.h
M llvm/lib/Transforms/Coroutines/CoroCleanup.cpp
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/lib/Transforms/Coroutines/Coroutines.cpp
M llvm/unittests/Transforms/Coroutines/ExtraRematTest.cpp
Log Message:
-----------
[Coroutines] Support for Custom ABIs (#111755)
This change extends the current method for creating ABI object to allow
users (plugin libraries) to create custom ABI objects for their needs.
This is accomplished by inheriting one of the common ABIs and overriding
one or more of the methods to create a custom ABI. To use a custom ABI
for a given coroutine the coro.begin.custom.abi intrinsic is used in
place of the coro.begin intrinsic. This takes an additional i32 arg that
specifies the index of an ABI generator for the custom ABI object in a
SmallVector passed to the CoroSplitPass ctor.
The detailed changes include:
* Add the llvm.coro.begin.custom intrinsic used to specify the index of
the custom ABI to use for the given coroutine.
* Add constructors to CoroSplit that take a list of generators that
create the custom ABI object.
* Extend the CreateNewABI function used by CoroSplit to return a
unique_ptr to an ABI object.
* Add has/getCustomABI methods to CoroBeginInst class.
* Add a unittest for a custom ABI.
See doc update here: https://github.com/llvm/llvm-project/pull/111781
Commit: 005e601611095f1bed4ca7e6c37c17645e75ca0c
https://github.com/llvm/llvm-project/commit/005e601611095f1bed4ca7e6c37c17645e75ca0c
Author: Nico Weber <thakis at chromium.org>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/lldb/test/BUILD.gn
Log Message:
-----------
[gn] port 0e913237871e (LLDB_TEST_MAKE)
Commit: 545e0593f8c59376a7ec8c6eb558babf6c9f93c1
https://github.com/llvm/llvm-project/commit/545e0593f8c59376a7ec8c6eb558babf6c9f93c1
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M libc/src/stdio/asprintf.cpp
M libc/src/stdio/asprintf.h
M libc/src/stdio/printf_core/vasprintf_internal.h
M libc/src/stdio/vasprintf.cpp
M libc/src/stdio/vasprintf.h
Log Message:
-----------
[libc] Clean up 'vasprintf' implementation (#111761)
Summary:
This had some leftover references to the old namespace and didn't put
restrict on it.
Commit: e023d0270eb32cacdc720bbeea262b2869f7e9e4
https://github.com/llvm/llvm-project/commit/e023d0270eb32cacdc720bbeea262b2869f7e9e4
Author: Brox Chen <guochen2 at amd.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/test/tools/UpdateTestChecks/update_mc_test_checks/Inputs/amdgpu_dasm.txt
M llvm/test/tools/UpdateTestChecks/update_mc_test_checks/Inputs/amdgpu_dasm.txt.expected
Log Message:
-----------
[AMDGPU][test]update error dasm test for update-mc-test-check script (#111760)
The previous error test line is using a 16bit instruction to indicate an
error. However this is a poor pick.
The 16bit instructions on AMDGPU is under development and thus, some
downstream branches are not showing this exact error message. Changing
it to another error dasm code.
Commit: f59b0c76030aff268b78d475e219708d06b982b5
https://github.com/llvm/llvm-project/commit/f59b0c76030aff268b78d475e219708d06b982b5
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.td
M mlir/lib/Dialect/Linalg/Transforms/DropUnitDims.cpp
M mlir/test/Dialect/Linalg/loops.mlir
M mlir/test/Dialect/Linalg/transform-patterns.mlir
M mlir/test/Dialect/Linalg/vectorization-with-patterns.mlir
Log Message:
-----------
[mlir][linalg][nfc] Delete references to args_in/args_out (#111517)
After the refactor in:
* ed229132f1c4ea2ba0644fc345d8279e47a00565,
the `args_in` and `args_out` attributes are no longer used by
`linalg.generic`. This patch removes most the remaining references.
I've left out BufferDeallocationInternals.md, which doesn't seem
maintained anymore and is quite out of sync with other bits of MLIR
(e.g. `test.generic` instead of `linalg.generic`).
Commit: 058ede06c4ffd4e3c9f54d947e3bfb027c2d0557
https://github.com/llvm/llvm-project/commit/058ede06c4ffd4e3c9f54d947e3bfb027c2d0557
Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/packages/Python/lldbsuite/test/builders/builder.py
M lldb/test/API/functionalities/json/symbol-file/Makefile
Log Message:
-----------
[lldb][test] Use `xcrun -f strip` for API tests on Darwin (#111842)
A follow-up for https://github.com/llvm/llvm-project/pull/111816.
This is to fix buildbot failure
https://lab.llvm.org/staging/#/builders/195/builds/4242.
TestSymbolFileJSON.py doesn't pass with llvm-strip on macOS. Apparently,
llvm-strip/llvm-objcopy can't clean symbols from Mach-O nlists.
Commit: 77c842f44cc06951975fd4a85761e0bc830d185a
https://github.com/llvm/llvm-project/commit/77c842f44cc06951975fd4a85761e0bc830d185a
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang-tools-extra/clang-apply-replacements/lib/Tooling/ApplyReplacements.cpp
Log Message:
-----------
[clang-apply-replacements] Avoid repeated hash lookups (NFC) (#111783)
Commit: d2a96d170a4faa0a6c42fe5f23c073891d6118b8
https://github.com/llvm/llvm-project/commit/d2a96d170a4faa0a6c42fe5f23c073891d6118b8
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang-tools-extra/clang-change-namespace/ChangeNamespace.cpp
Log Message:
-----------
[clang-change-namespace] Avoid repeated hash lookups (NFC) (#111784)
Commit: 670a4613fc5f29036f23fe357b0dbf017d019717
https://github.com/llvm/llvm-project/commit/670a4613fc5f29036f23fe357b0dbf017d019717
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/ForwardDeclarationNamespaceCheck.cpp
Log Message:
-----------
[clang-tidy] Avoid repeated hash lookups (NFC) (#111785)
Commit: 35bbfbc7c0d0782bad5160662c9683b38329c7c1
https://github.com/llvm/llvm-project/commit/35bbfbc7c0d0782bad5160662c9683b38329c7c1
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/XRay/BlockIndexer.cpp
Log Message:
-----------
[XRay] Simplify code with DenseMap::operator[] (NFC) (#111786)
Commit: fc467b477545c9f8ef4dc36ecee4dcd2a7457787
https://github.com/llvm/llvm-project/commit/fc467b477545c9f8ef4dc36ecee4dcd2a7457787
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
Log Message:
-----------
[AMDGPU] Avoid repeated hash lookups (NFC) (#111787)
Commit: 97a43242246bf4a55e68bddf3e6a0500c07803cc
https://github.com/llvm/llvm-project/commit/97a43242246bf4a55e68bddf3e6a0500c07803cc
Author: alx32 <103613512+alx32 at users.noreply.github.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lld/MachO/ICF.cpp
M lld/test/MachO/icf-safe-thunks.ll
Log Message:
-----------
[lld-macho] Fix ICF differentiation of safe_thunks relocs (#111811)
In `--icf=safe_thunks` mode, the linker differentiates `keepUnique`
functions by creating thunks during a post-processing step after
Identical Code Folding (ICF). While this ensures that `keepUnique`
functions themselves are not incorrectly merged, it overlooks functions
that reference these `keepUnique` symbols.
If two functions are identical except for references to different
`keepUnique` functions, the current ICF algorithm incorrectly considers
them identical because it doesn't account for the future differentiation
introduced by thunks. This leads to incorrect deduplication of functions
that should remain distinct.
To address this issue, we modify the ICF comparison to explicitly check
for references to `keepUnique` functions during deduplication. By doing
so, functions that reference different `keepUnique` symbols are
correctly identified as distinct, preventing erroneous merging and
ensuring the correctness of the linked output.
Commit: 4ddc756bccb34f3d07e30c9ca96bba32cb0cf4f9
https://github.com/llvm/llvm-project/commit/4ddc756bccb34f3d07e30c9ca96bba32cb0cf4f9
Author: jeanPerier <jperier at nvidia.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M flang/include/flang/Optimizer/CodeGen/Target.h
M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
M flang/lib/Optimizer/CodeGen/Target.cpp
M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
M flang/lib/Optimizer/Transforms/AbstractResult.cpp
R flang/test/Fir/abstract-results-bindc.fir
R flang/test/Fir/struct-return-x86-64.fir
Log Message:
-----------
Revert "[flang] correctly deal with bind(c) derived type result ABI" (#111858)
Reverts llvm/llvm-project#111678
Causes ARM failure in test suite. TYPE(C_PTR) result should not regress
even if struct ABI no implemented for the target.
https://lab.llvm.org/buildbot/#/builders/143/builds/2731
I need to revisit this.
Commit: a3638f19bc04468c6db28a9cca50975229bfd45a
https://github.com/llvm/llvm-project/commit/a3638f19bc04468c6db28a9cca50975229bfd45a
Author: Utkarsh Saxena <usx at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/test/SemaCXX/attr-lifetimebound.cpp
Log Message:
-----------
[clang] Update string and string_view in lifetimebound tests (#111737)
Removes pragmas like `# 1 "<std>" 1 3` to make line numbers in failing
tests more accurate.
Use `basic_string_view` instead `string_view` to kick in GSL
owner/pointer auto inference.
Commit: 9839b8cfb477866b8610714976cc6599f32f63e6
https://github.com/llvm/llvm-project/commit/9839b8cfb477866b8610714976cc6599f32f63e6
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
A llvm/test/tools/llvm-reduce/issue111817-catchswitch-assert.ll
M llvm/tools/llvm-reduce/deltas/ReduceBasicBlocks.cpp
Log Message:
-----------
llvm-reduce: Fix assert on invokes with catchswitch (#111838)
This is the minimal change to avoid the assert. There's an API flaw in
invoke instructions where getLandingPad assumes all invoke unwind
blocks have landingpads, when some have catchswitch instead.
Fixes #111817
Commit: c042d8f7b35ccb7add9c873c7e5d74f568cca115
https://github.com/llvm/llvm-project/commit/c042d8f7b35ccb7add9c873c7e5d74f568cca115
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
M llvm/test/CodeGen/RISCV/hwasan-check-memaccess.ll
Log Message:
-----------
[RISCV] Use RISCVAsmPrinter::EmitToStreamer for EmitHwasanMemaccessSymbols. (#111792)
Add a MCSubtargetInfo& operand so we can control the subtarget for the
new calls. The old signature is kept as a wrapper to pass *STI to
maintain compatibility.
By using EmitToStreamer we are able to compress the instructions when
possible.
Commit: c77b10746160f985625603b1e9c837b44caa5c67
https://github.com/llvm/llvm-project/commit/c77b10746160f985625603b1e9c837b44caa5c67
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/include/lldb/Host/Host.h
M lldb/include/lldb/Utility/Log.h
M lldb/source/API/SystemInitializerFull.cpp
M lldb/source/Host/common/Host.cpp
M lldb/source/Host/common/HostInfoBase.cpp
M lldb/source/Utility/Log.cpp
A lldb/test/Shell/Host/TestSytemLogChannel.test
Log Message:
-----------
[lldb] Introduce an always-on system log category/channel (#108495)
Add an "always on" log category and channel. Unlike other, existing log
channels, it is not exposed to users. The channel is meant to be used
sparsely and deliberately for logging high-value information to the
system log.
We have a similar concept in the downstream Swift fork and this has
proven to be extremely valuable. This is especially true on macOS where
system log messages are automatically captured as part of a sysdiagnose.
Commit: f5aec03f6dd2f92590ecec9e3419b38b11d8476e
https://github.com/llvm/llvm-project/commit/f5aec03f6dd2f92590ecec9e3419b38b11d8476e
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/lib/Analysis/ProgramPoint.cpp
Log Message:
-----------
[clang][analyzer][NFC] Fix strange bracket placement
Commit: 23309d7d9553af69b2912a159bc2e488acf69255
https://github.com/llvm/llvm-project/commit/23309d7d9553af69b2912a159bc2e488acf69255
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio/VisualStudio.py
M cross-project-tests/debuginfo-tests/dexter/dex/utils/Imports.py
Log Message:
-----------
[Dexter] Set up ComInterface module to be imported correctly (#111850)
Fixes issue added by: https://github.com/llvm/llvm-project/pull/111833
Following the previous commit that changed how Dexter imports modules,
the ComInterface module import became broken. This is because it had a
different directory structure to other modules, where we want to import
single file rather than a dir containing a __init__.py. For this case,
an optional extra arg has been added to load_module allowing a filename
to be specified, letting us import ComInterface.py directly and fixing
the issue.
Commit: 03483737a7a2d72a257a5ab6ff01748ad9cf0f75
https://github.com/llvm/llvm-project/commit/03483737a7a2d72a257a5ab6ff01748ad9cf0f75
Author: Md Asghar Ahmad Shahid <md.asghar.ahmad.shahid at intel.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.td
M mlir/include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.yaml
M mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
M mlir/lib/Dialect/Linalg/IR/LinalgInterfaces.cpp
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/TransposeMatmul.cpp
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
M mlir/lib/Dialect/NVGPU/TransformOps/NVGPUTransformOps.cpp
M mlir/python/mlir/dialects/linalg/opdsl/ops/core_named_ops.py
M mlir/test/Dialect/Linalg/generalize-named-ops.mlir
M mlir/test/Dialect/Linalg/invalid.mlir
M mlir/test/Dialect/Linalg/named-ops.mlir
M mlir/test/python/dialects/linalg/ops.py
M mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-yaml-gen.cpp
Log Message:
-----------
[mlir][linalg] Introduce transpose semantic to 'linalg.matmul' ops. (#104783)
The main goal of this patch is to extend the semantic of 'linalg.matmul'
named op to include per operand transpose semantic while also laying out
a way to move ops definition from OpDSL to tablegen. Hence, it is
implemented in tablegen. Transpose semantic is as follows.
By default 'linalg.matmul' behavior will remain as is. Transpose
semantics can be appiled on per input operand by specifying the optional
permutation attributes (namely 'permutationA' for 1st input and
'permutationB' for 2nd input) for each operand explicitly as needed. By
default, no transpose is mandated for any of the input operand.
Example:
```
%val = linalg.matmul ins(%arg0, %arg1 : memref<5x3xf32>,
memref<5x7xf32>)
outs(%arg2: memref<3x7xf32>)
permutationA = [1, 0]
permutationB = [0, 1]
```
Commit: cb5fbd2f60a5a588bfa4668ea8269c3568cbff6e
https://github.com/llvm/llvm-project/commit/cb5fbd2f60a5a588bfa4668ea8269c3568cbff6e
Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/MachineBlockPlacement.cpp
M llvm/test/CodeGen/X86/code_placement_ext_tsp.ll
M llvm/test/CodeGen/X86/code_placement_ext_tsp_large.ll
M llvm/test/CodeGen/X86/code_placement_ext_tsp_size.ll
Log Message:
-----------
[CodeLayout] Do not verify after assigning blocks (#111754)
Rather than invariantly running `F->verify()` when asserts are enabled,
run machine IR verification in LIT tests only.
Swap `CHECK-PERF` and `CHECK-SIZE` in `code_placement_ext_tsp_large.ll`.
Remove `={0,1,true,false}` from flags in tests.
Commit: 25d9688c43d37c0c918e9b8ab2f67be35b0fb75f
https://github.com/llvm/llvm-project/commit/25d9688c43d37c0c918e9b8ab2f67be35b0fb75f
Author: yronglin <yronglin777 at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/test/AST/ast-dump-for-range-lifetime.cpp
M clang/test/CXX/special/class.temporary/p6.cpp
M clang/www/cxx_status.html
Log Message:
-----------
[Clang] Extend lifetime of temporaries in mem-default-init for P2718R0 (#86960)
Depends on [CWG1815](https://github.com/llvm/llvm-project/pull/108039).
Fixes https://github.com/llvm/llvm-project/issues/85613.
In [[Clang] Implement P2718R0 "Lifetime extension in range-based for
loops"](https://github.com/llvm/llvm-project/pull/76361), we've not
implement the lifetime extensions for the temporaries which in
`CXXDefaultInitExpr`. As the confirmation in
https://github.com/llvm/llvm-project/issues/85613, we should extend
lifetime for that.
To avoid modifying current CodeGen rules, in a lifetime extension
context, the cleanup of `CXXDefaultInitExpr` was ignored.
---------
Signed-off-by: yronglin <yronglin777 at gmail.com>
Commit: 2190ffa0f7e874d04fd0f750142135faa5df5d6b
https://github.com/llvm/llvm-project/commit/2190ffa0f7e874d04fd0f750142135faa5df5d6b
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M libc/src/stdio/asprintf.h
M libc/src/stdio/vasprintf.h
Log Message:
-----------
[libc] Fix missing namespace declarations
Commit: 73e74e496ec32a13a5ae71df71364065f7be3cca
https://github.com/llvm/llvm-project/commit/73e74e496ec32a13a5ae71df71364065f7be3cca
Author: Eric Astor <epastor at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/include/clang/AST/Attr.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaStmtAttr.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/test/AST/attr-print-emit.cpp
M clang/test/Sema/annotate.c
M clang/test/SemaTemplate/attributes.cpp
M clang/utils/TableGen/ClangAttrEmitter.cpp
Log Message:
-----------
[clang][frontend] Support applying the annotate attribute to statements (#111841)
By allowing AnnotateAttr to be applied to statements, users can place arbitrary information in the AST for later use.
For example, this can be used for HW-targeted language extensions that involve specialized loop annotations.
Commit: c04b640a919de50342fca9e0afcbf4b710c7ea2f
https://github.com/llvm/llvm-project/commit/c04b640a919de50342fca9e0afcbf4b710c7ea2f
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M libc/src/stdio/vasprintf.h
Log Message:
-----------
[libc] Add missing config include
Commit: cc9e7cb99b63559c5baf7e380287e5658c412370
https://github.com/llvm/llvm-project/commit/cc9e7cb99b63559c5baf7e380287e5658c412370
Author: TatWai Chong <78814694+tatwaichong at users.noreply.github.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M mlir/include/mlir/Conversion/TosaToLinalg/TosaToLinalg.h
M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.td
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalgPass.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
M mlir/test/Dialect/Tosa/invalid.mlir
M mlir/test/Dialect/Tosa/level_check.mlir
Log Message:
-----------
[mlir][tosa] Change the type of profile option to ListOption (#111214)
In tosa valiation pass, change the type of profile option to ListOption.
Now TOSA profiles is turned from hierarchical to composable. Each
profile is an independent set, i.e. an target can implement multiple
profiles.
Set the profile option to none by default, and limit to profiles if
requested.
The profiles can be specified via command line, e.g.
$ mlir-opt ... --tosa-validate="profile=bi,mi" which tells the valiation
pass that BI and MI are enabled.
Change-Id: I1fb8d0c1b27eccd768349b6eb4234093313efb57
Commit: f2c5aa920054fa60372a161520e6ea8e8d23880d
https://github.com/llvm/llvm-project/commit/f2c5aa920054fa60372a161520e6ea8e8d23880d
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp
M lldb/source/Target/ScriptedThreadPlan.cpp
Log Message:
-----------
[lldb] Fix a variety of LLDB_LOG format strings
LLVM now triggers an assertion when the format string and arguments
don't match. Fix a variety of incorrect format strings I discovered when
enabling logging with a debug build.
Commit: 0fc3e4093ca5d226df37206626bfac3e4853b0db
https://github.com/llvm/llvm-project/commit/0fc3e4093ca5d226df37206626bfac3e4853b0db
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
Log Message:
-----------
[alpha.webkit.UncountedCallArgsChecker] Skip std::forward in tryToFindPtrOrigin. (#111222)
Ignore std::forward when it appears while looking for the pointer
origin.
Commit: 820bab8fb581f2fcd1a96b495f4762b02195d86a
https://github.com/llvm/llvm-project/commit/820bab8fb581f2fcd1a96b495f4762b02195d86a
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
Log Message:
-----------
[alpha.webkit.UncountedCallArgsChecker] Add the support for trivial CXXInheritedCtorInitExpr. (#111198)
Commit: 39a91413c3f79181b4a45447bdb08d04d3efc975
https://github.com/llvm/llvm-project/commit/39a91413c3f79181b4a45447bdb08d04d3efc975
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedCallArgsChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedLambdaCapturesChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedLocalVarsChecker.cpp
Log Message:
-----------
isUncountedPtr should take QualType as an argument. (#110213)
Make isUncountedPtr take QualType as an argument instead of Type*. This
simplifies some code.
Commit: 36c34ec967c28c77406fe85ef3237a167a243763
https://github.com/llvm/llvm-project/commit/36c34ec967c28c77406fe85ef3237a167a243763
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Target/LLVMIR/DebugImporter.cpp
M mlir/lib/Target/LLVMIR/DebugImporter.h
M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
M mlir/lib/Target/LLVMIR/DebugTranslation.h
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
M mlir/test/Dialect/LLVMIR/debuginfo.mlir
M mlir/test/Target/LLVMIR/Import/debug-info.ll
M mlir/test/Target/LLVMIR/llvmir-debug.mlir
Log Message:
-----------
[mlir][debug] Support DICommonBlock. (#111706)
A COMMON block is a named area of memory that holds a collection of
variables. Fortran subprograms may map the COMMON block memory area to a
list of variables. A common block is represented in LLVM debug by
DICommonBlock.
This PR adds support for this in MLIR. The changes are mostly mechanical
apart from small change to access the DICompileUnit when the scope of
the variable is DICommonBlock.
---------
Co-authored-by: Tobias Gysi <tobias.gysi at nextsilicon.com>
Commit: 43ba97e7079525a9686e15a6963508dfbd493f81
https://github.com/llvm/llvm-project/commit/43ba97e7079525a9686e15a6963508dfbd493f81
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M libcxx/src/CMakeLists.txt
M libcxxabi/src/CMakeLists.txt
M libunwind/src/CMakeLists.txt
Log Message:
-----------
[runtimes][NFC] Reindent CMake files (#111821)
This is a purely mechanical commit for fixing the indentation of the
runtimes' CMakeLists files after #80007. That PR didn't update the
indentation in order to make the diff easier to review and for merge
conflicts to be easier to resolve (for downstream changes).
This doesn't change any code, it only reindents it.
Commit: 3f9998af4f79e95fe8be615df9d6b898008044b9
https://github.com/llvm/llvm-project/commit/3f9998af4f79e95fe8be615df9d6b898008044b9
Author: Justin Fargnoli <jfargnoli at nvidia.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/test/CodeGen/NVPTX/i8x4-instructions.ll
M llvm/test/CodeGen/NVPTX/sext-setcc.ll
Log Message:
-----------
[NVPTX] Prefer prmt.b32 over bfi.b32 (#110766)
In [[NVPTX] Improve lowering of
v4i8](https://github.com/llvm/llvm-project/commit/cbafb6f2f5c99474164dcc725820cbbeb2e02e14)
@Artem-B add the ability to lower ISD::BUILD_VECTOR with bfi PTX
instructions. @Artem-B did this because:
([source](https://github.com/llvm/llvm-project/pull/67866#discussion_r1343066911))
> Under the hood byte extraction/insertion ends up as BFI/BFE
instructions, so we may as well do that in PTX, too.
https://godbolt.org/z/Tb3zWbj9b
However, the example that @Artem-B linked was targeting sm_52. On modern
architectures, ptxas uses prmt.b32.
[Example](https://godbolt.org/z/Ye4W1n84o).
Thus, remove uses of NVPTXISD::BFI in favor of NVPTXISD::PRMT.
Commit: c893e3d02d1f7b67880090485a030b79741bba1c
https://github.com/llvm/llvm-project/commit/c893e3d02d1f7b67880090485a030b79741bba1c
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M flang/runtime/io-stmt.cpp
M flang/runtime/io-stmt.h
Log Message:
-----------
[flang][runtime] Fix runtime crash after bad recoverable OPEN (#111454)
When an OPEN statement with a unit number fails in a recoverable manner,
the runtime needs to delete the ExternalFileUnit instance that was
created in the unit map. And we do this too soon -- that instance still
holds some of the I/O statement state that will be used by a later call
into the runtime for EndIoStatement.
Move the code that deletes the unit after a failed but recoverable OPEN
into ExternalIoStatementBase::EndIoStatement, and don't do things
afterwards that would need the I/O statement state that has been
destroyed.
Fixes https://github.com/llvm/llvm-project/issues/111404.
Commit: 4f2b65fb80a4b27e5fb88db816ed0ce174c9b1b4
https://github.com/llvm/llvm-project/commit/4f2b65fb80a4b27e5fb88db816ed0ce174c9b1b4
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
A flang/include/flang/Semantics/program-tree.h
M flang/include/flang/Semantics/semantics.h
M flang/lib/Semantics/program-tree.cpp
R flang/lib/Semantics/program-tree.h
M flang/lib/Semantics/resolve-names.cpp
M flang/lib/Semantics/semantics.cpp
Log Message:
-----------
[flang] Fix references to destroyed objects (#111582)
ProgramTree instances are created as the value of a local variable in
the Pre(const parser::ProgramUnit &) member function in name resolution.
But references to these ProgramTree instances can persist in
SubprogramNameDetails symbol table entries that might survive that
function call's lifetime, and lead to trouble later when (e.g.)
expression semantics needs to deal with a possible forward reference in
a function reference in an expression being processed later in
expression checking.
So put those ProgramTree instances into a longer-lived linked list
within the SemanticsContext.
Might fix some weird crashes reported on big-endian targets (AIX &
Solaris).
Commit: 2f22656db541e4e5c3401e7bbab25277c8438a23
https://github.com/llvm/llvm-project/commit/2f22656db541e4e5c3401e7bbab25277c8438a23
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M flang/lib/Semantics/resolve-names-utils.cpp
M flang/lib/Semantics/resolve-names-utils.h
M flang/lib/Semantics/tools.cpp
Log Message:
-----------
[flang] Minor cleanup (move function into /tools.cpp) (#111587)
The semantics utility GetAllNames has declarations in two header files
and a definition that really should be in the common utilities source
file. Remove the redudant declaration from resolve-names-utils.h and
move code from resolve-names-utils.cpp into Semantics/tools.cpp.
Commit: 7e16571eb02e7e9da24fee45359e981af783d0d0
https://github.com/llvm/llvm-project/commit/7e16571eb02e7e9da24fee45359e981af783d0d0
Author: Adrian Vogelsgesang <avogelsgesang at salesforce.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M libcxx/docs/UserDocumentation.rst
M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
A lldb/test/API/lang/cpp/libcxx-internals-recognizer/Makefile
A lldb/test/API/lang/cpp/libcxx-internals-recognizer/TestLibcxxInternalsRecognizer.py
A lldb/test/API/lang/cpp/libcxx-internals-recognizer/main.cpp
R lldb/test/API/lang/cpp/std-invoke-recognizer/Makefile
R lldb/test/API/lang/cpp/std-invoke-recognizer/TestStdInvokeRecognizer.py
R lldb/test/API/lang/cpp/std-invoke-recognizer/main.cpp
Log Message:
-----------
[lldb][libc++] Hide all libc++ implementation details from stacktraces (#108870)
This commit changes the libc++ frame recognizer to hide implementation
details of libc++ more aggressively. The applied heuristic is rather
straightforward: We consider every function name starting with `__` as
an implementation detail.
This works pretty neatly for `std::invoke`, `std::function`,
`std::sort`, `std::map::emplace` and many others. Also, this should
align quite nicely with libc++'s general coding convention of using the
`__` for their implementation details, thereby keeping the future
maintenance effort low.
However, this heuristic by itself does not work in 100% of the cases:
E.g., `std::ranges::sort` is not a function, but an object with an
overloaded `operator()`, which means that there is no actual call
`std::ranges::sort` in the call stack. Instead, there is a
`std::ranges::__sort::operator()` call. To make sure that we don't hide
this stack frame, we never hide the frame which represents the entry
point from user code into libc++ code
Commit: 7026960ecfe156223c4126495c146ce0d42c64a7
https://github.com/llvm/llvm-project/commit/7026960ecfe156223c4126495c146ce0d42c64a7
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M flang/include/flang/Runtime/allocator-registry.h
Log Message:
-----------
[flang][runtime][NFC] Fix header guard typo (#111741)
Header guard was in sync with the filename.
Commit: 99c8557c175e88ff1c338c4c29e3a4d63c5a46cb
https://github.com/llvm/llvm-project/commit/99c8557c175e88ff1c338c4c29e3a4d63c5a46cb
Author: Renato Golin <rengolin at systemcall.eu>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
Log Message:
-----------
Fix GCC build problem with 03483737a7a2
Commit: 453d373e80f3ed8d67c92956101f7b9fa9467116
https://github.com/llvm/llvm-project/commit/453d373e80f3ed8d67c92956101f7b9fa9467116
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M compiler-rt/lib/lsan/lsan_common.cpp
Log Message:
-----------
[lsan] Add a few "\n" missing from VReport
Commit: 62b3a4bc708885f8ded09c900a79ad509f02e54a
https://github.com/llvm/llvm-project/commit/62b3a4bc708885f8ded09c900a79ad509f02e54a
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.barrier.wait.ll
Log Message:
-----------
[AMDGPU] Improve codegen for s_barrier_init (#111866)
Commit: ba530e6b64a27876ef5ea8e29806260d8bc00926
https://github.com/llvm/llvm-project/commit/ba530e6b64a27876ef5ea8e29806260d8bc00926
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
A utils/bazel/llvm-project-overlay/clang-tools-extra/clang-doc/BUILD.bazel
M utils/bazel/llvm-project-overlay/clang-tools-extra/unittests/BUILD.bazel
Log Message:
-----------
[bazel] Add initial clang-doc config (#111779)
Commit: d36cef0b173329fa1f94ff3a92da6a50da4aff9e
https://github.com/llvm/llvm-project/commit/d36cef0b173329fa1f94ff3a92da6a50da4aff9e
Author: Finn Plummer <50529406+inbelic at users.noreply.github.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/CodeGenHLSL/builtins/wave_get_lane_index_simple.hlsl
A clang/test/SemaHLSL/BuiltIns/WaveGetLaneIndex-errors.hlsl
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/lib/Target/DirectX/DXIL.td
A llvm/test/CodeGen/DirectX/WaveGetLaneIndex.ll
Log Message:
-----------
[HLSL][DXIL] Implement WaveGetLaneIndex Intrinsic (#111576)
- add additional lowering for directx backend in CGBuiltin.cpp
- add directx intrinsic to IntrinsicsDirectX.td
- add semantic check of arguments in SemaHLSL.cpp
- add mapping to DXIL op in DXIL.td
- add testing of semantics in WaveGetLaneIndex-errors.hlsl
- add testing of dxil lowering in WaveGetLaneIndex.ll
Resolves #70105
Commit: b800ff67dae59e194c8e9fc5d795a5932dc726f8
https://github.com/llvm/llvm-project/commit/b800ff67dae59e194c8e9fc5d795a5932dc726f8
Author: Donough Liu <ldm2993593805 at 163.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/tools/debugserver/source/MacOSX/MachThread.cpp
M lldb/tools/debugserver/source/MacOSX/MachThread.h
Log Message:
-----------
[lldb][debugserver][NFC] Simplify macOS thread name fetching. (#111684)
Remove unnecessary `proc_pidinfo` calling.
Commit: c2063de1593610eda0f4de33c3b89324642ed54c
https://github.com/llvm/llvm-project/commit/c2063de1593610eda0f4de33c3b89324642ed54c
Author: Greg Roth <grroth at microsoft.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/lib/Basic/Targets/DirectX.h
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/test/CodeGenHLSL/ArrayTemporary.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/OutputArguments.hlsl
M clang/test/CodeGenHLSL/GlobalConstructorFunction.hlsl
M clang/test/CodeGenHLSL/GlobalConstructorLib.hlsl
M clang/test/CodeGenHLSL/GlobalConstructors.hlsl
M clang/test/CodeGenHLSL/GlobalDestructors.hlsl
M clang/test/CodeGenHLSL/basic_types.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-annotations.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-elementtype.hlsl
M clang/test/CodeGenHLSL/builtins/RasterizerOrderedBuffer-annotations.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffer-annotations.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffer-elementtype.hlsl
M clang/test/CodeGenHLSL/builtins/abs.hlsl
M clang/test/CodeGenHLSL/builtins/ceil.hlsl
M clang/test/CodeGenHLSL/builtins/clamp.hlsl
M clang/test/CodeGenHLSL/builtins/cos.hlsl
M clang/test/CodeGenHLSL/builtins/exp.hlsl
M clang/test/CodeGenHLSL/builtins/exp2.hlsl
M clang/test/CodeGenHLSL/builtins/floor.hlsl
M clang/test/CodeGenHLSL/builtins/hlsl_resource_t.hlsl
M clang/test/CodeGenHLSL/builtins/log.hlsl
M clang/test/CodeGenHLSL/builtins/log10.hlsl
M clang/test/CodeGenHLSL/builtins/log2.hlsl
M clang/test/CodeGenHLSL/builtins/max.hlsl
M clang/test/CodeGenHLSL/builtins/min.hlsl
M clang/test/CodeGenHLSL/builtins/pow.hlsl
M clang/test/CodeGenHLSL/builtins/round.hlsl
M clang/test/CodeGenHLSL/builtins/saturate.hlsl
M clang/test/CodeGenHLSL/builtins/sin.hlsl
M clang/test/CodeGenHLSL/builtins/sqrt.hlsl
M clang/test/CodeGenHLSL/builtins/trunc.hlsl
M clang/test/CodeGenHLSL/export.hlsl
M clang/test/CodeGenHLSL/float3.hlsl
M clang/test/CodeGenHLSL/group_shared.hlsl
M clang/test/CodeGenHLSL/half.hlsl
M clang/test/CodeGenHLSL/implicit-norecurse-attrib.hlsl
M clang/test/CodeGenHLSL/inline-constructors.hlsl
M clang/test/CodeGenHLSL/inline-functions.hlsl
M clang/test/CodeGenHLSL/semantics/GroupIndex-codegen.hlsl
M clang/test/CodeGenHLSL/shift-mask.hlsl
M clang/test/CodeGenHLSL/sret_output.hlsl
M clang/test/CodeGenHLSL/static-local-ctor.hlsl
M clang/test/CodeGenHLSL/static_global_and_function_in_cb.hlsl
M clang/test/CodeGenHLSL/this-assignment-overload.hlsl
M clang/test/CodeGenHLSL/this-assignment.hlsl
M clang/test/CodeGenHLSL/this-reference.hlsl
Log Message:
-----------
Switch DirectX Target to use the Itanium ABI (#111632)
To consolidate behavior of function mangling and limit the number of
places that ABI changes will need to be made, this switches the DirectX
target used for HLSL to use the Itanium ABI from the Microsoft ABI. The
Itanium ABI has greater flexibility in decisions regarding mangling of
new types of which we have more than a few yet to add.
One effect of this will be that linking library shaders compiled with
DXC will not be possible with shaders compiled with clang. That isn't
considered a terribly interesting use case and one that would likely
have been onerous to maintain anyway.
This involved adding a function to call all global destructors as the
Microsoft ABI had done.
This requires a few changes to tests. Most notably the mangling style
has changed which accounts for most of the changes. In making those
changes, I took the opportunity to harmonize some very similar tests for
greater consistency. I also shaved off some unneeded run flags that had
probably been copied over from one test to another.
Other changes effected by using the new ABI include using different
types when manipulating smaller bitfields, eliminating an unnecessary
alloca in one instance in this-assignment.hlsl, changing the way static
local initialization is guarded, and changing the order of inout
parameters getting copied in and out. That last is a subtle change in
functionality, but one where there was sufficient inconsistency in the
past that standardizing is important, but the particular direction of
the standardization is less important for the sake of existing shaders.
fixes #110736
Commit: 747d8f3fc93d912183059142631a343fb20bd07f
https://github.com/llvm/llvm-project/commit/747d8f3fc93d912183059142631a343fb20bd07f
Author: vporpo <vporpodas at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp
Log Message:
-----------
[SandboxVec][DAG] Implement PredIterator (#111604)
This patch implements an iterator for iterating over both use-def and
mem dependencies of MemDGNodes.
Commit: bb937e276da11c6d85318b32006f6510877c1a2c
https://github.com/llvm/llvm-project/commit/bb937e276da11c6d85318b32006f6510877c1a2c
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/sve-live-out-pointer-induction.ll
M llvm/test/Transforms/LoopVectorize/X86/float-induction-x86.ll
M llvm/test/Transforms/LoopVectorize/iv_outside_user.ll
M llvm/test/Transforms/LoopVectorize/no-fold-tail-by-masking-iv-external-uses.ll
M llvm/test/Transforms/LoopVectorize/pr58811-scev-expansion.ll
Log Message:
-----------
[LV] Compute value of escaped induction based on the computed end value. (#110576)
Update fixupIVUsers to compute the value for escaped inductions using
the already computed end value of the induction (EndValue), but
subtracting the step.
This results in slightly simpler codegen, as we avoid computing the full
transformed index at VectorTripCount - 1.
PR: https://github.com/llvm/llvm-project/pull/110576
Commit: 125262312f366bd776b668b24026dbbc8e6b4c75
https://github.com/llvm/llvm-project/commit/125262312f366bd776b668b24026dbbc8e6b4c75
Author: Tyler Nowicki <tyler.nowicki at amd.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/unittests/Transforms/Coroutines/ExtraRematTest.cpp
Log Message:
-----------
[Coroutines] Improve use of unique_ptr (#111870)
* Replace usage of unique_ptr<>(new ...) -> make_unique<>();
Commit: f6e93b8147a94a595293b47c39d20d2038c812d1
https://github.com/llvm/llvm-project/commit/f6e93b8147a94a595293b47c39d20d2038c812d1
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
Log Message:
-----------
AMDGPU: Minor improvement and cleanup for waterfall loop generation (#111886)
First, ReadlanePieces should be in the scope of each MachineOperand. It
is not correct if we declare in a outer scope without clearing after the
use for a MachineOperand.
Additionally, we do not need the OrigBB argyment for
emitLoadScalarOpsFromVGPRLoop, since MachineFunction (the only use) can
be obtained from LoopBB (or BodyBB).
Commit: e34d614e7d8616f165f3f5d349db98d9924826f2
https://github.com/llvm/llvm-project/commit/e34d614e7d8616f165f3f5d349db98d9924826f2
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
Log Message:
-----------
[Passes] Remove -enable-infer-alignment-pass flag (#111873)
This flag has been on for a while without any complaints.
Commit: 07892aaf04032e7a18368bc8320f93f7d46ab20f
https://github.com/llvm/llvm-project/commit/07892aaf04032e7a18368bc8320f93f7d46ab20f
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_thread_registry.cpp
Log Message:
-----------
[NFC][sanitizer] Clang format sanitizer_thread_registry.cpp
Commit: a4916d200518ac077be93995af18bd80fcb89cc2
https://github.com/llvm/llvm-project/commit/a4916d200518ac077be93995af18bd80fcb89cc2
Author: vporpo <vporpodas at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp
Log Message:
-----------
[SandboxVec][DAG] Refactoring: Move MemPreds from DGNode to MemDGNode (#111897)
Commit: d832a1c744fddad93ec4d8d2739c2a49a3623e02
https://github.com/llvm/llvm-project/commit/d832a1c744fddad93ec4d8d2739c2a49a3623e02
Author: Justin Fargnoli <jfargnoli at nvidia.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
M llvm/test/CodeGen/NVPTX/unreachable.ll
Log Message:
-----------
[NVPTX] Only run LowerUnreachable when necessary (#109868)
Before CUDA 12.3 `ptxas` did not recognize that the trap instruction
terminates a basic block. Instead, it would assume that control flow
continued to the next instruction. The next instruction could be in the
block that's lexically below it. This would lead to phantom CFG edges
being created within ptxas.
[NVPTX: Lower unreachable to exit to allow ptxas to accurately
reconstruct the
CFG.](https://github.com/llvm/llvm-project/commit/1ee4d880e8760256c606fe55b7af85a4f70d006d)
added the LowerUnreachable pass to NVPTX to work around this. Several
other WAR patches followed.
This bug in `ptxas` was fixed in CUDA 12.3 and is thus impossible to
encounter when targeting PTX ISA v8.3+
This commit reverts the WARs for the `ptxas` bug when targeting PTX ISA
v8.3+
CC @maleadt
Commit: 29e192a0bfbc75fa66498d3b1c1d1329009f1dd2
https://github.com/llvm/llvm-project/commit/29e192a0bfbc75fa66498d3b1c1d1329009f1dd2
Author: Tyler Nowicki <tyler.nowicki at amd.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/docs/Coroutines.rst
Log Message:
-----------
[Coroutines] Documentation for custom ABIs (#111781)
Update the llvm/docs/Coroutines.rst docs to include a full description
of Custom ABI objects. This documentation describes the how ABI objects
allow users (plugin libraries) to create custom ABI objects for their
needs.
Commit: d5e1de6da96c1ab3b8cae68447e8ed3696a7006e
https://github.com/llvm/llvm-project/commit/d5e1de6da96c1ab3b8cae68447e8ed3696a7006e
Author: Robert O'Callahan <robert at ocallahan.org>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/include/lldb/API/SBProcess.h
M lldb/include/lldb/Target/Process.h
M lldb/include/lldb/Target/StopInfo.h
M lldb/include/lldb/lldb-enumerations.h
M lldb/packages/Python/lldbsuite/test/gdbclientutils.py
A lldb/packages/Python/lldbsuite/test/lldbgdbproxy.py
A lldb/packages/Python/lldbsuite/test/lldbreverse.py
M lldb/packages/Python/lldbsuite/test/lldbtest.py
M lldb/source/API/SBProcess.cpp
M lldb/source/API/SBThread.cpp
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp
M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.h
M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
M lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp
M lldb/source/Plugins/Process/scripted/ScriptedProcess.h
M lldb/source/Target/Process.cpp
M lldb/source/Target/StopInfo.cpp
M lldb/source/Target/Thread.cpp
A lldb/test/API/functionalities/reverse-execution/Makefile
A lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py
A lldb/test/API/functionalities/reverse-execution/TestReverseContinueNotSupported.py
A lldb/test/API/functionalities/reverse-execution/main.c
M lldb/tools/lldb-dap/JSONUtils.cpp
M lldb/tools/lldb-dap/LLDBUtils.cpp
Log Message:
-----------
[lldb] Implement basic support for reverse-continue (#99736)
This commit only adds support for the
`SBProcess::ReverseContinue()` API. A user-accessible command for this
will follow in a later commit.
This feature depends on a gdbserver implementation (e.g. `rr`) providing
support for the `bc` and `bs` packets. `lldb-server` does not support
those packets, and there is no plan to change that. So, for testing
purposes, `lldbreverse.py` wraps `lldb-server` with a Python
implementation of *very limited* record-and-replay functionality for use
by *tests only*.
The majority of this PR is test infrastructure (about 700 of the 950
lines added).
Commit: f0ed31ce4b63a5530fd1de875c0d1467d4d2c6ea
https://github.com/llvm/llvm-project/commit/f0ed31ce4b63a5530fd1de875c0d1467d4d2c6ea
Author: Youngsuk Kim <youngsuk.kim at hpe.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Instrumentation/PGOCtxProfLowering.cpp
Log Message:
-----------
[llvm][PGOCtxProfLowering] Avoid Type::getPointerTo() (NFC) (#111857)
`Type::getPointerTo()` is to be deprecated & removed soon.
Commit: 942fefe74112acb68fa43dde44abe3ae125457e1
https://github.com/llvm/llvm-project/commit/942fefe74112acb68fa43dde44abe3ae125457e1
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_linux.h
Log Message:
-----------
[NFC][sanitizer] Reopen '/proc/%d/task' instead of seek
NFC because I am not aware of any particular
issue from seek, but reopen looks less error prone.
Pull Request: https://github.com/llvm/llvm-project/pull/111899
Commit: 69b0b7e7ac3adc42df517c25ed7017b5af9be9f1
https://github.com/llvm/llvm-project/commit/69b0b7e7ac3adc42df517c25ed7017b5af9be9f1
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/include/lldb/Target/StackFrame.h
M lldb/source/Expression/DWARFExpression.cpp
M lldb/source/Target/StackFrame.cpp
Log Message:
-----------
[lldb] Return an llvm::Error from GetFrameBaseValue (#111882)
This fixes the following assertion: "Cannot create Expected<T> from
Error success value." The problem was that GetFrameBaseValue return
false without updating the Status argument. This patch eliminates the
opportunity for mistakes by returning an llvm:Error.
Commit: b3554265f24aa570bbc8693af8420a306c459f94
https://github.com/llvm/llvm-project/commit/b3554265f24aa570bbc8693af8420a306c459f94
Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/include/lldb/lldb-enumerations.h
Log Message:
-----------
[lldb] Add include for SBLanguages in lldb-enumerations (#111907)
This adds an include for SBLanguages.h in lldb-enumerations.h so that
files that need this enum do not have to explicitly include SBLanguages.
Commit: 36bd9aebc428413a94f77e8daa679d1937dc2b63
https://github.com/llvm/llvm-project/commit/36bd9aebc428413a94f77e8daa679d1937dc2b63
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M compiler-rt/lib/asan/asan_posix.cpp
M compiler-rt/lib/dfsan/dfsan_custom.cpp
M compiler-rt/lib/hwasan/hwasan_linux.cpp
M compiler-rt/lib/lsan/lsan_posix.cpp
M compiler-rt/lib/msan/msan_linux.cpp
M compiler-rt/lib/tsan/rtl/tsan_rtl.cpp
Log Message:
-----------
[sanitizer] VReport BeforeFork/AfterFork (#111900)
Forks are common suspects for unusual sanitizer behavior.
It can be handy to see them without rebuild.
Commit: 86f78c0093100016bcb0299d1b7828c2d30e3a56
https://github.com/llvm/llvm-project/commit/86f78c0093100016bcb0299d1b7828c2d30e3a56
Author: Alexis Perry-Holby <aperry at lanl.gov>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M flang/docs/GettingInvolved.md
Log Message:
-----------
[flang] Add a link to the ICS file for the Biweekly Flang Community Call
Commit: b77fdf5799be6b29869f2f7969851709e03938ba
https://github.com/llvm/llvm-project/commit/b77fdf5799be6b29869f2f7969851709e03938ba
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
Log Message:
-----------
[lldb] SetErrorStringWithFormatv -> FromErrorStringWithFormatv (NFC)
Commit: 69c0067927293bff1401a9a050081e83dbefd282
https://github.com/llvm/llvm-project/commit/69c0067927293bff1401a9a050081e83dbefd282
Author: vporpo <vporpodas at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp
Log Message:
-----------
[SandboxVec][DAG] Refactoring: Outline code that looks for mem nodes (#111750)
Commit: 195486950fa64938e62f6d85d31222fa41d0ee09
https://github.com/llvm/llvm-project/commit/195486950fa64938e62f6d85d31222fa41d0ee09
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
Log Message:
-----------
[NFC][sanitizer] Fix at_scope_exit name.
Commit: 4b5018d2311596778cade4db5177e2ab879cc218
https://github.com/llvm/llvm-project/commit/4b5018d2311596778cade4db5177e2ab879cc218
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/RISCV/reduced-value-repeated-and-vectorized.ll
Log Message:
-----------
[SLP]Track repeated reduced value as it might be vectorized
Need to track changes with the repeated reduced value, since it might be
vectorized in the next attempt for reduction vectorization, to correctly
generate the code and avoid compiler crash.
Fixes #111887
Commit: 16ef893e9fdec2b08dafc82f5450b41834e09039
https://github.com/llvm/llvm-project/commit/16ef893e9fdec2b08dafc82f5450b41834e09039
Author: Wael Yehia <wyehia at ca.ibm.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M compiler-rt/test/profile/instrprof-tmpdir.c
Log Message:
-----------
[test] env -u is not supported on AIX, use `unset` instead
Commit: c99b36554745837c549e1b46cd60db70588affcf
https://github.com/llvm/llvm-project/commit/c99b36554745837c549e1b46cd60db70588affcf
Author: Jason Molenda <jmolenda at apple.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/include/lldb/lldb-enumerations.h
Log Message:
-----------
Revert "[lldb] Add include for SBLanguages in lldb-enumerations (#111907)"
Temporarily Revert until Chelsea can look at this. With a clean build,
SBLanguages.h won't be generated in the build directory at the point
when it is included by lldb-enumerations when compiling e.g.
Broadcaster.cpp. On a clean build (no pre-existing build directory),
the dependency ordering is not explicitly stated so the build will fail.
An incremental build will succeed.
This reverts commit b3554265f24aa570bbc8693af8420a306c459f94.
Commit: 5deadc6eaede3d32ccdd68529f371092d4d218da
https://github.com/llvm/llvm-project/commit/5deadc6eaede3d32ccdd68529f371092d4d218da
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_linux.h
Log Message:
-----------
[NFC][sanitizer] Extract `LoadStatus` (#111909)
For #111901
Commit: af7fa2710c998811dd72799799798f2bd4d9bff4
https://github.com/llvm/llvm-project/commit/af7fa2710c998811dd72799799798f2bd4d9bff4
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp
Log Message:
-----------
[sanitizer] VReport thread status for failed PTRACE_ATTACH (#111901)
Such threads can cause false leak reports,
but often it's hard to diagnose the reason of
failed PTRACE_ATTACH. Maybe we can find
a clue from `/proc/*/task/*/status`
Commit: 48545a955c4e61f42833af7417032d816482bdfc
https://github.com/llvm/llvm-project/commit/48545a955c4e61f42833af7417032d816482bdfc
Author: William Junda Huang <williamjhuang at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Linker/IRMover.cpp
A llvm/test/ThinLTO/X86/Inputs/ditemplatevalueparameter-remap.ll
A llvm/test/ThinLTO/X86/ditemplatevalueparameter-remap.ll
Log Message:
-----------
[ThinLTO] Do not duplicate import a function that is actually defined in the current module (#110064)
Doing so could cause a bug where the linker tries to remap a function
"reimported" from the current module when materializing it, causing a
lookup assert in the type mappings.
Commit: f02252e1fd2965db007cf7be74c448b7a119c321
https://github.com/llvm/llvm-project/commit/f02252e1fd2965db007cf7be74c448b7a119c321
Author: Augusto Noronha <anoronha at apple.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
Log Message:
-----------
Revert "[lldb] SetErrorStringWithFormatv -> FromErrorStringWithFormatv (NFC)"
This reverts commit b77fdf5799be6b29869f2f7969851709e03938ba.
Commit: 2ff4c25b7efff64b3b662d0bedcfe7edebcf20b9
https://github.com/llvm/llvm-project/commit/2ff4c25b7efff64b3b662d0bedcfe7edebcf20b9
Author: Augusto Noronha <anoronha at apple.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/include/lldb/API/SBProcess.h
M lldb/include/lldb/Target/Process.h
M lldb/include/lldb/Target/StopInfo.h
M lldb/include/lldb/lldb-enumerations.h
M lldb/packages/Python/lldbsuite/test/gdbclientutils.py
R lldb/packages/Python/lldbsuite/test/lldbgdbproxy.py
R lldb/packages/Python/lldbsuite/test/lldbreverse.py
M lldb/packages/Python/lldbsuite/test/lldbtest.py
M lldb/source/API/SBProcess.cpp
M lldb/source/API/SBThread.cpp
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp
M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.h
M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
M lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp
M lldb/source/Plugins/Process/scripted/ScriptedProcess.h
M lldb/source/Target/Process.cpp
M lldb/source/Target/StopInfo.cpp
M lldb/source/Target/Thread.cpp
R lldb/test/API/functionalities/reverse-execution/Makefile
R lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py
R lldb/test/API/functionalities/reverse-execution/TestReverseContinueNotSupported.py
R lldb/test/API/functionalities/reverse-execution/main.c
M lldb/tools/lldb-dap/JSONUtils.cpp
M lldb/tools/lldb-dap/LLDBUtils.cpp
Log Message:
-----------
Revert "[lldb] Implement basic support for reverse-continue (#99736)"
This reverts commit d5e1de6da96c1ab3b8cae68447e8ed3696a7006e.
Commit: e9c8f75d45ababe7f805078bbf7bda2e7425f1b7
https://github.com/llvm/llvm-project/commit/e9c8f75d45ababe7f805078bbf7bda2e7425f1b7
Author: Jacob Lalonde <jalalonde at fb.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/include/lldb/Target/DynamicLoader.h
M lldb/source/Core/DynamicLoader.cpp
M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.h
M lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp
M lldb/source/Plugins/Process/minidump/ProcessMinidump.h
M lldb/source/Plugins/Process/minidump/RegisterContextMinidump_x86_64.cpp
M lldb/source/Target/Process.cpp
M lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidump.py
M lldb/test/API/functionalities/process_save_core_minidump/main.cpp
Log Message:
-----------
[LLDB][Minidump] Have Minidumps save off and properly read TLS data (#109477)
This patch adds the support to `Process.cpp` to automatically save off
TLS sections, either via loading the memory region for the module, or
via reading `fs_base` via generic register. Then when Minidumps are
loaded, we now specify we want the dynamic loader to be the `POSIXDYLD`
so we can leverage the same TLS accessor code as `ProcessELFCore`. Being
able to access TLS Data is an important step for LLDB generated
minidumps to have feature parity with ELF Core dumps.
Commit: 4f297566b3150097de26c6a23a987d2bd5fc19c5
https://github.com/llvm/llvm-project/commit/4f297566b3150097de26c6a23a987d2bd5fc19c5
Author: Robert O'Callahan <robert at ocallahan.org>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/include/lldb/API/SBProcess.h
M lldb/include/lldb/Target/Process.h
M lldb/include/lldb/Target/StopInfo.h
M lldb/include/lldb/lldb-enumerations.h
M lldb/packages/Python/lldbsuite/test/gdbclientutils.py
A lldb/packages/Python/lldbsuite/test/lldbgdbproxy.py
A lldb/packages/Python/lldbsuite/test/lldbreverse.py
M lldb/packages/Python/lldbsuite/test/lldbtest.py
M lldb/source/API/SBProcess.cpp
M lldb/source/API/SBThread.cpp
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp
M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.h
M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
M lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp
M lldb/source/Plugins/Process/scripted/ScriptedProcess.h
M lldb/source/Target/Process.cpp
M lldb/source/Target/StopInfo.cpp
M lldb/source/Target/Thread.cpp
A lldb/test/API/functionalities/reverse-execution/Makefile
A lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py
A lldb/test/API/functionalities/reverse-execution/TestReverseContinueNotSupported.py
A lldb/test/API/functionalities/reverse-execution/main.c
M lldb/tools/lldb-dap/JSONUtils.cpp
M lldb/tools/lldb-dap/LLDBUtils.cpp
Log Message:
-----------
[lldb] Implement basic support for reverse-continue (#99736)
This commit only adds support for the
`SBProcess::ReverseContinue()` API. A user-accessible command for this
will follow in a later commit.
This feature depends on a gdbserver implementation (e.g. `rr`) providing
support for the `bc` and `bs` packets. `lldb-server` does not support
those packets, and there is no plan to change that. So, for testing
purposes, `lldbreverse.py` wraps `lldb-server` with a Python
implementation of *very limited* record-and-replay functionality for use
by *tests only*.
The majority of this PR is test infrastructure (about 700 of the 950
lines added).
Commit: fae7d6848bbb59fc2bad17adbdb34bd6a11a0651
https://github.com/llvm/llvm-project/commit/fae7d6848bbb59fc2bad17adbdb34bd6a11a0651
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
Log Message:
-----------
[lldb] SetErrorStringWithFormatv -> FromErrorStringWithFormatv (NFC)
Commit: c686eeb7fcc89673909e7e1f0a0a09a0da269d28
https://github.com/llvm/llvm-project/commit/c686eeb7fcc89673909e7e1f0a0a09a0da269d28
Author: Jason Molenda <jmolenda at apple.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py
M lldb/test/API/functionalities/reverse-execution/TestReverseContinueNotSupported.py
Log Message:
-----------
[lldb] skip ReverseContinue tests on Darwin
This uses lldb-server in gdbserver mode, which requires a ProcessNative
plugin. Darwin does not have a ProcessNative plugin; it uses
debugserver instead of lldb-server. Skip these tests.
Commit: 1bf271d5a7de58faf525c3b90ef4a4a8ff47e688
https://github.com/llvm/llvm-project/commit/1bf271d5a7de58faf525c3b90ef4a4a8ff47e688
Author: William Junda Huang <williamjhuang at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Linker/IRMover.cpp
R llvm/test/ThinLTO/X86/Inputs/ditemplatevalueparameter-remap.ll
R llvm/test/ThinLTO/X86/ditemplatevalueparameter-remap.ll
Log Message:
-----------
Revert "[ThinLTO] Do not duplicate import a function that is actually defined in the current module" (#111919)
Reverts llvm/llvm-project#110064
Commit: 45cc74357130190b9aef9fab77646c17f2cf2a5e
https://github.com/llvm/llvm-project/commit/45cc74357130190b9aef9fab77646c17f2cf2a5e
Author: vporpo <vporpodas at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
Log Message:
-----------
[SandboxVec][DAG][NFC] Add comment about duplicate notes in deps() (#111915)
Commit: cc20dd285ab72292a1d383d0779aecbe5e1ccf81
https://github.com/llvm/llvm-project/commit/cc20dd285ab72292a1d383d0779aecbe5e1ccf81
Author: Lang Hames <lhames at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/ELFNixPlatform.h
M llvm/lib/ExecutionEngine/Orc/ELFNixPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
Log Message:
-----------
[ORC][ELF] Remove the ExecutionSession& argument to ELFNixPlatform::Create.
We can get a reference to the ExecutionSession from the ObjectLinkingLayer
argument, so there's no need to pass it in separately.
Commit: 4f320778148ba481881eb53ba065ed2a9d9bbc03
https://github.com/llvm/llvm-project/commit/4f320778148ba481881eb53ba065ed2a9d9bbc03
Author: Jason Molenda <jmolenda at apple.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py
M lldb/test/API/functionalities/reverse-execution/TestReverseContinueNotSupported.py
Log Message:
-----------
Revert "[lldb] skip ReverseContinue tests on Darwin"
This reverts commit c686eeb7fcc89673909e7e1f0a0a09a0da269d28.
Commit: a28e7ce378d717e6aacbdc3089974b93b6b62948
https://github.com/llvm/llvm-project/commit/a28e7ce378d717e6aacbdc3089974b93b6b62948
Author: Jason Molenda <jmolenda at apple.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
Log Message:
-----------
Revert "[lldb] SetErrorStringWithFormatv -> FromErrorStringWithFormatv (NFC)"
This reverts commit fae7d6848bbb59fc2bad17adbdb34bd6a11a0651.
Commit: 3bef742559f1556569423ec63c70b97dff1d426e
https://github.com/llvm/llvm-project/commit/3bef742559f1556569423ec63c70b97dff1d426e
Author: Jason Molenda <jmolenda at apple.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lldb/include/lldb/API/SBProcess.h
M lldb/include/lldb/Target/Process.h
M lldb/include/lldb/Target/StopInfo.h
M lldb/include/lldb/lldb-enumerations.h
M lldb/packages/Python/lldbsuite/test/gdbclientutils.py
R lldb/packages/Python/lldbsuite/test/lldbgdbproxy.py
R lldb/packages/Python/lldbsuite/test/lldbreverse.py
M lldb/packages/Python/lldbsuite/test/lldbtest.py
M lldb/source/API/SBProcess.cpp
M lldb/source/API/SBThread.cpp
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp
M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.h
M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
M lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp
M lldb/source/Plugins/Process/scripted/ScriptedProcess.h
M lldb/source/Target/Process.cpp
M lldb/source/Target/StopInfo.cpp
M lldb/source/Target/Thread.cpp
R lldb/test/API/functionalities/reverse-execution/Makefile
R lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py
R lldb/test/API/functionalities/reverse-execution/TestReverseContinueNotSupported.py
R lldb/test/API/functionalities/reverse-execution/main.c
M lldb/tools/lldb-dap/JSONUtils.cpp
M lldb/tools/lldb-dap/LLDBUtils.cpp
Log Message:
-----------
Revert "[lldb] Implement basic support for reverse-continue (#99736)"
Reverting this again; I added a commit which added @skipIfDarwin
markers to the TestReverseContinueBreakpoints.py and
TestReverseContinueNotSupported.py API tests, which use lldb-server
in gdbserver mode which does not work on Darwin. But the aarch64 ubuntu
bot reported a failure on TestReverseContinueBreakpoints.py,
https://lab.llvm.org/buildbot/#/builders/59/builds/6397
File "/home/tcwg-buildbot/worker/lldb-aarch64-ubuntu/llvm-project/lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py", line 63, in test_reverse_continue_skip_breakpoint
self.reverse_continue_skip_breakpoint_internal(async_mode=False)
File "/home/tcwg-buildbot/worker/lldb-aarch64-ubuntu/llvm-project/lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py", line 81, in reverse_continue_skip_breakpoint_internal
self.expect(
File "/home/tcwg-buildbot/worker/lldb-aarch64-ubuntu/llvm-project/lldb/packages/Python/lldbsuite/test/lldbtest.py", line 2372, in expect
self.runCmd(
File "/home/tcwg-buildbot/worker/lldb-aarch64-ubuntu/llvm-project/lldb/packages/Python/lldbsuite/test/lldbtest.py", line 1002, in runCmd
self.assertTrue(self.res.Succeeded(), msg + output)
AssertionError: False is not true : Process should be stopped due to history boundary
Error output:
error: Process must be launched.
This reverts commit 4f297566b3150097de26c6a23a987d2bd5fc19c5.
Commit: 2647505027d8c01fc920b04aced8cec742a4b2ed
https://github.com/llvm/llvm-project/commit/2647505027d8c01fc920b04aced8cec742a4b2ed
Author: Finn Plummer <50529406+inbelic at users.noreply.github.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M clang/include/clang/Basic/Builtins.td
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Sema/SemaHLSL.cpp
A clang/test/CodeGenHLSL/builtins/degrees.hlsl
A clang/test/SemaHLSL/BuiltIns/degrees-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/half-float-only-errors.hlsl
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
A llvm/test/CodeGen/DirectX/degrees.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/degrees.ll
A llvm/test/CodeGen/SPIRV/opencl/degrees.ll
Log Message:
-----------
[HLSL] Implement the `degrees` intrinsic (#111209)
- add degrees builtin
- link degrees api in hlsl_intrinsics.h
- add degrees intrinsic to IntrinsicsDirectX.td
- add degrees intrinsic to IntrinsicsSPIRV.td
- add lowering from clang builtin to dx/spv intrinsics in CGBuiltin.cpp
- add semantic checks to SemaHLSL.cpp
- add expansion of directx intrinsic to llvm fmul for DirectX in
DXILIntrinsicExpansion.cpp
- add mapping to spir-v intrinsic in SPIRVInstructionSelector.cpp
- add test coverage:
- degrees.hlsl -> check hlsl lowering to dx/spv degrees intrinsics
- degrees-errors.hlsl/half-float-only-errors -> check semantic warnings
- hlsl-intrinsics/degrees.ll -> check lowering of spir-v degrees
intrinsic to SPIR-V backend
- DirectX/degrees.ll -> check expansion and scalarization of directx
degrees intrinsic to fmul
Resolves #99104
Commit: 6640dac22b567e5f6c328ca56cf9bf43d45509e6
https://github.com/llvm/llvm-project/commit/6640dac22b567e5f6c328ca56cf9bf43d45509e6
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/clang-tools-extra/include-cleaner/BUILD.bazel
Log Message:
-----------
[bazel] Add include-cleaner tests (#111924)
Commit: 1037f577bd66ab03bc494120f024f2a52008e285
https://github.com/llvm/llvm-project/commit/1037f577bd66ab03bc494120f024f2a52008e285
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lld/ELF/SymbolTable.cpp
M lld/test/ELF/version-script-reassign-glob.s
A lld/test/ELF/version-script-warn.s
Log Message:
-----------
[lld][elf] Warn if '*' pattern is used multiple times in version scripts (#102669)
If this pattern is used more than once in version script(s), only one
will have an effect, so it's probably a user error and can be diagnosed.
Commit: 0add1741d58e4b8d6cbc5f50e1fac86296680e5b
https://github.com/llvm/llvm-project/commit/0add1741d58e4b8d6cbc5f50e1fac86296680e5b
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel
Log Message:
-----------
[bazel] Port e9c8f75d45ababe7f805078bbf7bda2e7425f1b7 (#111928)
Commit: 774c953cf8f8ff2fe45b07f388a687748b775878
https://github.com/llvm/llvm-project/commit/774c953cf8f8ff2fe45b07f388a687748b775878
Author: yronglin <yronglin777 at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
[NFC][clang] Fix typo in ReleaseNotes (#111930)
Fix a typo in ReleaseNotes that introduced by
https://github.com/llvm/llvm-project/pull/86960.
Signed-off-by: yronglin <yronglin777 at gmail.com>
Commit: 9c81a2476566b068ef54fd51ab2540933542b2a6
https://github.com/llvm/llvm-project/commit/9c81a2476566b068ef54fd51ab2540933542b2a6
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M compiler-rt/lib/asan/asan_descriptions.cpp
Log Message:
-----------
[asan] Prevent printing invalid parent thread (#111916)
By default reuse can happend only after
`UINT32_MAX` threads, so it's almost NFC.
Commit: 72fb37922577997f3666203dbdb2601f0fc97748
https://github.com/llvm/llvm-project/commit/72fb37922577997f3666203dbdb2601f0fc97748
Author: YunQiang Su <yunqiang at isrc.iscas.ac.cn>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
A llvm/test/CodeGen/AArch64/fp-fcanonicalize.ll
M llvm/test/CodeGen/AArch64/fp-maximumnum-minimumnum.ll
Log Message:
-----------
AArch64: Select FCANONICALIZE (#104429)
FMINNM/FMAXNM instructions of AArch64 follow IEEE754-2008. We can use
them to canonicalize a floating point number. And
FMINNUM_IEEE/FMAXNUM_IEEE is used by something like expanding
FMINIMUMNUM/FMAXIMUMNUM, so let's define them.
---------
Co-authored-by: Your Name <you at example.com>
Commit: 6c398abb75da5413152f97a780ddb3b3b2b6a0b7
https://github.com/llvm/llvm-project/commit/6c398abb75da5413152f97a780ddb3b3b2b6a0b7
Author: Caio Oliveira <cmarcelo at gmail.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M mlir/utils/spirv/gen_spirv_dialect.py
Log Message:
-----------
[NFC][mlir][spirv] Fix syntax warnings in gen_spirv_dialect.py (#111775)
In the context of regular expressions, Python (used to) gracefully
ignore the escape behavior of `\` in some contexts, e.g. for
representing the regular expression `\w+`. However in newer versions of
Python this now gives a warning in the form
```
SyntaxWarning: invalid escape sequence '\w'
```
Fix by explicitly using raw strings instead.
Commit: e3894f58e1a534c57f53b3beb21d6b2f0d3382b2
https://github.com/llvm/llvm-project/commit/e3894f58e1a534c57f53b3beb21d6b2f0d3382b2
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/test/CodeGen/AArch64/arm64-popcnt.ll
M llvm/test/CodeGen/RISCV/rv32zbb.ll
M llvm/test/CodeGen/RISCV/rv64zbb.ll
M llvm/test/CodeGen/X86/ispow2.ll
M llvm/test/CodeGen/X86/known-never-zero.ll
Log Message:
-----------
[CodeGenPrepare] Convert `ctpop(X) ==/!= 1` into `ctpop(X) u</u> 2/1` (#111284)
Some targets have better codegen for `ctpop(X) u< 2` than `ctpop(X) ==
1`. After https://github.com/llvm/llvm-project/pull/100899, we set the
range of ctpop's return value to indicate the argument/result is
non-zero.
This patch converts `ctpop(X) ==/!= 1` into `ctpop(X) u</u> 2/1` in CGP
to fix https://github.com/llvm/llvm-project/issues/95255.
Commit: cbfcea1fc2154c92880278878610e16faba979be
https://github.com/llvm/llvm-project/commit/cbfcea1fc2154c92880278878610e16faba979be
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M libc/test/src/string/CMakeLists.txt
Log Message:
-----------
[libc] Temporarily disable strerror test on NVPTX
Summary:
This is failing on the NVPTX buildbot,
https://lab.llvm.org/buildbot/#/builders/69/builds/6997/. I cannot
reproduce it locally so I'm disabling it temporarily so the bot is
green.
Commit: 9f8ae7844dee7bb5527a59249e74885fb3bfb4a9
https://github.com/llvm/llvm-project/commit/9f8ae7844dee7bb5527a59249e74885fb3bfb4a9
Author: Adrian Vogelsgesang <avogelsgesang at salesforce.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M lldb/test/API/tools/lldb-dap/locations/Makefile
M lldb/test/API/tools/lldb-dap/locations/TestDAP_locations.py
R lldb/test/API/tools/lldb-dap/locations/main.c
A lldb/test/API/tools/lldb-dap/locations/main.cpp
M lldb/tools/lldb-dap/JSONUtils.cpp
M lldb/tools/lldb-dap/JSONUtils.h
M lldb/tools/lldb-dap/lldb-dap.cpp
Log Message:
-----------
[lldb-dap] Implement value locations for function pointers (#104589)
This commit adds `valueLocationReference` to function pointers and
function references. Thereby, users can navigate directly to the
pointed-to function from within the "variables" pane.
In general, it would be useful to also a add similar location references
also to member function pointers, `std::source_location`,
`std::function`, and many more. Doing so would require extending the
formatters to provide such a source code location.
There were two RFCs about this a while ago:
https://discourse.llvm.org/t/rfc-extending-formatters-with-a-source-code-reference/68375
https://discourse.llvm.org/t/rfc-sbvalue-metadata-provider/68377/26
However, both RFCs ended without a conclusion. As such, this commit now
implements the lowest-hanging fruit, i.e. function pointers. If people
find it useful, I will revive the RFC afterwards.
Commit: 9882b35a3a3e46d749b801bd0b98c3d90af6006c
https://github.com/llvm/llvm-project/commit/9882b35a3a3e46d749b801bd0b98c3d90af6006c
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.h
M llvm/lib/Target/X86/X86InstrAVX512.td
M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
M llvm/lib/Target/X86/X86InstrSSE.td
M llvm/test/CodeGen/X86/fp-strict-scalar-cmp.ll
Log Message:
-----------
[X86][StrictFP] Combine fcmp + select to fmin/fmax for some predicates (#109512)
X86 maxss/minss etc. instructions won't turn SNaN to QNaN, so we can
combine fcmp + select to them for some predicates.
Commit: 0bc02b999a9686ba240b7a68d3f1cbbf037d2170
https://github.com/llvm/llvm-project/commit/0bc02b999a9686ba240b7a68d3f1cbbf037d2170
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp
Log Message:
-----------
[Clang] Instantiate Typedefs referenced by type alias deduction guides (#111804)
TypedefNameDecl referenced by a synthesized CTAD guide for type aliases
was not transformed previously, resulting in a substitution failure in
BuildDeductionGuideForTypeAlias() when substituting into the
right-hand-side deduction guide.
This patch fixes it in the way we have been doing since
https://reviews.llvm.org/D80743. We transform all the function
parameters, parenting referenced TypedefNameDecls with the
CXXDeductionGuideDecl. Then we instantiate these declarations in
FindInstantiatedDecl() as we build up the eventual deduction guide,
using the mechanism introduced in D80743
Fixes #111508
Commit: ec3e0a5900894c82e1763aa8597f47111edf6246
https://github.com/llvm/llvm-project/commit/ec3e0a5900894c82e1763aa8597f47111edf6246
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/test/CodeGen/AArch64/arm64-popcnt.ll
M llvm/test/CodeGen/RISCV/rv32zbb.ll
M llvm/test/CodeGen/RISCV/rv64zbb.ll
M llvm/test/CodeGen/X86/ispow2.ll
M llvm/test/CodeGen/X86/known-never-zero.ll
Log Message:
-----------
Revert "[CodeGenPrepare] Convert `ctpop(X) ==/!= 1` into `ctpop(X) u</u> 2/1`" (#111932)
Reverts llvm/llvm-project#111284 to fix clang stage2 builds.
Investigating...
Failed buildbots:
https://lab.llvm.org/buildbot/#/builders/76/builds/3576
https://lab.llvm.org/buildbot/#/builders/168/builds/4308
https://lab.llvm.org/buildbot/#/builders/127/builds/1087
Commit: 126ed16525c92af1025a86b582c087d213b47145
https://github.com/llvm/llvm-project/commit/126ed16525c92af1025a86b582c087d213b47145
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
Log Message:
-----------
[ARM] Fix formatting (NFC)
I'm about to post a PR in this area.
Commit: 51e9430a0c767243411d4b81c284700f89719277
https://github.com/llvm/llvm-project/commit/51e9430a0c767243411d4b81c284700f89719277
Author: lntue <lntue at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M libc/src/__support/FPUtil/double_double.h
M libc/src/__support/macros/optimization.h
M libc/src/math/generic/cos.cpp
M libc/src/math/generic/pow.cpp
M libc/src/math/generic/range_reduction_double_common.h
M libc/src/math/generic/range_reduction_double_fma.h
M libc/src/math/generic/range_reduction_double_nofma.h
M libc/src/math/generic/sin.cpp
M libc/src/math/generic/sincos.cpp
M libc/src/math/generic/sincos_eval.h
M libc/src/math/generic/tan.cpp
M libc/test/src/math/cos_test.cpp
M libc/test/src/math/sin_test.cpp
M libc/test/src/math/tan_test.cpp
Log Message:
-----------
[libc][math] Improve performance of double precision trig functions. (#111793)
- Improve the accuracy of fast pass' range reduction.
- Provide tighter error estimations.
- Reduce the table size when `LIBC_MATH_SMALL_TABLES` flag is set.
Commit: e01ae3920dd98779f2e58aa8f103ae3b6c6b5499
https://github.com/llvm/llvm-project/commit/e01ae3920dd98779f2e58aa8f103ae3b6c6b5499
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_linux.h
Log Message:
-----------
[NFC][sanitizer] Use tid_t instead of int in ThreadLister (#111941)
Commit: 59b2945c705671a676806b8985c3ade8d6088ab1
https://github.com/llvm/llvm-project/commit/59b2945c705671a676806b8985c3ade8d6088ab1
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
M compiler-rt/lib/sanitizer_common/tests/sanitizer_linux_test.cpp
Log Message:
-----------
[sanitizer] Fix ThreadLister::IsAlive (#111942)
'status_path_' must include `tid`.
Regression from #111909.
Commit: 36b07077673b6c639804160c6b31ce57718e13db
https://github.com/llvm/llvm-project/commit/36b07077673b6c639804160c6b31ce57718e13db
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Pointer.cpp
M clang/test/AST/ByteCode/cxx1z.cpp
Log Message:
-----------
[clang][bytecode] Return an lvalue path for dummy pointers (#111862)
Not doing this is wrong in general and we need to reject expressions
where it would matter differently.
Commit: 374886a360424d5f1c38359378a504408a9f64ed
https://github.com/llvm/llvm-project/commit/374886a360424d5f1c38359378a504408a9f64ed
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp
Log Message:
-----------
[NFC][sanitizer] Check suspended threads outside `ThreadSuspender::SuspendThread` (#111943)
Allows to distinguish failure from stopped threads.
Commit: 36639af8adcd302e12f2962fd2b917d41323e5ae
https://github.com/llvm/llvm-project/commit/36639af8adcd302e12f2962fd2b917d41323e5ae
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp
Log Message:
-----------
[NFC][sanitizer] VReport incomplete list (#111944)
Commit: e556f0787cb9675a120fcfc91156edcd27047772
https://github.com/llvm/llvm-project/commit/e556f0787cb9675a120fcfc91156edcd27047772
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M compiler-rt/lib/asan/asan_descriptions.cpp
M compiler-rt/lib/asan/asan_descriptions.h
Log Message:
-----------
[NFC][asan] Cleanup AsanThreadIdAndName ctor/init (#111923)
Co-authored-by: YunQiang Su <yunqiang at isrc.iscas.ac.cn>
Commit: df4c91342577cd9a74f168ad8c98380538d5e7c4
https://github.com/llvm/llvm-project/commit/df4c91342577cd9a74f168ad8c98380538d5e7c4
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M compiler-rt/lib/asan/asan_descriptions.cpp
Log Message:
-----------
[asan] Print `unique_id` instead of `tid` (#111925)
Before the first reuse, after 2^32 threads
they are equal.
Commit: 3cb4d20d5bcefd98454d0e181cd89f8ee6f16498
https://github.com/llvm/llvm-project/commit/3cb4d20d5bcefd98454d0e181cd89f8ee6f16498
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_thread_registry.h
Log Message:
-----------
[NFC][sanitizer] Simplify GetThreadLocked
Now we can pass `invalid tid`.
Commit: bf81bd800fbcf1d11f149d897f55409e27ec59fb
https://github.com/llvm/llvm-project/commit/bf81bd800fbcf1d11f149d897f55409e27ec59fb
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/LoongArch.cpp
M lld/ELF/Arch/X86.cpp
M lld/ELF/Arch/X86_64.cpp
M lld/ELF/LinkerScript.cpp
Log Message:
-----------
[ELF] Pass Ctx &
Commit: 15de239406bfc0a1dfbd0640490c4bd5d1e0ac33
https://github.com/llvm/llvm-project/commit/15de239406bfc0a1dfbd0640490c4bd5d1e0ac33
Author: Serge Pavlov <sepavloff at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/Bitcode/LLVMBitCodes.h
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/test/Bitcode/compatibility.ll
M llvm/test/Bitcode/operand-bundles.ll
Log Message:
-----------
[IR] Allow MDString in operand bundles (#110805)
This change implements support of metadata strings in operand bundle
values. It makes possible calls like:
call void @some_func(i32 %x) [ "foo"(i32 42, metadata !"abc") ]
It requires some extension of the bitcode serialization. As SSA values
and metadata are stored in different tables, there must be a way to
distinguish them during deserialization. It is implemented by putting a
special marker before the metadata index. The marker cannot be treated
as a reference to any SSA value, so it unambiguously identifies
metadata. It allows extending the bitcode serialization without breaking
compatibility.
Metadata as operand bundle values are intended to be used in
floating-point function calls. They would represent the same information
as now is passed by the constrained intrinsic arguments.
Commit: c22588c7cdc5a82afd825ce90f21f922dedee98b
https://github.com/llvm/llvm-project/commit/c22588c7cdc5a82afd825ce90f21f922dedee98b
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lld/ELF/EhFrame.cpp
M lld/ELF/InputFiles.h
M lld/ELF/InputSection.cpp
M lld/ELF/InputSection.h
M lld/ELF/OutputSections.cpp
M lld/ELF/OutputSections.h
Log Message:
-----------
[ELF] Move InputSectionBase::file to SectionBase
... and add getCtx (file->ctx). This allows InputSectionBase and
OutputSection to access ctx without taking an extra function argument.
Commit: e018f550d0c40bd99294cdd943c23bbec3804ace
https://github.com/llvm/llvm-project/commit/e018f550d0c40bd99294cdd943c23bbec3804ace
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lld/ELF/ARMErrataFix.cpp
M lld/ELF/Arch/Mips.cpp
M lld/ELF/DWARF.cpp
Log Message:
-----------
[ELF] Pass Ctx &
Commit: 25cda9e069bc5948f38dde0d2e07814a7bf3fc71
https://github.com/llvm/llvm-project/commit/25cda9e069bc5948f38dde0d2e07814a7bf3fc71
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lld/ELF/AArch64ErrataFix.cpp
M lld/ELF/ARMErrataFix.cpp
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/RISCV.cpp
M lld/ELF/Driver.cpp
M lld/ELF/InputSection.h
M lld/ELF/OutputSections.cpp
M lld/ELF/Relocations.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
Log Message:
-----------
[ELF] Pass Ctx & to SyntheticSection
Commit: 1fd79f105da64cec7986807c1d9c4896bd39dafa
https://github.com/llvm/llvm-project/commit/1fd79f105da64cec7986807c1d9c4896bd39dafa
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[clang][bytecode] Check number of addcarry/subborrow args (#111952)
Apparently this can fail as well.
Commit: d91c103a107ab16b59c1bb67687233a1100d7ecf
https://github.com/llvm/llvm-project/commit/d91c103a107ab16b59c1bb67687233a1100d7ecf
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lld/ELF/InputSection.h
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
Log Message:
-----------
[ELF] Pass Ctx & to SyntheticSections
Commit: d656b2063262d59c3565e63095104c01d1f6a5a3
https://github.com/llvm/llvm-project/commit/d656b2063262d59c3565e63095104c01d1f6a5a3
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
A llvm/test/tools/llvm-split/AMDGPU/indirect-call-inline-asm-debug.ll
A llvm/test/tools/llvm-split/AMDGPU/indirect-call-inline-asm.ll
R llvm/test/tools/llvm-split/AMDGPU/kernels-alias-dependencies.ll
M llvm/test/tools/llvm-split/AMDGPU/kernels-dependency-indirect.ll
Log Message:
-----------
[AMDGPU][SplitModule] Cleanup CallsExternal Handling (#106528)
- Don't treat inline ASM as indirect calls
- Remove call to alias testing, which was broken (only working by pure
luck right now) and isn't needed anyway. GlobalOpt should take care of
them for us.
Commit: 81bd712f928b3c736d83252df75c1c1bd3374122
https://github.com/llvm/llvm-project/commit/81bd712f928b3c736d83252df75c1c1bd3374122
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-10 (Thu, 10 Oct 2024)
Changed paths:
M lld/ELF/AArch64ErrataFix.cpp
M lld/ELF/ARMErrataFix.cpp
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/RISCV.cpp
M lld/ELF/InputSection.cpp
M lld/ELF/InputSection.h
M lld/ELF/LinkerScript.cpp
M lld/ELF/OutputSections.cpp
M lld/ELF/Relocations.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
M lld/ELF/Writer.cpp
Log Message:
-----------
[ELF] Revert Ctx & parameters from SyntheticSection
Since Ctx &ctx is a member variable,
1f391a75af8685e6bba89421443d72ac6a186599
7a5b9ef54eb96abd8415fd893576c42e51fd95db
e2f0ec3a3a8a2981be8a1aac2004cfb9064c61e8 can be reverted.
Commit: 173c68239d1d11f4e36c8af07a28310da67568a7
https://github.com/llvm/llvm-project/commit/173c68239d1d11f4e36c8af07a28310da67568a7
Author: Fabian Ritter <fabian.ritter at amd.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-flat.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-private.mir
M llvm/test/CodeGen/AMDGPU/chain-hi-to-lo.ll
M llvm/test/CodeGen/AMDGPU/flat-address-space.ll
M llvm/test/CodeGen/AMDGPU/memcpy-crash-issue63986.ll
M llvm/test/CodeGen/AMDGPU/memcpy-libcall.ll
M llvm/test/CodeGen/AMDGPU/memcpy-param-combinations.ll
M llvm/test/CodeGen/AMDGPU/memmove-param-combinations.ll
M llvm/test/CodeGen/AMDGPU/sdwa-commute.ll
M llvm/test/CodeGen/AMDGPU/unaligned-load-store.ll
Log Message:
-----------
[AMDGPU] Enable unaligned scratch accesses (#110219)
This allows us to emit wide generic and scratch memory accesses when we
do not have alignment information. In cases where accesses happen to be
properly aligned or where generic accesses do not go to scratch memory,
this improves performance of the generated code by a factor of up to 16x
and reduces code size, especially when lowering memcpy and memmove
intrinsics.
Also: Make the use of the FeatureUnalignedScratchAccess feature more
consistent: FeatureUnalignedScratchAccess and EnableFlatScratch are now
orthogonal, whereas, before, code assumed that the latter implies the
former at some places.
Part of SWDEV-455845.
Commit: 65780f4d8e34461e6bd3baf2ff77496f97874b94
https://github.com/llvm/llvm-project/commit/65780f4d8e34461e6bd3baf2ff77496f97874b94
Author: Dmitry Polukhin <34227995+dmpolukhin at users.noreply.github.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/lib/Lex/Preprocessor.cpp
A clang/test/Headers/import_header_unit_after_pragma.cpp
Log Message:
-----------
[C++20][Modules] Allow import for a header unit after #pragma (#111662)
Summary:
`#pragma` and headers that finish with them shouldn't prevent `import
"header_unit.h"` syntax.
Test Plan: check-clang
Commit: ff04bb8f4064274aedcb6e916079132ab6042a10
https://github.com/llvm/llvm-project/commit/ff04bb8f4064274aedcb6e916079132ab6042a10
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Program.cpp
M clang/lib/AST/ByteCode/Program.h
M clang/test/AST/ByteCode/cxx1z.cpp
Log Message:
-----------
[clang][bytecode] Use PredefinedExpr as base for its variable (#111956)
This fixes the error message generated.
Commit: bff2b8c06f362b6b4c761fc1d3951da2bddf17de
https://github.com/llvm/llvm-project/commit/bff2b8c06f362b6b4c761fc1d3951da2bddf17de
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M mlir/test/Dialect/SparseTensor/codegen.mlir
A mlir/test/Dialect/SparseTensor/no_lowering.mlir
Log Message:
-----------
[mlir][sparse][test] Adjust tests for `LowerSparseOpsToForeach` (#110976)
This PR relocates the tests added in #109435 to a new file named
`no_lowering.mlir` and adds some new tests.
Commit: 8bb12ca28f7f195aa483fdb5921681ec373564ab
https://github.com/llvm/llvm-project/commit/8bb12ca28f7f195aa483fdb5921681ec373564ab
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/www/cxx_dr_status.html
Log Message:
-----------
[clang][NFC] Update `cxx_dr_status.html`
Commit: bb4696ce3051be820de91c8c98b2649af1680236
https://github.com/llvm/llvm-project/commit/bb4696ce3051be820de91c8c98b2649af1680236
Author: Dmitriy Smirnov <dmitriy.smirnov at arm.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/IR/LinalgOps.td
M mlir/lib/Dialect/Linalg/Transforms/WinogradConv2D.cpp
M mlir/test/Dialect/Linalg/transform-tile-and-winograd-rewrite.mlir
M mlir/test/Dialect/Linalg/transform-tile-winograd.mlir
M mlir/test/Dialect/Linalg/winograd-conv2d-rewrite.mlir
Log Message:
-----------
[mlir][linalg] Fix for bias handling for Winograd (#110331)
PR makes winograd.output_transform op a destination style op and fixes
handing of a pre-existing data in its output argument (i.e. possibly
pre-initialized with bias, which was discarded before).
---------
Signed-off-by: Dmitriy Smirnov <dmitriy.smirnov at arm.com>
Commit: ebeb56af5f8f1ff9da8f5a7e98348f460d223de1
https://github.com/llvm/llvm-project/commit/ebeb56af5f8f1ff9da8f5a7e98348f460d223de1
Author: Pavel Labath <pavel at labath.sk>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
Log Message:
-----------
[lldb] Only send "posix" error codes through the gdb-remote protocol (#108170)
The other side has no way of telling which namespace do these codes
belong to, so mashing them all together is not very helpful.
I'm mainly doing this to simplify some code in a pending patch
<https://github.com/llvm/llvm-project/pull/106774/files#r1752628604>,
and I've picked the posix error category semi-randomly. If we wanted to
be serious about assigning meaning to these error codes, we should
create a special error category for "gdb errors".
Commit: b222f319306a9cad9ac11183b7036ff45097c26f
https://github.com/llvm/llvm-project/commit/b222f319306a9cad9ac11183b7036ff45097c26f
Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
R lldb/test/Shell/SymbolFile/DWARF/no_unique_address-with-bitfields.cpp
A lldb/test/Shell/SymbolFile/DWARF/x86/no_unique_address-with-bitfields.cpp
Log Message:
-----------
[lldb][test] Fixed the test `no_unique_address-with-bitfields` (#111902)
Fixed the error `unable to create target: 'No available targets are
compatible with triple "x86_64-apple-macosx10.4.0"'` running `clang
--target=x86_64-apple-macosx -c -gdwarf -o %t %s`.
Commit: 72f339de45bb590f25571c4c447a725e6f1dd8d7
https://github.com/llvm/llvm-project/commit/72f339de45bb590f25571c4c447a725e6f1dd8d7
Author: David Sherwood <david.sherwood at arm.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
A llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
Log Message:
-----------
[LoopVectorize] Use predicated version of getSmallConstantMaxTripCount (#109928)
There are a number of places where we call getSmallConstantMaxTripCount
without passing a vector of predicates:
getSmallBestKnownTC
isIndvarOverflowCheckKnownFalse
computeMaxVF
isMoreProfitable
I've changed all of these to now pass in a predicate vector so that
we get the benefit of making better vectorisation choices when we
know the max trip count for loops that require SCEV predicate checks.
I've tried to add tests that cover all the cases affected by these
changes.
Commit: 1276ce9e9713b2a0802004676fad7e40980396d5
https://github.com/llvm/llvm-project/commit/1276ce9e9713b2a0802004676fad7e40980396d5
Author: Emilio Cota <ecg at google.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.td
M mlir/include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.yaml
M mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
M mlir/lib/Dialect/Linalg/IR/LinalgInterfaces.cpp
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/TransposeMatmul.cpp
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
M mlir/lib/Dialect/NVGPU/TransformOps/NVGPUTransformOps.cpp
M mlir/python/mlir/dialects/linalg/opdsl/ops/core_named_ops.py
M mlir/test/Dialect/Linalg/generalize-named-ops.mlir
M mlir/test/Dialect/Linalg/invalid.mlir
M mlir/test/Dialect/Linalg/named-ops.mlir
M mlir/test/python/dialects/linalg/ops.py
M mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-yaml-gen.cpp
Log Message:
-----------
Revert "[mlir][linalg] Introduce transpose semantic to 'linalg.matmul' ops. (#104783)"
This reverts commit 03483737a7a2d72a257a5ab6ff01748ad9cf0f75 and
99c8557, which is a fix-up on top of the former.
I'm reverting because this commit broke two tests:
mlir/test/python/integration/dialects/linalg/opsrun.py
mlir/test/python/integration/dialects/transform.py
See https://lab.llvm.org/buildbot/#/builders/138/builds/4872
I'm not familiar with the tests, so I'm leaving it to the original author
to either remove or adapt the broken tests, as discussed here:
https://github.com/llvm/llvm-project/pull/104783#issuecomment-2406390905
Commit: a4402039bffd788b9af82435fd5a2fb311fdc6e8
https://github.com/llvm/llvm-project/commit/a4402039bffd788b9af82435fd5a2fb311fdc6e8
Author: Sebastian Kreutzer <SebastianKreutzer at gmx.net>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Driver/Options.td
M clang/include/clang/Driver/XRayArgs.h
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/XRayArgs.cpp
A clang/test/Driver/XRay/xray-shared.cpp
M compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake
M compiler-rt/cmake/config-ix.cmake
M compiler-rt/include/xray/xray_interface.h
M compiler-rt/lib/xray/CMakeLists.txt
A compiler-rt/lib/xray/xray_dso_init.cpp
M compiler-rt/lib/xray/xray_init.cpp
M compiler-rt/lib/xray/xray_interface.cpp
M compiler-rt/lib/xray/xray_interface_internal.h
M compiler-rt/lib/xray/xray_trampoline_x86_64.S
M compiler-rt/lib/xray/xray_x86_64.cpp
A compiler-rt/test/xray/TestCases/Posix/basic-mode-dso.cpp
A compiler-rt/test/xray/TestCases/Posix/clang-xray-shared.cpp
A compiler-rt/test/xray/TestCases/Posix/dlopen.cpp
A compiler-rt/test/xray/TestCases/Posix/dso-dep-chains.cpp
A compiler-rt/test/xray/TestCases/Posix/patch-premain-dso.cpp
A compiler-rt/test/xray/TestCases/Posix/patching-unpatching-dso.cpp
Log Message:
-----------
[XRay] Add support for instrumentation of DSOs on x86_64 (#90959)
This PR introduces shared library (DSO) support for XRay based on a
revised version of the implementation outlined in [this
RFC](https://discourse.llvm.org/t/rfc-upstreaming-dso-instrumentation-support-for-xray/73000).
The feature enables the patching and handling of events from DSOs,
supporting both libraries linked at startup or explicitly loaded, e.g.
via `dlopen`.
This patch adds the following:
- The `-fxray-shared` flag to enable the feature (turned off by default)
- A small runtime library that is linked into every instrumented DSO,
providing position-independent trampolines and code to register with the
main XRay runtime
- Changes to the XRay runtime to support management and patching of
multiple objects
These changes are fully backward compatible, i.e. running without
instrumented DSOs will produce identical traces (in terms of recorded
function IDs) to the previous implementation.
Due to my limited ability to test on other architectures, this feature
is only implemented and tested with x86_64. Extending support to other
architectures is fairly straightforward, requiring only a
position-independent implementation of the architecture-specific
trampoline implementation (see
`compiler-rt/lib/xray/xray_trampoline_x86_64.S` for reference).
This patch does not include any functionality to resolve function IDs
from DSOs for the provided logging/tracing modes. These modes still work
and will record calls from DSOs, but symbol resolution for these
functions in not available. Getting this to work properly requires
recording information about the loaded DSOs and should IMO be discussed
in a separate RFC, as there are mulitple feasible approaches.
@petrhosek @jplehr
Commit: 42ec740d0347a89b656c9be5ac4a7e4d8bcd30d5
https://github.com/llvm/llvm-project/commit/42ec740d0347a89b656c9be5ac4a7e4d8bcd30d5
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/lib/AST/ExprConstant.cpp
Log Message:
-----------
[clang][ExprConstant] Remove an outdated TODO comment (#111959)
Seems like passing the quantities directly seems to work fine.
Commit: 7b0d56be1d002e9cf0d8dda8ecaee99c5dbc88cf
https://github.com/llvm/llvm-project/commit/7b0d56be1d002e9cf0d8dda8ecaee99c5dbc88cf
Author: Petar Avramovic <Petar.Avramovic at amd.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ballot.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ballot.i64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ballot.i32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ballot.i64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ballot.i64.wave32.ll
Log Message:
-----------
AMDGPU/GlobalISel: Fix inst-selection of ballot (#109986)
Both input and output of ballot are lane-masks:
result is lane-mask with 'S32/S64 LLT and SGPR bank'
input is lane-mask with 'S1 LLT and VCC reg bank'.
Ballot copies bits from input lane-mask for
all active lanes and puts 0 for inactive lanes.
GlobalISel did not set 0 in result for inactive lanes
for non-constant input.
Commit: 777142937a599d8a9cea5964b415d9cd13016d79
https://github.com/llvm/llvm-project/commit/777142937a599d8a9cea5964b415d9cd13016d79
Author: Simon Camphausen <simon.camphausen at iml.fraunhofer.de>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
M mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-failed.mlir
Log Message:
-----------
[mlir][EmitC] Fail on memrefs with 0 dims in type conversion (#111965)
This let's the type conversion fail instead of generating invalid array
types.
Commit: 80c15c48d1fbb53478c9400e598abcbdcae0d962
https://github.com/llvm/llvm-project/commit/80c15c48d1fbb53478c9400e598abcbdcae0d962
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ExprConstShared.h
M clang/lib/AST/ExprConstant.cpp
M clang/test/Sema/builtin-assume-aligned.c
M clang/test/SemaCXX/builtin-assume-aligned.cpp
Log Message:
-----------
[clang][bytecode] Implement __builtin_assume_aligned (#111968)
Commit: 73ad416ebf9d11b876f22ede0ee90f660192869f
https://github.com/llvm/llvm-project/commit/73ad416ebf9d11b876f22ede0ee90f660192869f
Author: Dominik Adamski <dominik.adamski at amd.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
M flang/lib/Optimizer/Analysis/CMakeLists.txt
A flang/test/Analysis/AliasAnalysis/alias-analysis-omp-target-1.fir
A flang/test/Analysis/AliasAnalysis/alias-analysis-omp-target-2.fir
Log Message:
-----------
[OpenMP][Flang] Enable alias analysis inside omp target region (#111670)
At present, alias analysis does not work for operations inside OMP
target regions because the FIR declare operations within OMP target do
not offer sufficient information for alias analysis. Consequently, it is
necessary to examine the FIR code outside the OMP target region.
Commit: f74f568b29885c3fa63c44e33f91f3bb7281138e
https://github.com/llvm/llvm-project/commit/f74f568b29885c3fa63c44e33f91f3bb7281138e
Author: Balázs Kéri <balazs.keri at ericsson.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/PointerSubChecker.cpp
M clang/test/Analysis/pointer-sub.c
Log Message:
-----------
[clang][analyzer] PointerSubChecker should not warn on pointers converted to numerical type (#111846)
Pointer values casted to integer (non-pointer) type should be able to be
subtracted as usual.
Commit: 6a65e98fa7901dc1de91172d065fafb16ce89d77
https://github.com/llvm/llvm-project/commit/6a65e98fa7901dc1de91172d065fafb16ce89d77
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/test/Transforms/InstCombine/ispow2.ll
Log Message:
-----------
[InstCombine] Drop range attributes in `foldIsPowerOf2` (#111946)
Fixes https://github.com/llvm/llvm-project/issues/111934.
Commit: 65da32c634a8345fcbe021f69fc6a609d074c08c
https://github.com/llvm/llvm-project/commit/65da32c634a8345fcbe021f69fc6a609d074c08c
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
A llvm/test/Transforms/LoopVectorize/RISCV/blend-any-of-reduction-cost.ll
Log Message:
-----------
[LV] Account for any-of reduction when computing costs of blend phis.
Any-of reductions are narrowed to i1. Update the legacy cost model to
use the correct type when computing the cost of a phi that gets lowered
to selects (BLEND).
This fixes a divergence between legacy and VPlan-based cost models after
36fc291b6ec6d.
Fixes https://github.com/llvm/llvm-project/issues/111874.
Commit: d941254da94c8a5897689a74012a57de279c2c9e
https://github.com/llvm/llvm-project/commit/d941254da94c8a5897689a74012a57de279c2c9e
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidump.py
Log Message:
-----------
[lldb][test] Fix var name typo in TestProcessSaveCoreMinidump
Commit: 4451f9f812d458f6b53785b27869674caf01e67b
https://github.com/llvm/llvm-project/commit/4451f9f812d458f6b53785b27869674caf01e67b
Author: Sebastian Kreutzer <sebastian.kreutzer at stud.tu-darmstadt.de>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/include/clang/Driver/XRayArgs.h
M clang/lib/Driver/XRayArgs.cpp
M compiler-rt/include/xray/xray_interface.h
M compiler-rt/lib/xray/xray_interface.cpp
Log Message:
-----------
[XRay] Fix LLVM include in xray_interface.cpp (#111978)
Removes a dependency on LLVM in `xray_interface.cpp` by replacing
`llvm_unreachable` with compiler-rt's `UNREACHABLE`.
Applies clang-format to some unformatted changes.
Original PR: #90959
Commit: 0163ac1f53abc0a0f6e5b7e56912c1dee67e7f32
https://github.com/llvm/llvm-project/commit/0163ac1f53abc0a0f6e5b7e56912c1dee67e7f32
Author: Mats Petersson <mats.petersson at arm.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
A flang/test/Lower/OpenMP/Todo/reduction-inscan.f90
A flang/test/Lower/OpenMP/Todo/reduction-task.f90
A flang/test/Lower/OpenMP/Todo/target-inreduction.f90
A flang/test/Lower/OpenMP/Todo/task-inreduction.f90
M flang/test/Lower/OpenMP/Todo/task_mergeable.f90
A flang/test/Lower/OpenMP/Todo/taskgroup-task-reduction.f90
A flang/test/Lower/OpenMP/Todo/taskloop.f90
A flang/test/Lower/OpenMP/Todo/taskwait-depend.f90
A flang/test/Lower/OpenMP/Todo/taskwait-nowait.f90
Log Message:
-----------
[Flang][OpenMP]Add tests for TODOs and small changes to improve messages (#111562)
The bulk of this change are new tests to check that we get a "Not yet
implemneted: *some stuff here*" message when using some not yet
supported OpenMP functionality.
For some of these cases, this also means adding additional clauses to a
filter list in OpenMP.cpp - this changes nothing [to the best of my
understanding] other than allowing the clause to get to the point where
it can be rejected in a TODO with a more clear message. One of the TOOD
filters were missing Mergeable clause, so this was also added and the
existing test updated for the new more specific error message.
There is no functional change intended here.
Commit: b5ea5be2a714e28bac57d417c221f687efe396bf
https://github.com/llvm/llvm-project/commit/b5ea5be2a714e28bac57d417c221f687efe396bf
Author: Sam Elliott <quic_aelliott at quicinc.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/test/MC/RISCV/insn.s
Log Message:
-----------
[RISCV][MC] Fix >32bit .insn Directives (#111878)
The original patch had a reasonably significant bug. You could not use
`.insn` to assemble encodings that had any bits set above the low 32
bits. This is due to the fact that `getMachineOpValue` was truncating
the immediate value, and I did not commit enough tests of useful cases.
This changes the result of `getMachineOpValue` to be able to return the
48-bit and 64-bit immediates needed for the wider `.insn` directives.
I took the opportunity to move some of the test cases around in the file
to make looking at the output of `llvm-objdump` a little clearer.
Commit: 303c8d20601d810c177f6646f771c1eb3f29ab8c
https://github.com/llvm/llvm-project/commit/303c8d20601d810c177f6646f771c1eb3f29ab8c
Author: Rin Dobrescu <irina.dobrescu at arm.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV1.td
A llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-neon-instructions.s
Log Message:
-----------
[AArch64] Add SchedReadAdvance to Neoverse-V1 scheduling model. (#111538)
Introduce a description of late forwarding to the Neoverse-V1 Scheduling model.
Commit: 90627a5a190a99ae2991d524580d866484aaba16
https://github.com/llvm/llvm-project/commit/90627a5a190a99ae2991d524580d866484aaba16
Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Driver/Options.td
M clang/include/clang/Driver/XRayArgs.h
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/XRayArgs.cpp
R clang/test/Driver/XRay/xray-shared.cpp
M compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake
M compiler-rt/cmake/config-ix.cmake
M compiler-rt/include/xray/xray_interface.h
M compiler-rt/lib/xray/CMakeLists.txt
R compiler-rt/lib/xray/xray_dso_init.cpp
M compiler-rt/lib/xray/xray_init.cpp
M compiler-rt/lib/xray/xray_interface.cpp
M compiler-rt/lib/xray/xray_interface_internal.h
M compiler-rt/lib/xray/xray_trampoline_x86_64.S
M compiler-rt/lib/xray/xray_x86_64.cpp
R compiler-rt/test/xray/TestCases/Posix/basic-mode-dso.cpp
R compiler-rt/test/xray/TestCases/Posix/clang-xray-shared.cpp
R compiler-rt/test/xray/TestCases/Posix/dlopen.cpp
R compiler-rt/test/xray/TestCases/Posix/dso-dep-chains.cpp
R compiler-rt/test/xray/TestCases/Posix/patch-premain-dso.cpp
R compiler-rt/test/xray/TestCases/Posix/patching-unpatching-dso.cpp
Log Message:
-----------
Revert "[XRay] Add support for instrumentation of DSOs on x86_64 (#90959)"
This reverts commit a4402039bffd788b9af82435fd5a2fb311fdc6e8 and 4451f9f812d458f6b53785b27869674caf01e67b
Commit: 14705a912f6296700cef4d2aa7eb100f71dfbd0a
https://github.com/llvm/llvm-project/commit/14705a912f6296700cef4d2aa7eb100f71dfbd0a
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/test/CodeGen/AArch64/statepoint-twoaddr.mir
M llvm/test/CodeGen/AMDGPU/expand-variadic-call.ll
M llvm/test/CodeGen/X86/tls-align.ll
Log Message:
-----------
CodeGen: Remove redundant REQUIRES registered-target from tests (#111982)
These are already in target specific test directories.
Commit: 900ea21ffb38ba5b783b20f394c43c6c89d58086
https://github.com/llvm/llvm-project/commit/900ea21ffb38ba5b783b20f394c43c6c89d58086
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/docs/CodingStandards.rst
Log Message:
-----------
[NFC][CodingStandard] Add additional example for if-else brace rule (#111733)
Add example to document that single statement `else` needs a brace if
the associated `if` needs a brace.
Commit: fa789dffb1e12c2aece0187aeacc48dfb1768340
https://github.com/llvm/llvm-project/commit/fa789dffb1e12c2aece0187aeacc48dfb1768340
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGDecl.cpp
M clang/lib/CodeGen/CGException.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/Targets/SystemZ.cpp
M llvm/examples/BrainF/BrainF.cpp
M llvm/include/llvm-c/Core.h
M llvm/include/llvm/IR/IntrinsicInst.h
M llvm/include/llvm/IR/Intrinsics.h
M llvm/include/llvm/IR/MatrixBuilder.h
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/CodeGen/ExpandLargeFpConvert.cpp
M llvm/lib/CodeGen/ExpandMemCmp.cpp
M llvm/lib/CodeGen/ExpandVectorPredication.cpp
M llvm/lib/CodeGen/HardwareLoops.cpp
M llvm/lib/CodeGen/IntrinsicLowering.cpp
M llvm/lib/CodeGen/SafeStack.cpp
M llvm/lib/CodeGen/SjLjEHPrepare.cpp
M llvm/lib/CodeGen/StackProtector.cpp
M llvm/lib/CodeGen/WasmEHPrepare.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/Core.cpp
M llvm/lib/IR/DIBuilder.cpp
M llvm/lib/IR/DebugProgramInstruction.cpp
M llvm/lib/IR/IRBuilder.cpp
M llvm/lib/IR/IntrinsicInst.cpp
M llvm/lib/IR/Intrinsics.cpp
M llvm/lib/IR/Module.cpp
M llvm/lib/IR/VectorBuilder.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/SMEABIPass.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/lib/Target/AMDGPU/AMDGPUImageIntrinsicOptimizer.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUUnifyDivergentExitNodes.cpp
M llvm/lib/Target/AMDGPU/SIAnnotateControlFlow.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMParallelDSP.cpp
M llvm/lib/Target/ARM/MVETailPredication.cpp
M llvm/lib/Target/BPF/BPFAbstractMemberAccess.cpp
M llvm/lib/Target/BPF/BPFAdjustOpt.cpp
M llvm/lib/Target/BPF/BPFPreserveStaticOffset.cpp
M llvm/lib/Target/DirectX/DXILOpLowering.cpp
M llvm/lib/Target/Hexagon/HexagonGenExtract.cpp
M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
M llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
M llvm/lib/Target/Hexagon/HexagonVectorCombine.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/PowerPC/PPCLowerMASSVEntries.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVPrepareFunctions.cpp
M llvm/lib/Target/SystemZ/SystemZTDC.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyLowerRefTypesIntPtrConv.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86InstCombineIntrinsic.cpp
M llvm/lib/Target/X86/X86PartialReduction.cpp
M llvm/lib/Target/X86/X86WinEHState.cpp
M llvm/lib/Target/XCore/XCoreLowerThreadLocal.cpp
M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
M llvm/lib/Transforms/Coroutines/Coroutines.cpp
M llvm/lib/Transforms/IPO/CrossDSOCFI.cpp
M llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
M llvm/lib/Transforms/Instrumentation/BoundsChecking.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Instrumentation/KCFI.cpp
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
M llvm/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
M llvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp
M llvm/lib/Transforms/ObjCARC/ARCRuntimeEntryPoints.h
M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
M llvm/lib/Transforms/Scalar/LoopDataPrefetch.cpp
M llvm/lib/Transforms/Scalar/LoopFlatten.cpp
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
M llvm/lib/Transforms/Scalar/LowerGuardIntrinsic.cpp
M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
M llvm/lib/Transforms/Scalar/MakeGuardsExplicit.cpp
M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
M llvm/lib/Transforms/Scalar/Scalarizer.cpp
M llvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp
M llvm/lib/Transforms/Utils/CloneFunction.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/EntryExitInstrumenter.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/lib/Transforms/Utils/IntegerDivision.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/lib/Transforms/Utils/LowerGlobalDtors.cpp
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
M llvm/lib/Transforms/Utils/PredicateInfo.cpp
M llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
M llvm/lib/Transforms/Utils/RelLookupTableConverter.cpp
M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/tools/llvm-reduce/deltas/ReduceOpcodes.cpp
M llvm/unittests/Analysis/AssumeBundleQueriesTest.cpp
M llvm/unittests/Analysis/MemorySSATest.cpp
M llvm/unittests/Analysis/ValueTrackingTest.cpp
M llvm/unittests/IR/BasicBlockTest.cpp
M llvm/unittests/IR/DebugInfoTest.cpp
M llvm/unittests/IR/IRBuilderTest.cpp
M llvm/unittests/IR/IntrinsicsTest.cpp
M llvm/unittests/IR/PatternMatch.cpp
M llvm/unittests/IR/VPIntrinsicTest.cpp
M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
M polly/lib/CodeGen/IslExprBuilder.cpp
M polly/lib/CodeGen/PerfMonitor.cpp
Log Message:
-----------
[NFC] Rename `Intrinsic::getDeclaration` to `getOrInsertDeclaration` (#111752)
Rename the function to reflect its correct behavior and to be consistent
with `Module::getOrInsertFunction`. This is also in preparation of
adding a new `Intrinsic::getDeclaration` that will have behavior similar
to `Module::getFunction` (i.e, just lookup, no creation).
Commit: c84f75966af79a381e27e6ffc9481c1fae2fcb4f
https://github.com/llvm/llvm-project/commit/c84f75966af79a381e27e6ffc9481c1fae2fcb4f
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M libc/src/math/generic/cos.cpp
M libc/src/math/generic/range_reduction_double_common.h
Log Message:
-----------
[libc] Fix compilation of new trig functions (#111987)
Commit: 26b832a9ec03d0a35baaf00d81f607004fe2a8cf
https://github.com/llvm/llvm-project/commit/26b832a9ec03d0a35baaf00d81f607004fe2a8cf
Author: Daniel Mokeev <mokeev.gh at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
A llvm/test/CodeGen/RISCV/orc-b-patterns.ll
Log Message:
-----------
[RISCV] Add DAG combine to turn (sub (shl X, 8-Y), (shr X, Y)) into orc.b (#111828)
This patch generalizes the DAG combine for `(sub (shl X, 8), X) =>
(orc.b X)`
into the more general form of `(sub (shl X, 8 - Y), (srl X, Y)) =>
(orc.b X)`.
Alive2 generalized proof: https://alive2.llvm.org/ce/z/dFcf_n
Related issue: https://github.com/llvm/llvm-project/issues/96595
Related PR: https://github.com/llvm/llvm-project/pull/96680
Commit: 9a696b68b735fa01276d16d39370f9102fee4a0b
https://github.com/llvm/llvm-project/commit/9a696b68b735fa01276d16d39370f9102fee4a0b
Author: Emilio Cota <ecg at google.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/test/CodeGen/NVPTX/i8x4-instructions.ll
M llvm/test/CodeGen/NVPTX/sext-setcc.ll
Log Message:
-----------
Revert "[NVPTX] Prefer prmt.b32 over bfi.b32 (#110766)"
This reverts commit 3f9998af4f79e95fe8be615df9d6b898008044b9.
It breaks downstream tests with egregious numerical differences.
Unfortunately no upstream tests are broken, but the fact that
a prior iteration of the commit (pre-optimization) does work
with our downstream tests (coming from the Triton repo) supports
the claim that the final version of the commit is incorrect.
Reverting now so that the original author can evaluate.
Commit: c8da2253f9aa4dff039e9ed766ff0f865632a0eb
https://github.com/llvm/llvm-project/commit/c8da2253f9aa4dff039e9ed766ff0f865632a0eb
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
Log Message:
-----------
[Clang] Replace Intrinsic::getDeclaration with getOrInsertDeclaration (#111990)
Fix build failure from the rename change. Looks like one additional
reference sneaked in between pre-commit checks and the commit itself.
Commit: ed7251b3aeb7c471dc50e9409e83a9ec01f40df5
https://github.com/llvm/llvm-project/commit/ed7251b3aeb7c471dc50e9409e83a9ec01f40df5
Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/include/clang/Sema/Overload.h
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/test/SemaTemplate/cwg2398.cpp
Log Message:
-----------
Revert "[clang] Implement TTP P0522 pack matching for deduced function template calls. (#111457)"
See discussion in https://github.com/llvm/llvm-project/pull/111711
This reverts commit 4dadf42c1a74dd4e37db9ffd6fbb3027f59751a7.
Commit: bdd46cc6b74eeed14936f1373bbb6446e09979fe
https://github.com/llvm/llvm-project/commit/bdd46cc6b74eeed14936f1373bbb6446e09979fe
Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/TemplateDeduction.h
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/test/SemaTemplate/cwg2398.cpp
Log Message:
-----------
Revert "[clang] CWG2398: improve overload resolution backwards compat (#107350)"
See discussion in https://github.com/llvm/llvm-project/pull/111711
This reverts commit 224519b08945637a85e9798c78286643288f7b77.
Commit: efcfa6e711689ada546c323316145ecd749d380a
https://github.com/llvm/llvm-project/commit/efcfa6e711689ada546c323316145ecd749d380a
Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/Sema.h
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.template/p3-0x.cpp
M clang/test/CXX/temp/temp.param/p12.cpp
M clang/test/Modules/cxx-templates.cpp
M clang/test/SemaCXX/make_integer_seq.cpp
M clang/test/SemaTemplate/cwg2398.cpp
M clang/test/SemaTemplate/temp_arg_nontype.cpp
M clang/test/SemaTemplate/temp_arg_template.cpp
M clang/test/SemaTemplate/temp_arg_template_p0522.cpp
M clang/test/Templight/templight-empty-entries-fix.cpp
M clang/test/Templight/templight-prior-template-arg.cpp
Log Message:
-----------
Revert "Reland: [clang] Finish implementation of P0522 (#111711)"
See discussion in https://github.com/llvm/llvm-project/pull/111711
This reverts commit 6213aa5e58a7d32bdc82dd40322fb1bab83c4783.
Commit: 870d37dd1257d211f96797bf041280b2260ed260
https://github.com/llvm/llvm-project/commit/870d37dd1257d211f96797bf041280b2260ed260
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
Log Message:
-----------
[AMDGPU] Rewrite RegSeqNames using !foreach. NFC. (#111994)
This reduces the total number of TableGen records produced by AMDGPU.td
by about 6%.
Commit: c8554e13eec048180d003af2aa7b2cc8498d4fba
https://github.com/llvm/llvm-project/commit/c8554e13eec048180d003af2aa7b2cc8498d4fba
Author: Erich Keane <ekeane at nvidia.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Basic/IdentifierTable.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/test/CXX/drs/cwg14xx.cpp
M clang/test/CXX/drs/cwg25xx.cpp
M clang/test/CXX/lex/lex.literal/lex.ext/p1.cpp
M clang/test/CXX/lex/lex.literal/lex.ext/p10.cpp
M clang/test/CXX/lex/lex.literal/lex.ext/p11.cpp
M clang/test/CXX/lex/lex.literal/lex.ext/p3.cpp
M clang/test/CXX/lex/lex.literal/lex.ext/p4.cpp
M clang/test/CXX/lex/lex.literal/lex.ext/p5.cpp
M clang/test/CXX/lex/lex.literal/lex.ext/p6.cpp
M clang/test/CXX/lex/lex.literal/lex.ext/p7.cpp
M clang/test/CXX/lex/lex.literal/lex.ext/p8.cpp
M clang/test/CXX/lex/lex.literal/lex.ext/p9.cpp
M clang/test/CXX/over/over.oper/over.literal/p2.cpp
M clang/test/CXX/over/over.oper/over.literal/p3.cpp
M clang/test/CXX/over/over.oper/over.literal/p5.cpp
M clang/test/CXX/over/over.oper/over.literal/p6.cpp
M clang/test/CXX/over/over.oper/over.literal/p7.cpp
M clang/test/CXX/over/over.oper/over.literal/p8.cpp
M clang/test/FixIt/fixit-c++11.cpp
M clang/test/Parser/cxx11-user-defined-literals.cpp
M clang/test/SemaCXX/cxx11-user-defined-literals-unused.cpp
M clang/test/SemaCXX/cxx11-user-defined-literals.cpp
M clang/test/SemaCXX/cxx2a-consteval.cpp
M clang/test/SemaCXX/cxx98-compat.cpp
M clang/test/SemaCXX/literal-operators.cpp
M clang/test/SemaCXX/no-warn-user-defined-literals-in-system-headers.cpp
M clang/test/SemaCXX/reserved-identifier.cpp
M clang/test/SemaCXX/warn-xor-as-pow.cpp
Log Message:
-----------
Turn `-Wdeprecated-literal-operator` on by default (#111027)
It would be nice to see what our users think about this change, as this
is something that WG21/EWG quite wants to fix a handful of questionable
issues with UB. Depending on the outcome of this after being committed,
we might instead suggest EWG undeprecate this, and require a bit of
'magic' from the lexer.
Additionally, this patch makes it so we emit this diagnostic ALSO in
cases where the literal name is reserved. It doesn't make sense to limit
that.
---------
Co-authored-by: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Commit: a2bd5db00d07bc28fcfb3350b9d50e72e6350cba
https://github.com/llvm/llvm-project/commit/a2bd5db00d07bc28fcfb3350b9d50e72e6350cba
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M lldb/utils/lldb-dotest/CMakeLists.txt
M lldb/utils/lldb-dotest/lldb-dotest.in
Log Message:
-----------
[lldb] Fix finding make tool for tests (#111980)
Fixes 0e913237871e8c9290e82be30be8b3484952eee0 /
https://github.com/llvm/llvm-project/pull/111531
For reasons I can't explain, a clean build works fine for me, and all
the bots are working fine. But if I rebuild in some way the make tool
becomes None.
Looking at the other variables, they had these extra lines so I've added
those for make and it seems to solve the problem.
Commit: c3a10dc8498b1e501f5a32b082b63b0c1fc499a5
https://github.com/llvm/llvm-project/commit/c3a10dc8498b1e501f5a32b082b63b0c1fc499a5
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
A llvm/test/CodeGen/AArch64/consecutive-stores-of-faddv.ll
Log Message:
-----------
[AArch64] Disable consecutive store merging when Neon is unavailable (#111519)
Lowering fixed-size BUILD_VECTORS without Neon may introduce stack
spills, leading to more stores/reloads than if the stores were not
merged. In some cases, it can also prevent using paired store
instructions.
In the future, we may want to relax when SVE is available, but
currently, the SVE lowerings for BUILD_VECTOR are limited to a few
specific cases.
Commit: bd12729a828c653da53f7182dda29982123913db
https://github.com/llvm/llvm-project/commit/bd12729a828c653da53f7182dda29982123913db
Author: Alejandro Álvarez Ayllón <alejandro.alvarez at sonarsource.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/PrettyPrinter.h
M clang/lib/AST/Decl.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/ASTMatchers/ASTMatchersInternal.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CodeGenTypes.cpp
M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
Log Message:
-----------
[clang] Ignore inline namespace for `hasName` (#109147)
Add a new enumeration `SuppressInlineNamespaceMode` to `PrintingPolicy` that
is explicit about how to handle inline namespaces. `SuppressInlineNamespace`
uses that enumeration now instead of a Boolean value.
Specializing a template from an inline namespace should be transparent.
For instance
```
namespace foo {
inline namespace v1 {
template<typename A>
void function(A&);
}
}
namespace foo {
template<>
void function<int>(int&);
}
```
`hasName` should match both declarations of `foo::function`.
Makes the behavior of `matchesNodeFullSlow` and `matchesNodeFullFast`
consistent, fixing an assert inside `HasNameMatcher::matchesNode`.
Commit: 923fef903853d61ccef39e8ac770693bf145207f
https://github.com/llvm/llvm-project/commit/923fef903853d61ccef39e8ac770693bf145207f
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M libcxxabi/CMakeLists.txt
Log Message:
-----------
[libc++abi] Remove unused LIBCXXABI_LIBCXX_INCLUDES CMake option (#111824)
This hasn't been used for several years, so it's effectively dead code
at this point.
Commit: 33c14f19656c751bbbc083e4a168ab898e583bfd
https://github.com/llvm/llvm-project/commit/33c14f19656c751bbbc083e4a168ab898e583bfd
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M libcxx/utils/ci/run-buildbot
Log Message:
-----------
[libc++] Add output groups to run-buildbot (#111739)
This improves the CI output by providing collapsable sections for
sub-parts of our build.
This was originally opened as #75233.
Co-authored-by: eric <eric at efcs.ca>
Commit: f7eb2715425d9cc25ec5acbcaab7eca323513f25
https://github.com/llvm/llvm-project/commit/f7eb2715425d9cc25ec5acbcaab7eca323513f25
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
Log Message:
-----------
[mlir][vector] Add more tests for ConvertVectorToLLVM (7/n) (#111895)
Adds tests with scalable vectors for the Vector-To-LLVM conversion pass.
Covers the following Ops:
* vector.fma
* vector.reduce
Commit: 1c94388f38c61c77d16abd9e164c78790ab23b58
https://github.com/llvm/llvm-project/commit/1c94388f38c61c77d16abd9e164c78790ab23b58
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/CMakeLists.txt
M llvm/lib/Target/RISCV/RISCV.h
M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
A llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
A llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
M llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.ll
Log Message:
-----------
[RISCV] Introduce VLOptimizer pass (#108640)
The purpose of this optimization is to make the VL argument, for
instructions that have a VL argument, as small as possible. This is
implemented by visiting each instruction in reverse order and checking
that if it has a VL argument, whether the VL can be reduced.
By putting this pass before VSETVLI insertion, we see three kinds of
changes to generated code:
1. Eliminate VSETVLI instructions
2. Reduce the VL toggle on VSETVLI instructions that also change vtype
3. Reduce the VL set by a VSETVLI instruction
The list of supported instructions is currently whitelisted for safety.
In the future, we could add more instructions to `isSupportedInstr` to
support even more VL optimization.
We originally wrote this pass because vector GEP instructions do not
take a VL, which leads us to emit code that uses VL=VLMAX to implement
GEP in the RISC-V backend. As a result, some of the vector instructions
will write to lanes, specifically between the intended VL and VLMAX,
that will never be read. As an alternative to this pass, we considered
adding a vector predicated GEP instruction, but this would not fit well
into the intrinsic type system since GEP has a variable number of
arguments, each with arbitrary types. The second approach we considered
was to put this pass after VSETVLI insertion, but we found that it was
more difficult to recognize optimization opportunities, especially
across basic block boundaries -- the data flow analysis was also a bit
more expensive and complex.
While this pass solves the GEP problem, we have expanded it to handle
more cases of VL optimization, and there is opportunity for the analysis
to be improved to enable even more optimization. We have a few follow up
patches to post, but figured this would be a good start.
---------
Co-authored-by: Craig Topper <craig.topper at sifive.com>
Co-authored-by: Kito Cheng <kito.cheng at sifive.com>
Commit: 5dac691b66accd2f80c4291280efd5368986d7af
https://github.com/llvm/llvm-project/commit/5dac691b66accd2f80c4291280efd5368986d7af
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/RISCV/BUILD.gn
Log Message:
-----------
[gn build] Port 1c94388f38c6
Commit: 4b3f251bada55cfc20a2c72321fa0bbfd7a759d5
https://github.com/llvm/llvm-project/commit/4b3f251bada55cfc20a2c72321fa0bbfd7a759d5
Author: donald chen <chenxunyu1993 at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M flang/lib/Optimizer/Transforms/StackArrays.cpp
M mlir/include/mlir/Analysis/DataFlow/DeadCodeAnalysis.h
M mlir/include/mlir/Analysis/DataFlow/DenseAnalysis.h
M mlir/include/mlir/Analysis/DataFlow/SparseAnalysis.h
M mlir/include/mlir/Analysis/DataFlowFramework.h
M mlir/include/mlir/IR/Block.h
M mlir/lib/Analysis/DataFlow/DeadCodeAnalysis.cpp
M mlir/lib/Analysis/DataFlow/DenseAnalysis.cpp
M mlir/lib/Analysis/DataFlow/IntegerRangeAnalysis.cpp
M mlir/lib/Analysis/DataFlow/LivenessAnalysis.cpp
M mlir/lib/Analysis/DataFlow/SparseAnalysis.cpp
M mlir/lib/Analysis/DataFlowFramework.cpp
M mlir/lib/Dialect/Arith/Transforms/IntRangeOptimizations.cpp
M mlir/test/lib/Analysis/DataFlow/TestDeadCodeAnalysis.cpp
M mlir/test/lib/Analysis/DataFlow/TestDenseBackwardDataFlowAnalysis.cpp
M mlir/test/lib/Analysis/DataFlow/TestDenseForwardDataFlowAnalysis.cpp
M mlir/test/lib/Analysis/DataFlow/TestSparseBackwardDataFlowAnalysis.cpp
M mlir/test/lib/Analysis/TestDataFlowFramework.cpp
Log Message:
-----------
[mlir] [dataflow] unify semantics of program point (#110344)
The concept of a 'program point' in the original data flow framework is
ambiguous. It can refer to either an operation or a block itself. This
representation has different interpretations in forward and backward
data-flow analysis. In forward data-flow analysis, the program point of
an operation represents the state after the operation, while in backward
data flow analysis, it represents the state before the operation. When
using forward or backward data-flow analysis, it is crucial to carefully
handle this distinction to ensure correctness.
This patch refactors the definition of program point, unifying the
interpretation of program points in both forward and backward data-flow
analysis.
How to integrate this patch?
For dense forward data-flow analysis and other analysis (except dense
backward data-flow analysis), the program point corresponding to the
original operation can be obtained by `getProgramPointAfter(op)`, and
the program point corresponding to the original block can be obtained by
`getProgramPointBefore(block)`.
For dense backward data-flow analysis, the program point corresponding
to the original operation can be obtained by
`getProgramPointBefore(op)`, and the program point corresponding to the
original block can be obtained by `getProgramPointAfter(block)`.
NOTE: If you need to get the lattice of other data-flow analyses in
dense backward data-flow analysis, you should still use the dense
forward data-flow approach. For example, to get the Executable state of
a block in dense backward data-flow analysis and add the dependency of
the current operation, you should write:
``getOrCreateFor<Executable>(getProgramPointBefore(op),
getProgramPointBefore(block))``
In case above, we use getProgramPointBefore(op) because the analysis we
rely on is dense backward data-flow, and we use
getProgramPointBefore(block) because the lattice we query is the result
of a non-dense backward data flow computation.
related dsscussion:
https://discourse.llvm.org/t/rfc-unify-the-semantics-of-program-points/80671/8
corresponding PSA:
https://discourse.llvm.org/t/psa-program-point-semantics-change/81479
Commit: a8a66245954f8ef079708d314f0059d6c3e07b28
https://github.com/llvm/llvm-project/commit/a8a66245954f8ef079708d314f0059d6c3e07b28
Author: Ralf Jung <post at ralfj.de>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
[IR] LangRef: state explicitly that floats generally behave according to IEEE-754 (#102140)
Fixes https://github.com/llvm/llvm-project/issues/60942: IEEE semantics
is likely what many frontends want (it definitely is what Rust wants),
and it is what LLVM passes already assume when they use APFloat to
propagate float operations.
This does not reflect what happens on x87, but what happens there is
just plain unsound (https://github.com/llvm/llvm-project/issues/89885,
https://github.com/llvm/llvm-project/issues/44218); there is no coherent
specification that will describe this behavior correctly -- the backend
in combination with standard LLVM passes is just fundamentally buggy in
a hard-to-fix-way.
There's also the questions around flushing subnormals to zero, but [this
discussion](https://discourse.llvm.org/t/questions-about-llvm-canonicalize/79378)
seems to indicate a general stance of: this is specific non-standard
hardware behavior, and generally needs LLVM to be told that basic float
ops do not return the standard result. Just naively running
LLVM-compiled code on hardware configured to flush subnormals will lead
to #89885-like issues.
AFAIK this is also what Alive2 implements (@nunoplopes please correct me
if I am wrong).
Commit: e34e27f19820af958db7c3b93de7f489aa3bf4dc
https://github.com/llvm/llvm-project/commit/e34e27f19820af958db7c3b93de7f489aa3bf4dc
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/include/llvm/Analysis/InlineAdvisor.h
M llvm/include/llvm/Analysis/InlineCost.h
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/lib/Analysis/InlineAdvisor.cpp
M llvm/lib/Analysis/InlineCost.cpp
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
A llvm/test/Transforms/Inline/AMDGPU/amdgpu-inline-only-one-live-use.ll
Log Message:
-----------
[TTI][AMDGPU] Allow targets to adjust `LastCallToStaticBonus` via `getInliningLastCallToStaticBonus` (#111311)
Currently we will not be able to inline a large function even if it only
has one live use because the inline cost is still very high after
applying `LastCallToStaticBonus`, which is a constant. This could
significantly impact the performance because CSR spill is very
expensive.
This PR adds a new function `getInliningLastCallToStaticBonus` to TTI to
allow targets to customize this value.
Fixes SWDEV-471398.
Commit: 2d133aaaeb97df62a92de80dae48f6bd8859a9e3
https://github.com/llvm/llvm-project/commit/2d133aaaeb97df62a92de80dae48f6bd8859a9e3
Author: erichkeane <ekeane at nvidia.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/include/clang/AST/OpenACCClause.h
Log Message:
-----------
[OpenACC] Fix 'classof' for two unused types.
While implementing a different clause, I discovered these placeholder
clauses had their 'classof' implementation done incorrectly, so this
fixes that.
Commit: bae17a2682c8fcc58c1b7248427b153dba7cb39b
https://github.com/llvm/llvm-project/commit/bae17a2682c8fcc58c1b7248427b153dba7cb39b
Author: erichkeane <ekeane at nvidia.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/include/clang/Basic/OpenACCKinds.h
Log Message:
-----------
[OpenACC] Make all AST enums have an underlying type.
We store these in a few places, so ensuring they are kept in a uint8_t
will minimize the amount of storage on the stack.
Commit: c13f806f17ac61961015e38b69c8b39ba7d454ac
https://github.com/llvm/llvm-project/commit/c13f806f17ac61961015e38b69c8b39ba7d454ac
Author: Javed Absar <106147771+javedabsar1 at users.noreply.github.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.h
M mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.td
M mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
M mlir/lib/Dialect/Linalg/IR/LinalgInterfaces.cpp
M mlir/lib/Dialect/Linalg/Transforms/Specialize.cpp
A mlir/test/Dialect/Linalg/roundtrip-broadcast.mlir
A mlir/test/Dialect/Linalg/roundtrip-transpose.mlir
A mlir/test/Dialect/Linalg/specialize-generic-ops-fail.mlir
M mlir/test/Dialect/Linalg/transform-op-specialize.mlir
Log Message:
-----------
[mlir][linalg] raise generic to named ops. (#110421)
Add support for specializing linalg.broadcast and linalg.transform from generic. Also, does some refactoring to reuse specialization checks, migrating some common uses to op interface methods.
Commit: 8b17916217e8443a2740e387ca2ff93acdb46988
https://github.com/llvm/llvm-project/commit/8b17916217e8443a2740e387ca2ff93acdb46988
Author: Jie Fu <jiefu at tencent.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
Log Message:
-----------
[RISCV] Fix -Wunused-function in RISCVVLOptimizer.cpp (NFC)
/llvm-project/llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp:125:21:
error: unused function 'operator<<' [-Werror,-Wunused-function]
static raw_ostream &operator<<(raw_ostream &OS, const OperandInfo &OI) {
^
1 error generated.
Commit: e8dd95e97bd45c8ee3cc2a3d95c9a6198a970d80
https://github.com/llvm/llvm-project/commit/e8dd95e97bd45c8ee3cc2a3d95c9a6198a970d80
Author: vporpo <vporpodas at google.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp
Log Message:
-----------
[SandboxVec][DAG] Extend DAG (#111908)
This patch implements growing the DAG towards the top or bottom. This
does the necessary dependency checks and adds new mem dependencies.
Commit: 67160c5ab5f5b7fd5fa7851abcfde367c8a9f91b
https://github.com/llvm/llvm-project/commit/67160c5ab5f5b7fd5fa7851abcfde367c8a9f91b
Author: Janek van Oirschot <janek.vanoirschot at amd.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUMCResourceInfo.cpp
M llvm/test/CodeGen/AMDGPU/function-resource-usage.ll
A llvm/test/CodeGen/AMDGPU/recursive-resource-usage-mcexpr.ll
Log Message:
-----------
[AMDGPU] Avoid resource propagation for recursion through multiple functions (#111004)
Avoid constructing recursive MCExpr definitions when multiple functions
cause a recursion.
Fixes #110863
Commit: 2d5f3b0a61fb171617012a2c3ba05fd31fb3bb1d
https://github.com/llvm/llvm-project/commit/2d5f3b0a61fb171617012a2c3ba05fd31fb3bb1d
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIPreEmitPeephole.cpp
M llvm/test/CodeGen/AMDGPU/amdgpu-demote-scc-branches.ll
M llvm/test/CodeGen/AMDGPU/branch-condition-and.ll
M llvm/test/CodeGen/AMDGPU/else.ll
M llvm/test/CodeGen/AMDGPU/fptoi.i128.ll
M llvm/test/CodeGen/AMDGPU/i1-copy-from-loop.ll
A llvm/test/CodeGen/AMDGPU/insert-handle-flat-vmem-ds.mir
R llvm/test/CodeGen/AMDGPU/insert-skips-flat-vmem-ds.mir
M llvm/test/CodeGen/AMDGPU/insert-skips-gfx10.mir
M llvm/test/CodeGen/AMDGPU/insert-skips-gfx12.mir
M llvm/test/CodeGen/AMDGPU/insert-skips-gws.mir
M llvm/test/CodeGen/AMDGPU/insert-skips-ignored-insts.mir
M llvm/test/CodeGen/AMDGPU/itofp.i128.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umax.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umin.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/remove-short-exec-branches-gpr-idx-mode.mir
M llvm/test/CodeGen/AMDGPU/remove-short-exec-branches-special-instructions.mir
M llvm/test/CodeGen/AMDGPU/ret_jump.ll
M llvm/test/CodeGen/AMDGPU/si-unify-exit-return-unreachable.ll
M llvm/test/CodeGen/AMDGPU/skip-branch-taildup-ret.mir
Log Message:
-----------
[AMDGPU][SIPreEmitPeephole] mustRetainExeczBranch: use BranchProbability and TargetSchedmodel (#109818)
Remove s_cbranch_execnz branches if the transformation is
profitable according to `BranchProbability` and `TargetSchedmodel`.
Commit: 1c6688ae3449da9c8fee1e1c12c892223496fb4c
https://github.com/llvm/llvm-project/commit/1c6688ae3449da9c8fee1e1c12c892223496fb4c
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M lld/ELF/LinkerScript.cpp
A lld/test/ELF/linkerscript/provide-defined.s
Log Message:
-----------
[ELF] Make shouldAddProvideSym return values consistent when demoted to Undefined
Case: `PROVIDE(f1 = bar);` when both `f1` and `bar` are in separate
sections that would be discarded by GC.
Due to `demoteDefined`, `shouldAddProvideSym(f1)` may initially return
false (when Defined) and then return true (been demoted to Undefined).
```
addScriptReferencedSymbolsToSymTable
shouldAddProvideSym(f1): false
// the RHS (bar) is not added to `referencedSymbols` and may be GCed
declareSymbols
shouldAddProvideSym(f1): false
markLive
demoteSymbolsAndComputeIsPreemptible
// demoted f1 to Undefined
processSymbolAssignments
addSymbol
shouldAddProvideSym(f1): true
```
The inconsistency can cause `cmd->expression()` in `addSymbol` to be
evaluated, leading to `symbol not found: bar` errors (since `bar` in the
RHS is not in `referencedSymbols` and is GCed) (#111478).
Fix this by adding a `sym->isUsedInRegularObj` condition, making
`shouldAddProvideSym(f1)` values consistent. In addition, we need a
`sym->exportDynamic` condition to keep provide-shared.s working.
Fixes: ebb326a51fec37b5a47e5702e8ea157cd4f835cd
Pull Request: https://github.com/llvm/llvm-project/pull/111945
Commit: b1746894deebe3fa8d0d18e56c0d33c37ef916cd
https://github.com/llvm/llvm-project/commit/b1746894deebe3fa8d0d18e56c0d33c37ef916cd
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIPreEmitPeephole.cpp
Log Message:
-----------
[AMDGPU] Fix -Wunused-variable in non-assertion builds after #109818
Commit: 75774c1c364711d365dae14028edfda5122a0d50
https://github.com/llvm/llvm-project/commit/75774c1c364711d365dae14028edfda5122a0d50
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/test/tools/llvm-profdata/memprof-merge-versions.test
M llvm/tools/llvm-profdata/llvm-profdata.cpp
Log Message:
-----------
[llvm-profdata] Default to MemProf version 3 (#108863)
It's very confusing to have support for Verion 3 but not default to
it. This patch teaches llvm-profdata to use MemProf version 3 by
default.
Commit: eef6c0926ea5075c7b67a8f6023bfc775563d1f6
https://github.com/llvm/llvm-project/commit/eef6c0926ea5075c7b67a8f6023bfc775563d1f6
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
Log Message:
-----------
[ARM] Avoid repeated hash lookups (NFC) (#111935)
Commit: 8a53dc69c2e9a67cb1b7ea9a568bc0194889f114
https://github.com/llvm/llvm-project/commit/8a53dc69c2e9a67cb1b7ea9a568bc0194889f114
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/DebugInfo/LogicalView/Readers/LVCodeViewVisitor.cpp
Log Message:
-----------
[DebugInfo] Avoid repeated map lookups (NFC) (#111936)
Commit: 2acec3ee21e846ce48c643b431b804a893d18cde
https://github.com/llvm/llvm-project/commit/2acec3ee21e846ce48c643b431b804a893d18cde
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/ExecutionEngine/JITLink/EHFrameSupport.cpp
Log Message:
-----------
[ExecutionEngine] Avoid repeated hash lookups (NFC) (#111937)
Commit: 0f476277d52b3d31739fe8a1b06791f1747e152d
https://github.com/llvm/llvm-project/commit/0f476277d52b3d31739fe8a1b06791f1747e152d
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/ObjectYAML/COFFEmitter.cpp
Log Message:
-----------
[ObjectYAML] Avoid repeated hash lookups (NFC) (#111938)
Commit: 3f156ef4cc333bcf9389addd1e0054b654501d7e
https://github.com/llvm/llvm-project/commit/3f156ef4cc333bcf9389addd1e0054b654501d7e
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang-tools-extra/clangd/Headers.cpp
M clang-tools-extra/clangd/XRefs.cpp
Log Message:
-----------
[clangd] Simplify code with *Map::operator[] (NFC) (#111939)
Commit: 5b25c31351ad1b10a3819411379b3258869c1e1b
https://github.com/llvm/llvm-project/commit/5b25c31351ad1b10a3819411379b3258869c1e1b
Author: Erich Keane <ekeane at nvidia.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/OpenACCClauses.def
M clang/include/clang/Basic/OpenACCKinds.h
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/SemaOpenACC.h
M clang/lib/AST/OpenACCClause.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/test/AST/ast-print-openacc-loop-construct.cpp
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/SemaOpenACC/compute-construct-device_type-clause.c
M clang/test/SemaOpenACC/loop-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/loop-construct-device_type-clause.c
A clang/test/SemaOpenACC/loop-construct-gang-ast.cpp
A clang/test/SemaOpenACC/loop-construct-gang-clause.cpp
M clang/tools/libclang/CIndex.cpp
Log Message:
-----------
[OpenACC] Implement loop 'gang' clause. (#112006)
The 'gang' clause is used to specify parallel execution of loops, thus
has some complicated rules depending on the 'loop's associated compute
construct. This patch implements all of those.
Commit: 089227feaf0efb5e540783a5542655e25669e7d8
https://github.com/llvm/llvm-project/commit/089227feaf0efb5e540783a5542655e25669e7d8
Author: Adrian Prantl <aprantl at apple.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M lldb/include/lldb/Expression/DiagnosticManager.h
M lldb/include/lldb/Interpreter/CommandReturnObject.h
M lldb/include/lldb/Utility/Args.h
A lldb/include/lldb/Utility/DiagnosticsRendering.h
M lldb/include/lldb/Utility/Status.h
M lldb/source/Commands/CommandObjectDWIMPrint.cpp
M lldb/source/Commands/CommandObjectExpression.cpp
R lldb/source/Commands/DiagnosticRendering.h
M lldb/source/Expression/DiagnosticManager.cpp
M lldb/source/Expression/FunctionCaller.cpp
M lldb/source/Expression/LLVMUserExpression.cpp
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Interpreter/CommandObject.cpp
M lldb/source/Interpreter/CommandReturnObject.cpp
M lldb/source/Interpreter/Options.cpp
M lldb/source/Utility/Args.cpp
M lldb/source/Utility/CMakeLists.txt
A lldb/source/Utility/DiagnosticsRendering.cpp
M lldb/source/Utility/Status.cpp
M lldb/test/API/commands/expression/diagnostics/TestExprDiagnostics.py
A lldb/test/Shell/Commands/command-dwim-print.test
A lldb/test/Shell/Commands/command-options.test
M lldb/unittests/Interpreter/CMakeLists.txt
R lldb/unittests/Interpreter/TestCommandObjectExpression.cpp
M lldb/unittests/Utility/CMakeLists.txt
A lldb/unittests/Utility/DiagnosticsRenderingTest.cpp
Log Message:
-----------
Support inline diagnostics in CommandReturnObject (#110901)
and implement them for dwim-print (a.k.a. `p`) as an example.
The next step will be to expose them as structured data in
SBCommandReturnObject.
Commit: b96ebee1fab2b281c97deb54f3d61c469fe07d01
https://github.com/llvm/llvm-project/commit/b96ebee1fab2b281c97deb54f3d61c469fe07d01
Author: Jacques Pienaar <jpienaar at google.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M mlir/include/mlir/IR/AsmState.h
M mlir/unittests/IR/AttributeTest.cpp
Log Message:
-----------
[mlir] Fix allocateAndCopyWithAlign for immutable (#108679)
Previously this would assert when attempting to getMutableData.
Commit: 50866e84d1da8462aeb96607bf6d9e5bbd5869c5
https://github.com/llvm/llvm-project/commit/50866e84d1da8462aeb96607bf6d9e5bbd5869c5
Author: Janek van Oirschot <janek.vanoirschot at amd.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUMCResourceInfo.cpp
M llvm/test/CodeGen/AMDGPU/function-resource-usage.ll
R llvm/test/CodeGen/AMDGPU/recursive-resource-usage-mcexpr.ll
Log Message:
-----------
Revert "[AMDGPU] Avoid resource propagation for recursion through multiple functions" (#112013)
Reverts llvm/llvm-project#111004
Commit: 2c01b278580212914ec037bb5dd9b73702dfe7f1
https://github.com/llvm/llvm-project/commit/2c01b278580212914ec037bb5dd9b73702dfe7f1
Author: Sunho Kim <ksunhokim123 at gmail.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
A llvm/include/llvm/ExecutionEngine/Orc/JITLinkRedirectableSymbolManager.h
A llvm/include/llvm/ExecutionEngine/Orc/RedirectionManager.h
M llvm/lib/ExecutionEngine/Orc/CMakeLists.txt
A llvm/lib/ExecutionEngine/Orc/JITLinkRedirectableSymbolManager.cpp
A llvm/lib/ExecutionEngine/Orc/RedirectionManager.cpp
M llvm/unittests/ExecutionEngine/Orc/CMakeLists.txt
A llvm/unittests/ExecutionEngine/Orc/JITLinkRedirectionManagerTest.cpp
Log Message:
-----------
[ORC] Introduce RedirectionManager interface and implementation using JITLink.
Commit: 04af63b267c391a4b0a0fb61060f724f8b5bc2be
https://github.com/llvm/llvm-project/commit/04af63b267c391a4b0a0fb61060f724f8b5bc2be
Author: Sunho Kim <ksunhokim123 at gmail.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter3/KaleidoscopeJIT.h
M llvm/examples/SpeculativeJIT/SpeculativeJIT.cpp
M llvm/include/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h
A llvm/include/llvm/ExecutionEngine/Orc/IRPartitionLayer.h
M llvm/include/llvm/ExecutionEngine/Orc/LLJIT.h
M llvm/lib/ExecutionEngine/Orc/CMakeLists.txt
M llvm/lib/ExecutionEngine/Orc/CompileOnDemandLayer.cpp
A llvm/lib/ExecutionEngine/Orc/IRPartitionLayer.cpp
M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
M llvm/tools/lli/lli.cpp
Log Message:
-----------
[ORC] Introduce IRPartitionLayer for common partition functionality.
Commit: 188ede28e046c911cb8e604fd1adc2b5cc1f264b
https://github.com/llvm/llvm-project/commit/188ede28e046c911cb8e604fd1adc2b5cc1f264b
Author: Sunho Kim <ksunhokim123 at gmail.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M compiler-rt/lib/orc/common.h
M compiler-rt/lib/orc/elfnix_platform.cpp
M llvm/include/llvm/ExecutionEngine/Orc/JITLinkRedirectableSymbolManager.h
A llvm/include/llvm/ExecutionEngine/Orc/ReOptimizeLayer.h
M llvm/include/llvm/ExecutionEngine/Orc/RedirectionManager.h
M llvm/lib/ExecutionEngine/Orc/CMakeLists.txt
M llvm/lib/ExecutionEngine/Orc/JITLinkRedirectableSymbolManager.cpp
A llvm/lib/ExecutionEngine/Orc/ReOptimizeLayer.cpp
M llvm/unittests/ExecutionEngine/Orc/CMakeLists.txt
M llvm/unittests/ExecutionEngine/Orc/JITLinkRedirectionManagerTest.cpp
A llvm/unittests/ExecutionEngine/Orc/ReOptimizeLayerTest.cpp
Log Message:
-----------
[ORC] Implement basic reoptimization.
Commit: 03447ab98d33ad946fcffe212eb3235b41d09b59
https://github.com/llvm/llvm-project/commit/03447ab98d33ad946fcffe212eb3235b41d09b59
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
A llvm/test/CodeGen/X86/vector-shift-lut.ll
Log Message:
-----------
[X86] Add test coverage for #110317
Add tests showing potential to use PSHUFB for shifts of constant uniform values by using a pre-computed LUT of all legal shift amounts
Commit: 64bcb27d97137a1fd4f2f85025d414201c67b2d2
https://github.com/llvm/llvm-project/commit/64bcb27d97137a1fd4f2f85025d414201c67b2d2
Author: Caio Oliveira <caio.oliveira at intel.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M mlir/utils/spirv/gen_spirv_dialect.py
Log Message:
-----------
[mlir][spirv] Make gen_spirv_dialect.py more precise when finding inst_category (#111777)
Use a word boundary, current code was currently failing when parsing the
definition of because it would also match
`CooperativeMatrixOp` from a later mention of
`SPIRV_KHR_CooperativeMatrixOperandsAttr`.
Commit: 697d65ded678f405b637e769f1b0bcc755c8461a
https://github.com/llvm/llvm-project/commit/697d65ded678f405b637e769f1b0bcc755c8461a
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M flang/examples/FeatureList/FeatureList.cpp
M flang/examples/FlangOmpReport/FlangOmpReportVisitor.cpp
M flang/examples/FlangOmpReport/FlangOmpReportVisitor.h
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/resolve-directives.cpp
A flang/test/Lower/OpenMP/Todo/map-modifiers-close.f90
A flang/test/Lower/OpenMP/Todo/map-modifiers-ompxhold.f90
A flang/test/Lower/OpenMP/Todo/map-modifiers-present.f90
A flang/test/Parser/OpenMP/map-modifiers.f90
A flang/test/Semantics/OpenMP/map-modifiers.f90
Log Message:
-----------
[flang][OpenMP] Parsing support for map type modifiers (#111860)
This commit adds parsing of type modifiers for the MAP clause: CLOSE,
OMPX_HOLD, and PRESENT. The support for ALWAYS has already existed.
The new modifiers are not yet handled in lowering: when present, a TODO
message is emitted and compilation stops.
Commit: 222d8fadb458d9b27c27e3314337ac3771b1d33b
https://github.com/llvm/llvm-project/commit/222d8fadb458d9b27c27e3314337ac3771b1d33b
Author: Sunho Kim <ksunhokim123 at gmail.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M llvm/unittests/ExecutionEngine/Orc/JITLinkRedirectionManagerTest.cpp
Log Message:
-----------
[ORC] Try to skip unsupported targets in reoptimization test.
Many build bots are getting failures because of this:
https://lab.llvm.org/buildbot/#/builders/140/builds/8600
https://lab.llvm.org/buildbot/#/builders/137/builds/6824
https://lab.llvm.org/buildbot/#/builders/140/builds/8600
Commit: 7fea5c034ca1e08403da39d64f20b08a6e7542bd
https://github.com/llvm/llvm-project/commit/7fea5c034ca1e08403da39d64f20b08a6e7542bd
Author: Sunho Kim <ksunhokim123 at gmail.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M llvm/unittests/ExecutionEngine/Orc/ReOptimizeLayerTest.cpp
Log Message:
-----------
[ORC] Try to skip unsupported targets in another reoptimization test.
Skipping another reoptimization test when target is not found.
Commit: 756ef97eeb7fccd45d1120023f6489961a4f8938
https://github.com/llvm/llvm-project/commit/756ef97eeb7fccd45d1120023f6489961a4f8938
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/BUILD.gn
Log Message:
-----------
[gn build] Port 04af63b267c3
Commit: 4ef737a43e1677626ec2c2f1c024472dde3051b9
https://github.com/llvm/llvm-project/commit/4ef737a43e1677626ec2c2f1c024472dde3051b9
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/lldb/source/Utility/BUILD.gn
Log Message:
-----------
[gn build] Port 089227feaf0e
Commit: 91627546cdc22467d65884f67009f559739b16b1
https://github.com/llvm/llvm-project/commit/91627546cdc22467d65884f67009f559739b16b1
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/ExecutionEngine/Orc/BUILD.gn
Log Message:
-----------
[gn build] Port 188ede28e046
Commit: 7f1b465c6ae476e59dc90652d58fc648932d23b1
https://github.com/llvm/llvm-project/commit/7f1b465c6ae476e59dc90652d58fc648932d23b1
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/ExecutionEngine/Orc/BUILD.gn
Log Message:
-----------
[gn build] Port 2c01b2785802
Commit: 2aa1dbf9c92e3b27954ba9166c927616625073e8
https://github.com/llvm/llvm-project/commit/2aa1dbf9c92e3b27954ba9166c927616625073e8
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/unittests/SandboxIR/RegionTest.cpp
Log Message:
-----------
[SandboxIR] Add a test for creating non-contiguous Regions. (#112027)
It checks that a Region can have non-contiguous instructions, and that
when iterating through it you don't get the instructions in-between that
aren't part of the Region.
Commit: 48bda00b281a432d6de5e5e5dde6c5d66b992ac8
https://github.com/llvm/llvm-project/commit/48bda00b281a432d6de5e5e5dde6c5d66b992ac8
Author: Sirraide <aeternalmail at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ComputeDependence.h
M clang/include/clang/AST/Expr.h
M clang/include/clang/Sema/ScopeInfo.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/Template.h
M clang/lib/AST/ComputeDependence.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaLambda.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateVariadic.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.lambda/blocks.mm
A clang/test/SemaCXX/block-packs.cpp
Log Message:
-----------
[Clang] [Sema] Don't crash on unexpanded pack in invalid block literal (#110762)
Consider #109148:
```c++
template <typename ...Ts>
void f() {
[] {
(^Ts);
};
}
```
When we encounter `^Ts`, we try to parse a block and subsequently call
`DiagnoseUnexpandedParameterPack()` (in `ActOnBlockArguments()`), which
sees `Ts` and sets `ContainsUnexpandedParameterPack` to `true` in the
`LambdaScopeInfo` of the enclosing lambda. However, the entire block is
subsequently discarded entirely because it isn’t even syntactically
well-formed. As a result, `ContainsUnexpandedParameterPack` is `true`
despite the lambda’s body no longer containing any unexpanded packs,
which causes an assertion the next time
`DiagnoseUnexpandedParameterPack()` is called.
This pr moves handling of unexpanded parameter packs into
`CapturingScopeInfo` instead so that the same logic is used for both
blocks and lambdas. This fixes this issue since the
`ContainsUnexpandedParameterPack` flag is now part of the block (and
before that, its `CapturingScopeInfo`) and no longer affects the
surrounding lambda directly when the block is parsed. Moreover, this
change makes blocks actually usable with pack expansion.
This fixes #109148.
Commit: 2bb3d3a3f32ffaef3d9b6a27db7f1941f0cb1136
https://github.com/llvm/llvm-project/commit/2bb3d3a3f32ffaef3d9b6a27db7f1941f0cb1136
Author: Krystian Stasiowski <sdkrystian at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/DeclTemplate.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/DeclTemplate.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
A clang/test/CXX/temp/temp.constr/temp.constr.decl/p4.cpp
A clang/test/CXX/temp/temp.spec/temp.expl.spec/p7.cpp
M clang/test/Modules/cxx-templates.cpp
Log Message:
-----------
Reapply "[Clang][Sema] Refactor collection of multi-level template argument lists (#106585, #111173)" (#111852)
This patch reapplies #111173, fixing a bug when instantiating dependent
expressions that name a member template that is later explicitly
specialized for a class specialization that is implicitly instantiated.
The bug is addressed by adding the `hasMemberSpecialization` function,
which return `true` if _any_ redeclaration is a member specialization.
This is then used when determining the instantiation pattern for a
specialization of a template, and when collecting template arguments for
a specialization of a template.
Commit: f0909e3a991c7b6515cafe2ce0a069a856fe675f
https://github.com/llvm/llvm-project/commit/f0909e3a991c7b6515cafe2ce0a069a856fe675f
Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/Context.h
M llvm/include/llvm/SandboxIR/Utils.h
M llvm/unittests/SandboxIR/UtilsTest.cpp
Log Message:
-----------
[SandboxIR] Add utility function to find the base Value for Mem instructions (#112030)
Commit: bc53359b92e0fa3e1cf70505e1f2399f07c850d5
https://github.com/llvm/llvm-project/commit/bc53359b92e0fa3e1cf70505e1f2399f07c850d5
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/www/c_status.html
Log Message:
-----------
Update the C status page with papers adopted in Minneapolis
Commit: 31b85c6ead3e0e2979272046548f3ae8a51db289
https://github.com/llvm/llvm-project/commit/31b85c6ead3e0e2979272046548f3ae8a51db289
Author: vporpo <vporpodas at google.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Interval.h
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/IntervalTest.cpp
Log Message:
-----------
[SandboxVec][Interval] Implement Interval::comesBefore() (#112026)
This patch implements `Interval::comesBefore(const Interval &Other)`
which returns true if this interval is strictly before Other in program
order. The function asserts that the intervals are disjoint.
Commit: adaa603224fee842b4f71824617adb3b0c7d9cf1
https://github.com/llvm/llvm-project/commit/adaa603224fee842b4f71824617adb3b0c7d9cf1
Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/MachineVerifier.cpp
A llvm/test/MachineVerifier/test_multiple_errors.mir
Log Message:
-----------
[MachineVerifier] Report errors from one thread at a time (#111605)
Create the `ReportedErrors` class to track the number of reported errors
during verification. The class will block reporting errors if some other
thread is currently reporting an error.
I've encountered a case where there were many different verifications
reporting errors at the same time on different threads. This ensures
that we don't start printing the error from one case until we are
completely done printing errors from other cases. Most of the time
`AbortOnError = true` so we usually abort after reporting the first
error.
Depends on https://github.com/llvm/llvm-project/pull/111602.
Commit: 58d97034c9c149d175c66440d31f46e9dfd4b760
https://github.com/llvm/llvm-project/commit/58d97034c9c149d175c66440d31f46e9dfd4b760
Author: Fabian Mora <fmora.dev at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M mlir/include/mlir/Conversion/OpenMPToLLVM/ConvertOpenMPToLLVM.h
M mlir/include/mlir/InitAllExtensions.h
M mlir/lib/Conversion/OpenMPToLLVM/OpenMPToLLVM.cpp
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir
Log Message:
-----------
[mlir][OpenMP] Implement the ConvertToLLVMPatternInterface (#101997)
This patch implements the `ConvertToLLVMPatternInterface` for the OpenMP
dialect, allowing `convert-to-llvm` to act on the OpenMP dialect.
Commit: cc8edbca7de9204915c84477b8c03a33abeb7775
https://github.com/llvm/llvm-project/commit/cc8edbca7de9204915c84477b8c03a33abeb7775
Author: vporpo <vporpodas at google.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Interval.h
Log Message:
-----------
[SandboxVec][Interval][NFC] Rename From/To to Top/Bottom (#112034)
The API was already using top()/bottom() but internally we were still
using From/To. This patch fixes this.
Top/Bottom seems a better choice because implies program order, whereas
From/To does not.
Commit: 2967e5f8007d873a3e9d97870d2461d0827a3976
https://github.com/llvm/llvm-project/commit/2967e5f8007d873a3e9d97870d2461d0827a3976
Author: Alex Bradbury <asb at igalia.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
M llvm/test/CodeGen/RISCV/GlobalISel/vararg.ll
M llvm/test/CodeGen/RISCV/abds-neg.ll
M llvm/test/CodeGen/RISCV/abds.ll
M llvm/test/CodeGen/RISCV/abdu-neg.ll
M llvm/test/CodeGen/RISCV/add-before-shl.ll
M llvm/test/CodeGen/RISCV/alloca.ll
M llvm/test/CodeGen/RISCV/atomic-cmpxchg.ll
M llvm/test/CodeGen/RISCV/callee-saved-gprs.ll
M llvm/test/CodeGen/RISCV/calling-conv-ilp32-ilp32f-common.ll
M llvm/test/CodeGen/RISCV/calling-conv-ilp32-ilp32f-ilp32d-common.ll
M llvm/test/CodeGen/RISCV/calling-conv-ilp32d.ll
M llvm/test/CodeGen/RISCV/calling-conv-ilp32e.ll
M llvm/test/CodeGen/RISCV/calling-conv-lp64-lp64f-lp64d-common.ll
M llvm/test/CodeGen/RISCV/calling-conv-lp64e.ll
M llvm/test/CodeGen/RISCV/calling-conv-rv32f-ilp32.ll
M llvm/test/CodeGen/RISCV/calling-conv-rv32f-ilp32e.ll
M llvm/test/CodeGen/RISCV/calling-conv-vector-float.ll
M llvm/test/CodeGen/RISCV/calls.ll
M llvm/test/CodeGen/RISCV/double-calling-conv.ll
M llvm/test/CodeGen/RISCV/double-convert-strict.ll
M llvm/test/CodeGen/RISCV/double-convert.ll
M llvm/test/CodeGen/RISCV/fastcc-bf16.ll
M llvm/test/CodeGen/RISCV/fastcc-float.ll
M llvm/test/CodeGen/RISCV/fastcc-half.ll
M llvm/test/CodeGen/RISCV/fastcc-int.ll
M llvm/test/CodeGen/RISCV/fastcc-without-f-reg.ll
M llvm/test/CodeGen/RISCV/fold-addi-loadstore.ll
M llvm/test/CodeGen/RISCV/forced-atomics.ll
M llvm/test/CodeGen/RISCV/fp128.ll
M llvm/test/CodeGen/RISCV/frame.ll
M llvm/test/CodeGen/RISCV/get-setcc-result-type.ll
M llvm/test/CodeGen/RISCV/hoist-global-addr-base.ll
M llvm/test/CodeGen/RISCV/intrinsic-cttz-elts-vscale.ll
M llvm/test/CodeGen/RISCV/legalize-fneg.ll
M llvm/test/CodeGen/RISCV/llvm.exp10.ll
M llvm/test/CodeGen/RISCV/llvm.frexp.ll
M llvm/test/CodeGen/RISCV/memcpy.ll
M llvm/test/CodeGen/RISCV/memset-inline.ll
M llvm/test/CodeGen/RISCV/misched-load-clustering.ll
M llvm/test/CodeGen/RISCV/neg-abs.ll
M llvm/test/CodeGen/RISCV/nontemporal.ll
M llvm/test/CodeGen/RISCV/overflow-intrinsics.ll
M llvm/test/CodeGen/RISCV/pr63816.ll
M llvm/test/CodeGen/RISCV/push-pop-popret.ll
M llvm/test/CodeGen/RISCV/riscv-codegenprepare-asm.ll
M llvm/test/CodeGen/RISCV/riscv-shifted-extend.ll
M llvm/test/CodeGen/RISCV/rv32zbb.ll
M llvm/test/CodeGen/RISCV/rvv/binop-splats.ll
M llvm/test/CodeGen/RISCV/rvv/bitreverse-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/bitreverse-vp.ll
M llvm/test/CodeGen/RISCV/rvv/bswap-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/bswap-vp.ll
M llvm/test/CodeGen/RISCV/rvv/combine-store.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-binop-splats.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitreverse-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitreverse.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bswap-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bswap.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-calling-conv-fastcc.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctlz-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctpop-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-cttz-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-elen.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-expandload-int.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-buildvec.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp2i.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-insert.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-splat.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-llrint.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-lrint.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-gather.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-scatter.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-vslide1down.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-vslide1up.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shufflevector-vnsrl.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-load-store-asm.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-unaligned.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vaaddu.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vand-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vdiv-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vdivu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmacc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmax-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmaxu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmin-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vminu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmul-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vnmsac-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vor-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vp-splat.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpmerge.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vrem-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vremu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vrsub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsadd.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsaddu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsaddu.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssub.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssubu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssubu.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwadd.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwaddu.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmul.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmulsu.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwsub.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwsubu.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vxor-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fpclamptosat_vec.ll
M llvm/test/CodeGen/RISCV/rvv/masked-tama.ll
M llvm/test/CodeGen/RISCV/rvv/memset-inline.ll
M llvm/test/CodeGen/RISCV/rvv/no-reserved-frame.ll
M llvm/test/CodeGen/RISCV/rvv/pr104480.ll
M llvm/test/CodeGen/RISCV/rvv/rvv-args-by-mem.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-integer.ll
M llvm/test/CodeGen/RISCV/rvv/splat-vector-split-i64-vl-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/stepvector.ll
M llvm/test/CodeGen/RISCV/rvv/unmasked-ta.ll
M llvm/test/CodeGen/RISCV/rvv/unmasked-tu.ll
M llvm/test/CodeGen/RISCV/rvv/vaadd.ll
M llvm/test/CodeGen/RISCV/rvv/vaaddu-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vaaddu.ll
M llvm/test/CodeGen/RISCV/rvv/vadc.ll
M llvm/test/CodeGen/RISCV/rvv/vadd-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vadd.ll
M llvm/test/CodeGen/RISCV/rvv/vand-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vand-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vand.ll
M llvm/test/CodeGen/RISCV/rvv/vandn-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vandn-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vandn.ll
M llvm/test/CodeGen/RISCV/rvv/vasub.ll
M llvm/test/CodeGen/RISCV/rvv/vasubu.ll
M llvm/test/CodeGen/RISCV/rvv/vclmul.ll
M llvm/test/CodeGen/RISCV/rvv/vclmulh.ll
M llvm/test/CodeGen/RISCV/rvv/vdiv-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vdiv-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vdiv.ll
M llvm/test/CodeGen/RISCV/rvv/vdivu-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vdivu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vdivu.ll
M llvm/test/CodeGen/RISCV/rvv/vec3-setcc-crash.ll
M llvm/test/CodeGen/RISCV/rvv/vmacc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmacc.ll
M llvm/test/CodeGen/RISCV/rvv/vmadc.carry.in.ll
M llvm/test/CodeGen/RISCV/rvv/vmadc.ll
M llvm/test/CodeGen/RISCV/rvv/vmadd-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vmadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmadd.ll
M llvm/test/CodeGen/RISCV/rvv/vmax-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vmax-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmax.ll
M llvm/test/CodeGen/RISCV/rvv/vmaxu-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vmaxu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmaxu.ll
M llvm/test/CodeGen/RISCV/rvv/vmin-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vmin-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmin.ll
M llvm/test/CodeGen/RISCV/rvv/vminu-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vminu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vminu.ll
M llvm/test/CodeGen/RISCV/rvv/vmsbc.borrow.in.ll
M llvm/test/CodeGen/RISCV/rvv/vmsbc.ll
M llvm/test/CodeGen/RISCV/rvv/vmseq.ll
M llvm/test/CodeGen/RISCV/rvv/vmsge.ll
M llvm/test/CodeGen/RISCV/rvv/vmsgeu.ll
M llvm/test/CodeGen/RISCV/rvv/vmsgt.ll
M llvm/test/CodeGen/RISCV/rvv/vmsgtu.ll
M llvm/test/CodeGen/RISCV/rvv/vmsle.ll
M llvm/test/CodeGen/RISCV/rvv/vmsleu.ll
M llvm/test/CodeGen/RISCV/rvv/vmslt.ll
M llvm/test/CodeGen/RISCV/rvv/vmsltu.ll
M llvm/test/CodeGen/RISCV/rvv/vmsne.ll
M llvm/test/CodeGen/RISCV/rvv/vmul-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vmul-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmul.ll
M llvm/test/CodeGen/RISCV/rvv/vmulh.ll
M llvm/test/CodeGen/RISCV/rvv/vmulhsu.ll
M llvm/test/CodeGen/RISCV/rvv/vmulhu.ll
M llvm/test/CodeGen/RISCV/rvv/vmv.s.x.ll
M llvm/test/CodeGen/RISCV/rvv/vmv.v.x.ll
M llvm/test/CodeGen/RISCV/rvv/vnmsac-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vnmsac.ll
M llvm/test/CodeGen/RISCV/rvv/vnmsub-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vnmsub.ll
M llvm/test/CodeGen/RISCV/rvv/vor-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vor-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vor.ll
M llvm/test/CodeGen/RISCV/rvv/vp-splat.ll
M llvm/test/CodeGen/RISCV/rvv/vpmerge-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vreductions-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vrem-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vrem-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vrem.ll
M llvm/test/CodeGen/RISCV/rvv/vremu-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vremu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vremu.ll
M llvm/test/CodeGen/RISCV/rvv/vrsub-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vrsub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vrsub.ll
M llvm/test/CodeGen/RISCV/rvv/vsadd-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vsadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsadd.ll
M llvm/test/CodeGen/RISCV/rvv/vsaddu-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vsaddu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsaddu.ll
M llvm/test/CodeGen/RISCV/rvv/vsbc.ll
M llvm/test/CodeGen/RISCV/rvv/vselect-int.ll
M llvm/test/CodeGen/RISCV/rvv/vsmul.ll
M llvm/test/CodeGen/RISCV/rvv/vsplats-i64.ll
M llvm/test/CodeGen/RISCV/rvv/vssub-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vssub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vssub.ll
M llvm/test/CodeGen/RISCV/rvv/vssubu-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vssubu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vssubu.ll
M llvm/test/CodeGen/RISCV/rvv/vsub-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vsub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsub.ll
M llvm/test/CodeGen/RISCV/rvv/vwadd-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vxor-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vxor-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vxor.ll
M llvm/test/CodeGen/RISCV/select-optimize-multiple.ll
M llvm/test/CodeGen/RISCV/shifts.ll
M llvm/test/CodeGen/RISCV/split-offsets.ll
M llvm/test/CodeGen/RISCV/split-store.ll
M llvm/test/CodeGen/RISCV/srem-seteq-illegal-types.ll
M llvm/test/CodeGen/RISCV/srem-vector-lkk.ll
M llvm/test/CodeGen/RISCV/stack-slot-size.ll
M llvm/test/CodeGen/RISCV/stack-store-check.ll
M llvm/test/CodeGen/RISCV/tail-calls.ll
M llvm/test/CodeGen/RISCV/unaligned-load-store.ll
M llvm/test/CodeGen/RISCV/urem-seteq-illegal-types.ll
M llvm/test/CodeGen/RISCV/urem-vector-lkk.ll
M llvm/test/CodeGen/RISCV/vararg-ilp32e.ll
M llvm/test/CodeGen/RISCV/vararg.ll
M llvm/test/CodeGen/RISCV/wide-scalar-shift-by-byte-multiple-legalization.ll
M llvm/test/CodeGen/RISCV/wide-scalar-shift-legalization.ll
M llvm/test/CodeGen/RISCV/xtheadmempair.ll
Log Message:
-----------
[RISCV] Enable store clustering by default (#73796)
Builds on #73789, enabling store clustering by default using the same
heuristic.
Commit: 77aa8257acbd773c0c430cd962da1bcfbd5ee94b
https://github.com/llvm/llvm-project/commit/77aa8257acbd773c0c430cd962da1bcfbd5ee94b
Author: Brian Cain <bcain at quicinc.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M lld/ELF/Arch/Hexagon.cpp
M lld/test/ELF/hexagon-shared.s
Log Message:
-----------
[lld][Hexagon] Support predicated-add GOT_16_X mask lookup (#111896)
When encountering an instruction like `if (p0) r0 = add(r0,##bar at GOT)`,
lld would fail with:
```
ld.lld: error: unrecognized instruction for 16_X type: 0x7400C000
```
This issue was encountered while building libreadline with clang 19.1.0.
Fixes: #111876
Commit: 16c8056ca9d3c28ca5e409162a0c82d5726ea655
https://github.com/llvm/llvm-project/commit/16c8056ca9d3c28ca5e409162a0c82d5726ea655
Author: Brox Chen <guochen2 at amd.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_err.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_promote.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_err.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_promote.s
Log Message:
-----------
[AMDGPU][test] update test with update_mc_test_check (#111913)
a non-functional change
Update test script with update_mc_test_check script and sort the
testline to be alphabetic order. This helps to maintain the test file in
a clean state
Commit: 3ed8acf2f077fe250773f2ada986c7114adcbb85
https://github.com/llvm/llvm-project/commit/3ed8acf2f077fe250773f2ada986c7114adcbb85
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC]Simplify check for external user parent basic block, NFC.
Commit: 111b062f63ba52552f41e425449ba1db048dc51a
https://github.com/llvm/llvm-project/commit/111b062f63ba52552f41e425449ba1db048dc51a
Author: Shourya Goel <shouryagoel10000 at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M libc/src/__support/CPP/string_view.h
M libc/src/__support/CPP/utility/in_place.h
M libc/src/__support/FPUtil/NearestIntegerOperations.h
M libc/test/src/math/RoundToIntegerTest.h
Log Message:
-----------
[libc] Fix for adding macro I (#111872)
We have two (EDIT: 4) files in which we are using `I`. This PR replaces
them with alternatives like `i` and `IDX` etc.
Commit: 1de71652fd232163dadfee68e2f2b3f0d6dfb1e1
https://github.com/llvm/llvm-project/commit/1de71652fd232163dadfee68e2f2b3f0d6dfb1e1
Author: Teresa Johnson <tejohnson at google.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/include/llvm/IR/ModuleSummaryIndex.h
M llvm/include/llvm/Transforms/IPO/MemProfContextDisambiguation.h
M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
A llvm/test/ThinLTO/X86/memprof-icp.ll
Log Message:
-----------
[MemProf] Support cloning for indirect calls with ThinLTO (#110625)
This patch enables support for cloning in indirect callsites.
This is done by synthesizing callsite records for each virtual call
target from the profile metadata. In the thin link all the synthesized
records for a particular indirect callsite initially share the same
context node, but support is added to partition the callsites and
outgoing edges based on the callee function, creating a separate node
for each target.
In the LTO backend, when cloning is needed we first perform indirect
call promotion, then change the target of the new direct call to the
desired clone.
Note this is ThinLTO-specific, since for regular LTO indirect call
promotion should have already occurred.
Commit: 38b010258baa8f543210f06b2e448ce9cbb3915a
https://github.com/llvm/llvm-project/commit/38b010258baa8f543210f06b2e448ce9cbb3915a
Author: Florian Mayer <fmayer at google.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/test/MC/AArch64/global-tagging.ll
Log Message:
-----------
[MTE] Also test alignment and size of MTE globals (#112039)
Commit: 9a97a57d9ee9dbaa4f7ecfdaba565171ea49b7ac
https://github.com/llvm/llvm-project/commit/9a97a57d9ee9dbaa4f7ecfdaba565171ea49b7ac
Author: Eric Astor <epastor at google.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/docs/ClangPlugins.rst
M clang/docs/ReleaseNotes.rst
M clang/examples/Attribute/Attribute.cpp
M clang/include/clang/Basic/ParsedAttrInfo.h
M clang/lib/Sema/SemaStmtAttr.cpp
M clang/test/Frontend/plugin-attribute.cpp
Log Message:
-----------
[clang][frontend] Add support for attribute plugins for statement attributes (#110334)
We already have support for declaration attributes; this is just a matter of extending the plugin infrastructure to cover one more case.
Commit: 8b46d40221f3c302e9c28e3ad7c79767f905a862
https://github.com/llvm/llvm-project/commit/8b46d40221f3c302e9c28e3ad7c79767f905a862
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/orc-b-patterns.ll
Log Message:
-----------
[RISCV] Re-generate orc-b-patterns.ll for store clustering. NFC
The patch added orc-b-patterns.ll landed while store clustering was
still in review.
Commit: 82b40fd4fd2f3f723d30b666f8766973da4166db
https://github.com/llvm/llvm-project/commit/82b40fd4fd2f3f723d30b666f8766973da4166db
Author: Tex Riddell <texr at microsoft.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/ReplaceWithVeclib.cpp
M llvm/test/CodeGen/AArch64/replace-with-veclib-armpl.ll
M llvm/test/CodeGen/AArch64/replace-with-veclib-sleef-scalable.ll
M llvm/test/CodeGen/AArch64/replace-with-veclib-sleef.ll
Log Message:
-----------
Fix scalar overload name constructed by ReplaceWithVeclib.cpp (#111095)
ReplaceWithVeclib.cpp would construct overload name using all the
arguments in the intrinsic, but overloads should only be constructed
from arguments for which isVectorIntrinsicWithOverloadTypeAtArg returns
true, including the return type first (index -1).
Additionally,
- skip when `Intrinsic::not_intrinsic`, otherwise
`isVectorIntrinsicWithOverloadTypeAtArg` asserts for some
IntrinsicCalls.
Unblocks translation for pow and atan2 intrinsics.
Fixes #111093
Commit: abe148a09f61fa341f80376c763ea4706cfca30e
https://github.com/llvm/llvm-project/commit/abe148a09f61fa341f80376c763ea4706cfca30e
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M compiler-rt/lib/asan/asan_fuchsia.cpp
M compiler-rt/lib/asan/asan_thread.cpp
M compiler-rt/lib/asan/asan_thread.h
M compiler-rt/lib/memprof/memprof_thread.cpp
M compiler-rt/lib/memprof/memprof_thread.h
M compiler-rt/lib/sanitizer_common/sanitizer_thread_registry.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_thread_registry.h
M compiler-rt/lib/sanitizer_common/tests/sanitizer_thread_registry_test.cpp
Log Message:
-----------
[NFC][sanitizer][asan] Promote stack_id into ThreadContextBase (#111917)
`parent_id` and `stack_id` represent location
where the thread was created, so it's reasonable
to keep them togeter.
For now, only Asan and MemProf use `stack_id`,
but it will be halpfull to print thread origin from
other sanitizers as well.
For #111948
Commit: f4cf6242fb7179c672568969c3eccdf4cd4b9420
https://github.com/llvm/llvm-project/commit/f4cf6242fb7179c672568969c3eccdf4cd4b9420
Author: Thomas Symalla <5754458+tsymalla at users.noreply.github.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M llvm/docs/Coroutines.rst
Log Message:
-----------
[Docs] Fix typo in recent coro docs (#112005)
Commit: 637054640ec2e40209791d5e4fc5a332ac80fc52
https://github.com/llvm/llvm-project/commit/637054640ec2e40209791d5e4fc5a332ac80fc52
Author: Michael Jones <michaelrj at google.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M libc/src/__support/str_to_integer.h
Log Message:
-----------
[libc] Make strtointeger handle all bigint types (#111926)
Needed for #110894
The strtointeger code was updated to support some bigint types in #85201
but not all. This patch finishes the cleanup so that it can work for a
wider range of types.
Commit: 902520256b397108c3917540af8680ed0de96292
https://github.com/llvm/llvm-project/commit/902520256b397108c3917540af8680ed0de96292
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rv32xtheadbb.ll
M llvm/test/CodeGen/RISCV/rv64xtheadbb.ll
Log Message:
-----------
[RISCV] Make (sext_inreg X, i1) legal for XTHeadBb to cover the existing isel pattern.
I just happened to notice the untested isel pattern.
Commit: e1cff8bf816b41b4fb1333533ee1225ae2148a0d
https://github.com/llvm/llvm-project/commit/e1cff8bf816b41b4fb1333533ee1225ae2148a0d
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M compiler-rt/lib/lsan/lsan_common.cpp
M compiler-rt/lib/lsan/lsan_flags.inc
A compiler-rt/test/lsan/TestCases/flag_tries.c
Log Message:
-----------
[lsan] Add debug option to "deflake" leaks (#112037)
There are hard to debug leaks which look like
false.
In general, repeating leak checking should not
affect set of leaks significantly, especial
`at_exit` leak checking.
But if we see significant discrepancy, it may give
us a clue for investigation.
Commit: aa44f59abf399f81585898fb95e66518ef3591af
https://github.com/llvm/llvm-project/commit/aa44f59abf399f81585898fb95e66518ef3591af
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/CMakeLists.txt
A compiler-rt/lib/sanitizer_common/sanitizer_thread_history.cpp
A compiler-rt/lib/sanitizer_common/sanitizer_thread_history.h
M compiler-rt/lib/sanitizer_common/tests/sanitizer_thread_registry_test.cpp
Log Message:
-----------
[NFC][sanitizer] Add Debug utility to print thread history (#111948)
For #111949
Commit: 6d4edf2f75f7ec09420f18f7806f480f5b090b40
https://github.com/llvm/llvm-project/commit/6d4edf2f75f7ec09420f18f7806f480f5b090b40
Author: Youngsuk Kim <youngsuk.kim at hpe.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
Log Message:
-----------
[clang][CGOpenMPRuntime] Avoid Type::getPointerTo() (NFC) (#112017)
`llvm::Type::getPointerTo()` is to be deprecated & removed soon.
Commit: f1367a473d9682a058c7f8c397ed2a787d071826
https://github.com/llvm/llvm-project/commit/f1367a473d9682a058c7f8c397ed2a787d071826
Author: Nicolas van Kempen <nvankemp at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/UseStartsEndsWithCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStartsEndsWithCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-starts-ends-with.rst
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/string
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-starts-ends-with.cpp
Log Message:
-----------
[clang-tidy][modernize-use-starts-ends-with] Add support for two ends_with patterns (#110448)
Add support for the following two patterns:
```
haystack.compare(haystack.length() - needle.length(), needle.length(), needle) == 0;
haystack.rfind(needle) == (haystack.size() - needle.size());
```
Commit: fa81868fe6fb030675014da051e437913df0292c
https://github.com/llvm/llvm-project/commit/fa81868fe6fb030675014da051e437913df0292c
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M compiler-rt/lib/asan/asan_thread.cpp
M compiler-rt/lib/hwasan/hwasan_thread.cpp
M compiler-rt/lib/lsan/lsan_common.cpp
M compiler-rt/lib/lsan/lsan_common.h
M compiler-rt/lib/lsan/lsan_thread.cpp
A compiler-rt/test/lsan/TestCases/print_threads.c
Log Message:
-----------
[lsan] Log thread history (#111949)
Only with high verbosity and leak reports, or thread logging requested.
Commit: 24ac6cf4f7fe0dd4358614066e6159130f7f11e7
https://github.com/llvm/llvm-project/commit/24ac6cf4f7fe0dd4358614066e6159130f7f11e7
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel] Port 58d97034c9c149d175c66440d31f46e9dfd4b760 (#112064)
Commit: 1c28f3113377da218d67dc76aa0876b6250ceb6a
https://github.com/llvm/llvm-project/commit/1c28f3113377da218d67dc76aa0876b6250ceb6a
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/CallGraphSort.cpp
M lld/ELF/CallGraphSort.h
M lld/ELF/Driver.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputSection.cpp
M lld/ELF/MapFile.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
M lld/ELF/Writer.cpp
Log Message:
-----------
[ELF] Pass Ctx &
Commit: 0fba8381d2a71ff440fdf0ae30d59a0bf07fea75
https://github.com/llvm/llvm-project/commit/0fba8381d2a71ff440fdf0ae30d59a0bf07fea75
Author: Iuri Chaer <ichaer at splunk.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Format/Format.h
M clang/lib/Format/BreakableToken.cpp
M clang/lib/Format/BreakableToken.h
M clang/lib/Format/ContinuationIndenter.cpp
M clang/lib/Format/Format.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/FormatTest.cpp
M clang/unittests/Format/FormatTestComments.cpp
Log Message:
-----------
[clang-format] Introduce "ReflowComments: IndentOnly" to re-indent comments without breaking internal structure (think Doxygen). (#96804)
* Convert `ReflowComments` from boolean into a new `enum` which can take
on the value `RCS_Never`, `RCS_IndentOnly`, or `RCS_Always`. The first
one is equivalent to the old `false`, the third one is `true`, and the
middle one means that multiline comments should only have their
indentation corrected, which is what Doxygen users will want.
* Preserve backward compatibility while parsing `ReflowComments`.
Commit: 1ac6ef5af28b72e534496a9833a2b75a2aba66cc
https://github.com/llvm/llvm-project/commit/1ac6ef5af28b72e534496a9833a2b75a2aba66cc
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M clang/test/CMakeLists.txt
Log Message:
-----------
clang: Add llvm-mc to CLANG_TEST_DEPS (#112032)
Attempt to fit sporadic precommit test failures in
hip-partial-link.hip
The driver really shouldn't be using llvm-mc in the first place
though, filed #112031 to fix this.
Commit: 966bee739c270c5b5a9ee7e0902cf1fd36ffab0d
https://github.com/llvm/llvm-project/commit/966bee739c270c5b5a9ee7e0902cf1fd36ffab0d
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M llvm/test/Transforms/InstCombine/is_fpclass.ll
Log Message:
-----------
[InstCombine][NFC] Fix typo in is_fpclass.ll (#112067)
This typo causes alive2 to crash.
Commit: 6dd773b6505fdc712885a353a1439d8ea328021d
https://github.com/llvm/llvm-project/commit/6dd773b6505fdc712885a353a1439d8ea328021d
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M lld/ELF/AArch64ErrataFix.cpp
M lld/ELF/ARMErrataFix.cpp
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/X86_64.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputSection.cpp
M lld/ELF/LinkerScript.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
M lld/ELF/Thunks.cpp
Log Message:
-----------
[ELF] Pass Ctx &
Commit: 9bf2e20b17e4199d871d4622fbe43b5a2a52b513
https://github.com/llvm/llvm-project/commit/9bf2e20b17e4199d871d4622fbe43b5a2a52b513
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Driver.cpp
M lld/ELF/InputSection.cpp
M lld/ELF/LinkerScript.cpp
M lld/ELF/OutputSections.cpp
M lld/ELF/OutputSections.h
M lld/ELF/Relocations.cpp
M lld/ELF/SyntheticSections.cpp
Log Message:
-----------
[ELF] Pass Ctx & to OutputSection
Commit: 23c64beeccc03c6a8329314ecd75864e09bb6d97
https://github.com/llvm/llvm-project/commit/23c64beeccc03c6a8329314ecd75864e09bb6d97
Author: Pavel Samolysov <samolisov at gmail.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
M llvm/unittests/Transforms/Instrumentation/PGOInstrumentationTest.cpp
Log Message:
-----------
[PGO] Preserve analysis results when nothing was instrumented (#93421)
The `PGOInstrumentationGen` pass should preserve all analysis results
when nothing was actually instrumented. Currently, only modules that
contain at least a single function definition are instrumented. When a
module contains only function declarations and, optionally, global
variable definitions (a module for the regular-LTO phase for thin-LTO
when LTOUnit splitting is enabled, for example), such module is not
instrumented (yet?) and there is no reason to invalidate any analysis
results.
NFC.
Commit: c33133279bc25ec6e25ddd5fd13ca173bf716f3e
https://github.com/llvm/llvm-project/commit/c33133279bc25ec6e25ddd5fd13ca173bf716f3e
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M lld/ELF/InputSection.cpp
M lld/ELF/InputSection.h
M lld/ELF/OutputSections.cpp
Log Message:
-----------
[ELF] Pass Ctx & to InputSection
Commit: d0606c265e8eb800cc59f182b38b3e0427ba0200
https://github.com/llvm/llvm-project/commit/d0606c265e8eb800cc59f182b38b3e0427ba0200
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M lld/ELF/Driver.cpp
M lld/ELF/InputSection.cpp
M lld/ELF/InputSection.h
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
Log Message:
-----------
[ELF] Make .comment have a non-full file
This ensures that SectionBase::file is non-null except
InputSection::discarded.
Commit: dd326b122506421aba2368053103767f4c56e2ba
https://github.com/llvm/llvm-project/commit/dd326b122506421aba2368053103767f4c56e2ba
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M lld/ELF/Driver.cpp
M lld/ELF/DriverUtils.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/Symbols.cpp
M lld/ELF/Symbols.h
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
M lld/ELF/Writer.cpp
Log Message:
-----------
[ELF] Pass Ctx &
Commit: 79d695f049343c96eccbce9c06357256bc567be3
https://github.com/llvm/llvm-project/commit/79d695f049343c96eccbce9c06357256bc567be3
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M bolt/include/bolt/Profile/BoltAddressTranslation.h
M bolt/lib/Profile/BoltAddressTranslation.cpp
Log Message:
-----------
[BOLT][NFCI] Speedup BAT::writeMaps
For a large binary with BAT section of size 38 MB with ~170k maps,
reduces writeMaps time from 70s down to 1s.
The inefficiency was in the use of std::distance with std::map::iterator
which doesn't provide random access. Use sorted vector for lookups.
Test Plan: NFC
Reviewers: maksfb, rafaelauler, dcci, ayermolo
Reviewed By: maksfb
Pull Request: https://github.com/llvm/llvm-project/pull/112061
Commit: a62768c427ec1f34d7c3823021a6c5a794709103
https://github.com/llvm/llvm-project/commit/a62768c427ec1f34d7c3823021a6c5a794709103
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
Log Message:
-----------
[CodeGen] Simplify code with *Map::operator[] (NFC) (#112075)
Commit: dbd197118db597970a5a9c5688c5e0bb01948ebb
https://github.com/llvm/llvm-project/commit/dbd197118db597970a5a9c5688c5e0bb01948ebb
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-11 (Fri, 11 Oct 2024)
Changed paths:
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/PPC64.cpp
M lld/ELF/Driver.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/LTO.cpp
M lld/ELF/MarkLive.cpp
M lld/ELF/SymbolTable.cpp
M lld/ELF/SymbolTable.h
M lld/ELF/Symbols.cpp
M lld/ELF/Symbols.h
M lld/ELF/SyntheticSections.cpp
M lld/ELF/Writer.cpp
Log Message:
-----------
[ELF] Pass Ctx & to Symbol
Commit: ba87515fea90b5d55836a8e3be63a7e683ce299d
https://github.com/llvm/llvm-project/commit/ba87515fea90b5d55836a8e3be63a7e683ce299d
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M libcxx/include/__atomic/aliases.h
M libcxx/include/__atomic/atomic_lock_free.h
M libcxx/include/__bit/byteswap.h
M libcxx/include/__bit/countl.h
M libcxx/include/__charconv/tables.h
M libcxx/include/__charconv/to_chars_base_10.h
M libcxx/include/__charconv/to_chars_integral.h
M libcxx/include/__charconv/traits.h
M libcxx/include/__chrono/exception.h
M libcxx/include/__chrono/file_clock.h
M libcxx/include/__condition_variable/condition_variable.h
M libcxx/include/__config
M libcxx/include/__configuration/availability.h
M libcxx/include/__configuration/language.h
M libcxx/include/__debug_utils/sanitizers.h
M libcxx/include/__exception/exception_ptr.h
M libcxx/include/__exception/nested_exception.h
M libcxx/include/__expected/expected.h
M libcxx/include/__filesystem/filesystem_error.h
M libcxx/include/__filesystem/path.h
M libcxx/include/__filesystem/u8path.h
M libcxx/include/__format/format_arg.h
M libcxx/include/__format/format_arg_store.h
M libcxx/include/__format/format_context.h
M libcxx/include/__format/format_error.h
M libcxx/include/__format/format_functions.h
M libcxx/include/__format/formatter_integer.h
M libcxx/include/__functional/function.h
M libcxx/include/__functional/hash.h
M libcxx/include/__fwd/string.h
M libcxx/include/__fwd/string_view.h
M libcxx/include/__hash_table
M libcxx/include/__iterator/counted_iterator.h
M libcxx/include/__locale
M libcxx/include/__memory/addressof.h
M libcxx/include/__memory/aligned_alloc.h
M libcxx/include/__memory/shared_ptr.h
M libcxx/include/__memory/uninitialized_algorithms.h
M libcxx/include/__memory/unique_temporary_buffer.h
M libcxx/include/__mutex/mutex.h
M libcxx/include/__ostream/basic_ostream.h
M libcxx/include/__ostream/print.h
M libcxx/include/__pstl/backends/libdispatch.h
M libcxx/include/__random/is_valid.h
M libcxx/include/__random/linear_congruential_engine.h
M libcxx/include/__random/log2.h
M libcxx/include/__split_buffer
M libcxx/include/__string/char_traits.h
M libcxx/include/__string/constexpr_c_functions.h
M libcxx/include/__system_error/system_error.h
M libcxx/include/__type_traits/is_integral.h
M libcxx/include/__type_traits/is_pointer.h
M libcxx/include/__type_traits/is_scalar.h
M libcxx/include/__type_traits/is_signed_integer.h
M libcxx/include/__type_traits/is_unsigned_integer.h
M libcxx/include/__type_traits/make_32_64_or_128_bit.h
M libcxx/include/__type_traits/make_signed.h
M libcxx/include/__type_traits/make_unsigned.h
M libcxx/include/__type_traits/promote.h
M libcxx/include/__utility/convert_to_integral.h
M libcxx/include/__utility/exception_guard.h
M libcxx/include/any
M libcxx/include/atomic
M libcxx/include/cuchar
M libcxx/include/deque
M libcxx/include/experimental/__simd/utility.h
M libcxx/include/forward_list
M libcxx/include/fstream
M libcxx/include/future
M libcxx/include/iomanip
M libcxx/include/ios
M libcxx/include/iosfwd
M libcxx/include/istream
M libcxx/include/list
M libcxx/include/locale
M libcxx/include/new
M libcxx/include/optional
M libcxx/include/regex
M libcxx/include/sstream
M libcxx/include/stdatomic.h
M libcxx/include/stdexcept
M libcxx/include/string
M libcxx/include/string_view
M libcxx/include/syncstream
M libcxx/include/typeinfo
M libcxx/include/valarray
M libcxx/include/variant
M libcxx/include/vector
M libcxx/include/version
M libcxx/modules/std.compat/cuchar.inc
M libcxx/modules/std.cppm.in
M libcxx/modules/std/atomic.inc
M libcxx/modules/std/cuchar.inc
M libcxx/modules/std/iosfwd.inc
M libcxx/modules/std/memory.inc
M libcxx/modules/std/string.inc
M libcxx/modules/std/string_view.inc
M libcxx/src/condition_variable_destructor.cpp
M libcxx/src/filesystem/error.h
M libcxx/src/filesystem/format_string.h
M libcxx/src/filesystem/int128_builtins.cpp
M libcxx/src/future.cpp
M libcxx/src/ios.cpp
M libcxx/src/locale.cpp
M libcxx/src/memory_resource.cpp
M libcxx/src/mutex_destructor.cpp
M libcxx/src/new.cpp
M libcxx/src/new_helpers.cpp
M libcxx/src/ostream.cpp
M libcxx/src/ryu/d2s.cpp
M libcxx/src/stdexcept.cpp
M libcxx/src/support/runtime/exception_fallback.ipp
M libcxx/src/support/runtime/exception_msvc.ipp
M libcxx/src/system_error.cpp
M libcxx/test/libcxx/concepts/concepts.arithmetic/__libcpp_integer.compile.pass.cpp
M libcxx/test/libcxx/concepts/concepts.arithmetic/__libcpp_signed_integer.compile.pass.cpp
M libcxx/test/libcxx/concepts/concepts.arithmetic/__libcpp_unsigned_integer.compile.pass.cpp
M libcxx/test/libcxx/diagnostics/new.nodiscard.verify.cpp
M libcxx/test/libcxx/memory/aligned_allocation_macro.compile.pass.cpp
M libcxx/test/libcxx/type_traits/is_trivially_relocatable.compile.pass.cpp
M libcxx/test/libcxx/utilities/expected/expected.expected/value.observers.verify.cpp
M libcxx/test/std/atomics/stdatomic.h.syn/types.compile.pass.cpp
M libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/alg.pass.cpp
M libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/default.pass.cpp
M libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/values.pass.cpp
M libcxx/test/std/strings/c.strings/no_c8rtomb_mbrtoc8.verify.cpp
M libcxx/test/support/test.support/make_string_header.pass.cpp
M libcxx/test/support/test_macros.h
M libcxx/test/tools/clang_tidy_checks/CMakeLists.txt
A libcxx/test/tools/clang_tidy_checks/internal_ftm_use.cpp
A libcxx/test/tools/clang_tidy_checks/internal_ftm_use.hpp
M libcxx/test/tools/clang_tidy_checks/libcpp_module.cpp
M libcxx/utils/generate_feature_test_macro_components.py
M libcxx/utils/libcxx/header_information.py
M libcxxabi/src/fallback_malloc.cpp
M libcxxabi/src/stdlib_new_delete.cpp
Log Message:
-----------
[libc++][RFC] Always define internal feature test macros (#89178)
Currently, the library-internal feature test macros are only defined if
the feature is not available, and always have the prefix
`_LIBCPP_HAS_NO_`. This patch changes that, so that they are always
defined and have the prefix `_LIBCPP_HAS_` instead. This changes the
canonical use of these macros to `#if _LIBCPP_HAS_FEATURE`, which means
that using an undefined macro (e.g. due to a missing include) is
diagnosed now. While this is rather unlikely currently, a similar change
in `<__configuration/availability.h>` caught a few bugs. This also
improves readability, since it removes the double-negation of `#ifndef
_LIBCPP_HAS_NO_FEATURE`.
The current patch only touches the macros defined in `<__config>`. If
people are happy with this approach, I'll make a follow-up PR to also
change the macros defined in `<__config_site>`.
Commit: 9f24c145494ee238e65e25205a4dcb4451f009ae
https://github.com/llvm/llvm-project/commit/9f24c145494ee238e65e25205a4dcb4451f009ae
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M libcxx/.clang-format
Log Message:
-----------
[libc++][NFC] Remove non-existant macros from the clang-format file
These macros existed at some point in libc++, but have been removed now,
so we can also remove them from the clang-format file.
Commit: 3292ce08678ded1509f078d7de4753a461fc3ff8
https://github.com/llvm/llvm-project/commit/3292ce08678ded1509f078d7de4753a461fc3ff8
Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaOverload.cpp
M clang/test/SemaCXX/cxx2b-deducing-this.cpp
Log Message:
-----------
[Clang] fix overload resolution for object parameters with top-level cv-qualifiers in member functions (#110435)
Fixes #100394
Commit: 76007138f4ffd4e0f510d12b5e8cad529c21f24d
https://github.com/llvm/llvm-project/commit/76007138f4ffd4e0f510d12b5e8cad529c21f24d
Author: Tim Renouf <tim.renouf at amd.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/include/llvm/Bitcode/LLVMBitCodes.h
M llvm/include/llvm/IR/Attributes.td
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
A llvm/test/Analysis/UniformityAnalysis/AMDGPU/nodivergencesource.ll
M llvm/test/Bitcode/attributes.ll
Log Message:
-----------
[LLVM] New NoDivergenceSource function attribute (#111832)
A call to a function that has this attribute is not a source of
divergence, as used by UniformityAnalysis. That allows a front-end to
use known-name calls as an instruction extension mechanism (e.g.
https://github.com/GPUOpen-Drivers/llvm-dialects ) without such a call
being a source of divergence.
Commit: cb2f1619575400a402ffe11040bb927b0fa35910
https://github.com/llvm/llvm-project/commit/cb2f1619575400a402ffe11040bb927b0fa35910
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M llvm/test/CodeGen/AArch64/vecreduce-propagate-sd-flags.ll
Log Message:
-----------
AArch64: Remove incorrect REQUIRES arm-registered-target from test (#111983)
Commit: b9cae45b63bc9c44521cc28b4a381afec6181f54
https://github.com/llvm/llvm-project/commit/b9cae45b63bc9c44521cc28b4a381afec6181f54
Author: Javed Absar <106147771+javedabsar1 at users.noreply.github.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
Log Message:
-----------
[mlir][linalg][NFC] Fix documentation. (#112009)
Commit: 6fd229a655f521a9f58d40c671e5cab4ea3ea87b
https://github.com/llvm/llvm-project/commit/6fd229a655f521a9f58d40c671e5cab4ea3ea87b
Author: Miguel Saldivar <miguel.saldivar at hpe.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
A llvm/test/CodeGen/X86/pr108731.ll
Log Message:
-----------
[X86] Invert (and X, ~(and ~Y, Z)) back into (and X, (or Y, ~Z)) (#109215)
When `andn` is available, we should avoid switching `s &= ~(z & ~y);` into `s &= ~z | y;`
This patch turns this assembly from:
```
foo:
not rcx
and rsi, rdx
andn rax, rsi, rdi
or rcx, rdx
and rax, rcx
ret
```
into:
```
foo:
and rsi, rdx
andn rcx, rdx, rcx
andn rax, rsi, rdi
andn rax, rcx, rax
ret
```
Fixes #108731
Commit: 3acb0e9e600cbe3668b7db3956238a592ebadc0a
https://github.com/llvm/llvm-project/commit/3acb0e9e600cbe3668b7db3956238a592ebadc0a
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M clang/lib/Driver/ToolChains/HIPUtility.cpp
M clang/test/Driver/hip-link-save-temps.hip
M clang/test/Driver/hip-partial-link.hip
M clang/test/Driver/hip-save-temps.hip
M clang/test/Driver/hip-toolchain-rdc-separate.hip
M clang/test/Driver/hip-toolchain-rdc-static-lib.hip
M clang/test/Driver/hip-toolchain-rdc.hip
M clang/test/Driver/hip-unbundle-preproc.hipi
M clang/test/Driver/hipspv-toolchain-rdc.hip
Log Message:
-----------
[HIP] Replace use of `llvm-mc` with `clang` (#112041)
Summary:
We currently use `llvm-mc` which is intended for internal testing and
not expected to be present in every installation. This patch changes
that to just use clang instead to get the `.o` from the HIP registration
code.
My preferred solution would be to use the new driver, but I still
haven't gotten the test suite to pass on this one weird OpenMP case.
Fixes: https://github.com/llvm/llvm-project/issues/112031
Commit: 6a6af0246bd2d68291582e9aefc0543e5c6102fe
https://github.com/llvm/llvm-project/commit/6a6af0246bd2d68291582e9aefc0543e5c6102fe
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M clang/lib/Driver/ToolChains/HIPUtility.cpp
Log Message:
-----------
[Clang] Remove unused TC variable
Commit: 9c2fc17ee79eea7e18964d3d1b910dd8c1d7e733
https://github.com/llvm/llvm-project/commit/9c2fc17ee79eea7e18964d3d1b910dd8c1d7e733
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M clang/lib/Sema/SemaTemplateDeduction.cpp
Log Message:
-----------
[Sema] Avoid repeated hash lookups (NFC) (#112071)
Commit: abb594b965a781d4babaf5bc6e112624a5357b66
https://github.com/llvm/llvm-project/commit/abb594b965a781d4babaf5bc6e112624a5357b66
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
Log Message:
-----------
[SystemZ] Avoid repeated hash lookups (NFC) (#112072)
Commit: b192f208d6a2d01b632ebddfaf6d09a8c7a8ecbc
https://github.com/llvm/llvm-project/commit/b192f208d6a2d01b632ebddfaf6d09a8c7a8ecbc
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M bolt/lib/Core/DIEBuilder.cpp
Log Message:
-----------
[BOLT] Avoid repeated hash lookups (NFC) (#112073)
Commit: 571354e25130b213146c26d05524fcd215fbd061
https://github.com/llvm/llvm-project/commit/571354e25130b213146c26d05524fcd215fbd061
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M clang-tools-extra/clang-tidy/misc/ConfusableIdentifierCheck.cpp
Log Message:
-----------
[clang-tidy] Avoid repeated hash lookups (NFC) (#112074)
Commit: c9a1cffd3d2129ccdda766ef4379dbca1cf6724b
https://github.com/llvm/llvm-project/commit/c9a1cffd3d2129ccdda766ef4379dbca1cf6724b
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M llvm/lib/Analysis/AssumptionCache.cpp
Log Message:
-----------
[Analysis] Simplify code with DenseMap::operator[] (NFC) (#112082)
Commit: 51a2f50ee76a52d4a542822bfda9c4c17904b72f
https://github.com/llvm/llvm-project/commit/51a2f50ee76a52d4a542822bfda9c4c17904b72f
Author: long.chen <lipracer at gmail.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M mlir/lib/IR/AffineExpr.cpp
M mlir/test/Dialect/Affine/simplify-structures.mlir
Log Message:
-----------
[mlir][affine] fix the issue of ceildiv-mul-ceildiv form expression not satisfying commutative (#111254)
my prove:
we can simple `(n * s) ceildiv a ceildiv s` to `n ceildiv a`
because `(n * s) ceildiv a ceildiv b` <=> `(n * s) ceildiv s ceildiv a`
<=> `n ceildiv a`
let's prove the `s floordiv a floor b` <=> `s floordiv b floor a`
let `s = ka +m (m < a)` so `s floordiv a` <=> `s / a - m / a`
similarly, it can be proven that:
`s floordiv a floordiv b` <=> `s / (a * b) - m / (a * b) - n / (b) constrain (n < b)`
<=> `s / (a * b) - (m + a*n) / (a*b)`
because `a* b - (m + a*n)` <=> `a*b - a*n - m` > `a - m` > `0`
so `s floordiv a floordiv b` <=> `[s / (a*b)]` <=> `s floordiv b floordiv a`
but if `s floordiv b` mutiply a factor above didn't always hold true.
Fixes https://github.com/llvm/llvm-project/issues/107508
Commit: a3bad9adcbf7c7cc92d913a0c6369961aac6d195
https://github.com/llvm/llvm-project/commit/a3bad9adcbf7c7cc92d913a0c6369961aac6d195
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M lld/ELF/LinkerScript.cpp
M lld/ELF/LinkerScript.h
M lld/ELF/Relocations.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
M lld/ELF/Writer.cpp
Log Message:
-----------
[ELF] Pass Ctx &
Commit: 8f9cce0bef317076fbdce677d6d6744ebd5dc02a
https://github.com/llvm/llvm-project/commit/8f9cce0bef317076fbdce677d6d6744ebd5dc02a
Author: Hui <hui.xie1990 at gmail.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M libcxx/include/CMakeLists.txt
A libcxx/include/__type_traits/container_traits.h
M libcxx/include/deque
M libcxx/include/forward_list
M libcxx/include/list
M libcxx/include/map
M libcxx/include/module.modulemap
M libcxx/include/set
M libcxx/include/unordered_map
M libcxx/include/unordered_set
M libcxx/include/vector
A libcxx/test/libcxx/containers/container_traits.compile.pass.cpp
Log Message:
-----------
[libc++] Add container_traits (prework for `std::flat_map`) (#109578)
This PR is extracted from
https://github.com/llvm/llvm-project/pull/98643, as per code review
request
https://github.com/llvm/llvm-project/pull/98643#discussion_r1768967793
Commit: ce65d4e974145199554d759c8cb0423df615767a
https://github.com/llvm/llvm-project/commit/ce65d4e974145199554d759c8cb0423df615767a
Author: OverMighty <its.overmighty at gmail.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/math/index.rst
M libc/newhdrgen/yaml/math.yaml
M libc/spec/stdc.td
M libc/src/math/CMakeLists.txt
A libc/src/math/exp2m1f16.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/exp2f16.cpp
A libc/src/math/generic/exp2m1f16.cpp
M libc/src/math/generic/expxf16.h
M libc/test/src/math/CMakeLists.txt
A libc/test/src/math/exp2m1f16_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/exp2m1f16_test.cpp
Log Message:
-----------
[libc][math][c23] Add exp2m1f16 C23 math function (#105690)
Part of #95250.
Commit: 6976deebafa8e7de993ce159aa6b82c0e7089313
https://github.com/llvm/llvm-project/commit/6976deebafa8e7de993ce159aa6b82c0e7089313
Author: Twice <twice at apache.org>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M mlir/docs/PDLL.md
Log Message:
-----------
[mlir][docs] Fix broken links in PDLL.md (#107965)
`https://mlir.llvm.org/docs/OpDefinitions/` has already been moved (as a
broken link now).
Here it's fixed to the form of relative reference
`DefiningDialects/Operations.md` along with other links.
Commit: 02f42a716c79fceee289e347e0d6e5fa581dc35e
https://github.com/llvm/llvm-project/commit/02f42a716c79fceee289e347e0d6e5fa581dc35e
Author: Timothy Hoffman <4001421+tim-hoffman at users.noreply.github.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M mlir/docs/DefiningDialects/Operations.md
M mlir/docs/DefiningDialects/_index.md
M mlir/include/mlir/Dialect/Func/IR/FuncOps.td
Log Message:
-----------
[mlir] Fix typos in documentation (#110869)
Commit: 4468d58080d0502a050b71a33413d5206ad5e8fd
https://github.com/llvm/llvm-project/commit/4468d58080d0502a050b71a33413d5206ad5e8fd
Author: Chris Apple <cja-private at pm.me>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M compiler-rt/lib/rtsan/CMakeLists.txt
M compiler-rt/lib/rtsan/rtsan.cpp
M compiler-rt/lib/rtsan/rtsan_assertions.h
A compiler-rt/lib/rtsan/rtsan_checks.inc
M compiler-rt/lib/rtsan/rtsan_flags.inc
A compiler-rt/lib/rtsan/rtsan_suppressions.cpp
A compiler-rt/lib/rtsan/rtsan_suppressions.h
A compiler-rt/test/rtsan/stack_suppressions.cpp
A compiler-rt/test/rtsan/stack_suppressions.cpp.supp
Log Message:
-----------
[rtsan] Support basic call stack suppressions (#111608)
This adds basic support for suppressions, which is a first class feature
of the other sanitizers.
Commit: 935810c4de56235ddfaffbe02b2ae3cd0b72d2e0
https://github.com/llvm/llvm-project/commit/935810c4de56235ddfaffbe02b2ae3cd0b72d2e0
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Arith/Transforms/EmulateWideInt.cpp
A mlir/test/Dialect/Arith/emulate-wide-int-unsupported.mlir
Log Message:
-----------
[mlir][arith] Fix type conversion in emulate-wide-int (#112104)
Use `nullptr` to indicate that type conversion failed and no fallback
conversion should be attempted.
Fixes: https://github.com/llvm/llvm-project/issues/108163
Commit: ec42778071455b1f60e18d0f10f6a279309a637c
https://github.com/llvm/llvm-project/commit/ec42778071455b1f60e18d0f10f6a279309a637c
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[LV] Remove unused type declaration from ILV (NFC).
Commit: e866e6b8bbae8dc511706e97906825f9e153d68c
https://github.com/llvm/llvm-project/commit/e866e6b8bbae8dc511706e97906825f9e153d68c
Author: David CARLIER <devnexen at gmail.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_win.cpp
A compiler-rt/test/sanitizer_common/TestCases/Windows/dump_registers_i386.cpp
A compiler-rt/test/sanitizer_common/TestCases/Windows/dump_registers_x86_64.cpp
Log Message:
-----------
[compiler-rt] Implements DumpAllRegisters for windows intel archs. (#108688)
Commit: c2750807ba2a419425ee90dadda09ad5121517fe
https://github.com/llvm/llvm-project/commit/c2750807ba2a419425ee90dadda09ad5121517fe
Author: Adrian Prantl <aprantl at apple.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M lldb/include/lldb/Interpreter/CommandReturnObject.h
M lldb/source/API/SBCommandReturnObject.cpp
M lldb/source/Commands/CommandObjectCommands.cpp
M lldb/source/Core/Debugger.cpp
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Interpreter/CommandReturnObject.cpp
M lldb/tools/lldb-test/lldb-test.cpp
Log Message:
-----------
[lldb] Rename CommandReturnObject::Get.*Data -> Get.*String (#112062)
In a later commit, I want to add a method to access diagnostics as
actual structured data, which will make these function names rather
confusing.
Commit: 4c25a538d3677866f6e3757ad3beecc50c56e589
https://github.com/llvm/llvm-project/commit/4c25a538d3677866f6e3757ad3beecc50c56e589
Author: Jacques Pienaar <jpienaar at google.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
A mlir/docs/Tools/mlir-rewrite.md
M mlir/test/CMakeLists.txt
A mlir/test/mlir-rewrite/simple.mlir
M mlir/tools/CMakeLists.txt
A mlir/tools/mlir-rewrite/CMakeLists.txt
A mlir/tools/mlir-rewrite/mlir-rewrite.cpp
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir] Start rewrite tool (#77668)
Initial commit of a tool to help in textual rewrites of .mlir files.
This tool builds of of AsmParserState and is rather simple. Took some
inspiration from when I used clang's AST rewrites where I'd often treat
it as a "localizing" regex applicator in fallback cases, and started
with that as functionality. There though, one does have access to the
lower level info than here, but still a step up over sed over entire
file.
This aims to be helpful (e.g., rewrite syntax including best effort
inside comments) rather than bulletproof tool. It may even be better
suited under utils than tools. And most of the rewrites would be rather
short lived and might never make it upstream (while the helpers of those
rewrites may for future rewrites).
The layering at the moment is not ideal as it is reusing the
RewriteBuffer class from clang's rewrite engine. So only optionally
enabling where clang is also enable. There doesn't seem to be anything
clang specific there (the dep does pull in more dependencies than ideal,
but leaving both refactorings).
Additionally started it as a single file to prototype more easily,
planning to refactor later to include and libs for out of file usage.
Commit: 464a7ee79efda399c77f0009cc9dc0737d6e3c1e
https://github.com/llvm/llvm-project/commit/464a7ee79efda399c77f0009cc9dc0737d6e3c1e
Author: duk <74797529+duk-37 at users.noreply.github.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
M llvm/lib/Target/X86/X86TargetMachine.cpp
A llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-stack-protector-trap-unreachable.ll
A llvm/test/CodeGen/AArch64/stack-protector-trap-unreachable.ll
A llvm/test/CodeGen/X86/stack-protector-trap-unreachable.ll
M llvm/test/CodeGen/X86/unreachable-trap.ll
Log Message:
-----------
[CodeGen] Generalize trap emission after SP check fail (#109744)
Generalize and improve some target-specific code that emits traps after
stack protector failure in SelectionDAG & GlobalIsel.
Commit: 7928e14f5ec536000e1a77be6d64dfec9225ae36
https://github.com/llvm/llvm-project/commit/7928e14f5ec536000e1a77be6d64dfec9225ae36
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M bolt/lib/Core/BinaryFunction.cpp
Log Message:
-----------
[BOLT] Avoid repeated map lookups (NFC) (#112118)
Commit: 48deb3568eb2452ff385b04b8f71c34121f47387
https://github.com/llvm/llvm-project/commit/48deb3568eb2452ff385b04b8f71c34121f47387
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-12 (Sat, 12 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIFormMemoryClauses.cpp
Log Message:
-----------
[AMDGPU] Avoid repeated hash lookups (NFC) (#112115)
Commit: b2cac3babd3ee0c41501e94ed3d25213ed49c3f2
https://github.com/llvm/llvm-project/commit/b2cac3babd3ee0c41501e94ed3d25213ed49c3f2
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2024-10-13 (Sun, 13 Oct 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel] Add missing dependency for 58d97034c9c149d175c66440d31f46e9dfd4b760
Commit: 9220f645208715a9d65e12f14ad77ecb086399d6
https://github.com/llvm/llvm-project/commit/9220f645208715a9d65e12f14ad77ecb086399d6
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-13 (Sun, 13 Oct 2024)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXUtilities.cpp
Log Message:
-----------
[NVPTX] Avoid repeated hash lookups (NFC) (#112117)
Commit: 1641745530efe198dcaafa2f43dc1979e6b50993
https://github.com/llvm/llvm-project/commit/1641745530efe198dcaafa2f43dc1979e6b50993
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-13 (Sun, 13 Oct 2024)
Changed paths:
M lld/ELF/Arch/ARM.cpp
Log Message:
-----------
[lld] Avoid repeated hash lookups (NFC) (#112119)
Commit: d1620c1d8cf50e236272ef529301e0c80388ed39
https://github.com/llvm/llvm-project/commit/d1620c1d8cf50e236272ef529301e0c80388ed39
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-13 (Sun, 13 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/AnnotationRemarks.cpp
M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
Log Message:
-----------
[Scalar] Simplify code with *Map::operator[] (NFC) (#112120)
Commit: a153a3215562a7676d84411191541fe275444f7b
https://github.com/llvm/llvm-project/commit/a153a3215562a7676d84411191541fe275444f7b
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-13 (Sun, 13 Oct 2024)
Changed paths:
M llvm/lib/Target/BPF/BPFAbstractMemberAccess.cpp
Log Message:
-----------
[BPF] Avoid repeated map lookups (NFC) (#112123)
Commit: 8e010ac5a173c9dee44b44324169a3e100a1a6fc
https://github.com/llvm/llvm-project/commit/8e010ac5a173c9dee44b44324169a3e100a1a6fc
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-13 (Sun, 13 Oct 2024)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
Log Message:
-----------
[WebAssembly] Avoid repeated hash lookups (NFC) (#112124)
Commit: c1b206f347f633c84ac32f691241460196cd6226
https://github.com/llvm/llvm-project/commit/c1b206f347f633c84ac32f691241460196cd6226
Author: Alex Bradbury <asb at igalia.com>
Date: 2024-10-13 (Sun, 13 Oct 2024)
Changed paths:
M clang/bindings/python/tests/CMakeLists.txt
Log Message:
-----------
[clang][python] Don't add check-clang-python to check-all if cross-compiling (#111657)
Consistent with other cases for these tests, we opt not to add the
target to check-all if they're known to fail. The tests fail when cross
compiling for a different architecture because the host
Python3_EXECUTABLE is used to run them, and FFI calls will of course
fail against the libraries compiled for the target.
Do note that CMAKE_CROSSCOMPILING is set to true whenever CMAKE_SYSTEM_NAME was set manually <https://cmake.org/cmake/help/latest/variable/CMAKE_CROSSCOMPILING.html> so in some circumstances it may be set even when not cross-compiling. However, it's the best way of checking that CMake has right now, and we use it elsewhere in LLVM's build system.
Commit: 38dfcd9ac9cceaebc86fc3d08bdc29ecef82c874
https://github.com/llvm/llvm-project/commit/38dfcd9ac9cceaebc86fc3d08bdc29ecef82c874
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-13 (Sun, 13 Oct 2024)
Changed paths:
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/Hexagon.cpp
M lld/ELF/Arch/Mips.cpp
M lld/ELF/Arch/PPC.cpp
M lld/ELF/Arch/PPC64.cpp
M lld/ELF/Arch/RISCV.cpp
M lld/ELF/OutputSections.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/Target.h
M lld/ELF/Thunks.cpp
Log Message:
-----------
[ELF] Pass Ctx & to read32/write32
Commit: 002ca63b3f1cb660b831a78d29abdfe33eaffbb4
https://github.com/llvm/llvm-project/commit/002ca63b3f1cb660b831a78d29abdfe33eaffbb4
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-13 (Sun, 13 Oct 2024)
Changed paths:
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Arch/AMDGPU.cpp
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/Mips.cpp
M lld/ELF/Arch/PPC.cpp
M lld/ELF/Arch/PPC64.cpp
M lld/ELF/OutputSections.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/Target.h
M lld/ELF/Thunks.cpp
Log Message:
-----------
[ELF] Pass Ctx & to (read|write)(16|64)
Commit: 9fe567f0bf08f4992fc039283db8ba2608ba0cb5
https://github.com/llvm/llvm-project/commit/9fe567f0bf08f4992fc039283db8ba2608ba0cb5
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-13 (Sun, 13 Oct 2024)
Changed paths:
M lld/ELF/Arch/Mips.cpp
Log Message:
-----------
[ELF] Pass Ctx & to Mips
Commit: e5f7e73d90dd8ea7b1fa0e4e77ae11eabf398da9
https://github.com/llvm/llvm-project/commit/e5f7e73d90dd8ea7b1fa0e4e77ae11eabf398da9
Author: Sunho Kim <ksunhokim123 at gmail.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/unittests/ExecutionEngine/Orc/JITLinkRedirectionManagerTest.cpp
M llvm/unittests/ExecutionEngine/Orc/ReOptimizeLayerTest.cpp
Log Message:
-----------
[ORC] Skip reoptimization test on COFF-ARM64.
Try to skip tests to prevent build bot failure:
https://lab.llvm.org/buildbot/#/builders/161/builds/2692
Commit: 0dbc85a59f556736133019f655e7110fc7ae8847
https://github.com/llvm/llvm-project/commit/0dbc85a59f556736133019f655e7110fc7ae8847
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-13 (Sun, 13 Oct 2024)
Changed paths:
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/LoongArch.cpp
M lld/ELF/Arch/Mips.cpp
M lld/ELF/Arch/PPC64.cpp
M lld/ELF/OutputSections.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/Thunks.cpp
M lld/ELF/Thunks.h
Log Message:
-----------
[ELF] Pass Ctx & to Arch-specific code
Commit: 2c5dd03f55030338139a16c7ce5b2f406531905c
https://github.com/llvm/llvm-project/commit/2c5dd03f55030338139a16c7ce5b2f406531905c
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-13 (Sun, 13 Oct 2024)
Changed paths:
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Arch/AMDGPU.cpp
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/AVR.cpp
M lld/ELF/Arch/Hexagon.cpp
M lld/ELF/Arch/LoongArch.cpp
M lld/ELF/Arch/MSP430.cpp
M lld/ELF/Arch/Mips.cpp
M lld/ELF/Arch/PPC.cpp
M lld/ELF/Arch/PPC64.cpp
M lld/ELF/Arch/RISCV.cpp
M lld/ELF/Arch/SPARCV9.cpp
M lld/ELF/Arch/SystemZ.cpp
M lld/ELF/Arch/X86.cpp
M lld/ELF/Arch/X86_64.cpp
M lld/ELF/Target.h
Log Message:
-----------
[ELF] Pass Ctx & to check*
Commit: 77f8297c6fdaa62121ddb108043dcaad5c45c7ad
https://github.com/llvm/llvm-project/commit/77f8297c6fdaa62121ddb108043dcaad5c45c7ad
Author: Matthias Springer <me at m-sp.org>
Date: 2024-10-13 (Sun, 13 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorAttrDefs.td
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
M mlir/test/Dialect/SparseTensor/invalid.mlir
Log Message:
-----------
[mlir][sparse] Improve sparse tensor type constraints (#112133)
Sparse tensors are always ranked tensors. Encodings cannot be attached
to unranked tensors. Change the type constraint to `RankedTensorOf`, so
that we generate `TypedValue<RankedTensorType>` instead of
`TypedValue<TensorType>`. This removes the need for type casting in some
cases.
Also improve the verifiers (missing `return` statements) and switch a
few other `AnyTensor` to `AnyRankedTensor`.
This commit is in preparation of a dialect conversion commit that
required fixes in the sparse dialect.
Commit: cd12ffb622df5392020d0793e3fff7c3bf8385a2
https://github.com/llvm/llvm-project/commit/cd12ffb622df5392020d0793e3fff7c3bf8385a2
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2024-10-13 (Sun, 13 Oct 2024)
Changed paths:
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/test/Transforms/debug-module-2.fir
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
M mlir/test/Dialect/LLVMIR/debuginfo.mlir
M mlir/test/Dialect/LLVMIR/global.mlir
M mlir/test/Target/LLVMIR/Import/debug-info.ll
M mlir/test/Target/LLVMIR/Import/global-variables.ll
M mlir/test/Target/LLVMIR/llvmir-debug.mlir
Log Message:
-----------
[mlir][debug] Allow multiple DIGlobalVariableExpression on globals. (#111981)
Currently, we allow only one DIGlobalVariableExpressionAttr per global.
It is especially evident in import where we pick the first from the list
and ignore the rest. In contrast, LLVM allows multiple
DIGlobalVariableExpression to be attached to the global. They are needed
for correct working of things like DICommonBlock. This PR removes this
restriction in mlir. Changes are mostly mechanical. One thing on which I
went a bit back and forth was the representation inside GlobalOp. I
would be happy to change if there are better ways to do this.
---------
Co-authored-by: Tobias Gysi <tobias.gysi at nextsilicon.com>
Commit: dba54fb074af1573984807e23640a202e0984a56
https://github.com/llvm/llvm-project/commit/dba54fb074af1573984807e23640a202e0984a56
Author: Jim Lin <jim at andestech.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M clang/lib/Basic/Targets/RISCV.cpp
M clang/test/CodeGen/RISCV/riscv-inline-asm-rvv.c
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
A llvm/test/CodeGen/RISCV/inline-asm-v-constraint.ll
Log Message:
-----------
[RISCV] Add support for inline asm constraint vd (#111653)
It constrains vector registers excluding v0. Refer to
https://gcc.gnu.org/onlinedocs/gcc/Machine-Constraints.html RISC-V part.
This patch also adds a testcase for constraints vr, vd and vm.
Commit: 1a787b3c8e71eeb333825ec4b76c7440290142e4
https://github.com/llvm/llvm-project/commit/1a787b3c8e71eeb333825ec4b76c7440290142e4
Author: wanglei <wanglei at loongson.cn>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchELFStreamer.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchELFStreamer.h
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCTargetDesc.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchTargetStreamer.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchTargetStreamer.h
A llvm/test/MC/LoongArch/Directives/option-invalid.s
A llvm/test/MC/LoongArch/Directives/option-pushpop.s
A llvm/test/MC/LoongArch/Directives/option-relax.s
Log Message:
-----------
[LoongArch] Support .option directive
The .option can accept 4 parameters like the LoongArch's gnu as:
push, pop, relax and norelax.
Reviewed By: heiher, SixWeining
Pull Request: https://github.com/llvm/llvm-project/pull/110404
Commit: 3da7d55b35c231ea1648a2518828facb7039c4d5
https://github.com/llvm/llvm-project/commit/3da7d55b35c231ea1648a2518828facb7039c4d5
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
Log Message:
-----------
[NFC][AMDGPU] Remove unnecessary member `ForceEmitZeroWaitcnts` (#112114)
We can use `ForceEmitZeroFlag` directly.
Commit: ed77df56f272b938d64264893b6d3759ba968afb
https://github.com/llvm/llvm-project/commit/ed77df56f272b938d64264893b6d3759ba968afb
Author: Shilei Tian <shilei.tian at amd.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
Log Message:
-----------
[NFC] clang-format llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
Commit: c01ddbe9166614db8121f5ddd5d7291be454c046
https://github.com/llvm/llvm-project/commit/c01ddbe9166614db8121f5ddd5d7291be454c046
Author: YunQiang Su <yunqiang at isrc.iscas.ac.cn>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
A llvm/test/CodeGen/RISCV/fp-fcanonicalize.ll
Log Message:
-----------
RISC-V: Select FCANONICALIZE (#112083)
We can use `FMIN.x OP,OP` to canonlize a float.
Commit: 4a0dc3ef36ceff20787ff277a1fb6a1b513c4934
https://github.com/llvm/llvm-project/commit/4a0dc3ef36ceff20787ff277a1fb6a1b513c4934
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
A llvm/test/tools/llvm-split/AMDGPU/kernels-dependency-indirect-callee-md.ll
Log Message:
-----------
[AMDGPU][SplitModule] Handle !callees metadata (#108802)
See #106528 to review the first commit.
Handle the `!callees` metadata to further reduce the amount of indirect
call cases that end up conservatively assuming that any indirectly
callable function is a potential target.
Commit: 4722c6b87ca87fb87c9f522cb9decf70cc8b8c2b
https://github.com/llvm/llvm-project/commit/4722c6b87ca87fb87c9f522cb9decf70cc8b8c2b
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M openmp/runtime/src/kmp_affinity.cpp
M openmp/runtime/test/affinity/kmp-hw-subset.c
Log Message:
-----------
[openmp] Use core_siblings_list if physical_package_id not available (#111831)
On powerpc, physical_package_id may not be available. Currently, this
causes openmp to fall back to flat topology and various affinity tests
fail.
Fix this by parsing core_siblings_list to deterimine which cpus belong
to the same socket. This matches what the testing code does. The code to
parse the CPU list format thankfully already exists.
Fixes https://github.com/llvm/llvm-project/issues/111809.
Commit: 102f76b2d7c8609755f4453c5f91f7fe12e2c0c6
https://github.com/llvm/llvm-project/commit/102f76b2d7c8609755f4453c5f91f7fe12e2c0c6
Author: Dominik Adamski <dominik.adamski at amd.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
A flang/test/Analysis/AliasAnalysis/alias-analysis-9.fir
Log Message:
-----------
[Flang][AliasAnalysis] Alias analysis for tmp arrays (#111972)
This patch extends the alias analysis for temporary arrays in Flang.
With this extension, Flang can now determine that the temporary array
[a, b, c] does not alias with arrayD in Fortran code:
```
integer :: a, b, c
integer :: arrayD(3)
arrayD = [ a, b, c ]
```
Commit: 367c3c968eb8f29b55fb8019b2464c7ff6307ca8
https://github.com/llvm/llvm-project/commit/367c3c968eb8f29b55fb8019b2464c7ff6307ca8
Author: jeanPerier <jperier at nvidia.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M flang/include/flang/Optimizer/CodeGen/Target.h
M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
M flang/lib/Optimizer/CodeGen/Target.cpp
M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
M flang/lib/Optimizer/Transforms/AbstractResult.cpp
A flang/test/Fir/abstract-results-bindc.fir
A flang/test/Fir/struct-return-x86-64.fir
Log Message:
-----------
[flang] correctly deal with bind(c) derived type result ABI (#111969)
Derived type results of BIND(C) function should be returned according
the the C ABI for returning the related C struct type.
This currently did not happen since the abstract-result pass was forcing
the Fortran ABI for all derived type results.
use the bind_c attribute that was added on call/func/dispatch in FIR to
prevent such rewrite in the abstract result pass, and update the
target-rewrite pass to deal with the struct return ABI.
So far, the target specific part of the target-rewrite is only
implemented for X86-64 according to the "System V Application Binary
Interface AMD64 v1", the other targets will hit a TODO, just like for
BIND(C), VALUE derived type arguments.
This intends to deal with #102113.
This is a re-land of #111678 with an extra commit to keep rewriting `type(c_ptr)`
results to `!fir.ref<none>` in the abstract result pass regardless of the ABIs.
Commit: 4b31568e026c844cc577954b050e0f5a7d96bc0c
https://github.com/llvm/llvm-project/commit/4b31568e026c844cc577954b050e0f5a7d96bc0c
Author: Longsheng Mou <moulongsheng at huawei.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/InlineScalarOperands.cpp
M mlir/test/Dialect/Linalg/inline-scalar-operands.mlir
Log Message:
-----------
[mlir][linalg] Bugfix for `InlineScalarOperands` (#111534)
This PR fixes a bug where `scalarOperand` is a simple scalar and should
be used directly, rather than accessed via `tensor.extract`. Fixes
#111243.
Commit: 5bf81e53dbea609562f91a2d771863cfeb49fa32
https://github.com/llvm/llvm-project/commit/5bf81e53dbea609562f91a2d771863cfeb49fa32
Author: YunQiang Su <yunqiang at isrc.iscas.ac.cn>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M clang/include/clang/Basic/Builtins.td
M clang/lib/AST/ExprConstant.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/test/CodeGen/builtins.c
A clang/test/CodeGen/fmaxfmin-invalid-arguments-type.c
M clang/test/CodeGen/math-libcalls.c
M clang/test/Preprocessor/feature_tests.cpp
A clang/test/Sema/constant-builtins-fmaximum-num.cpp
A clang/test/Sema/constant-builtins-fminimum-num.cpp
Log Message:
-----------
Clang: Support minimumnum and maximumnum intrinsics (#96281)
We just introduce llvm.minimumnum and llvm.maximumnum intrinsics support
to llvm. Let's support them in Clang.
See: #93033
Commit: a07639f4bb89c4e56afcfcd7935a9438fd2e69f5
https://github.com/llvm/llvm-project/commit/a07639f4bb89c4e56afcfcd7935a9438fd2e69f5
Author: David Green <david.green at arm.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/inline-memmove.mir
A llvm/test/CodeGen/AArch64/memmove-inline.ll
Log Message:
-----------
[AArch64] Increase inline memmove limit to 16 stored registers (#111848)
The memcpy inline limit has been 16 for a long time, this patch makes
the memmove inline limit the same, allowing small-constant sized
memmoves to be emitted inline. The 16 is the number of registers stored,
which equates to a limit of 256 bytes.
Commit: 57cd6d86340bb8b26df4358fc3c237581d697f14
https://github.com/llvm/llvm-project/commit/57cd6d86340bb8b26df4358fc3c237581d697f14
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/docs/HowToAddABuilder.rst
Log Message:
-----------
[llvm][docs] Document how to get admin permissions for a Buildbot worker (#108561)
I spent a long time trying different combinations of primary and
verified emails, until a colleague tried it who happened to have a
public profile email set when I did not.
Document how this works to save everyone else the legwork.
Commit: d4ea08687f2de1a5e0b70f37f522dcb798f650fe
https://github.com/llvm/llvm-project/commit/d4ea08687f2de1a5e0b70f37f522dcb798f650fe
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
R lldb/CodeOwners.rst
A lldb/Maintainers.rst
Log Message:
-----------
[lldb] Replace Code Owners with Maintainers (#111686)
To align with the new policy:
https://llvm.org/docs/DeveloperPolicy.html#maintainers
I've assumed that Jonas will be the "Lead Maintainer" as he was the
default Code Owner.
I know the past Code Owners weren't "Maintainers" but it's the same
energy so I've changed it there too.
See also: https://github.com/llvm/llvm-project/pull/107384 /
https://discourse.llvm.org/t/rfc-proposing-changes-to-the-community-code-ownership-policy/80714
Commit: 7fc3491c045bf6acb9c904a5da95bbac66ad487f
https://github.com/llvm/llvm-project/commit/7fc3491c045bf6acb9c904a5da95bbac66ad487f
Author: Yangyu Chen <cyy at cyyself.name>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M compiler-rt/lib/builtins/cpu_model/riscv.c
Log Message:
-----------
[compiler-rt][RISCV] Use u64 data type for marchid and mimpid (#112163)
Base on https://github.com/riscv-non-isa/riscv-c-api-doc/pull/91 , the
marchid and mimpid are MXLEN bits wide, and kernel returned them as u64
data type. So we should use u64 data type for marchid and mimpid in
__riscv_cpu_model struct here.
Signed-off-by: Yangyu Chen <cyy at cyyself.name>
Commit: d6827f68ad9110ae0c9992de7b2e2eec0f23be14
https://github.com/llvm/llvm-project/commit/d6827f68ad9110ae0c9992de7b2e2eec0f23be14
Author: Thomas Preud'homme <thomas.preudhomme at arm.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/cmake/modules/AddLLVM.cmake
M mlir/include/mlir/Dialect/Linalg/IR/CMakeLists.txt
Log Message:
-----------
Fix CMake dependencies on mlir-linalg-ods-yaml-gen (#111973)
Fix a number of dependencies issue to build mlir-linalg-ods-yaml-gen
host binary which make a cross-build using the Make generator fail.
Namely:
- do not use binary path for the custom target created when
LLVM_USE_HOST_TOOLS is true;
- use target name instead of name of variable holding the target name
for add_custom_target and set_target_properties in setup_host_tool();
- remove dependency on target defined in different directory in
add_linalg_ods_yaml_gen() since add_custom_target DEPENDS can only be
used on "files and outputs of custom commands created with
add_custom_command() command calls in the same directory";
- remove unneeded dependency on ${MLIR_LINALG_ODS_YAML_GEN_EXE}, the
target dependency will ensure the binary will be built.
Note that we keep using ${MLIR_LINALG_ODS_YAML_GEN_EXE} in the COMMAND
rather than use ${MLIR_LINALG_ODS_YAML_GEN_TARGET} because when
LLVM_NATIVE_TOOL_DIR is used the latter is an empty string.
Testing-wise, all three codepaths in get_host_tool_path() were tested
with both GNU Make and Ninja generators:
- cross-compiling with LLVM_NATIVE_TOOL_DIR checks the if path;
- cross-compiling without LLVM_NATIVE_TOOL_DIR checks the elseif path;
- native build without LLVM_NATIVE_TOOL_DIR checks the else path.
Commit: dbfca24b99987111586551698253dba0afbec09b
https://github.com/llvm/llvm-project/commit/dbfca24b99987111586551698253dba0afbec09b
Author: Akshat Oke <76596238+optimisan at users.noreply.github.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/include/llvm/CodeGen/MIRParser/MIParser.h
M llvm/include/llvm/CodeGen/MIRYamlMapping.h
M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
M llvm/lib/CodeGen/MIRParser/MIParser.cpp
M llvm/lib/CodeGen/MIRParser/MIRParser.cpp
M llvm/lib/CodeGen/MIRPrinter.cpp
M llvm/test/CodeGen/AMDGPU/limit-coalesce.mir
A llvm/test/CodeGen/MIR/Generic/register-flag-error.mir
M llvm/test/CodeGen/MIR/X86/expected-named-register-in-allocation-hint.mir
M llvm/test/CodeGen/MIR/X86/generic-instr-type.mir
M llvm/test/CodeGen/MIR/X86/register-operand-class.mir
M llvm/test/CodeGen/MIR/X86/roundtrip.mir
M llvm/test/CodeGen/MIR/X86/simple-register-allocation-hints.mir
M llvm/test/CodeGen/MIR/X86/virtual-registers.mir
M llvm/test/CodeGen/X86/GlobalISel/legalize-mul-v128.mir
M llvm/test/CodeGen/X86/GlobalISel/legalize-mul-v256.mir
M llvm/test/CodeGen/X86/GlobalISel/legalize-mul-v512.mir
M llvm/test/CodeGen/X86/GlobalISel/regbankselect-AVX2.mir
M llvm/test/CodeGen/X86/GlobalISel/regbankselect-AVX512.mir
M llvm/test/CodeGen/X86/GlobalISel/regbankselect-X32.mir
M llvm/test/CodeGen/X86/GlobalISel/select-GV-32.mir
M llvm/test/CodeGen/X86/GlobalISel/select-GV-64.mir
M llvm/test/CodeGen/X86/GlobalISel/select-add-v128.mir
M llvm/test/CodeGen/X86/GlobalISel/select-add-v256.mir
M llvm/test/CodeGen/X86/GlobalISel/select-copy.mir
M llvm/test/CodeGen/X86/GlobalISel/select-extract-vec256.mir
M llvm/test/CodeGen/X86/GlobalISel/select-extract-vec512.mir
M llvm/test/CodeGen/X86/GlobalISel/select-inc.mir
M llvm/test/CodeGen/X86/GlobalISel/select-memop-v256.mir
M llvm/test/CodeGen/X86/GlobalISel/x86-legalize-GV.mir
M llvm/test/CodeGen/X86/GlobalISel/x86_64-legalize-GV.mir
M llvm/test/tools/llvm-reduce/mir/preserve-reg-hints.mir
Log Message:
-----------
[MIR] Serialize virtual register flags (#110228)
[MIR] Serialize virtual register flags
This introduces target-specific vreg flag serialization. Flags are represented as `uint8_t` and the `TargetRegisterInfo` override provides methods `getVRegFlagValue` to deserialize and `getVRegFlagsOfReg` to serialize.
Commit: 3dba5d858455149cb843c2f000109265cc523267
https://github.com/llvm/llvm-project/commit/3dba5d858455149cb843c2f000109265cc523267
Author: Akshat Oke <76596238+optimisan at users.noreply.github.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/MIRParser/MIParser.cpp
M llvm/lib/CodeGen/MIRParser/MIRParser.cpp
Log Message:
-----------
[MIR] Add missing noteNewVirtualRegister callbacks (#111634)
The delegates' callback isn't invoked on parsing new virtual registers.
There are two places in the serialization where new virtual registers can be discovered: in register infos and in instructions.
Commit: 828d72b263a2e62431b317d155d5347d1112e623
https://github.com/llvm/llvm-project/commit/828d72b263a2e62431b317d155d5347d1112e623
Author: David Green <david.green at arm.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/GISelKnownBits.cpp
Log Message:
-----------
[GlobalISel] Add an assert for the DemandedElts APInt size. (#112150)
Similar to the other implementations in DAG/ValueTracking, this adds an
assert that the size of the DemandedElts is what we expect it to be -
the size of a fixed length vector or APInt(1,1) otherwise. The
G_BUILDVECTOR is fixed as it was passing an original DemandedElts for
the scalar operands.
Commit: 0cfa6e2092846f11a1534af4c928df3c61d73eb0
https://github.com/llvm/llvm-project/commit/0cfa6e2092846f11a1534af4c928df3c61d73eb0
Author: Christian Kandeler <christian.kandeler at qt.io>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M clang-tools-extra/clangd/AST.cpp
M clang-tools-extra/clangd/refactor/tweaks/DefineOutline.cpp
M clang-tools-extra/clangd/unittests/tweaks/DefineOutlineTests.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
Log Message:
-----------
[clangd] Let DefineOutline tweak handle member functions (#95235)
... of class templates.
Commit: bec839d8eed9dd13fa7eaffd50b28f8f913de2e2
https://github.com/llvm/llvm-project/commit/bec839d8eed9dd13fa7eaffd50b28f8f913de2e2
Author: Akshat Oke <76596238+optimisan at users.noreply.github.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
M llvm/lib/Target/AMDGPU/SIRegisterInfo.h
M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-no-ir.mir
Log Message:
-----------
[AMDGPU] Serialize WWM_REG vreg flag (#110229)
Commit: 851817b49427586273a414ead21d8568e08eed94
https://github.com/llvm/llvm-project/commit/851817b49427586273a414ead21d8568e08eed94
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M compiler-rt/test/fuzzer/strncmp.test
Log Message:
-----------
fuzzer/strncmp.test: Increase iteration to 20M.
I saw cases that this finised before finding `BINGO`, possibly
insufficient number of iteration. In my case, 11,067,133 satisfied.
So, increase the number for now. This change may increase the duration
of this in failing (`BINGO` not found) case.
Commit: f3aebe623b49b7ae14d0f0996999114aac052e4b
https://github.com/llvm/llvm-project/commit/f3aebe623b49b7ae14d0f0996999114aac052e4b
Author: Jack Styles <jack.styles at arm.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
M llvm/test/MC/ARM/Windows/mov32t-range.s
A llvm/test/MC/ARM/arm-movt-movw-range-fail.s
A llvm/test/MC/ARM/arm-movt-movw-range-pass.s
M llvm/test/MC/ARM/macho-movwt.s
M llvm/test/MC/MachO/ARM/thumb2-movw-fixup.s
Log Message:
-----------
[llvm][ARM] Add Addend Checks for MOVT and MOVW instructions. (#111970)
Previously, any value could be used for the MOVT and MOVW instructions,
however the ARM ABI dictates that the addend should be a signed 16 bit
value. To ensure this is followed, the Assembler will now check that
when using these instructions, the addend is a 16bit signed value, and
throw an error if this is not the case.
Information relating to the ABI requirements can be found here:
https://github.com/ARM-software/abi-aa/blob/main/aaelf32/aaelf32.rst#addends-and-pc-bias-compensation
Commit: fe1e1e3ae6d125a310654cb14ac95a986f9d9bca
https://github.com/llvm/llvm-project/commit/fe1e1e3ae6d125a310654cb14ac95a986f9d9bca
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/Maintainers.md
Log Message:
-----------
Add myself as the PS4/PS5 code owner (#108002)
As discussed here:
https://discourse.llvm.org/t/new-ps4-ps5-code-owner/80901
Commit: 52e5683ddddad787caf15c8edfd34eb4a9c8704a
https://github.com/llvm/llvm-project/commit/52e5683ddddad787caf15c8edfd34eb4a9c8704a
Author: Serge Pavlov <sepavloff at gmail.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/lib/Target/ARM/ARMInstructionSelector.cpp
M llvm/lib/Target/ARM/ARMLegalizerInfo.cpp
M llvm/lib/Target/ARM/ARMLegalizerInfo.h
M llvm/lib/Target/ARM/ARMRegisterBankInfo.cpp
A llvm/test/CodeGen/ARM/GlobalISel/arm-legalize-const.mir
M llvm/test/CodeGen/ARM/GlobalISel/arm-legalize-fp.mir
A llvm/test/CodeGen/ARM/GlobalISel/select-constpool.mir
Log Message:
-----------
[GlobalISel][ARM] Legalization of G_CONSTANT using constant pool (#98308)
ARM uses complex encoding of immediate values using small number of
bits. As a result, some values cannot be represented as immediate
operands, they need to be synthesized in a register. This change
implements legalization of such constants with loading values from
constant pool.
---------
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Commit: 751db4b73667cce9739cf2207917a325af783a0a
https://github.com/llvm/llvm-project/commit/751db4b73667cce9739cf2207917a325af783a0a
Author: Boaz Brickner <brickner at google.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M clang/include/clang/Sema/Sema.h
Log Message:
-----------
[clang] Move Sema::WarnedStackExhausted from public to private. (#111799)
Commit: fdf2b0a252c8aac9805b110a249817502d10e39f
https://github.com/llvm/llvm-project/commit/fdf2b0a252c8aac9805b110a249817502d10e39f
Author: Jubilee <workingjubilee at gmail.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
[LangRef] Document that sret only works with void returns (#112167)
Commit: c5f82f789365bcdd95efd14580419be4b2d92e21
https://github.com/llvm/llvm-project/commit/c5f82f789365bcdd95efd14580419be4b2d92e21
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/include/llvm/Analysis/ValueTracking.h
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/test/Transforms/InstCombine/ispow2.ll
M llvm/test/Transforms/InstCombine/select-ctlz-to-cttz.ll
M llvm/test/Transforms/InstSimplify/select.ll
Log Message:
-----------
ValueTracking: introduce llvm::isNotCrossLaneOperation (#112011)
Factor out and unify common code from InstSimplify and InstCombine that
partially guard against cross-lane vector operations into
llvm::isNotCrossLaneOperation in ValueTracking.
Alive2 proofs for changed tests: https://alive2.llvm.org/ce/z/68H4ka
Commit: 5af8cec8b51b57da182f6b24be4f623033d132c9
https://github.com/llvm/llvm-project/commit/5af8cec8b51b57da182f6b24be4f623033d132c9
Author: Thomas Preud'homme <thomas.preudhomme at arm.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/cmake/modules/AddLLVM.cmake
M mlir/include/mlir/Dialect/Linalg/IR/CMakeLists.txt
Log Message:
-----------
Revert "Fix CMake dependencies on mlir-linalg-ods-yaml-gen (#111973)"
This reverts commit d6827f68ad9110ae0c9992de7b2e2eec0f23be14 due to the
following CMake configure failure being observed by some:
add_custom_target called with invalid target name
Commit: 4bf6e831d554b7a075a5f1c4c34a38b05e20ec3b
https://github.com/llvm/llvm-project/commit/4bf6e831d554b7a075a5f1c4c34a38b05e20ec3b
Author: Ben Shi <2283975856 at qq.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Driver/ToolChains/AVR.cpp
M clang/test/Driver/avr-mmcu.c
Log Message:
-----------
[clang][Driver][AVR] Reject c/c++ compilation for avr1 devices (#111798)
avr-gcc also rejects since these devices has no SRAM.
Fixes https://github.com/llvm/llvm-project/issues/96881
Commit: ccb9835edb4612f73abc9f13880ea671117347ce
https://github.com/llvm/llvm-project/commit/ccb9835edb4612f73abc9f13880ea671117347ce
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-shift-lut.ll
Log Message:
-----------
[X86] LowerShift - lower vXi8 shifts of an uniform constant using PSHUFB (#112175)
If each 128-bit vXi8 lane is shifting the same constant value, we can pre-compute the 8 valid shift results and use PSHUFB to act as a LUT with the shift amount.
Fixes #110317
Commit: f7788618dd24e5366709a70c3e16cd5a0ca0a173
https://github.com/llvm/llvm-project/commit/f7788618dd24e5366709a70c3e16cd5a0ca0a173
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/test/CodeGen/X86/vselect-packss.ll
Log Message:
-----------
[X86] vselect-packss.ll - regenerate test checks with vpternlog comments
Commit: 387b37af1aabf325e9be844361564dfad8d45c75
https://github.com/llvm/llvm-project/commit/387b37af1aabf325e9be844361564dfad8d45c75
Author: Michał Górny <mgorny at gentoo.org>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M clang/lib/Basic/Targets/ARM.cpp
M clang/lib/Basic/Targets/OSTargets.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/Targets/ARM.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/Arch/ARM.cpp
M clang/lib/Driver/ToolChains/Gnu.cpp
M clang/lib/Driver/ToolChains/Linux.cpp
A clang/test/Preprocessor/time64.c
M llvm/include/llvm/TargetParser/Triple.h
M llvm/lib/Target/ARM/ARMSubtarget.h
M llvm/lib/Target/ARM/ARMTargetMachine.cpp
M llvm/lib/Target/ARM/ARMTargetMachine.h
M llvm/lib/TargetParser/ARMTargetParser.cpp
M llvm/lib/TargetParser/Triple.cpp
M llvm/unittests/TargetParser/TripleTest.cpp
Log Message:
-----------
[LLVM] [Clang] Support for Gentoo `*t64` triples (64-bit time_t ABIs) (#111302)
Gentoo is planning to introduce a `*t64` suffix for triples that will be
used by 32-bit platforms that use 64-bit `time_t`. Add support for
parsing and accepting these triples, and while at it make clang
automatically enable the necessary glibc feature macros when this suffix
is used.
An open question is whether we can backport this to LLVM 19.x. After
all, adding new triplets to Triple sounds like an ABI change — though I
suppose we can minimize the risk of breaking something if we move new
enum values to the very end.
Commit: 6a98c4a1602591c942f01dceb3aa29ffd4cf1e5b
https://github.com/llvm/llvm-project/commit/6a98c4a1602591c942f01dceb3aa29ffd4cf1e5b
Author: Jack Styles <jack.styles at arm.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
M llvm/test/MC/ARM/Windows/mov32t-range.s
R llvm/test/MC/ARM/arm-movt-movw-range-fail.s
R llvm/test/MC/ARM/arm-movt-movw-range-pass.s
M llvm/test/MC/ARM/macho-movwt.s
M llvm/test/MC/MachO/ARM/thumb2-movw-fixup.s
Log Message:
-----------
Revert "[llvm][ARM] Add Addend Checks for MOVT and MOVW instructions.… (#112184)
… (#111970)"
I was made aware of breakages in Windows/ARM, so reverting while I
investigate.
This reverts commit f3aebe623b49b7ae14d0f0996999114aac052e4b.
Commit: c978f0f7ac33a5085053da7189201babd366c82d
https://github.com/llvm/llvm-project/commit/c978f0f7ac33a5085053da7189201babd366c82d
Author: Boaz Brickner <brickner at google.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
Log Message:
-----------
[clang] Fix segmentation fault caused by stack overflow on deeply nested expressions (#111701)
Done by calling clang::runWithSufficientStackSpace().
Added CodeGenModule::runWithSufficientStackSpace() method similar to the
one in Sema to provide a single warning when this triggers
Fixes: #111699
Commit: 9cc6d6e9a96bda923ff7e7bb7394dfb4d2319b07
https://github.com/llvm/llvm-project/commit/9cc6d6e9a96bda923ff7e7bb7394dfb4d2319b07
Author: Raul Tambre <raul at tambre.ee>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M compiler-rt/CMakeLists.txt
M compiler-rt/cmake/Modules/AddCompilerRT.cmake
M compiler-rt/lib/profile/CMakeLists.txt
Log Message:
-----------
[compiler-rt] Explicitly enable C extensions for profile (#110555)
The profiling code requires GNU extensions as it uses functions such as getpagesize(), fdopen(), etc.
The problem manifests when the compiler is built to not default to the extensions mode, e.g. custom config with -std=c2x. CMake didn't support this scenario very well, but it's been fixed by CMP0128. Set the policy to NEW as we now conform to it.
Commit: 7f06d8afb03383dea33379f9c06d010d6ee3f14e
https://github.com/llvm/llvm-project/commit/7f06d8afb03383dea33379f9c06d010d6ee3f14e
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/include/llvm/Analysis/ScalarEvolutionExpressions.h
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/test/Analysis/ScalarEvolution/umin-seq-operand-may-trigger-ub.ll
M llvm/test/Transforms/LoopVectorize/trip-count-expansion-may-introduce-ub.ll
Log Message:
-----------
[SCEV] Retain SCEVSequentialMinMaxExpr if an operand may trigger UB. (#110824)
Retain SCEVSequentialMinMaxExpr if an operand may trigger UB, e.g. if
there is an UDiv operand that may divide by 0 or poison
PR: https://github.com/llvm/llvm-project/pull/110824
Commit: 39aae575744de7ae77e755142e0746a5b473b3ed
https://github.com/llvm/llvm-project/commit/39aae575744de7ae77e755142e0746a5b473b3ed
Author: Sunho Kim <ksunhokim123 at gmail.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/unittests/ExecutionEngine/Orc/JITLinkRedirectionManagerTest.cpp
M llvm/unittests/ExecutionEngine/Orc/ReOptimizeLayerTest.cpp
Log Message:
-----------
[ORC] skip reoptimization tests on PPC.
Fix https://lab.llvm.org/buildbot/#/builders/64/builds/1202.
Commit: 9edc454ee601e04500529c98b753d3bd8f427d01
https://github.com/llvm/llvm-project/commit/9edc454ee601e04500529c98b753d3bd8f427d01
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/test/Transforms/InstCombine/ispow2.ll
Log Message:
-----------
[InstCombine] Drop range attributes in `foldIsPowerOf2OrZero` (#112178)
Closes https://github.com/llvm/llvm-project/issues/112078.
Commit: 8b20f1b92444a95c16e0a21161515dbf5b03f424
https://github.com/llvm/llvm-project/commit/8b20f1b92444a95c16e0a21161515dbf5b03f424
Author: Akshat Oke <76596238+optimisan at users.noreply.github.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/test/CodeGen/AArch64/GlobalISel/arm64-regbankselect.mir
M llvm/test/CodeGen/AArch64/GlobalISel/call-translator.ll
M llvm/test/CodeGen/AArch64/GlobalISel/regbankselect-dbg-value.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-intrinsic-aarch64-hint.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-static.mir
M llvm/test/CodeGen/ARM/GlobalISel/arm-regbankselect.mir
M llvm/test/CodeGen/ARM/peephole-callee-save-regalloc.mir
M llvm/test/CodeGen/MIR/AArch64/register-operand-bank.mir
M llvm/test/CodeGen/PowerPC/aix-p8vector-liveins.ll
Log Message:
-----------
[MIR] Fix tests for flags in register info (#112179)
[MIR] Serialize virtual register flags #110228 introduces register flags
which appear empty in .mir dumps. Future tests should use
`-simplify-mir`.
Commit: e692af85966903614d470a7742ed89d124baf1a6
https://github.com/llvm/llvm-project/commit/e692af85966903614d470a7742ed89d124baf1a6
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M mlir/include/mlir/IR/BuiltinAttributes.td
M mlir/include/mlir/IR/OpImplementation.h
M mlir/lib/Conversion/TosaToArith/TosaToArith.cpp
M mlir/lib/Dialect/ControlFlow/IR/ControlFlowOps.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/lib/IR/Builders.cpp
M mlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
M mlir/unittests/Dialect/SPIRV/SerializationTest.cpp
Log Message:
-----------
[MLIR] Update APInt construction to correctly set isSigned/implicitTrunc (#110466)
This fixes all the places in MLIR that hit the new assertion added in
#106524, in preparation for enabling it by default. That is, cases where
the value passed to the APInt constructor is not an N-bit
signed/unsigned integer, where N is the bit width and signedness is
determined by the isSigned flag.
The fixes either set the correct value for isSigned, or set the
implicitTrunc flag to retain the old behavior. I've left TODOs for the
latter case in some places, where I think that it may be worthwhile to
stop doing implicit truncation in the future.
Note that the assertion is currently still disabled by default, so this
patch is mostly NFC.
This is just the MLIR changes split off from
https://github.com/llvm/llvm-project/pull/80309.
Commit: 429387a71ce20b7890cc32073c61c4114053b558
https://github.com/llvm/llvm-project/commit/429387a71ce20b7890cc32073c61c4114053b558
Author: Sam Elliott <quic_aelliott at quicinc.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/test/MC/RISCV/insn-invalid.s
M llvm/test/MC/RISCV/insn.s
Log Message:
-----------
[RISCV] Support Expressions in .insn Directives (#111893)
When assembling raw instructions, often you want to or together several
fields for clarity, or because you're using an assembly macro with
separate arguments.
This brings the use of `.insn` closer into line with what can be done
with the binutils assembler.
The 64-bit instruction test here explicitly sets the top bit to make
sure this works, even though the assembler is really using `int64_t`
in most places internally.
Commit: bdf241cab35ee6c6c0a00e14711fb77e9ac49704
https://github.com/llvm/llvm-project/commit/bdf241cab35ee6c6c0a00e14711fb77e9ac49704
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll
M llvm/test/Transforms/InstSimplify/select-abs.ll
Log Message:
-----------
ValueTracking: handle more ops in isNotCrossLaneOperation (#112183)
Reuse llvm::isTriviallyVectorizable in llvm::isNotCrossLaneOperation, in
order to get it to handle more intrinsics.
Alive2 proofs for changed tests: https://alive2.llvm.org/ce/z/XSV_GT
Commit: f3947aaa37f464e05c1a28ce871f5f982c5e2746
https://github.com/llvm/llvm-project/commit/f3947aaa37f464e05c1a28ce871f5f982c5e2746
Author: Nico Weber <thakis at chromium.org>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/compiler-rt/lib/sanitizer_common/BUILD.gn
Log Message:
-----------
[gn] port aa44f59abf39
Commit: 4c78c8cc2184125f86f9df194e1820b0da3158fa
https://github.com/llvm/llvm-project/commit/4c78c8cc2184125f86f9df194e1820b0da3158fa
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/test/SemaCXX/block-packs.cpp
Log Message:
-----------
[clang][bytecode] Fix discarding block expressions (#112185)
Commit: f9bc00e4bb6e09a9f8e4add8e3988cb44b193cdb
https://github.com/llvm/llvm-project/commit/f9bc00e4bb6e09a9f8e4add8e3988cb44b193cdb
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/segmented-loads.ll
Log Message:
-----------
[SLP]Initial support for interleaved loads
Adds initial support for interleaved loads, which allows
emission of segmented loads for RISCV RVV.
Vectorizes extra code for RISCV
CFP2006/447.dealII, CFP2006/453.povray,
CFP2017rate/510.parest_r, CFP2017rate/511.povray_r,
CFP2017rate/526.blender_r, CFP2017rate/538.imagick_r, CINT2006/403.gcc,
CINT2006/473.astar, CINT2017rate/502.gcc_r, CINT2017rate/525.x264_r
Reviewers: RKSimon, preames
Reviewed By: preames
Pull Request: https://github.com/llvm/llvm-project/pull/112042
Commit: 11f625cb877cd86282d37ef4c92b848d415d336f
https://github.com/llvm/llvm-project/commit/11f625cb877cd86282d37ef4c92b848d415d336f
Author: c8ef <c8ef at outlook.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/include/llvm/CodeGen/SDPatternMatch.h
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AArch64/abds.ll
M llvm/test/CodeGen/AArch64/abdu.ll
M llvm/test/CodeGen/AArch64/midpoint-int.ll
M llvm/test/CodeGen/RISCV/abds.ll
M llvm/test/CodeGen/RISCV/abdu.ll
M llvm/test/CodeGen/X86/abds.ll
M llvm/test/CodeGen/X86/abdu.ll
M llvm/test/CodeGen/X86/midpoint-int.ll
M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
Log Message:
-----------
[DAG] Enhance SDPatternMatch to match integer minimum and maximum patterns in addition to the existing ISD nodes. (#111774)
Closes #108218.
This patch adds icmp+select patterns for integer min/max matchers in
SDPatternMatch, similar to those in IR PatternMatch.
Commit: 8a7a7a46d09ccd9eabc535bd34a35cb4c2731132
https://github.com/llvm/llvm-project/commit/8a7a7a46d09ccd9eabc535bd34a35cb4c2731132
Author: Raghu Maddhipatla <7686592+raghavendhra at users.noreply.github.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M flang/lib/Semantics/resolve-directives.cpp
Log Message:
-----------
[Flang] [Semantics] [OpenMP] Fix semantic check to not report error for compound OMP TARGET directives. (#112059)
For test program like this variable array is mentioned in both shared
clause and map clause. For OMP TARGET compound directives like this
where we have OMP TARGET TEAMS, map clause applies to TARGET directive
and SHARED clause applies to TEAMS directive. So both SHARED and MAP
clauses can co-exist.
> program test
> implicit none
> integer :: array(10,10),i,j
> !$omp target teams shared(array) map(tofrom:array)
> do i=1,10
> !$omp parallel do
> do j=1,10
> array(j,i)=i+j
> end do
> end do
> !$omp end target teams
> print *, array
> end program test
>
>
Before this PR we were checking for exclusivity for all target
directives set which is now relaxed to exclusivity check not being
applied to compound directives which can accept SHARED clause.
Commit: c2d8112f71d59384d77ac56e278147afc1947ce9
https://github.com/llvm/llvm-project/commit/c2d8112f71d59384d77ac56e278147afc1947ce9
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M clang/include/clang/Basic/OpenACCKinds.h
Log Message:
-----------
Silence a "not all control paths return a value" diagnostic; NFC
Commit: a3b0c31ebc2f6fe672f08f6b7d15f25a2b26edda
https://github.com/llvm/llvm-project/commit/a3b0c31ebc2f6fe672f08f6b7d15f25a2b26edda
Author: c8ef <c8ef at outlook.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/include/llvm/CodeGen/SDPatternMatch.h
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AArch64/abds.ll
M llvm/test/CodeGen/AArch64/abdu.ll
M llvm/test/CodeGen/AArch64/midpoint-int.ll
M llvm/test/CodeGen/RISCV/abds.ll
M llvm/test/CodeGen/RISCV/abdu.ll
M llvm/test/CodeGen/X86/abds.ll
M llvm/test/CodeGen/X86/abdu.ll
M llvm/test/CodeGen/X86/midpoint-int.ll
M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
Log Message:
-----------
Revert "[DAG] Enhance SDPatternMatch to match integer minimum and maximum patterns in addition to the existing ISD nodes." (#112200)
Reverts llvm/llvm-project#111774
This appears to be causing some tests to fail.
Commit: cd6c2b80be024d4bc0f6ce70930369b913a5daae
https://github.com/llvm/llvm-project/commit/cd6c2b80be024d4bc0f6ce70930369b913a5daae
Author: Akshat Oke <76596238+optimisan at users.noreply.github.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/include/llvm/CodeGen/Passes.h
A llvm/include/llvm/CodeGen/StackColoring.h
M llvm/include/llvm/InitializePasses.h
M llvm/include/llvm/Passes/CodeGenPassBuilder.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/lib/CodeGen/CodeGen.cpp
M llvm/lib/CodeGen/StackColoring.cpp
M llvm/lib/CodeGen/TargetPassConfig.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
M llvm/test/CodeGen/X86/PR37310.mir
M llvm/test/CodeGen/X86/StackColoring-dbg-invariance.mir
M llvm/test/CodeGen/X86/pr48064.mir
Log Message:
-----------
[NewPM][CodeGen] Port StackColoring to NPM (#111812)
Commit: c765b5eda778ab30e9944c8c9606fa8ba5295792
https://github.com/llvm/llvm-project/commit/c765b5eda778ab30e9944c8c9606fa8ba5295792
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M clang/lib/AST/InheritViz.cpp
Log Message:
-----------
[AST] Avoid repeated set lookups (NFC) (#112155)
Commit: fd8a4b007330c214fc9cc6e2c255cc18fc3c6b0c
https://github.com/llvm/llvm-project/commit/fd8a4b007330c214fc9cc6e2c255cc18fc3c6b0c
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512vbmi.ll
Log Message:
-----------
[X86] combineAndnp - fold ANDN(SEXT(SETCC()),X) -> SELECT(NOT(SETCC()),X,0) on AVX512 targets
Reverse the generic foldVSelectToSignBitSplatMask fold on AVX512 targets where we can use the SETCC result directly in predicated moves/instructions.
Fixes #109272
Commit: d81c2f16a3c0ee951147d150f32068eee959b885
https://github.com/llvm/llvm-project/commit/d81c2f16a3c0ee951147d150f32068eee959b885
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512vbmi.ll
Log Message:
-----------
[X86] canCreateUndefOrPoisonForTargetNode - X86ISD::VPERMV3 shuffles don't create undef/poison
The operands might contain an undef/poison element, but the shuffle node itself will not create one by itself.
Improves test case from #109272
Commit: 4459a9b6436d9443944da9a086bd42724334afa0
https://github.com/llvm/llvm-project/commit/4459a9b6436d9443944da9a086bd42724334afa0
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M clang/lib/Sema/SemaAttr.cpp
Log Message:
-----------
[Sema] Avoid repeated hash lookups (NFC) (#112156)
Commit: 23c834092eb4d52a606144960a253391de10e2ef
https://github.com/llvm/llvm-project/commit/23c834092eb4d52a606144960a253391de10e2ef
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M bolt/lib/Passes/Instrumentation.cpp
Log Message:
-----------
[BOLT] Avoid repeated set lookups (NFC) (#112157)
Commit: ef436f3f60c14935d244d73f11d008f272d123e1
https://github.com/llvm/llvm-project/commit/ef436f3f60c14935d244d73f11d008f272d123e1
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M mlir/lib/Transforms/SROA.cpp
Log Message:
-----------
[mlir] Avoid repeated hash lookups (NFC) (#112158)
Commit: 9c64b5e7591dd7f6f3dd3175a5e686f324c22978
https://github.com/llvm/llvm-project/commit/9c64b5e7591dd7f6f3dd3175a5e686f324c22978
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
Log Message:
-----------
[ARM] Simplify code with std::map::operator[] (NFC) (#112159)
Commit: 253ff327241be2b6d4f6321d0e917357d5f310df
https://github.com/llvm/llvm-project/commit/253ff327241be2b6d4f6321d0e917357d5f310df
Author: sstwcw <su3e8a96kzlver at posteo.net>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/FormatTestVerilog.cpp
Log Message:
-----------
[clang-format] Stop crashing when formatting Verilog (#112043)
The part of the code for parsing Verilog module instantiations
dereferenced a pointer without checking for null pointer. The pointer
may be null if the input is not complete and a line starts with a comma.
Commit: b53186f93ce69dff9806ecf025b6e19f8fa9fba2
https://github.com/llvm/llvm-project/commit/b53186f93ce69dff9806ecf025b6e19f8fa9fba2
Author: Nico Weber <thakis at chromium.org>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
Log Message:
-----------
[gn build] Port 8f9cce0bef31
Commit: 91a0fecf194b09fb8a0d8bdfb92c50b2addd29de
https://github.com/llvm/llvm-project/commit/91a0fecf194b09fb8a0d8bdfb92c50b2addd29de
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/test/Transforms/SLPVectorizer/X86/insertelements-with-reused-indices.ll
M llvm/test/Transforms/SLPVectorizer/X86/partail.ll
M llvm/test/Transforms/SLPVectorizer/X86/slp-throttle.ll
M llvm/test/Transforms/SLPVectorizer/scalarization-overhead.ll
Log Message:
-----------
[SLP][NFC]Replace unreachable instructions by rets, NFC.
Commit: 3dedcab6d9b660a690d8fe5ddad3d43276a82708
https://github.com/llvm/llvm-project/commit/3dedcab6d9b660a690d8fe5ddad3d43276a82708
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M lldb/source/Host/common/Host.cpp
Log Message:
-----------
[lldb] Make the system log a NOOP on Windows (#112052)
Windows doesn't have a built-in system log. Previously we got away with
writing to stdout and stderr because it was used only sporadically. As
we're trying to make the system log more useful on the other platforms,
the increased use become a concern. Make it a NOOP until someone figures
out a reasonable alternative.
Commit: ddb64e62bd1fb4c26cf3b7ba7e04f5f2e469a063
https://github.com/llvm/llvm-project/commit/ddb64e62bd1fb4c26cf3b7ba7e04f5f2e469a063
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SystemOperands.td
A llvm/test/MC/AArch64/armv9.6a-mpam.s
A llvm/test/MC/Disassembler/AArch64/armv9.6a-mpam.txt
Log Message:
-----------
[AArch64] Add support for Armv9.6-A FEAT_MPAM system registers (#111822)
Add support for Armv9.6-A FEAT_MPAM system registers as documented here:
https://developer.arm.com/documentation/ddi0601/2024-09/AArch64-Registers
Commit: a8b51154417c7ead2e1bfffee0b70812270e5730
https://github.com/llvm/llvm-project/commit/a8b51154417c7ead2e1bfffee0b70812270e5730
Author: Durgadoss R <durgadossr at nvidia.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
M mlir/test/Integration/GPU/CUDA/sm90/cga_cluster.mlir
Log Message:
-----------
[MLIR][NVGPU] Fix the cga_cluster.mlir test (#112191)
This patch fixes the sm90 cluster test by:
* Fixing a typo in LowerGpuOpsToNVVMOps where one of the ClusterDim Op
conversion pattern should actually be for the
ClusterDimBlocks Op. This addresses the compilation error for this test.
* The grid-size should be (4,4,1) instead of (2,2,1). This passes the
scf-if check against the threshold of 3 below and actually
generates the required prints from the GPU.
Signed-off-by: Durgadoss R <durgadossr at nvidia.com>
Commit: 84b99b4b1ee19b81d8a1ac780f7aa307ce3b84da
https://github.com/llvm/llvm-project/commit/84b99b4b1ee19b81d8a1ac780f7aa307ce3b84da
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/docs/CodingStandards.rst
Log Message:
-----------
[NFC][CodingStandard] Extend if-else brace example with else-if (#112193)
Extend example to document that single statement `else if` needs a brace
as well if the associated `if` needs a brace.
Commit: 81fee740d073640c79c0d45a8e8e804c1c5fea40
https://github.com/llvm/llvm-project/commit/81fee740d073640c79c0d45a8e8e804c1c5fea40
Author: pkarveti <quic_pkarveti at quicinc.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonFrameLowering.cpp
M llvm/test/DebugInfo/Generic/sugared-constants.ll
Log Message:
-----------
[Hexagon] Mark instructions as part of the frame setup to fix test sugared-constants.ll (#111795)
Added .setMIFlag(MachineInstr::FrameSetup) to all BuildMI calls in
HexagonFrameLowering::insertAllocframe. This change ensures that the
test sugared-constants.ll passes upstream by correctly marking
instructions as part of the frame setup.
Commit: cbc4be2dd5b101aa362efc960541ded65a4c0ff7
https://github.com/llvm/llvm-project/commit/cbc4be2dd5b101aa362efc960541ded65a4c0ff7
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
Log Message:
-----------
[AMDGPU] Use MachineInstr::mayLoadOrStore. NFC.
Commit: 839344f025fb7eff529735873f327330618b2ebb
https://github.com/llvm/llvm-project/commit/839344f025fb7eff529735873f327330618b2ebb
Author: Tarun Prabhu <tarun at lanl.gov>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/CommonArgs.h
M clang/lib/Driver/ToolChains/Flang.cpp
M flang/include/flang/Frontend/CodeGenOptions.h
M flang/include/flang/Lower/Bridge.h
M flang/include/flang/Optimizer/Dialect/Support/FIRContext.h
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Optimizer/Dialect/Support/FIRContext.cpp
A flang/test/Driver/frecord-command-line.f90
A flang/test/Lower/record-command-line.f90
M flang/tools/bbc/CMakeLists.txt
M flang/tools/bbc/bbc.cpp
M mlir/include/mlir/Dialect/LLVMIR/LLVMDialect.td
M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
M mlir/include/mlir/Target/LLVMIR/ModuleTranslation.h
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
A mlir/test/Target/LLVMIR/Import/commandline.ll
A mlir/test/Target/LLVMIR/commandline.mlir
Log Message:
-----------
[clang][flang][mlir] Reapply "Support -frecord-command-line option (#102975)"
The underlying issue was caused by a file included in two different
places which resulted in duplicate definition errors when linking
individual shared libraries. This was fixed in c3201ddaeac02a2c86a38b
[#109874].
Commit: aa2c0f35a102b5afc128e19ccb2b9402026c531f
https://github.com/llvm/llvm-project/commit/aa2c0f35a102b5afc128e19ccb2b9402026c531f
Author: Albert Huang <Albert.huang at armchina.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M clang/test/Driver/arm-cortex-cpus-2.c
M clang/test/Misc/target-invalid-cpu-note/arm.c
M llvm/include/llvm/TargetParser/ARMTargetParser.def
M llvm/lib/Target/ARM/ARMProcessors.td
M llvm/lib/TargetParser/Host.cpp
M llvm/test/CodeGen/ARM/cmse-cve-2021-35465.ll
M llvm/unittests/TargetParser/TargetParserTest.cpp
Log Message:
-----------
[ARM] [AArch32] Add support for Arm China STAR-MC1 CPU (#110085)
STAR-MC1 is an Armv8m CPU.
Technical specifications available at:
https://www.armchina.com/download/Documents/Application-Notes/Technical-Reference-Manual?infoId=160
Commit: ab902ee54ac3b881f5937f5e784d49226cdd1c87
https://github.com/llvm/llvm-project/commit/ab902ee54ac3b881f5937f5e784d49226cdd1c87
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/test/Transforms/SLPVectorizer/SystemZ/pr34619.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_smallpt.ll
M llvm/test/Transforms/SLPVectorizer/X86/extractelement-single-use-many-nodes.ll
M llvm/test/Transforms/SLPVectorizer/X86/resched.ll
Log Message:
-----------
[SLP][NFC]Replace more unreachable terminators by rets, NFC
Commit: 7900daaa7ba57b5f9729bbbdb54f4e0599a45cd7
https://github.com/llvm/llvm-project/commit/7900daaa7ba57b5f9729bbbdb54f4e0599a45cd7
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M mlir/include/mlir/IR/OpImplementation.h
M mlir/test/mlir-tblgen/attr-or-type-format-roundtrip.mlir
Log Message:
-----------
[MLIR] Fix parseInteger(uint64_t) for large values
This is a regression from e692af85966903614d470a7742ed89d124baf1a6
Commit: eb83e4abd689bbd2177b368864dcadc39f4960d1
https://github.com/llvm/llvm-project/commit/eb83e4abd689bbd2177b368864dcadc39f4960d1
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/utils/lit/lit/cl_arguments.py
Log Message:
-----------
[llvm][llvm-lit] Fix typo in --resultdb-output help
Commit: 09fa2f012fccb6f1cf2f540856e67f55431da800
https://github.com/llvm/llvm-project/commit/09fa2f012fccb6f1cf2f540856e67f55431da800
Author: Thomas Fransham <tfransham at gmail.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M clang/cmake/modules/AddClang.cmake
A clang/include/clang/Support/Compiler.h
M clang/tools/libclang/CMakeLists.txt
Log Message:
-----------
[Clang] Add explicit visibility symbol macros (#108276)
This is part of the effort to support for enabling plugins on windows by
adding better support for building llvm and clang as a DLL. These macros
are similar to the ones i added in #96630, but are for clang.
Added explicit symbol visibility macros definitions that are defined in
a new header and will be used to for shared library builds of clang to
export
symbols.
Updated clang cmake to define a macro to enable the symbol visibility
macros and explicitly disable them for clang tools that always use
static linking.
---------
Co-authored-by: Aaron Ballman <aaron at aaronballman.com>
Commit: 8e5aa538caccef167e8096b2173fdaf2be9cc129
https://github.com/llvm/llvm-project/commit/8e5aa538caccef167e8096b2173fdaf2be9cc129
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaExpr.cpp
A clang/test/C/C2y/n3298.c
M clang/test/Lexer/gnu-flags.c
M clang/test/Sema/builtins.c
M clang/test/Sema/exprs.c
M clang/www/c_status.html
Log Message:
-----------
[C2y] Add test coverage for N3298 (#112033)
This paper adds 'i' and 'j' as suffixes for forming a _Complex constant.
This feature has been supported in Clang since at least Clang 3.0, so
only test coverage is needed.
It does remove -Wgnu-imaginary-constant in C mode (still used in C++
mode) because the feature is now a C2y feature rather than a GNU one.
Commit: a31e834ba8beaeed411b85af51ebd6598cb6007c
https://github.com/llvm/llvm-project/commit/a31e834ba8beaeed411b85af51ebd6598cb6007c
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/vl-opt-no-prop.ll
M llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.ll
Log Message:
-----------
[RISCV][VLOPT] Update test cases to use riscv-enable-vl-optimizer and better formatting
Commit: a74659445dc33a495345c2418e8d01811a1627c7
https://github.com/llvm/llvm-project/commit/a74659445dc33a495345c2418e8d01811a1627c7
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
A llvm/test/CodeGen/AMDGPU/waitcnt-debug-non-first-terminators.mir
Log Message:
-----------
[AMDGPU] Skip terminators when forcing emit zero flag (#112116)
When forcing emit zero, we need to skip terminators of a MBB; otherwise
the terminator list of the MBB would be broken.
Commit: cef66aa04d3713afc4d0dfa66491b7af77322090
https://github.com/llvm/llvm-project/commit/cef66aa04d3713afc4d0dfa66491b7af77322090
Author: Doug Wyatt <doug at sonosphere.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M clang/lib/Sema/SemaFunctionEffects.cpp
M clang/test/SemaObjCXX/attr-nonblocking-constraints.mm
Log Message:
-----------
[Clang] Diagnose additional ObjC statements as function effect violations (#112148)
Bug fix: `@autoreleasepool`, `@synchronized`, and `@finally` were not
being noticed and treated as function effect violations.
---------
Co-authored-by: Doug Wyatt <dwyatt at apple.com>
Commit: cf456ed2a45821d8e4bc1b62959be3330e00db95
https://github.com/llvm/llvm-project/commit/cf456ed2a45821d8e4bc1b62959be3330e00db95
Author: Erich Keane <ekeane at nvidia.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/OpenACCClauses.def
M clang/include/clang/Sema/SemaOpenACC.h
M clang/lib/AST/OpenACCClause.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/test/AST/ast-print-openacc-loop-construct.cpp
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/SemaOpenACC/compute-construct-device_type-clause.c
M clang/test/SemaOpenACC/loop-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/loop-construct-device_type-clause.c
A clang/test/SemaOpenACC/loop-construct-worker-ast.cpp
A clang/test/SemaOpenACC/loop-construct-worker-clause.cpp
M clang/tools/libclang/CIndex.cpp
Log Message:
-----------
[OpenACC] implement loop 'worker' clause. (#112206)
The worker clause specifies iterations of the loop/ that are executed in
parallel by distributing the iterations among the multiple works within
a single gang.
The sema rules for this type are simply that it cannot be combined with
a `kernel` construct with a `num_workers` clause, child `loop` clauses
cannot contain a `gang` or `worker` clause, and that the argument is oly
allowed when associated with a `kernel`.
Commit: ab6ec7ab149ea2c627ed2814c11be33a92171153
https://github.com/llvm/llvm-project/commit/ab6ec7ab149ea2c627ed2814c11be33a92171153
Author: c8ef <c8ef at outlook.com>
Date: 2024-10-15 (Tue, 15 Oct 2024)
Changed paths:
M clang/include/clang/Basic/Builtins.td
M clang/test/Preprocessor/feature_tests.cpp
Log Message:
-----------
[clang] Mark `__builtin_convertvector` and `__builtin_shufflevector` as `constexpr`. (#112129)
Closes #107985.
LanguageExtensions.rst states that `__builtin_shufflevector` and
`__builtin_convertvector` can be evaluated as constants, but this is not
reflected in Butiltins.td. This patch aligns these two.
Commit: 39ac8b25cdca230509078d575d46c538bdf90e18
https://github.com/llvm/llvm-project/commit/39ac8b25cdca230509078d575d46c538bdf90e18
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Gnu.cpp
M clang/test/Driver/Xlinker-args.c
Log Message:
-----------
[clang][GNU] Pass -t through to the linker (#112106)
Commit: c79e5acfe8d4bb01d5ae7297dcb900ad8c39c580
https://github.com/llvm/llvm-project/commit/c79e5acfe8d4bb01d5ae7297dcb900ad8c39c580
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming.cpp
Log Message:
-----------
[clang-tidy][readability-identifier-naming] Support namespace aliases (#112112)
Fixes: https://github.com/llvm/llvm-project/issues/109385
Commit: b5600c6f85c6d1e30b1125e6f943b61f66d7fb9f
https://github.com/llvm/llvm-project/commit/b5600c6f85c6d1e30b1125e6f943b61f66d7fb9f
Author: Michael Marjieh <99331190+mmarjieh at users.noreply.github.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/test/CodeGen/VE/Scalar/cast.ll
M llvm/test/CodeGen/X86/avx512-cvt.ll
Log Message:
-----------
[TargetLowering][SelectionDAG] Exploit nneg Flag in UINT_TO_FP (#108931)
1. Propagate the nneg flag in WidenVecRes
2. Use SINT_TO_FP in expandUINT_TO_FP when possible.
Commit: a89e01634fe2e6ce0b967ead24280b6693b523dc
https://github.com/llvm/llvm-project/commit/a89e01634fe2e6ce0b967ead24280b6693b523dc
Author: Pavel Labath <pavel at labath.sk>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/source/Symbol/UnwindTable.cpp
A lldb/test/Shell/Unwind/Inputs/basic-block-sections-with-dwarf.s
A lldb/test/Shell/Unwind/Inputs/linux-x86_64.yaml
A lldb/test/Shell/Unwind/basic-block-sections-with-dwarf-static.test
A lldb/test/Shell/Unwind/basic-block-sections-with-dwarf.test
Log Message:
-----------
[lldb] Improve unwinding for discontinuous functions (#111409)
Currently, our unwinder assumes that the functions are continuous (or at
least, that there are no functions which are "in the middle" of other
functions). Neither of these assumptions is true for functions optimized
by tools like propeller and (probably) bolt.
While there are many things that go wrong for these functions, the
biggest damage is caused by the unwind plan caching code, which
currently takes the maximalist extent of the function and assumes that
the unwind plan we get for that is going to be valid for all code inside
that range. If a part of the function has been moved into a "cold"
section, then the range of the function can be many megabytes, meaning
that any function within that range will probably fail to unwind.
We end up with this maximalist range because the unwinder asks for the
Function object for its range. This is only one of the strategies for
determining the range, but it is the first one -- and also the most
incorrect one. The second choice would is asking the eh_frame section
for the range of the function, and this one returns something reasonable
here (the address range of the current function fragment) -- which it
does because each fragment gets its own eh_frame entry (it has to,
because they have to be continuous).
With this in mind, this patch moves the eh_frame (and debug_frame) to
the front of the queue. I think that preferring this range makes sense
because eh_frame is one of the unwind plans that we return, and some
others (augmented eh_frame) are based on it. In theory this could break
some functions, where the debug info and eh_frame disagree on the extent
of the function (and eh_frame is the one who's wrong), but I don't know
of any such scenarios.
Commit: 3c4f00905ea51c053819470688e1ef7105594749
https://github.com/llvm/llvm-project/commit/3c4f00905ea51c053819470688e1ef7105594749
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-10-14 (Mon, 14 Oct 2024)
Changed paths:
M bolt/tools/driver/llvm-bolt.cpp
Log Message:
-----------
[BOLT] Support perf2bolt-N in the driver
Check invoked tool with `starts_with`.
Addresses the issue where `perf2bolt` invoked using a distro symlink
`perf2bolt-16` fails to run in perf2bolt mode and runs in llvm-bolt mode
instead.
The issue is mentioned in https://vondra.me/posts/playing-with-bolt-and-postgres/
Test Plan:
```
ln -sf perf2bolt perf2bolt-20
perf2bolt-20 clang -p perf.data -o fdata.clang -w yaml.clang
...
PERF2BOLT: wrote 188593 objects and 0 memory objects to fdata.clang
```
Reviewers: ayermolo, rafaelauler, dcci, maksfb
Reviewed By: maksfb
Pull Request: https://github.com/llvm/llvm-project/pull/111072
Commit: b4be4afcc1676edc1cf29619a3bd253d31ddc264
https://github.com/llvm/llvm-project/commit/b4be4afcc1676edc1cf29619a3bd253d31ddc264
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-10-24 (Thu, 24 Oct 2024)
Changed paths:
M .ci/generate-buildkite-pipeline-premerge
M .github/new-prs-labeler.yml
M .github/workflows/commit-access-review.py
M .github/workflows/libcxx-build-and-test.yaml
M .github/workflows/release-binaries-all.yml
M .github/workflows/release-binaries.yml
M .github/workflows/release-documentation.yml
M .gitignore
M bolt/include/bolt/Core/BinaryBasicBlock.h
M bolt/include/bolt/Core/BinaryContext.h
M bolt/include/bolt/Core/BinaryData.h
M bolt/include/bolt/Core/BinaryFunction.h
A bolt/include/bolt/Passes/ContinuityStats.h
M bolt/include/bolt/Profile/BoltAddressTranslation.h
M bolt/include/bolt/Rewrite/RewriteInstance.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/BinaryFunction.cpp
M bolt/lib/Core/DIEBuilder.cpp
M bolt/lib/Passes/ADRRelaxationPass.cpp
M bolt/lib/Passes/CMakeLists.txt
A bolt/lib/Passes/ContinuityStats.cpp
M bolt/lib/Passes/Instrumentation.cpp
M bolt/lib/Passes/RetpolineInsertion.cpp
M bolt/lib/Profile/BoltAddressTranslation.cpp
M bolt/lib/Profile/DataAggregator.cpp
M bolt/lib/Profile/YAMLProfileReader.cpp
M bolt/lib/Rewrite/BinaryPassManager.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/lib/RuntimeLibs/InstrumentationRuntimeLibrary.cpp
R bolt/test/AArch64/Inputs/iplt.ld
A bolt/test/AArch64/adr-relaxation.s
M bolt/test/AArch64/constant_island_pie_update.s
R bolt/test/AArch64/ifunc.c
A bolt/test/AArch64/ifunc.test
M bolt/test/AArch64/update-weak-reference-symbol.s
A bolt/test/Inputs/ifunc.c
A bolt/test/Inputs/iplt.ld
A bolt/test/X86/cfg-discontinuity-reporting.test
A bolt/test/X86/ifunc.test
M bolt/test/X86/log.test
A bolt/test/X86/print-only-section.s
M bolt/test/lit.local.cfg
A bolt/test/merge-fdata-uninitialized-header.test
M bolt/test/perf2bolt/lit.local.cfg
M bolt/test/perf2bolt/perf_test.test
M bolt/tools/driver/llvm-bolt.cpp
M bolt/tools/merge-fdata/merge-fdata.cpp
M bolt/unittests/Core/BinaryContext.cpp
M clang-tools-extra/CMakeLists.txt
M clang-tools-extra/CODE_OWNERS.TXT
M clang-tools-extra/clang-apply-replacements/CMakeLists.txt
M clang-tools-extra/clang-apply-replacements/lib/Tooling/ApplyReplacements.cpp
M clang-tools-extra/clang-change-namespace/CMakeLists.txt
M clang-tools-extra/clang-change-namespace/ChangeNamespace.cpp
M clang-tools-extra/clang-doc/CMakeLists.txt
M clang-tools-extra/clang-include-fixer/CMakeLists.txt
M clang-tools-extra/clang-include-fixer/find-all-symbols/CMakeLists.txt
M clang-tools-extra/clang-include-fixer/plugin/CMakeLists.txt
M clang-tools-extra/clang-move/CMakeLists.txt
M clang-tools-extra/clang-move/HelperDeclRefGraph.cpp
M clang-tools-extra/clang-move/tool/ClangMove.cpp
M clang-tools-extra/clang-query/CMakeLists.txt
M clang-tools-extra/clang-query/Query.cpp
M clang-tools-extra/clang-reorder-fields/CMakeLists.txt
M clang-tools-extra/clang-tidy/CMakeLists.txt
M clang-tools-extra/clang-tidy/ClangTidy.cpp
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
M clang-tools-extra/clang-tidy/abseil/CMakeLists.txt
M clang-tools-extra/clang-tidy/altera/CMakeLists.txt
M clang-tools-extra/clang-tidy/android/CMakeLists.txt
M clang-tools-extra/clang-tidy/boost/CMakeLists.txt
M clang-tools-extra/clang-tidy/boost/UseRangesCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/BitwisePointerCastCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/BitwisePointerCastCheck.h
M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
M clang-tools-extra/clang-tidy/bugprone/DanglingHandleCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ForwardDeclarationNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ForwardingReferenceOverloadCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/PosixReturnCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SizeofExpressionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SizeofExpressionCheck.h
A clang-tools-extra/clang-tidy/bugprone/TaggedUnionMemberCountCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/TaggedUnionMemberCountCheck.h
M clang-tools-extra/clang-tidy/bugprone/UnsafeFunctionsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnsafeFunctionsCheck.h
M clang-tools-extra/clang-tidy/cert/CERTTidyModule.cpp
M clang-tools-extra/clang-tidy/cert/CMakeLists.txt
M clang-tools-extra/clang-tidy/cert/FloatLoopCounter.cpp
M clang-tools-extra/clang-tidy/concurrency/CMakeLists.txt
M clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt
M clang-tools-extra/clang-tidy/cppcoreguidelines/PreferMemberInitializerCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
M clang-tools-extra/clang-tidy/darwin/CMakeLists.txt
M clang-tools-extra/clang-tidy/fuchsia/CMakeLists.txt
M clang-tools-extra/clang-tidy/google/CMakeLists.txt
M clang-tools-extra/clang-tidy/hicpp/CMakeLists.txt
M clang-tools-extra/clang-tidy/linuxkernel/CMakeLists.txt
M clang-tools-extra/clang-tidy/llvm/CMakeLists.txt
M clang-tools-extra/clang-tidy/llvmlibc/CMakeLists.txt
M clang-tools-extra/clang-tidy/misc/CMakeLists.txt
M clang-tools-extra/clang-tidy/misc/ConfusableIdentifierCheck.cpp
M clang-tools-extra/clang-tidy/misc/DefinitionsInHeadersCheck.cpp
M clang-tools-extra/clang-tidy/misc/UnusedUsingDeclsCheck.cpp
M clang-tools-extra/clang-tidy/modernize/AvoidCArraysCheck.cpp
M clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
M clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
M clang-tools-extra/clang-tidy/modernize/LoopConvertUtils.cpp
M clang-tools-extra/clang-tidy/modernize/LoopConvertUtils.h
M clang-tools-extra/clang-tidy/modernize/MinMaxUseInitializerListCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStartsEndsWithCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStartsEndsWithCheck.h
M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.h
M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.h
M clang-tools-extra/clang-tidy/mpi/CMakeLists.txt
M clang-tools-extra/clang-tidy/objc/CMakeLists.txt
M clang-tools-extra/clang-tidy/openmp/CMakeLists.txt
M clang-tools-extra/clang-tidy/performance/AvoidEndlCheck.cpp
M clang-tools-extra/clang-tidy/performance/CMakeLists.txt
M clang-tools-extra/clang-tidy/performance/MoveConstArgCheck.cpp
M clang-tools-extra/clang-tidy/plugin/CMakeLists.txt
M clang-tools-extra/clang-tidy/portability/CMakeLists.txt
M clang-tools-extra/clang-tidy/portability/PortabilityTidyModule.cpp
A clang-tools-extra/clang-tidy/portability/TemplateVirtualMemberFunctionCheck.cpp
A clang-tools-extra/clang-tidy/portability/TemplateVirtualMemberFunctionCheck.h
M clang-tools-extra/clang-tidy/readability/AvoidUnconditionalPreprocessorIfCheck.cpp
M clang-tools-extra/clang-tidy/readability/CMakeLists.txt
M clang-tools-extra/clang-tidy/readability/ContainerContainsCheck.cpp
M clang-tools-extra/clang-tidy/readability/ContainerContainsCheck.h
M clang-tools-extra/clang-tidy/readability/EnumInitialValueCheck.cpp
M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
M clang-tools-extra/clang-tidy/rename_check.py
M clang-tools-extra/clang-tidy/tool/CMakeLists.txt
M clang-tools-extra/clang-tidy/utils/CMakeLists.txt
M clang-tools-extra/clang-tidy/utils/FormatStringConverter.cpp
M clang-tools-extra/clang-tidy/utils/FormatStringConverter.h
M clang-tools-extra/clang-tidy/utils/Matchers.h
M clang-tools-extra/clang-tidy/zircon/CMakeLists.txt
M clang-tools-extra/clangd/AST.cpp
M clang-tools-extra/clangd/CMakeLists.txt
M clang-tools-extra/clangd/ClangdServer.cpp
M clang-tools-extra/clangd/CodeComplete.cpp
M clang-tools-extra/clangd/CodeComplete.h
M clang-tools-extra/clangd/Config.h
M clang-tools-extra/clangd/ConfigCompile.cpp
M clang-tools-extra/clangd/ConfigFragment.h
M clang-tools-extra/clangd/ConfigYAML.cpp
M clang-tools-extra/clangd/Diagnostics.cpp
M clang-tools-extra/clangd/FindSymbols.cpp
M clang-tools-extra/clangd/Headers.cpp
M clang-tools-extra/clangd/Hover.cpp
M clang-tools-extra/clangd/ParsedAST.cpp
M clang-tools-extra/clangd/Preamble.cpp
M clang-tools-extra/clangd/Quality.cpp
M clang-tools-extra/clangd/SemanticSelection.cpp
M clang-tools-extra/clangd/SourceCode.cpp
M clang-tools-extra/clangd/SystemIncludeExtractor.cpp
M clang-tools-extra/clangd/XRefs.cpp
M clang-tools-extra/clangd/index/MemIndex.cpp
M clang-tools-extra/clangd/index/StdLib.cpp
M clang-tools-extra/clangd/index/Symbol.h
M clang-tools-extra/clangd/index/SymbolCollector.cpp
M clang-tools-extra/clangd/index/SymbolCollector.h
M clang-tools-extra/clangd/index/dex/Dex.cpp
M clang-tools-extra/clangd/index/remote/CMakeLists.txt
M clang-tools-extra/clangd/index/remote/marshalling/CMakeLists.txt
M clang-tools-extra/clangd/index/remote/unimplemented/CMakeLists.txt
M clang-tools-extra/clangd/refactor/tweaks/CMakeLists.txt
M clang-tools-extra/clangd/refactor/tweaks/DefineOutline.cpp
A clang-tools-extra/clangd/refactor/tweaks/SwapBinaryOperands.cpp
A clang-tools-extra/clangd/support/Bracket.cpp
A clang-tools-extra/clangd/support/Bracket.h
M clang-tools-extra/clangd/support/CMakeLists.txt
A clang-tools-extra/clangd/support/DirectiveTree.cpp
A clang-tools-extra/clangd/support/DirectiveTree.h
A clang-tools-extra/clangd/support/Lex.cpp
A clang-tools-extra/clangd/support/Token.cpp
A clang-tools-extra/clangd/support/Token.h
M clang-tools-extra/clangd/tool/CMakeLists.txt
M clang-tools-extra/clangd/tool/ClangdMain.cpp
M clang-tools-extra/clangd/unittests/CMakeLists.txt
M clang-tools-extra/clangd/unittests/ClangdLSPServerTests.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
M clang-tools-extra/clangd/unittests/DiagnosticsTests.cpp
M clang-tools-extra/clangd/unittests/ParsedASTTests.cpp
M clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp
M clang-tools-extra/clangd/unittests/SymbolCollectorTests.cpp
M clang-tools-extra/clangd/unittests/TypeHierarchyTests.cpp
M clang-tools-extra/clangd/unittests/tweaks/DefineOutlineTests.cpp
A clang-tools-extra/clangd/unittests/tweaks/SwapBinaryOperandsTests.cpp
M clang-tools-extra/clangd/xpc/CMakeLists.txt
M clang-tools-extra/docs/ReleaseNotes.rst
R clang-tools-extra/docs/clang-rename.rst
A clang-tools-extra/docs/clang-tidy/ExternalClang-TidyExamples.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/bitwise-pointer-cast.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/dangling-handle.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/return-const-ref-from-parameter.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/sizeof-expression.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/tagged-union-member-count.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unchecked-optional-access.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unsafe-functions.rst
A clang-tools-extra/docs/clang-tidy/checks/cert/arr39-c.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/avoid-c-arrays.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-starts-ends-with.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-std-format.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-std-print.rst
A clang-tools-extra/docs/clang-tidy/checks/portability/template-virtual-member-function.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/container-contains.rst
M clang-tools-extra/docs/clang-tidy/index.rst
M clang-tools-extra/docs/index.rst
M clang-tools-extra/include-cleaner/include/clang-include-cleaner/Analysis.h
M clang-tools-extra/include-cleaner/lib/Analysis.cpp
M clang-tools-extra/include-cleaner/lib/CMakeLists.txt
A clang-tools-extra/include-cleaner/test/tool-ignores-warnings.cpp
M clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
M clang-tools-extra/include-cleaner/unittests/AnalysisTest.cpp
M clang-tools-extra/include-cleaner/unittests/FindHeadersTest.cpp
M clang-tools-extra/include-cleaner/unittests/RecordTest.cpp
M clang-tools-extra/modularize/Modularize.cpp
R clang-tools-extra/pseudo/CMakeLists.txt
R clang-tools-extra/pseudo/DesignNotes.md
R clang-tools-extra/pseudo/Disambiguation.md
R clang-tools-extra/pseudo/README.md
R clang-tools-extra/pseudo/benchmarks/Benchmark.cpp
R clang-tools-extra/pseudo/benchmarks/CMakeLists.txt
R clang-tools-extra/pseudo/fuzzer/CMakeLists.txt
R clang-tools-extra/pseudo/fuzzer/Fuzzer.cpp
R clang-tools-extra/pseudo/fuzzer/Main.cpp
R clang-tools-extra/pseudo/gen/CMakeLists.txt
R clang-tools-extra/pseudo/gen/Main.cpp
R clang-tools-extra/pseudo/include/CMakeLists.txt
R clang-tools-extra/pseudo/include/clang-pseudo/Bracket.h
R clang-tools-extra/pseudo/include/clang-pseudo/DirectiveTree.h
R clang-tools-extra/pseudo/include/clang-pseudo/Disambiguate.h
R clang-tools-extra/pseudo/include/clang-pseudo/Forest.h
R clang-tools-extra/pseudo/include/clang-pseudo/GLR.h
R clang-tools-extra/pseudo/include/clang-pseudo/Language.h
R clang-tools-extra/pseudo/include/clang-pseudo/Token.h
R clang-tools-extra/pseudo/include/clang-pseudo/cli/CLI.h
R clang-tools-extra/pseudo/include/clang-pseudo/cxx/CXX.h
R clang-tools-extra/pseudo/include/clang-pseudo/grammar/Grammar.h
R clang-tools-extra/pseudo/include/clang-pseudo/grammar/LRGraph.h
R clang-tools-extra/pseudo/include/clang-pseudo/grammar/LRTable.h
R clang-tools-extra/pseudo/lib/Bracket.cpp
R clang-tools-extra/pseudo/lib/CMakeLists.txt
R clang-tools-extra/pseudo/lib/DirectiveTree.cpp
R clang-tools-extra/pseudo/lib/Disambiguate.cpp
R clang-tools-extra/pseudo/lib/Forest.cpp
R clang-tools-extra/pseudo/lib/GLR.cpp
R clang-tools-extra/pseudo/lib/Lex.cpp
R clang-tools-extra/pseudo/lib/Token.cpp
R clang-tools-extra/pseudo/lib/cli/CLI.cpp
R clang-tools-extra/pseudo/lib/cli/CMakeLists.txt
R clang-tools-extra/pseudo/lib/cxx/CMakeLists.txt
R clang-tools-extra/pseudo/lib/cxx/CXX.cpp
R clang-tools-extra/pseudo/lib/cxx/cxx.bnf
R clang-tools-extra/pseudo/lib/grammar/CMakeLists.txt
R clang-tools-extra/pseudo/lib/grammar/Grammar.cpp
R clang-tools-extra/pseudo/lib/grammar/GrammarBNF.cpp
R clang-tools-extra/pseudo/lib/grammar/LRGraph.cpp
R clang-tools-extra/pseudo/lib/grammar/LRTable.cpp
R clang-tools-extra/pseudo/lib/grammar/LRTableBuild.cpp
R clang-tools-extra/pseudo/test/.clang-format
R clang-tools-extra/pseudo/test/CMakeLists.txt
R clang-tools-extra/pseudo/test/Unit/lit.cfg.py
R clang-tools-extra/pseudo/test/Unit/lit.site.cfg.py.in
R clang-tools-extra/pseudo/test/check-cxx-bnf.test
R clang-tools-extra/pseudo/test/crash/backslashes.c
R clang-tools-extra/pseudo/test/cxx/capture-list.cpp
R clang-tools-extra/pseudo/test/cxx/contextual-keywords.cpp
R clang-tools-extra/pseudo/test/cxx/dangling-else.cpp
R clang-tools-extra/pseudo/test/cxx/decl-specfier-seq.cpp
R clang-tools-extra/pseudo/test/cxx/declarator-function.cpp
R clang-tools-extra/pseudo/test/cxx/declarator-var.cpp
R clang-tools-extra/pseudo/test/cxx/declator-member-function.cpp
R clang-tools-extra/pseudo/test/cxx/empty-member-declaration.cpp
R clang-tools-extra/pseudo/test/cxx/empty-member-spec.cpp
R clang-tools-extra/pseudo/test/cxx/keyword.cpp
R clang-tools-extra/pseudo/test/cxx/literals.cpp
R clang-tools-extra/pseudo/test/cxx/mixed-designator.cpp
R clang-tools-extra/pseudo/test/cxx/nested-name-specifier.cpp
R clang-tools-extra/pseudo/test/cxx/parameter-decl-clause.cpp
R clang-tools-extra/pseudo/test/cxx/predefined-identifier.cpp
R clang-tools-extra/pseudo/test/cxx/recovery-func-parameters.cpp
R clang-tools-extra/pseudo/test/cxx/recovery-init-list.cpp
R clang-tools-extra/pseudo/test/cxx/structured-binding.cpp
R clang-tools-extra/pseudo/test/cxx/template-empty-type-parameter.cpp
R clang-tools-extra/pseudo/test/cxx/unsized-array.cpp
R clang-tools-extra/pseudo/test/fuzzer.cpp
R clang-tools-extra/pseudo/test/glr-variant-start.cpp
R clang-tools-extra/pseudo/test/glr.cpp
R clang-tools-extra/pseudo/test/html-forest.c
R clang-tools-extra/pseudo/test/lex.c
R clang-tools-extra/pseudo/test/lit.cfg.py
R clang-tools-extra/pseudo/test/lit.local.cfg
R clang-tools-extra/pseudo/test/lit.site.cfg.py.in
R clang-tools-extra/pseudo/test/lr-build-basic.test
R clang-tools-extra/pseudo/test/lr-build-conflicts.test
R clang-tools-extra/pseudo/test/strip-directives.c
R clang-tools-extra/pseudo/tool/CMakeLists.txt
R clang-tools-extra/pseudo/tool/ClangPseudo.cpp
R clang-tools-extra/pseudo/tool/HTMLForest.cpp
R clang-tools-extra/pseudo/tool/HTMLForest.css
R clang-tools-extra/pseudo/tool/HTMLForest.html
R clang-tools-extra/pseudo/tool/HTMLForest.js
R clang-tools-extra/pseudo/unittests/BracketTest.cpp
R clang-tools-extra/pseudo/unittests/CMakeLists.txt
R clang-tools-extra/pseudo/unittests/CXXTest.cpp
R clang-tools-extra/pseudo/unittests/DirectiveTreeTest.cpp
R clang-tools-extra/pseudo/unittests/DisambiguateTest.cpp
R clang-tools-extra/pseudo/unittests/ForestTest.cpp
R clang-tools-extra/pseudo/unittests/GLRTest.cpp
R clang-tools-extra/pseudo/unittests/GrammarTest.cpp
R clang-tools-extra/pseudo/unittests/LRTableTest.cpp
R clang-tools-extra/pseudo/unittests/TokenTest.cpp
M clang-tools-extra/test/CMakeLists.txt
R clang-tools-extra/test/clang-apply-replacements/ClangRenameClassReplacements.cpp
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/inttypes.h
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/string
A clang-tools-extra/test/clang-tidy/checkers/bugprone/Inputs/unchecked-optional-access/bde/types/bdlb_nullablevalue.h
A clang-tools-extra/test/clang-tidy/checkers/bugprone/Inputs/unchecked-optional-access/bde/types/bsl_optional.h
A clang-tools-extra/test/clang-tidy/checkers/bugprone/bitwise-pointer-cast-cxx20.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/bitwise-pointer-cast.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/forwarding-reference-overload.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/posix-return.cpp
R clang-tools-extra/test/clang-tidy/checkers/bugprone/sizeof-expression-2.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/sizeof-expression-pointer-arithmetics-c11.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/sizeof-expression-pointer-arithmetics.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/sizeof-expression.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/sizeof-expression.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-counting-enum-heuristic-bad-config.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-counting-enum-heuristic-is-disabled.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-counting-enum-heuristic-is-enabled.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-counting-enum-prefixes-and-suffixes.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-counting-enum-prefixes.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-counting-enum-suffixes.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-strictmode-is-disabled.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-strictmode-is-enabled.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count.m
A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count.mm
M clang-tools-extra/test/clang-tidy/checkers/bugprone/unchecked-optional-access.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/unsafe-functions-custom-regex.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/unsafe-functions-custom.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/unsafe-functions.c
M clang-tools-extra/test/clang-tidy/checkers/cert/flp30-c.c
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/prefer-member-initializer.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/definitions-in-headers.hpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-c-arrays-c++20.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-c-arrays-ignores-main.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-c-arrays-ignores-strings.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-c-arrays-ignores-three-arg-main.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-c-arrays.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-basic.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/min-max-use-initializer-list.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-nullptr.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-starts-ends-with.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/avoid-endl.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/move-const-arg.cpp
A clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-crash.cpp
A clang-tools-extra/test/clang-tidy/checkers/portability/template-virtual-member-function.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/container-contains.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/enum-initial-value.c
M clang-tools-extra/test/clang-tidy/checkers/readability/enum-initial-value.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/nolint.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/nolintnextline.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/verify-config.cpp
M clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h
M clang-tools-extra/unittests/clang-tidy/IncludeCleanerTest.cpp
M clang-tools-extra/unittests/clang-tidy/IncludeInserterTest.cpp
M clang-tools-extra/unittests/clang-tidy/NamespaceAliaserTest.cpp
M clang-tools-extra/unittests/clang-tidy/ReadabilityModuleTest.cpp
M clang-tools-extra/unittests/clang-tidy/TransformerClangTidyCheckTest.cpp
M clang-tools-extra/unittests/clang-tidy/UsingInserterTest.cpp
M clang-tools-extra/unittests/include/common/VirtualFileHelper.h
M clang/CMakeLists.txt
R clang/CodeOwners.rst
A clang/Maintainers.rst
A clang/README.md
R clang/README.txt
M clang/bindings/python/clang/cindex.py
M clang/bindings/python/tests/CMakeLists.txt
M clang/bindings/python/tests/cindex/test_cursor.py
M clang/bindings/python/tests/cindex/test_diagnostics.py
M clang/bindings/python/tests/cindex/test_type.py
M clang/cmake/caches/Android.cmake
M clang/cmake/caches/Fuchsia-stage2.cmake
M clang/cmake/caches/Release.cmake
A clang/cmake/caches/hexagon-unknown-linux-musl-clang-cross.cmake
A clang/cmake/caches/hexagon-unknown-linux-musl-clang.cmake
M clang/cmake/modules/AddClang.cmake
M clang/docs/AddressSanitizer.rst
M clang/docs/CMakeLists.txt
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/ClangFormattedStatus.rst
M clang/docs/ClangPlugins.rst
R clang/docs/CodeOwners.rst
M clang/docs/DebuggingCoroutines.rst
M clang/docs/HardwareAssistedAddressSanitizerDesign.rst
M clang/docs/LanguageExtensions.rst
M clang/docs/LeakSanitizer.rst
A clang/docs/Maintainers.rst
M clang/docs/MemorySanitizer.rst
M clang/docs/Multilib.rst
M clang/docs/OpenMPSupport.rst
M clang/docs/RealtimeSanitizer.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/StandardCPlusPlusModules.rst
M clang/docs/ThreadSanitizer.rst
M clang/docs/UndefinedBehaviorSanitizer.rst
M clang/docs/UsersManual.rst
M clang/docs/analyzer/checkers.rst
M clang/docs/analyzer/user-docs/TaintAnalysisConfiguration.rst
M clang/docs/index.rst
M clang/docs/tools/clang-formatted-files.txt
M clang/examples/Attribute/Attribute.cpp
M clang/examples/Attribute/CMakeLists.txt
M clang/include/clang/AST/APValue.h
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/Attr.h
M clang/include/clang/AST/CanonicalType.h
M clang/include/clang/AST/ComputeDependence.h
M clang/include/clang/AST/Decl.h
M clang/include/clang/AST/DeclBase.h
M clang/include/clang/AST/DeclCXX.h
M clang/include/clang/AST/DeclID.h
M clang/include/clang/AST/DeclTemplate.h
M clang/include/clang/AST/Expr.h
M clang/include/clang/AST/JSONNodeDumper.h
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/AST/OpenMPClause.h
M clang/include/clang/AST/PrettyPrinter.h
M clang/include/clang/AST/PropertiesBase.td
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/Stmt.h
M clang/include/clang/AST/StmtDataCollectors.td
M clang/include/clang/AST/TextNodeDumper.h
M clang/include/clang/AST/Type.h
M clang/include/clang/AST/TypeLoc.h
M clang/include/clang/AST/TypeProperties.td
M clang/include/clang/Analysis/Analyses/ExprMutationAnalyzer.h
M clang/include/clang/Basic/AArch64SVEACLETypes.def
M clang/include/clang/Basic/AMDGPUTypes.def
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/Builtins.h
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/BuiltinsNVPTX.def
M clang/include/clang/Basic/BuiltinsPPC.def
M clang/include/clang/Basic/BuiltinsRISCV.td
A clang/include/clang/Basic/BuiltinsRISCVXCV.td
M clang/include/clang/Basic/BuiltinsSystemZ.def
M clang/include/clang/Basic/BuiltinsWebAssembly.def
M clang/include/clang/Basic/BuiltinsX86.def
M clang/include/clang/Basic/BuiltinsX86_64.def
A clang/include/clang/Basic/CFProtectionOptions.def
A clang/include/clang/Basic/CFProtectionOptions.h
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Basic/CodeGenOptions.h
M clang/include/clang/Basic/Diagnostic.h
M clang/include/clang/Basic/DiagnosticASTKinds.td
M clang/include/clang/Basic/DiagnosticCommonKinds.td
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticIDs.h
M clang/include/clang/Basic/DiagnosticLexKinds.td
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/DiagnosticSerializationKinds.td
M clang/include/clang/Basic/FileManager.h
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/LangOptions.h
M clang/include/clang/Basic/LangStandards.def
M clang/include/clang/Basic/OpenACCClauses.def
M clang/include/clang/Basic/OpenACCKinds.h
M clang/include/clang/Basic/ParsedAttrInfo.h
M clang/include/clang/Basic/PartialDiagnostic.h
M clang/include/clang/Basic/PlistSupport.h
M clang/include/clang/Basic/StmtNodes.td
M clang/include/clang/Basic/TargetInfo.h
M clang/include/clang/Basic/TokenKinds.def
M clang/include/clang/Basic/arm_neon.td
M clang/include/clang/Basic/arm_sme.td
M clang/include/clang/Basic/arm_sve.td
M clang/include/clang/Basic/riscv_vector.td
A clang/include/clang/CIR/.clang-tidy
A clang/include/clang/CIR/CIRGenerator.h
A clang/include/clang/CIR/FrontendAction/CIRGenAction.h
A clang/include/clang/CIRFrontendAction/.clang-tidy
M clang/include/clang/CodeGen/CGFunctionInfo.h
M clang/include/clang/Driver/Multilib.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/Format/Format.h
M clang/include/clang/Frontend/ASTUnit.h
M clang/include/clang/Frontend/MultiplexConsumer.h
M clang/include/clang/Interpreter/Interpreter.h
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/ScopeInfo.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/SemaHLSL.h
M clang/include/clang/Sema/SemaObjC.h
M clang/include/clang/Sema/SemaOpenACC.h
M clang/include/clang/Sema/SemaOpenMP.h
M clang/include/clang/Sema/SemaRISCV.h
M clang/include/clang/Sema/Template.h
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/include/clang/Serialization/ASTReader.h
M clang/include/clang/Serialization/ASTWriter.h
M clang/include/clang/Serialization/ModuleFile.h
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h
M clang/include/clang/StaticAnalyzer/Core/CheckerManager.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicExtent.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SVals.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/Store.h
A clang/include/clang/Support/Compiler.h
M clang/include/clang/Testing/CommandLineArgs.h
M clang/include/clang/Testing/TestClangConfig.h
A clang/include/clang/Testing/TestLanguage.def
M clang/include/clang/Tooling/CompilationDatabase.h
M clang/include/module.modulemap
M clang/lib/APINotes/APINotesYAMLCompiler.cpp
M clang/lib/AST/APValue.cpp
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/ByteCode/Boolean.h
M clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Descriptor.cpp
M clang/lib/AST/ByteCode/Descriptor.h
M clang/lib/AST/ByteCode/Disasm.cpp
M clang/lib/AST/ByteCode/EvaluationResult.cpp
A clang/lib/AST/ByteCode/FixedPoint.h
M clang/lib/AST/ByteCode/Function.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBlock.cpp
M clang/lib/AST/ByteCode/InterpBlock.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpFrame.cpp
M clang/lib/AST/ByteCode/InterpFrame.h
M clang/lib/AST/ByteCode/InterpStack.cpp
M clang/lib/AST/ByteCode/InterpStack.h
M clang/lib/AST/ByteCode/InterpState.cpp
M clang/lib/AST/ByteCode/InterpState.h
M clang/lib/AST/ByteCode/MemberPointer.cpp
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/Pointer.cpp
M clang/lib/AST/ByteCode/Pointer.h
M clang/lib/AST/ByteCode/PrimType.cpp
M clang/lib/AST/ByteCode/PrimType.h
M clang/lib/AST/ByteCode/Program.cpp
M clang/lib/AST/ByteCode/Program.h
M clang/lib/AST/ByteCode/Record.cpp
M clang/lib/AST/ByteCode/Record.h
M clang/lib/AST/CXXInheritance.cpp
M clang/lib/AST/ComputeDependence.cpp
M clang/lib/AST/DataCollection.cpp
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclBase.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/DeclPrinter.cpp
M clang/lib/AST/DeclTemplate.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprClassification.cpp
M clang/lib/AST/ExprConstShared.h
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/InheritViz.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/JSONNodeDumper.cpp
M clang/lib/AST/Mangle.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/AST/NSAPI.cpp
M clang/lib/AST/OpenACCClause.cpp
M clang/lib/AST/OpenMPClause.cpp
M clang/lib/AST/PrintfFormatString.cpp
M clang/lib/AST/StmtPrinter.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/AST/StmtViz.cpp
M clang/lib/AST/TemplateName.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypeLoc.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/ASTMatchers/ASTMatchFinder.cpp
M clang/lib/ASTMatchers/ASTMatchersInternal.cpp
M clang/lib/ASTMatchers/Dynamic/Registry.cpp
M clang/lib/Analysis/CFG.cpp
M clang/lib/Analysis/ExprMutationAnalyzer.cpp
M clang/lib/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.cpp
M clang/lib/Analysis/ProgramPoint.cpp
M clang/lib/Analysis/UnsafeBufferUsage.cpp
M clang/lib/Basic/Diagnostic.cpp
M clang/lib/Basic/DiagnosticIDs.cpp
M clang/lib/Basic/IdentifierTable.cpp
M clang/lib/Basic/LangOptions.cpp
M clang/lib/Basic/LangStandards.cpp
M clang/lib/Basic/Module.cpp
M clang/lib/Basic/OpenMPKinds.cpp
M clang/lib/Basic/OperatorPrecedence.cpp
M clang/lib/Basic/SourceManager.cpp
M clang/lib/Basic/TargetID.cpp
M clang/lib/Basic/TargetInfo.cpp
M clang/lib/Basic/Targets.cpp
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/lib/Basic/Targets/ARM.cpp
M clang/lib/Basic/Targets/BPF.cpp
M clang/lib/Basic/Targets/DirectX.h
M clang/lib/Basic/Targets/Mips.h
M clang/lib/Basic/Targets/OSTargets.h
M clang/lib/Basic/Targets/RISCV.cpp
M clang/lib/Basic/Targets/RISCV.h
M clang/lib/Basic/Targets/SPIR.h
M clang/lib/Basic/Targets/Sparc.h
M clang/lib/Basic/Targets/X86.cpp
M clang/lib/Basic/Targets/X86.h
A clang/lib/CIR/.clang-tidy
M clang/lib/CIR/CMakeLists.txt
A clang/lib/CIR/CodeGen/CIRGenModule.cpp
A clang/lib/CIR/CodeGen/CIRGenModule.h
A clang/lib/CIR/CodeGen/CIRGenTypeCache.h
A clang/lib/CIR/CodeGen/CIRGenerator.cpp
A clang/lib/CIR/CodeGen/CMakeLists.txt
A clang/lib/CIR/FrontendAction/CIRGenAction.cpp
A clang/lib/CIR/FrontendAction/CMakeLists.txt
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGAtomic.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGDebugInfo.h
M clang/lib/CodeGen/CGDecl.cpp
M clang/lib/CodeGen/CGDeclCXX.cpp
M clang/lib/CodeGen/CGException.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprAgg.cpp
M clang/lib/CodeGen/CGExprComplex.cpp
M clang/lib/CodeGen/CGExprConstant.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/CodeGen/CGStmt.cpp
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/CodeGen/CMakeLists.txt
M clang/lib/CodeGen/CodeGenAction.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/CodeGen/CodeGenPGO.cpp
M clang/lib/CodeGen/CodeGenTypes.cpp
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/MacroPPCallbacks.cpp
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/CodeGen/SanitizerMetadata.cpp
M clang/lib/CodeGen/Targets/AMDGPU.cpp
M clang/lib/CodeGen/Targets/ARM.cpp
M clang/lib/CodeGen/Targets/RISCV.cpp
M clang/lib/CodeGen/Targets/SPIR.cpp
M clang/lib/CodeGen/Targets/SystemZ.cpp
M clang/lib/CodeGen/Targets/X86.cpp
M clang/lib/CrossTU/CrossTranslationUnit.cpp
M clang/lib/Driver/CMakeLists.txt
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/Job.cpp
M clang/lib/Driver/Multilib.cpp
M clang/lib/Driver/MultilibBuilder.cpp
M clang/lib/Driver/OffloadBundler.cpp
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/AIX.cpp
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp
M clang/lib/Driver/ToolChains/AMDGPUOpenMP.h
M clang/lib/Driver/ToolChains/AVR.cpp
M clang/lib/Driver/ToolChains/Arch/ARM.cpp
M clang/lib/Driver/ToolChains/Arch/LoongArch.cpp
M clang/lib/Driver/ToolChains/Arch/Mips.cpp
M clang/lib/Driver/ToolChains/Arch/Sparc.cpp
M clang/lib/Driver/ToolChains/BareMetal.cpp
M clang/lib/Driver/ToolChains/BareMetal.h
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/CommonArgs.h
M clang/lib/Driver/ToolChains/Cuda.cpp
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/DragonFly.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Driver/ToolChains/FreeBSD.cpp
M clang/lib/Driver/ToolChains/Gnu.cpp
M clang/lib/Driver/ToolChains/HIPUtility.cpp
M clang/lib/Driver/ToolChains/Haiku.cpp
M clang/lib/Driver/ToolChains/Linux.cpp
M clang/lib/Driver/ToolChains/MSVC.cpp
M clang/lib/Driver/ToolChains/MinGW.cpp
M clang/lib/Driver/ToolChains/NetBSD.cpp
M clang/lib/Driver/ToolChains/OpenBSD.cpp
M clang/lib/Driver/ToolChains/PS4CPU.cpp
M clang/lib/Driver/ToolChains/PS4CPU.h
M clang/lib/Driver/ToolChains/Solaris.cpp
A clang/lib/Driver/ToolChains/UEFI.cpp
A clang/lib/Driver/ToolChains/UEFI.h
M clang/lib/Driver/ToolChains/ZOS.cpp
M clang/lib/ExtractAPI/DeclarationFragments.cpp
M clang/lib/ExtractAPI/ExtractAPIConsumer.cpp
M clang/lib/Format/BreakableToken.cpp
M clang/lib/Format/BreakableToken.h
M clang/lib/Format/ContinuationIndenter.cpp
M clang/lib/Format/Format.cpp
M clang/lib/Format/FormatToken.h
M clang/lib/Format/FormatTokenLexer.cpp
M clang/lib/Format/FormatTokenLexer.h
M clang/lib/Format/MacroExpander.cpp
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/WhitespaceManager.cpp
M clang/lib/Frontend/ASTConsumers.cpp
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/ChainedIncludesSource.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/FrontendAction.cpp
M clang/lib/Frontend/MultiplexConsumer.cpp
M clang/lib/Frontend/Rewrite/FixItRewriter.cpp
M clang/lib/Frontend/Rewrite/FrontendActions.cpp
M clang/lib/Frontend/Rewrite/RewriteObjC.cpp
M clang/lib/Frontend/TextDiagnostic.cpp
M clang/lib/Frontend/TextDiagnosticPrinter.cpp
M clang/lib/FrontendTool/CMakeLists.txt
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/lib/Headers/CMakeLists.txt
M clang/lib/Headers/adcintrin.h
M clang/lib/Headers/adxintrin.h
M clang/lib/Headers/altivec.h
M clang/lib/Headers/arm_acle.h
A clang/lib/Headers/avx10_2copyintrin.h
M clang/lib/Headers/avx512bitalgintrin.h
M clang/lib/Headers/avx512fintrin.h
M clang/lib/Headers/avx512vlbitalgintrin.h
M clang/lib/Headers/avx512vpopcntdqintrin.h
M clang/lib/Headers/avx512vpopcntdqvlintrin.h
M clang/lib/Headers/avxintrin.h
M clang/lib/Headers/bmi2intrin.h
M clang/lib/Headers/bmiintrin.h
M clang/lib/Headers/cpuid.h
M clang/lib/Headers/emmintrin.h
M clang/lib/Headers/hlsl.h
A clang/lib/Headers/hlsl/hlsl_detail.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Headers/immintrin.h
M clang/lib/Headers/llvm_libc_wrappers/ctype.h
M clang/lib/Headers/lzcntintrin.h
M clang/lib/Headers/module.modulemap
M clang/lib/Headers/pmmintrin.h
M clang/lib/Headers/popcntintrin.h
A clang/lib/Headers/riscv_corev_alu.h
M clang/lib/Headers/tbmintrin.h
M clang/lib/Headers/vecintrin.h
M clang/lib/Headers/wasm_simd128.h
M clang/lib/Headers/xmmintrin.h
M clang/lib/Index/USRGeneration.cpp
M clang/lib/InstallAPI/Frontend.cpp
M clang/lib/Interpreter/CMakeLists.txt
M clang/lib/Interpreter/DeviceOffload.cpp
M clang/lib/Interpreter/DeviceOffload.h
M clang/lib/Interpreter/IncrementalExecutor.cpp
M clang/lib/Interpreter/IncrementalParser.cpp
M clang/lib/Interpreter/IncrementalParser.h
M clang/lib/Interpreter/Interpreter.cpp
A clang/lib/Interpreter/InterpreterValuePrinter.cpp
M clang/lib/Lex/HeaderSearch.cpp
M clang/lib/Lex/Lexer.cpp
M clang/lib/Lex/ModuleMap.cpp
M clang/lib/Lex/PPLexerChange.cpp
M clang/lib/Lex/PPMacroExpansion.cpp
M clang/lib/Lex/Preprocessor.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Parse/ParseExpr.cpp
M clang/lib/Parse/ParseExprCXX.cpp
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Parse/ParsePragma.cpp
M clang/lib/Parse/ParseStmt.cpp
M clang/lib/Parse/ParseTemplate.cpp
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/lib/Sema/CMakeLists.txt
M clang/lib/Sema/CheckExprLifetime.cpp
M clang/lib/Sema/CheckExprLifetime.h
M clang/lib/Sema/DeclSpec.cpp
M clang/lib/Sema/HLSLExternalSemaSource.cpp
M clang/lib/Sema/JumpDiagnostics.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaAPINotes.cpp
M clang/lib/Sema/SemaARM.cpp
M clang/lib/Sema/SemaAttr.cpp
M clang/lib/Sema/SemaAvailability.cpp
M clang/lib/Sema/SemaBase.cpp
M clang/lib/Sema/SemaCast.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaCodeComplete.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaCoroutine.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaDeclObjC.cpp
M clang/lib/Sema/SemaExceptionSpec.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
A clang/lib/Sema/SemaFunctionEffects.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaLambda.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaModule.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaRISCV.cpp
M clang/lib/Sema/SemaStmt.cpp
M clang/lib/Sema/SemaStmtAttr.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Sema/SemaTemplateVariadic.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTCommon.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
M clang/lib/Serialization/GlobalModuleIndex.cpp
M clang/lib/Serialization/ModuleManager.cpp
M clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
M clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/DivZeroChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/ErrnoChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/FixedAddressChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/MoveChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/OSObjectCStyleCast.cpp
M clang/lib/StaticAnalyzer/Checkers/ObjCSuperDeallocChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/PointerIterationChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/PointerSubChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp
M clang/lib/StaticAnalyzer/Checkers/SmartPtrModeling.cpp
M clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/StdVariantChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/VLASizeChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
R clang/lib/StaticAnalyzer/Checkers/WebKit/NoUncountedMembersChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
A clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefMemberChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RefCntblBaseVirtualDtorChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedCallArgsChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedLambdaCapturesChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedLocalVarsChecker.cpp
M clang/lib/StaticAnalyzer/Core/BasicValueFactory.cpp
M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
M clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
M clang/lib/StaticAnalyzer/Core/CheckerManager.cpp
M clang/lib/StaticAnalyzer/Core/DynamicExtent.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
M clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp
M clang/lib/StaticAnalyzer/Core/LoopUnrolling.cpp
M clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp
M clang/lib/StaticAnalyzer/Core/ProgramState.cpp
M clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp
M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
M clang/lib/StaticAnalyzer/Core/SVals.cpp
M clang/lib/Testing/CommandLineArgs.cpp
M clang/lib/Tooling/CMakeLists.txt
M clang/lib/Tooling/CommonOptionsParser.cpp
M clang/lib/Tooling/Core/Replacement.cpp
M clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
M clang/lib/Tooling/Inclusions/HeaderIncludes.cpp
A clang/lib/Tooling/LocateToolCompilationDatabase.cpp
M clang/lib/Tooling/Refactoring/AtomicChange.cpp
M clang/lib/Tooling/Transformer/Stencil.cpp
M clang/test/APINotes/Inputs/Frameworks/SimpleKit.framework/Headers/SimpleKit.apinotes
M clang/test/APINotes/Inputs/Frameworks/SimpleKit.framework/Headers/SimpleKit.h
M clang/test/APINotes/types.m
M clang/test/APINotes/yaml-roundtrip-2.test
M clang/test/AST/ByteCode/builtin-functions.cpp
M clang/test/AST/ByteCode/codegen.c
M clang/test/AST/ByteCode/codegen.cpp
A clang/test/AST/ByteCode/codegen.m
M clang/test/AST/ByteCode/constexpr-vectors.cpp
M clang/test/AST/ByteCode/cxx17.cpp
A clang/test/AST/ByteCode/cxx1z.cpp
M clang/test/AST/ByteCode/cxx20.cpp
M clang/test/AST/ByteCode/cxx23.cpp
A clang/test/AST/ByteCode/extern.cpp
A clang/test/AST/ByteCode/fixed-point.cpp
M clang/test/AST/ByteCode/hlsl.hlsl
M clang/test/AST/ByteCode/invalid.cpp
M clang/test/AST/ByteCode/new-delete.cpp
A clang/test/AST/ByteCode/placement-new.cpp
M clang/test/AST/ByteCode/records.cpp
M clang/test/AST/ByteCode/shifts.cpp
M clang/test/AST/ByteCode/vectors.cpp
M clang/test/AST/ByteCode/weak.cpp
A clang/test/AST/HLSL/ArrayAssignable.hlsl
M clang/test/AST/HLSL/RWBuffer-AST.hlsl
M clang/test/AST/HLSL/StructuredBuffer-AST.hlsl
M clang/test/AST/ast-dump-concepts.cpp
M clang/test/AST/ast-dump-for-range-lifetime.cpp
M clang/test/AST/ast-print-openacc-loop-construct.cpp
M clang/test/AST/attr-print-emit.cpp
A clang/test/AST/new-unknown-type.cpp
A clang/test/AST/solaris-tm.cpp
M clang/test/Analysis/Checkers/WebKit/mock-types.h
M clang/test/Analysis/Checkers/WebKit/ref-cntbl-crtp-base-no-virtual-dtor.cpp
A clang/test/Analysis/Checkers/WebKit/unchecked-members.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.mm
A clang/test/Analysis/Checkers/WebKit/uncounted-obj-const-v-muable.cpp
M clang/test/Analysis/Inputs/system-header-simulator.h
M clang/test/Analysis/NewDelete-atomics.cpp
M clang/test/Analysis/NewDelete-checker-test.cpp
M clang/test/Analysis/NewDelete-intersections.mm
M clang/test/Analysis/analyzer-config.c
M clang/test/Analysis/asm.cpp
M clang/test/Analysis/assume-controlled-environment.c
M clang/test/Analysis/bool-assignment.c
A clang/test/Analysis/builtin_overflow.c
A clang/test/Analysis/builtin_overflow_notes.c
M clang/test/Analysis/casts.c
A clang/test/Analysis/cstring-uninitread-notes.c
M clang/test/Analysis/ctu-on-demand-parsing.c
M clang/test/Analysis/ctu-on-demand-parsing.cpp
M clang/test/Analysis/cxx-method-names.cpp
M clang/test/Analysis/debug-exprinspection-istainted.c
M clang/test/Analysis/diagnostics/Inputs/expected-sarif/sarif-diagnostics-taint-test.c.sarif
M clang/test/Analysis/diagnostics/Inputs/expected-sarif/sarif-multi-diagnostic-test.c.sarif
M clang/test/Analysis/diagnostics/sarif-diagnostics-taint-test.c
M clang/test/Analysis/diagnostics/sarif-multi-diagnostic-test.c
A clang/test/Analysis/divzero-tainted-div-difference.c
M clang/test/Analysis/fread.c
M clang/test/Analysis/global-region-invalidation-errno.c
M clang/test/Analysis/global-region-invalidation.c
M clang/test/Analysis/malloc-annotations.c
M clang/test/Analysis/malloc-interprocedural.c
A clang/test/Analysis/malloc-refcounted.c
M clang/test/Analysis/malloc.c
M clang/test/Analysis/malloc.cpp
M clang/test/Analysis/out-of-bounds-diagnostics.c
M clang/test/Analysis/out-of-bounds-notes.c
M clang/test/Analysis/pointer-sub-notes.c
M clang/test/Analysis/pointer-sub.c
M clang/test/Analysis/ptr-arith.c
M clang/test/Analysis/range_casts.c
M clang/test/Analysis/redefined_system.c
M clang/test/Analysis/stack-addr-ps.cpp
M clang/test/Analysis/stream-error.c
M clang/test/Analysis/stream-note.c
M clang/test/Analysis/stream.c
M clang/test/Analysis/string.c
M clang/test/Analysis/taint-checker-callback-order-has-definition.c
M clang/test/Analysis/taint-checker-callback-order-without-definition.c
M clang/test/Analysis/taint-diagnostic-visitor.c
M clang/test/Analysis/taint-dumps.c
M clang/test/Analysis/taint-generic.c
M clang/test/Analysis/taint-generic.cpp
M clang/test/Analysis/taint-tester.c
M clang/test/Analysis/taint-tester.cpp
M clang/test/Analysis/taint-tester.m
A clang/test/Analysis/z3-unarysymexpr.c
A clang/test/C/C23/n3029.c
A clang/test/C/C23/n3030.c
A clang/test/C/C2y/n3298.c
A clang/test/CIR/hello.c
A clang/test/CIR/lit.local.cfg
M clang/test/CMakeLists.txt
M clang/test/CXX/class/class.friend/p7-cxx20.cpp
M clang/test/CXX/class/class.mfct/p1-cxx20.cpp
M clang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p1.cpp
M clang/test/CXX/dcl.decl/dcl.meaning/dcl.fct/p8.cpp
M clang/test/CXX/dcl/dcl.decl/p3.cpp
M clang/test/CXX/dcl/dcl.fct/p17.cpp
M clang/test/CXX/drs/cwg14xx.cpp
M clang/test/CXX/drs/cwg1xx.cpp
M clang/test/CXX/drs/cwg22xx.cpp
M clang/test/CXX/drs/cwg25xx.cpp
M clang/test/CXX/drs/cwg27xx.cpp
M clang/test/CXX/drs/cwg29xx.cpp
M clang/test/CXX/drs/cwg3xx.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.lambda/blocks.mm
M clang/test/CXX/expr/expr.prim/expr.prim.req/requires-expr.cpp
M clang/test/CXX/lex/lex.literal/lex.ext/p1.cpp
M clang/test/CXX/lex/lex.literal/lex.ext/p10.cpp
M clang/test/CXX/lex/lex.literal/lex.ext/p11.cpp
M clang/test/CXX/lex/lex.literal/lex.ext/p3.cpp
M clang/test/CXX/lex/lex.literal/lex.ext/p4.cpp
M clang/test/CXX/lex/lex.literal/lex.ext/p5.cpp
M clang/test/CXX/lex/lex.literal/lex.ext/p6.cpp
M clang/test/CXX/lex/lex.literal/lex.ext/p7.cpp
M clang/test/CXX/lex/lex.literal/lex.ext/p8.cpp
M clang/test/CXX/lex/lex.literal/lex.ext/p9.cpp
M clang/test/CXX/module/module.import/p2.cpp
M clang/test/CXX/over/over.oper/over.literal/p2.cpp
M clang/test/CXX/over/over.oper/over.literal/p3.cpp
M clang/test/CXX/over/over.oper/over.literal/p5.cpp
M clang/test/CXX/over/over.oper/over.literal/p6.cpp
M clang/test/CXX/over/over.oper/over.literal/p7.cpp
M clang/test/CXX/over/over.oper/over.literal/p8.cpp
M clang/test/CXX/special/class.inhctor/p8.cpp
M clang/test/CXX/special/class.temporary/p6.cpp
M clang/test/CXX/temp/temp.constr/temp.constr.decl/func-template-decl.cpp
A clang/test/CXX/temp/temp.constr/temp.constr.decl/p4.cpp
M clang/test/CXX/temp/temp.res/temp.local/p8.cpp
M clang/test/CXX/temp/temp.spec/temp.expl.spec/p12.cpp
M clang/test/CXX/temp/temp.spec/temp.expl.spec/p14-23.cpp
M clang/test/CXX/temp/temp.spec/temp.expl.spec/p18.cpp
A clang/test/CXX/temp/temp.spec/temp.expl.spec/p7.cpp
M clang/test/ClangScanDeps/modules-extern-submodule.c
M clang/test/ClangScanDeps/modules-full-output-tu-order.c
M clang/test/ClangScanDeps/modules-has-include-umbrella-header.c
M clang/test/ClangScanDeps/modules-header-sharing.m
M clang/test/ClangScanDeps/modules-implementation-module-map.c
M clang/test/ClangScanDeps/modules-implementation-private.m
M clang/test/ClangScanDeps/modules-priv-fw-from-pub.m
A clang/test/ClangScanDeps/resolve-executable-path.c
M clang/test/CodeGen/2008-08-07-AlignPadding1.c
M clang/test/CodeGen/PowerPC/builtins-ppc-build-pair-mma.c
M clang/test/CodeGen/PowerPC/builtins-ppc-pair-mma-types.c
M clang/test/CodeGen/PowerPC/ppc-xmmintrin.c
M clang/test/CodeGen/RISCV/riscv-atomics.c
A clang/test/CodeGen/RISCV/riscv-cf-protection.c
M clang/test/CodeGen/RISCV/riscv-inline-asm-rvv.c
A clang/test/CodeGen/RISCV/riscv-xcvalu-c-api.c
A clang/test/CodeGen/RISCV/riscv-xcvalu.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vcreate.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vget.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlmul_ext_v.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlmul_trunc_v.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vset.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vundefined.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vget.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlmul_ext_v.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlmul_trunc_v.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vset.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-handcrafted/rvv-tuple-utils.c
A clang/test/CodeGen/SystemZ/builtins-systemz-i128.c
M clang/test/CodeGen/SystemZ/builtins-systemz-vector.c
M clang/test/CodeGen/SystemZ/systemz-abi-vector.c
M clang/test/CodeGen/SystemZ/systemz-abi.c
M clang/test/CodeGen/SystemZ/systemz-abi.cpp
M clang/test/CodeGen/X86/adc-builtins.c
M clang/test/CodeGen/X86/adx-builtins.c
M clang/test/CodeGen/X86/avx-builtins-constrained-cmp.c
M clang/test/CodeGen/X86/avx-builtins.c
M clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins-errors.c
M clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins-x64-error.c
M clang/test/CodeGen/X86/avx10_2satcvtds-builtins-errors.c
M clang/test/CodeGen/X86/avx2-builtins.c
M clang/test/CodeGen/X86/avx512bitalg-builtins.c
A clang/test/CodeGen/X86/avx512copy-builtins.c
M clang/test/CodeGen/X86/avx512f-builtins.c
M clang/test/CodeGen/X86/avx512vlbitalg-builtins.c
M clang/test/CodeGen/X86/avx512vpopcntdq-builtins.c
M clang/test/CodeGen/X86/avx512vpopcntdqvl-builtins.c
M clang/test/CodeGen/X86/bmi-builtins.c
M clang/test/CodeGen/X86/bmi2-builtins.c
M clang/test/CodeGen/X86/cx-complex-range.c
M clang/test/CodeGen/X86/f16c-builtins-constrained.c
M clang/test/CodeGen/X86/f16c-builtins.c
M clang/test/CodeGen/X86/fma-builtins-constrained.c
M clang/test/CodeGen/X86/fma-builtins.c
M clang/test/CodeGen/X86/fma4-builtins.c
M clang/test/CodeGen/X86/lzcnt-builtins.c
M clang/test/CodeGen/X86/mmx-builtins.c
A clang/test/CodeGen/X86/pr51324.c
A clang/test/CodeGen/X86/pr60006.c
M clang/test/CodeGen/X86/sse-builtins-constrained-cmp.c
M clang/test/CodeGen/X86/sse-builtins-constrained.c
M clang/test/CodeGen/X86/sse-builtins-dbg.c
M clang/test/CodeGen/X86/sse-builtins.c
M clang/test/CodeGen/X86/sse2-builtins-constrained-cmp.c
M clang/test/CodeGen/X86/sse2-builtins.c
M clang/test/CodeGen/X86/sse3-builtins.c
M clang/test/CodeGen/X86/sse41-builtins.c
M clang/test/CodeGen/X86/sse42-builtins.c
M clang/test/CodeGen/X86/sse4a-builtins.c
M clang/test/CodeGen/X86/ssse3-builtins.c
M clang/test/CodeGen/X86/tbm-builtins.c
A clang/test/CodeGen/X86/uefi-data-layout.c
M clang/test/CodeGen/X86/x86-intrinsics-imm.c
M clang/test/CodeGen/aarch64-cpu-supports.c
M clang/test/CodeGen/aarch64-fmv-dependencies.c
A clang/test/CodeGen/aarch64-fp8-intrinsics/acle_sme2_fp8_scale.c
M clang/test/CodeGen/aarch64-mixed-target-attributes.c
A clang/test/CodeGen/aarch64-neon-fp8-intrinsics/acle_neon_fscale.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_add.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_add_sub_za16.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_clamp.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvt.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvtl.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvtn.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_faminmax.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_fmlas16.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_fp_dots.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_frint.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_int_dots.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_ldr_str_zt.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x2.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x4.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x2.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x4.c
A clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_zt.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_max.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_maxnm.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_min.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_minnm.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mla.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlal.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlall.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mls.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlsl.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_read.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_sqdmulh.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_sub.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_unpkx2.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_unpkx4.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vdot.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_add.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_qrshr.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_rshl.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_selx2.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_selx4.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_uzpx2.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_uzpx4.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_zipx2.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_zipx4.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_write.c
A clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_write_lane_zt.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_zero_zt.c
M clang/test/CodeGen/aarch64-sme2p1-intrinsics/acle_sme2p1_movaz.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create2-bfloat.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create2.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create3-bfloat.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create3.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create4-bfloat.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create4.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_cvt-bfloat.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_cvtnt.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get2-bfloat.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get2.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get3-bfloat.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get3.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get4-bfloat.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get4.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld2-bfloat.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld2.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld3-bfloat.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld3.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld4-bfloat.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld4.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_reinterpret-bfloat.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_reinterpret.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set2-bfloat.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set2.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set3-bfloat.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set3.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set4-bfloat.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set4.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st2-bfloat.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st2.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st3-bfloat.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st3.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st4-bfloat.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st4.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef2-bfloat.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef2.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef3-bfloat.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef3.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef4-bfloat.c
M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef4.c
M clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_luti.c
M clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_tbl2-bfloat.c
M clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_tbl2.c
M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_create2_bool.c
M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_create4_bool.c
M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_get2_bool.c
M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_get4_bool.c
M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_ld1.c
M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_ldnt1.c
M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_loads.c
M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_pext.c
M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_qcvtn.c
M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_qrshr.c
M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_set2_bool.c
M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_set4_bool.c
M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_st1.c
M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_stnt1.c
M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_store.c
M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_undef_bool.c
M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_while_x2.c
M clang/test/CodeGen/aarch64_neon_sve_bridge_intrinsics/acle_neon_sve_bridge_get_neonq.c
M clang/test/CodeGen/align-loops.c
M clang/test/CodeGen/arm-acle-coproc.c
M clang/test/CodeGen/arm_acle.c
M clang/test/CodeGen/atomics-sema-alignment.c
A clang/test/CodeGen/attr-counted-by-pr110385.c
M clang/test/CodeGen/attr-counted-by.c
M clang/test/CodeGen/attr-target-clones-aarch64.c
A clang/test/CodeGen/attr-target-clones-riscv-invalid.c
A clang/test/CodeGen/attr-target-clones-riscv.c
A clang/test/CodeGen/attr-target-version-riscv-invalid.c
A clang/test/CodeGen/attr-target-version-riscv.c
M clang/test/CodeGen/attr-target-version.c
A clang/test/CodeGen/bpf-attr-type-tag-atomic.c
M clang/test/CodeGen/builtins-elementwise-math.c
M clang/test/CodeGen/builtins-nvptx.c
M clang/test/CodeGen/builtins-reduction-math.c
M clang/test/CodeGen/builtins-wasm.c
M clang/test/CodeGen/builtins.c
M clang/test/CodeGen/cx-complex-range.c
M clang/test/CodeGen/debug-info-codeview-buildinfo.c
A clang/test/CodeGen/fmaxfmin-invalid-arguments-type.c
A clang/test/CodeGen/inline-asm-output-variant.c
A clang/test/CodeGen/math-libcalls-tbaa-indirect-args.c
M clang/test/CodeGen/math-libcalls.c
M clang/test/CodeGen/nofpclass.c
M clang/test/CodeGen/nvptx_attributes.c
M clang/test/CodeGen/ptrauth-init-fini.c
M clang/test/CodeGen/rtsan_attribute_inserted.c
M clang/test/CodeGen/rtsan_no_attribute_sanitizer_disabled.c
M clang/test/CodeGen/scoped-atomic-ops.c
M clang/test/CodeGen/stack-protector-guard.c
M clang/test/CodeGen/strictfp-elementwise-bulitins.cpp
M clang/test/CodeGen/svboolx2_t.cpp
M clang/test/CodeGen/svboolx4_t.cpp
M clang/test/CodeGen/target-builtin-noerror.c
M clang/test/CodeGen/target-data.c
M clang/test/CodeGen/tbaa-pointers.c
M clang/test/CodeGen/tbaa-reference.cpp
M clang/test/CodeGen/ubsan-builtin-checks.c
M clang/test/CodeGen/union-init2.c
M clang/test/CodeGenCUDA/address-spaces.cu
R clang/test/CodeGenCUDA/amdgpu-func-attrs.cu
M clang/test/CodeGenCUDA/amdgpu-visibility.cu
M clang/test/CodeGenCUDA/anon-ns.cu
M clang/test/CodeGenCUDA/device-var-init.cu
M clang/test/CodeGenCUDA/device-var-linkage.cu
M clang/test/CodeGenCUDA/filter-decl.cu
M clang/test/CodeGenCUDA/static-device-var-no-rdc.cu
M clang/test/CodeGenCUDA/static-device-var-rdc.cu
M clang/test/CodeGenCUDA/template-class-static-member.cu
M clang/test/CodeGenCXX/aarch64-mangle-sve-vectors.cpp
M clang/test/CodeGenCXX/aarch64-sve-vector-init.cpp
M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
A clang/test/CodeGenCXX/attr-target-clones-riscv.cpp
A clang/test/CodeGenCXX/attr-target-version-riscv.cpp
M clang/test/CodeGenCXX/attr-target-version.cpp
M clang/test/CodeGenCXX/cxx2a-consteval.cpp
M clang/test/CodeGenCXX/debug-info-alias.cpp
A clang/test/CodeGenCXX/debug-info-line-if-2.cpp
M clang/test/CodeGenCXX/dynamic-cast-address-space.cpp
M clang/test/CodeGenCXX/fmv-namespace.cpp
M clang/test/CodeGenCXX/mangle-concept.cpp
M clang/test/CodeGenCXX/mangle-subst.cpp
M clang/test/CodeGenCXX/pr59765-modules-global-ctor-dtor.cppm
M clang/test/CodeGenCXX/spirv-amdgcn-float16.cpp
M clang/test/CodeGenCXX/template-param-objects-address-space.cpp
M clang/test/CodeGenCXX/throw-expression-typeinfo-in-address-space.cpp
M clang/test/CodeGenCXX/try-catch-with-address-space.cpp
M clang/test/CodeGenCXX/typeid-cxx11-with-address-space.cpp
M clang/test/CodeGenCXX/typeid-with-address-space.cpp
M clang/test/CodeGenCXX/typeinfo-with-address-space.cpp
M clang/test/CodeGenCXX/vtable-assume-load-address-space.cpp
M clang/test/CodeGenCXX/vtable-pointer-initialization-address-space.cpp
M clang/test/CodeGenCXX/vtt-address-space.cpp
M clang/test/CodeGenCXX/weak-init.cpp
M clang/test/CodeGenCoroutines/coro-await-elidable.cpp
M clang/test/CodeGenHIP/hipspv-addr-spaces.cpp
A clang/test/CodeGenHLSL/ArrayAssignable.hlsl
M clang/test/CodeGenHLSL/ArrayTemporary.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/OutputArguments.hlsl
M clang/test/CodeGenHLSL/GlobalConstructorFunction.hlsl
M clang/test/CodeGenHLSL/GlobalConstructorLib.hlsl
M clang/test/CodeGenHLSL/GlobalConstructors.hlsl
M clang/test/CodeGenHLSL/GlobalDestructors.hlsl
M clang/test/CodeGenHLSL/basic_types.hlsl
M clang/test/CodeGenHLSL/buffer-array-operator.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-annotations.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-constructor.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-elementtype.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-subscript.hlsl
M clang/test/CodeGenHLSL/builtins/RasterizerOrderedBuffer-annotations.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffer-annotations.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffer-constructor.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffer-elementtype.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffer-subscript.hlsl
M clang/test/CodeGenHLSL/builtins/abs.hlsl
A clang/test/CodeGenHLSL/builtins/asfloat.hlsl
A clang/test/CodeGenHLSL/builtins/asint.hlsl
A clang/test/CodeGenHLSL/builtins/asuint.hlsl
A clang/test/CodeGenHLSL/builtins/atan2.hlsl
M clang/test/CodeGenHLSL/builtins/ceil.hlsl
M clang/test/CodeGenHLSL/builtins/clamp.hlsl
M clang/test/CodeGenHLSL/builtins/cos.hlsl
A clang/test/CodeGenHLSL/builtins/countbits.hlsl
R clang/test/CodeGenHLSL/builtins/create_handle.hlsl
A clang/test/CodeGenHLSL/builtins/cross.hlsl
A clang/test/CodeGenHLSL/builtins/degrees.hlsl
M clang/test/CodeGenHLSL/builtins/exp.hlsl
M clang/test/CodeGenHLSL/builtins/exp2.hlsl
M clang/test/CodeGenHLSL/builtins/floor.hlsl
A clang/test/CodeGenHLSL/builtins/fmod.hlsl
M clang/test/CodeGenHLSL/builtins/hlsl_resource_t.hlsl
M clang/test/CodeGenHLSL/builtins/log.hlsl
M clang/test/CodeGenHLSL/builtins/log10.hlsl
M clang/test/CodeGenHLSL/builtins/log2.hlsl
M clang/test/CodeGenHLSL/builtins/max.hlsl
M clang/test/CodeGenHLSL/builtins/min.hlsl
M clang/test/CodeGenHLSL/builtins/pow.hlsl
A clang/test/CodeGenHLSL/builtins/radians.hlsl
M clang/test/CodeGenHLSL/builtins/round.hlsl
M clang/test/CodeGenHLSL/builtins/saturate.hlsl
M clang/test/CodeGenHLSL/builtins/sign.hlsl
M clang/test/CodeGenHLSL/builtins/sin.hlsl
M clang/test/CodeGenHLSL/builtins/sqrt.hlsl
M clang/test/CodeGenHLSL/builtins/trunc.hlsl
M clang/test/CodeGenHLSL/builtins/wave_get_lane_index_do_while.hlsl
M clang/test/CodeGenHLSL/builtins/wave_get_lane_index_simple.hlsl
A clang/test/CodeGenHLSL/convergence/cf.for.plain.hlsl
M clang/test/CodeGenHLSL/convergence/do.while.hlsl
M clang/test/CodeGenHLSL/convergence/for.hlsl
M clang/test/CodeGenHLSL/convergence/while.hlsl
M clang/test/CodeGenHLSL/entry.hlsl
M clang/test/CodeGenHLSL/export.hlsl
M clang/test/CodeGenHLSL/float3.hlsl
M clang/test/CodeGenHLSL/group_shared.hlsl
M clang/test/CodeGenHLSL/half.hlsl
M clang/test/CodeGenHLSL/implicit-norecurse-attrib.hlsl
A clang/test/CodeGenHLSL/inline-constructors.hlsl
A clang/test/CodeGenHLSL/inline-functions.hlsl
M clang/test/CodeGenHLSL/semantics/DispatchThreadID.hlsl
M clang/test/CodeGenHLSL/semantics/GroupIndex-codegen.hlsl
M clang/test/CodeGenHLSL/shift-mask.hlsl
M clang/test/CodeGenHLSL/sret_output.hlsl
M clang/test/CodeGenHLSL/static-local-ctor.hlsl
M clang/test/CodeGenHLSL/static_global_and_function_in_cb.hlsl
M clang/test/CodeGenHLSL/this-assignment-overload.hlsl
M clang/test/CodeGenHLSL/this-assignment.hlsl
M clang/test/CodeGenHLSL/this-reference.hlsl
A clang/test/CodeGenHLSL/wavesize.hlsl
A clang/test/CodeGenOpenCL/atomic-builtins-default-to-device-scope.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx11.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn.cl
M clang/test/Driver/B-opt.c
A clang/test/Driver/Inputs/multilib/empty.yaml
M clang/test/Driver/Xlinker-args.c
M clang/test/Driver/aarch64-multilib-rcpc3.c
A clang/test/Driver/aarch64-v96a.c
M clang/test/Driver/amdgpu-openmp-toolchain.c
M clang/test/Driver/arm-cortex-cpus-1.c
M clang/test/Driver/arm-cortex-cpus-2.c
M clang/test/Driver/arm-execute-only.c
M clang/test/Driver/as-options.s
M clang/test/Driver/avr-mmcu.c
M clang/test/Driver/baremetal-multilib-custom-error.yaml
M clang/test/Driver/baremetal-multilib-exclusive-group.yaml
M clang/test/Driver/baremetal-multilib-group-error.yaml
M clang/test/Driver/baremetal-multilib-layered.yaml
M clang/test/Driver/baremetal-multilib.yaml
M clang/test/Driver/cl-options.c
M clang/test/Driver/cl-zc.cpp
M clang/test/Driver/clang_f_opts.c
A clang/test/Driver/codegen-data.c
M clang/test/Driver/config-file-errs.c
A clang/test/Driver/cuda-short-ptr.cu
M clang/test/Driver/dxc_E.hlsl
M clang/test/Driver/fbasic-block-sections.c
M clang/test/Driver/flang/flang.f90
M clang/test/Driver/flang/flang_ucase.F90
M clang/test/Driver/flang/multiple-inputs-mixed.f90
M clang/test/Driver/flang/multiple-inputs.f90
A clang/test/Driver/fmodules-embed-all-files.cpp
M clang/test/Driver/hip-link-save-temps.hip
M clang/test/Driver/hip-partial-link.hip
M clang/test/Driver/hip-save-temps.hip
M clang/test/Driver/hip-toolchain-rdc-separate.hip
M clang/test/Driver/hip-toolchain-rdc-static-lib.hip
M clang/test/Driver/hip-toolchain-rdc.hip
M clang/test/Driver/hip-unbundle-preproc.hipi
M clang/test/Driver/hipspv-toolchain-rdc.hip
M clang/test/Driver/hipstdpar.c
M clang/test/Driver/lld-repro.c
M clang/test/Driver/lto.c
M clang/test/Driver/notypecheck.s
M clang/test/Driver/nvlink-wrapper.c
M clang/test/Driver/openmp-offload-gpu.c
M clang/test/Driver/print-multi-selection-flags.c
M clang/test/Driver/print-supported-extensions-riscv.c
M clang/test/Driver/ps4-linker.c
M clang/test/Driver/ps4-ps5-header-search.c
M clang/test/Driver/ps4-sdk-root.c
M clang/test/Driver/ps5-linker.c
M clang/test/Driver/ps5-sdk-root.c
M clang/test/Driver/relax.s
M clang/test/Driver/response-file-errs.c
M clang/test/Driver/riscv-cpus.c
M clang/test/Driver/riscv32-toolchain.c
M clang/test/Driver/riscv64-toolchain.c
M clang/test/Driver/stack-protector-guard.c
M clang/test/Driver/target-as.s
M clang/test/Driver/thinlto.c
M clang/test/Driver/thinlto.cu
A clang/test/Driver/uefi-constructed-args.c
M clang/test/Driver/x86-march.c
A clang/test/Driver/zos-pragma-pack.c
M clang/test/ExtractAPI/typedef_anonymous_record.c
M clang/test/FixIt/fixit-c++11.cpp
M clang/test/FixIt/member-mismatch.cpp
M clang/test/Frontend/amdgcn-machine-analysis-remarks.cl
M clang/test/Frontend/fixed_point_comparisons.c
M clang/test/Frontend/fixed_point_conversions_const.c
M clang/test/Frontend/fixed_point_crash.c
M clang/test/Frontend/fixed_point_div_const.c
M clang/test/Frontend/fixed_point_errors.c
A clang/test/Frontend/highlight-text.c
M clang/test/Frontend/plugin-attribute.cpp
M clang/test/Frontend/x86-target-cpu.c
M clang/test/Headers/Inputs/include/setjmp.h
A clang/test/Headers/crash-instantiated-in-scope-cxx-modules.cpp
A clang/test/Headers/crash-instantiated-in-scope-cxx-modules2.cpp
A clang/test/Headers/crash-instantiated-in-scope-cxx-modules3.cpp
A clang/test/Headers/header-unit-common-cmp-cat.cpp
A clang/test/Headers/import_header_unit_after_pragma.cpp
M clang/test/Headers/wasm.c
M clang/test/Interpreter/multiline.cpp
M clang/test/Lexer/gnu-flags.c
A clang/test/Misc/cc1as-output-asm-variant.c
M clang/test/Misc/constexpr-subobj-init-source-ranges.cpp
M clang/test/Misc/pragma-attribute-supported-attributes-list.test
M clang/test/Misc/target-invalid-cpu-note/arm.c
M clang/test/Misc/target-invalid-cpu-note/riscv.c
M clang/test/Misc/target-invalid-cpu-note/x86.c
M clang/test/Misc/warning-flags.c
M clang/test/Misc/warning-wall.c
A clang/test/Modules/GH109879-1.cpp
A clang/test/Modules/GH109879-2.cpp
M clang/test/Modules/cxx-templates.cpp
M clang/test/Modules/cxx20-10-3-ex1.cpp
M clang/test/Modules/embed-files-compressed.cpp
A clang/test/Modules/gh110401.cppm
A clang/test/Modules/lambda-definitions.cppm
A clang/test/Modules/pr108732.cppm
A clang/test/Modules/string-literal-uniqueness.cpp
M clang/test/OpenMP/amdgcn-attributes.cpp
M clang/test/OpenMP/bug57757.cpp
M clang/test/OpenMP/declare_variant_device_isa_codegen_1.c
R clang/test/OpenMP/error_unsupport_feature.c
M clang/test/OpenMP/interchange_ast_print.cpp
M clang/test/OpenMP/interchange_codegen.cpp
M clang/test/OpenMP/interchange_messages.cpp
M clang/test/OpenMP/lit.local.cfg
A clang/test/OpenMP/scope_codegen.cpp
M clang/test/OpenMP/target_parallel_for_codegen.cpp
M clang/test/OpenMP/target_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_private_codegen.cpp
M clang/test/OpenMP/target_teams_map_codegen.cpp
M clang/test/Options/enable_16bit_types_validation_spirv.hlsl
A clang/test/PCH/race-condition.cpp
M clang/test/Parser/colon-colon-parentheses.cpp
M clang/test/Parser/cxx-ambig-paren-expr-asan.cpp
A clang/test/Parser/cxx-bad-cast-diagnose-broken-template.cpp
M clang/test/Parser/cxx-class.cpp
M clang/test/Parser/cxx11-user-defined-literals.cpp
M clang/test/Parser/cxx2c-pack-indexing.cpp
A clang/test/Parser/static_assert.cpp
M clang/test/ParserHLSL/group_shared.hlsl
M clang/test/ParserHLSL/group_shared_202x.hlsl
A clang/test/ParserHLSL/hlsl_contained_type_attr.hlsl
A clang/test/ParserHLSL/hlsl_contained_type_attr_error.hlsl
M clang/test/ParserHLSL/hlsl_is_rov_attr.hlsl
M clang/test/ParserHLSL/hlsl_is_rov_attr_error.hlsl
A clang/test/ParserHLSL/hlsl_raw_buffer_attr.hlsl
A clang/test/ParserHLSL/hlsl_raw_buffer_attr_error.hlsl
M clang/test/ParserHLSL/hlsl_resource_class_attr.hlsl
M clang/test/ParserHLSL/hlsl_resource_class_attr_error.hlsl
M clang/test/ParserHLSL/hlsl_resource_handle_attrs.hlsl
M clang/test/ParserHLSL/invalid_inside_cb.hlsl
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/ParserOpenACC/parse-clauses.cpp
M clang/test/Preprocessor/aarch64-target-features.c
M clang/test/Preprocessor/arm-target-features.c
M clang/test/Preprocessor/bpf-predefined-macros.c
M clang/test/Preprocessor/feature_tests.cpp
M clang/test/Preprocessor/init-aarch64.c
M clang/test/Preprocessor/predefined-arch-macros.c
M clang/test/Preprocessor/predefined-macros-hlsl.hlsl
M clang/test/Preprocessor/riscv-target-features.c
A clang/test/Preprocessor/time64.c
M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_add_sub_za16.c
M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_b16b16.cpp
M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_fmlas16.c
M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_imm.cpp
M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_mopa_nonwide.c
M clang/test/Sema/aarch64-streaming-sme-or-nonstreaming-sve-builtins.c
M clang/test/Sema/aarch64-sve-vector-pow-ops.c
M clang/test/Sema/aarch64-sve-vector-trig-ops.c
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2.cpp
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_aes_bitperm_sha3_sm4.cpp
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_bfloat.cpp
M clang/test/Sema/aarch64-sve2p1-intrinsics/acle_sve2p1_b16b16.cpp
M clang/test/Sema/annotate-type.c
M clang/test/Sema/annotate.c
M clang/test/Sema/asm.c
M clang/test/Sema/attr-availability.c
A clang/test/Sema/attr-nonblocking-constraints-ms.cpp
A clang/test/Sema/attr-nonblocking-constraints.c
A clang/test/Sema/attr-nonblocking-constraints.cpp
M clang/test/Sema/attr-nonblocking-sema.cpp
M clang/test/Sema/attr-nonblocking-syntax.cpp
M clang/test/Sema/attr-target-clones-aarch64.c
M clang/test/Sema/attr-target-version.c
M clang/test/Sema/builtin-assume-aligned.c
M clang/test/Sema/builtins-elementwise-math.c
M clang/test/Sema/builtins-reduction-math.c
M clang/test/Sema/builtins.c
A clang/test/Sema/caret-diags-register-variable.cpp
M clang/test/Sema/complex-arithmetic.c
A clang/test/Sema/constant-builtins-fmaximum-num.cpp
A clang/test/Sema/constant-builtins-fminimum-num.cpp
A clang/test/Sema/countbits-errors.hlsl
M clang/test/Sema/enum.c
M clang/test/Sema/exprs.c
M clang/test/Sema/ext_vector_casts.c
M clang/test/Sema/fixed-enum.c
M clang/test/Sema/fp16vec-sema.c
M clang/test/Sema/riscv-asm.c
M clang/test/Sema/riscv-rvv-vector-trig-ops.c
M clang/test/Sema/riscv-sve-vector-pow-ops.c
M clang/test/Sema/scoped-atomic-ops.c
M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
R clang/test/SemaCXX/PR84020.cpp
M clang/test/SemaCXX/alloc-align-attr.cpp
M clang/test/SemaCXX/attr-gsl-owner-pointer-std.cpp
M clang/test/SemaCXX/attr-lifetimebound.cpp
M clang/test/SemaCXX/attr-musttail.cpp
A clang/test/SemaCXX/attr-target-clones-riscv.cpp
M clang/test/SemaCXX/attr-target-mv.cpp
A clang/test/SemaCXX/attr-target-version-riscv.cpp
M clang/test/SemaCXX/attr-target-version.cpp
A clang/test/SemaCXX/block-packs.cpp
M clang/test/SemaCXX/builtin-assume-aligned-tmpl.cpp
M clang/test/SemaCXX/builtin-assume-aligned.cpp
M clang/test/SemaCXX/builtins-elementwise-math.cpp
M clang/test/SemaCXX/builtins.cpp
M clang/test/SemaCXX/constant-expression-cxx11.cpp
M clang/test/SemaCXX/constant-expression-cxx14.cpp
M clang/test/SemaCXX/constexpr-vectors.cpp
M clang/test/SemaCXX/cxx11-user-defined-literals-unused.cpp
M clang/test/SemaCXX/cxx11-user-defined-literals.cpp
M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp
M clang/test/SemaCXX/cxx2a-consteval.cpp
M clang/test/SemaCXX/cxx2b-deducing-this.cpp
M clang/test/SemaCXX/cxx98-compat.cpp
M clang/test/SemaCXX/enable_if.cpp
M clang/test/SemaCXX/fold_lambda_with_variadics.cpp
M clang/test/SemaCXX/function-redecl.cpp
A clang/test/SemaCXX/lambda-attributes.cpp
M clang/test/SemaCXX/lambda-conversion-op-cc.cpp
M clang/test/SemaCXX/lambda-unevaluated.cpp
M clang/test/SemaCXX/literal-operators.cpp
M clang/test/SemaCXX/nested-name-spec.cpp
M clang/test/SemaCXX/no-warn-user-defined-literals-in-system-headers.cpp
A clang/test/SemaCXX/noescape-attr.cpp
M clang/test/SemaCXX/out-of-line-def-mismatch.cpp
A clang/test/SemaCXX/pragma-pack-packed-2.cpp
A clang/test/SemaCXX/ptrauth-sign-constant.cpp
M clang/test/SemaCXX/reserved-identifier.cpp
A clang/test/SemaCXX/type-trait-common-type.cpp
M clang/test/SemaCXX/typo-correction.cpp
M clang/test/SemaCXX/warn-assignment-condition.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-libc-functions.cpp
A clang/test/SemaCXX/warn-unsafe-buffer-usage-no-libc-functions-in-c.c
M clang/test/SemaCXX/warn-xor-as-pow.cpp
M clang/test/SemaCXX/weak-init.cpp
A clang/test/SemaHLSL/ArrayAssignable_errors.hlsl
M clang/test/SemaHLSL/BuiltIns/RWBuffers.hlsl
M clang/test/SemaHLSL/BuiltIns/StructuredBuffers.hlsl
A clang/test/SemaHLSL/BuiltIns/WaveGetLaneIndex-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/asfloat-constexpr.hlsl
A clang/test/SemaHLSL/BuiltIns/asfloat-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/asint-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/asuint-constexpr.hlsl
A clang/test/SemaHLSL/BuiltIns/asuint-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/countbits-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/cross-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/degrees-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/half-float-only-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/half-float-only-errors2.hlsl
R clang/test/SemaHLSL/BuiltIns/pow-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/radians-errors.hlsl
A clang/test/SemaHLSL/Language/UsualArithmeticConversions.hlsl
M clang/test/SemaHLSL/Types/Arithmetic/literal_suffixes_202x.hlsl
M clang/test/SemaHLSL/Types/Traits/IsIntangibleType.hlsl
M clang/test/SemaHLSL/Types/Traits/IsIntangibleTypeErrors.hlsl
M clang/test/SemaHLSL/Types/Traits/ScalarizedLayoutCompatibleErrors.hlsl
M clang/test/SemaHLSL/group_shared.hlsl
M clang/test/SemaHLSL/group_shared_202x.hlsl
M clang/test/SemaHLSL/prohibit_reference.hlsl
M clang/test/SemaHLSL/resource_binding_attr_error.hlsl
M clang/test/SemaHLSL/resource_binding_attr_error_basic.hlsl
A clang/test/SemaHLSL/resource_binding_attr_error_space.hlsl
A clang/test/SemaObjCXX/attr-nonblocking-constraints.mm
M clang/test/SemaObjCXX/noescape.mm
M clang/test/SemaOpenACC/compute-construct-device_type-clause.c
M clang/test/SemaOpenACC/compute-construct-intexpr-clause-ast.cpp
M clang/test/SemaOpenACC/loop-construct-auto_seq_independent-clauses.c
A clang/test/SemaOpenACC/loop-construct-collapse-ast.cpp
A clang/test/SemaOpenACC/loop-construct-collapse-clause.cpp
M clang/test/SemaOpenACC/loop-construct-device_type-clause.c
A clang/test/SemaOpenACC/loop-construct-gang-ast.cpp
A clang/test/SemaOpenACC/loop-construct-gang-clause.cpp
A clang/test/SemaOpenACC/loop-construct-tile-ast.cpp
A clang/test/SemaOpenACC/loop-construct-tile-clause.cpp
A clang/test/SemaOpenACC/loop-construct-worker-ast.cpp
A clang/test/SemaOpenACC/loop-construct-worker-clause.cpp
M clang/test/SemaOpenCL/unsupported.cl
M clang/test/SemaTemplate/GH18291.cpp
M clang/test/SemaTemplate/attributes.cpp
M clang/test/SemaTemplate/concepts-lambda.cpp
M clang/test/SemaTemplate/concepts-out-of-line-def.cpp
M clang/test/SemaTemplate/concepts.cpp
M clang/test/SemaTemplate/cwg2398.cpp
M clang/test/SemaTemplate/instantiate-requires-expr.cpp
M clang/test/SemaTemplate/ms-function-specialization-class-scope.cpp
A clang/test/SemaTemplate/recovery-crash-cxx20.cpp
M clang/test/SemaTemplate/recovery-crash.cpp
M clang/test/SemaTemplate/temp_arg_nontype_cxx1z.cpp
R clang/test/clang-rename/ClassAsTemplateArgument.cpp
R clang/test/clang-rename/ClassFindByName.cpp
R clang/test/clang-rename/ClassSimpleRenaming.cpp
R clang/test/clang-rename/ClassTestMulti.cpp
R clang/test/clang-rename/ClassTestMultiByName.cpp
R clang/test/clang-rename/ComplexFunctionOverride.cpp
R clang/test/clang-rename/ComplicatedClassType.cpp
R clang/test/clang-rename/Ctor.cpp
R clang/test/clang-rename/CtorInitializer.cpp
R clang/test/clang-rename/DeclRefExpr.cpp
R clang/test/clang-rename/ForceMulti.cpp
R clang/test/clang-rename/ForwardClassDecl.cpp
R clang/test/clang-rename/FunctionMacro.cpp
R clang/test/clang-rename/FunctionOverride.cpp
R clang/test/clang-rename/FunctionTemplate.cpp
R clang/test/clang-rename/FunctionWithClassFindByName.cpp
R clang/test/clang-rename/IncludeHeaderWithSymbol.cpp
R clang/test/clang-rename/Inputs/HeaderWithSymbol.h
R clang/test/clang-rename/Inputs/OffsetToNewName.yaml
R clang/test/clang-rename/Inputs/QualifiedNameToNewName.yaml
R clang/test/clang-rename/InvalidNewName.cpp
R clang/test/clang-rename/InvalidOffset.cpp
R clang/test/clang-rename/InvalidQualifiedName.cpp
R clang/test/clang-rename/MemberExprMacro.cpp
R clang/test/clang-rename/Namespace.cpp
R clang/test/clang-rename/NoNewName.cpp
R clang/test/clang-rename/NonExistFile.cpp
R clang/test/clang-rename/TemplateClassInstantiation.cpp
R clang/test/clang-rename/TemplateCtor.cpp
R clang/test/clang-rename/TemplateTypename.cpp
R clang/test/clang-rename/TemplatedClassFunction.cpp
R clang/test/clang-rename/Typedef.cpp
R clang/test/clang-rename/UserDefinedConversion.cpp
R clang/test/clang-rename/Variable.cpp
R clang/test/clang-rename/VariableMacro.cpp
R clang/test/clang-rename/VariableTemplate.cpp
R clang/test/clang-rename/YAMLInput.cpp
M clang/tools/CMakeLists.txt
M clang/tools/c-index-test/core_main.cpp
M clang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp
M clang/tools/clang-installapi/Options.cpp
M clang/tools/clang-nvlink-wrapper/ClangNVLinkWrapper.cpp
M clang/tools/clang-nvlink-wrapper/NVLinkOpts.td
M clang/tools/clang-offload-bundler/ClangOffloadBundler.cpp
M clang/tools/clang-refactor/ClangRefactor.cpp
M clang/tools/clang-refactor/TestSupport.cpp
R clang/tools/clang-rename/CMakeLists.txt
R clang/tools/clang-rename/ClangRename.cpp
R clang/tools/clang-rename/clang-rename.el
R clang/tools/clang-rename/clang-rename.py
M clang/tools/clang-repl/ClangRepl.cpp
M clang/tools/clang-scan-deps/ClangScanDeps.cpp
M clang/tools/driver/cc1gen_reproducer_main.cpp
M clang/tools/include-mapping/gen_std.py
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CMakeLists.txt
M clang/tools/libclang/CXCursor.cpp
M clang/tools/libclang/CXIndexDataConsumer.cpp
M clang/tools/scan-build-py/tests/unit/test_report.py
M clang/unittests/AST/ByteCode/Descriptor.cpp
M clang/unittests/AST/CMakeLists.txt
M clang/unittests/AST/MatchVerifier.h
A clang/unittests/AST/RawCommentForDeclTest.cpp
M clang/unittests/AST/SourceLocationTest.cpp
M clang/unittests/AST/TemplateNameTest.cpp
M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
M clang/unittests/ASTMatchers/ASTMatchersNodeTest.cpp
M clang/unittests/ASTMatchers/ASTMatchersTest.h
M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp
M clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp
M clang/unittests/Basic/DiagnosticTest.cpp
M clang/unittests/Basic/FileManagerTest.cpp
M clang/unittests/Basic/SarifTest.cpp
M clang/unittests/Basic/SourceManagerTest.cpp
M clang/unittests/CMakeLists.txt
M clang/unittests/Driver/CMakeLists.txt
M clang/unittests/Driver/DXCModeTest.cpp
M clang/unittests/Driver/MultilibTest.cpp
M clang/unittests/Driver/ToolChainTest.cpp
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/FormatTest.cpp
M clang/unittests/Format/FormatTestBase.h
M clang/unittests/Format/FormatTestComments.cpp
M clang/unittests/Format/FormatTestJS.cpp
M clang/unittests/Format/FormatTestProto.cpp
M clang/unittests/Format/FormatTestTextProto.cpp
M clang/unittests/Format/FormatTestVerilog.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
M clang/unittests/Frontend/ASTUnitTest.cpp
M clang/unittests/Frontend/CompilerInstanceTest.cpp
M clang/unittests/Frontend/OutputStreamTest.cpp
M clang/unittests/Frontend/TextDiagnosticTest.cpp
M clang/unittests/Interpreter/CMakeLists.txt
M clang/unittests/Interpreter/CodeCompletionTest.cpp
M clang/unittests/Interpreter/InterpreterExtensionsTest.cpp
M clang/unittests/Interpreter/InterpreterTest.cpp
R clang/unittests/Rename/CMakeLists.txt
R clang/unittests/Rename/ClangRenameTest.h
R clang/unittests/Rename/RenameAliasTest.cpp
R clang/unittests/Rename/RenameClassTest.cpp
R clang/unittests/Rename/RenameEnumTest.cpp
R clang/unittests/Rename/RenameFunctionTest.cpp
R clang/unittests/Rename/RenameMemberTest.cpp
M clang/unittests/StaticAnalyzer/RangeSetTest.cpp
M clang/unittests/Support/TimeProfilerTest.cpp
M clang/unittests/Tooling/ASTSelectionTest.cpp
M clang/unittests/Tooling/DiagnosticsYamlTest.cpp
M clang/unittests/Tooling/RecursiveASTVisitorTestDeclVisitor.cpp
M clang/unittests/Tooling/RecursiveASTVisitorTests/TemplateArgumentLocTraverser.cpp
M clang/unittests/Tooling/RefactoringTest.cpp
M clang/unittests/Tooling/RewriterTestContext.h
M clang/unittests/Tooling/Syntax/BuildTreeTest.cpp
M clang/unittests/Tooling/Syntax/MutationsTest.cpp
M clang/unittests/Tooling/Syntax/SynthesisTest.cpp
M clang/unittests/Tooling/Syntax/TreeTest.cpp
M clang/unittests/Tooling/Syntax/TreeTestBase.cpp
M clang/utils/TableGen/ASTTableGen.cpp
M clang/utils/TableGen/ASTTableGen.h
M clang/utils/TableGen/ClangASTNodesEmitter.cpp
M clang/utils/TableGen/ClangASTPropertiesEmitter.cpp
M clang/utils/TableGen/ClangAttrEmitter.cpp
M clang/utils/TableGen/ClangBuiltinsEmitter.cpp
M clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
M clang/utils/TableGen/ClangOpcodesEmitter.cpp
M clang/utils/TableGen/ClangOpenCLBuiltinEmitter.cpp
M clang/utils/TableGen/ClangOptionDocEmitter.cpp
M clang/utils/TableGen/ClangSACheckersEmitter.cpp
M clang/utils/TableGen/ClangSyntaxEmitter.cpp
M clang/utils/TableGen/ClangTypeNodesEmitter.cpp
M clang/utils/TableGen/MveEmitter.cpp
M clang/utils/TableGen/NeonEmitter.cpp
M clang/utils/TableGen/RISCVVEmitter.cpp
M clang/utils/TableGen/SveEmitter.cpp
M clang/utils/TableGen/TableGen.cpp
M clang/utils/TableGen/TableGenBackends.h
M clang/utils/analyzer/SATestBuild.py
M clang/utils/check_cfc/obj_diff.py
M clang/utils/module-deps-to-rsp.py
M clang/www/c_status.html
M clang/www/cxx_dr_status.html
M clang/www/cxx_status.html
M clang/www/make_cxx_dr_status
M cmake/Modules/CMakePolicy.cmake
M compiler-rt/CMakeLists.txt
M compiler-rt/cmake/Modules/AddCompilerRT.cmake
M compiler-rt/cmake/Modules/CompilerRTCompile.cmake
A compiler-rt/cmake/caches/hexagon-linux-builtins.cmake
A compiler-rt/cmake/caches/hexagon-linux-clangrt.cmake
M compiler-rt/include/sanitizer/ubsan_interface.h
M compiler-rt/lib/asan/asan_descriptions.cpp
M compiler-rt/lib/asan/asan_descriptions.h
M compiler-rt/lib/asan/asan_fuchsia.cpp
M compiler-rt/lib/asan/asan_interceptors.cpp
M compiler-rt/lib/asan/asan_linux.cpp
M compiler-rt/lib/asan/asan_malloc_win_thunk.cpp
M compiler-rt/lib/asan/asan_posix.cpp
M compiler-rt/lib/asan/asan_rtl.cpp
M compiler-rt/lib/asan/asan_thread.cpp
M compiler-rt/lib/asan/asan_thread.h
M compiler-rt/lib/asan/asan_win_common_runtime_thunk.cpp
M compiler-rt/lib/asan/asan_win_common_runtime_thunk.h
M compiler-rt/lib/asan/asan_win_static_runtime_thunk.cpp
M compiler-rt/lib/asan/tests/asan_str_test.cpp
M compiler-rt/lib/builtins/CMakeLists.txt
M compiler-rt/lib/builtins/cpu_model/AArch64CPUFeatures.inc
M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/apple.inc
M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/fuchsia.inc
M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/mrs.inc
M compiler-rt/lib/builtins/cpu_model/riscv.c
M compiler-rt/lib/builtins/cpu_model/x86.c
M compiler-rt/lib/builtins/fp_lib.h
M compiler-rt/lib/builtins/fp_trunc.h
A compiler-rt/lib/builtins/truncxfbf2.c
M compiler-rt/lib/dfsan/dfsan.cpp
M compiler-rt/lib/dfsan/dfsan_custom.cpp
M compiler-rt/lib/dfsan/dfsan_thread.cpp
M compiler-rt/lib/fuzzer/FuzzerUtilWindows.cpp
M compiler-rt/lib/hwasan/hwasan.cpp
M compiler-rt/lib/hwasan/hwasan_linux.cpp
M compiler-rt/lib/hwasan/hwasan_thread.cpp
M compiler-rt/lib/interception/interception_win.cpp
M compiler-rt/lib/lsan/lsan.cpp
M compiler-rt/lib/lsan/lsan_common.cpp
M compiler-rt/lib/lsan/lsan_common.h
M compiler-rt/lib/lsan/lsan_flags.inc
M compiler-rt/lib/lsan/lsan_posix.cpp
M compiler-rt/lib/lsan/lsan_thread.cpp
M compiler-rt/lib/memprof/memprof_rtl.cpp
M compiler-rt/lib/memprof/memprof_thread.cpp
M compiler-rt/lib/memprof/memprof_thread.h
M compiler-rt/lib/msan/msan.cpp
M compiler-rt/lib/msan/msan_linux.cpp
M compiler-rt/lib/msan/msan_thread.cpp
M compiler-rt/lib/nsan/nsan.cpp
M compiler-rt/lib/nsan/nsan_flags.inc
M compiler-rt/lib/nsan/nsan_thread.cpp
M compiler-rt/lib/orc/common.h
M compiler-rt/lib/orc/elfnix_platform.cpp
M compiler-rt/lib/orc/elfnix_platform.h
M compiler-rt/lib/orc/macho_platform.cpp
A compiler-rt/lib/orc/record_section_tracker.h
M compiler-rt/lib/profile/CMakeLists.txt
M compiler-rt/lib/profile/InstrProfiling.h
M compiler-rt/lib/profile/InstrProfilingFile.c
M compiler-rt/lib/profile/InstrProfilingInternal.h
M compiler-rt/lib/profile/InstrProfilingPort.h
M compiler-rt/lib/profile/InstrProfilingUtil.h
M compiler-rt/lib/rtsan/CMakeLists.txt
M compiler-rt/lib/rtsan/rtsan.cpp
M compiler-rt/lib/rtsan/rtsan.h
A compiler-rt/lib/rtsan/rtsan_assertions.h
A compiler-rt/lib/rtsan/rtsan_checks.inc
M compiler-rt/lib/rtsan/rtsan_context.cpp
M compiler-rt/lib/rtsan/rtsan_context.h
A compiler-rt/lib/rtsan/rtsan_diagnostics.cpp
A compiler-rt/lib/rtsan/rtsan_diagnostics.h
M compiler-rt/lib/rtsan/rtsan_flags.cpp
M compiler-rt/lib/rtsan/rtsan_flags.inc
M compiler-rt/lib/rtsan/rtsan_interceptors.cpp
M compiler-rt/lib/rtsan/rtsan_preinit.cpp
R compiler-rt/lib/rtsan/rtsan_stack.cpp
R compiler-rt/lib/rtsan/rtsan_stack.h
A compiler-rt/lib/rtsan/rtsan_stats.cpp
A compiler-rt/lib/rtsan/rtsan_stats.h
A compiler-rt/lib/rtsan/rtsan_suppressions.cpp
A compiler-rt/lib/rtsan/rtsan_suppressions.h
M compiler-rt/lib/rtsan/tests/CMakeLists.txt
A compiler-rt/lib/rtsan/tests/rtsan_test_assertions.cpp
M compiler-rt/lib/rtsan/tests/rtsan_test_context.cpp
M compiler-rt/lib/rtsan/tests/rtsan_test_functional.cpp
M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors.cpp
M compiler-rt/lib/rtsan/tests/rtsan_test_main.cpp
M compiler-rt/lib/rtsan/tests/rtsan_test_utilities.h
M compiler-rt/lib/sanitizer_common/CMakeLists.txt
M compiler-rt/lib/sanitizer_common/sanitizer_allocator_dlsym.h
M compiler-rt/lib/sanitizer_common/sanitizer_common.h
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
M compiler-rt/lib/sanitizer_common/sanitizer_common_libcdep.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_common_nolibc.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_common_syscalls.inc
M compiler-rt/lib/sanitizer_common/sanitizer_errno.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_errno_codes.h
M compiler-rt/lib/sanitizer_common/sanitizer_fuchsia.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_libignore.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_libignore.h
M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_linux.h
M compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h
M compiler-rt/lib/sanitizer_common/sanitizer_posix.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_posix.h
M compiler-rt/lib/sanitizer_common/sanitizer_procmaps_mac.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_report.cpp
A compiler-rt/lib/sanitizer_common/sanitizer_thread_history.cpp
A compiler-rt/lib/sanitizer_common/sanitizer_thread_history.h
M compiler-rt/lib/sanitizer_common/sanitizer_thread_registry.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_thread_registry.h
M compiler-rt/lib/sanitizer_common/sanitizer_tls_get_addr.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_win.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_win_interception.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_win_interception.h
M compiler-rt/lib/sanitizer_common/sanitizer_win_thunk_interception.cpp
M compiler-rt/lib/sanitizer_common/tests/sanitizer_common_test.cpp
M compiler-rt/lib/sanitizer_common/tests/sanitizer_linux_test.cpp
M compiler-rt/lib/sanitizer_common/tests/sanitizer_thread_registry_test.cpp
M compiler-rt/lib/scudo/standalone/allocator_common.h
M compiler-rt/lib/scudo/standalone/combined.h
M compiler-rt/lib/scudo/standalone/memtag.h
M compiler-rt/lib/scudo/standalone/primary32.h
M compiler-rt/lib/scudo/standalone/primary64.h
M compiler-rt/lib/scudo/standalone/tests/memtag_test.cpp
M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
M compiler-rt/lib/tsan/rtl/tsan_mman.cpp
M compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp
M compiler-rt/lib/tsan/rtl/tsan_rtl.cpp
M compiler-rt/lib/tsan/rtl/tsan_rtl_thread.cpp
M compiler-rt/lib/ubsan/ubsan_handlers.cpp
M compiler-rt/lib/ubsan/ubsan_handlers.h
M compiler-rt/lib/ubsan/ubsan_init.cpp
M compiler-rt/test/asan/TestCases/Linux/odr_c_test.c
M compiler-rt/test/asan/TestCases/Linux/preinstalled_signal.cpp
M compiler-rt/test/asan/TestCases/Linux/ptrace.cpp
M compiler-rt/test/asan/TestCases/Linux/stack-overflow-recovery-mode.cpp
M compiler-rt/test/asan/TestCases/Linux/stack-overflow-sigbus.cpp
M compiler-rt/test/asan/TestCases/Posix/coverage-fork.cpp
M compiler-rt/test/asan/TestCases/Posix/stack-overflow.cpp
M compiler-rt/test/asan/TestCases/Posix/strndup_oob_test2.cpp
M compiler-rt/test/asan/TestCases/global-overflow.cpp
M compiler-rt/test/asan/TestCases/initialization-bug-no-global.cpp
M compiler-rt/test/asan/TestCases/large_func_test.cpp
M compiler-rt/test/asan/TestCases/strtol_strict.c
M compiler-rt/test/asan/lit.cfg.py
M compiler-rt/test/builtins/Unit/multf3_test.c
M compiler-rt/test/fuzzer/strncmp.test
A compiler-rt/test/lsan/TestCases/flag_tries.c
A compiler-rt/test/lsan/TestCases/print_threads.c
A compiler-rt/test/nsan/fcmp.cpp
M compiler-rt/test/profile/ContinuousSyncMode/runtime-counter-relocation.c
M compiler-rt/test/profile/ContinuousSyncMode/set-file-object.c
M compiler-rt/test/profile/Posix/instrprof-dlopen-norpath.test
M compiler-rt/test/profile/instrprof-tmpdir.c
M compiler-rt/test/profile/instrprof-write-file-atexit-explicitly.c
M compiler-rt/test/rtsan/basic.cpp
A compiler-rt/test/rtsan/blocking_call.cpp
A compiler-rt/test/rtsan/deduplicate_errors.cpp
A compiler-rt/test/rtsan/exit_stats.cpp
A compiler-rt/test/rtsan/halt_on_error.cpp
M compiler-rt/test/rtsan/lit.cfg.py
A compiler-rt/test/rtsan/sanity_check_pure_c.c
A compiler-rt/test/rtsan/stack_suppressions.cpp
A compiler-rt/test/rtsan/stack_suppressions.cpp.supp
A compiler-rt/test/sanitizer_common/TestCases/Darwin/freadlink.c
R compiler-rt/test/sanitizer_common/TestCases/FreeBSD/md5.cpp
R compiler-rt/test/sanitizer_common/TestCases/FreeBSD/sha2.cpp
M compiler-rt/test/sanitizer_common/TestCases/Linux/prctl.cpp
M compiler-rt/test/sanitizer_common/TestCases/Linux/tls_get_addr.c
A compiler-rt/test/sanitizer_common/TestCases/Linux/tls_malloc_hook.c
R compiler-rt/test/sanitizer_common/TestCases/NetBSD/md5.cpp
R compiler-rt/test/sanitizer_common/TestCases/NetBSD/sha2.cpp
A compiler-rt/test/sanitizer_common/TestCases/Posix/variadic-open.cpp
A compiler-rt/test/sanitizer_common/TestCases/Windows/dump_registers_i386.cpp
A compiler-rt/test/sanitizer_common/TestCases/Windows/dump_registers_x86_64.cpp
M compiler-rt/test/sanitizer_common/TestCases/dlsym_alloc.c
M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_trace_pc_guard-dso.cpp
M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_trace_pc_guard.cpp
R compiler-rt/test/tsan/Darwin/variadic-open.cpp
M compiler-rt/test/tsan/ignore_lib3.cpp
A compiler-rt/test/ubsan/TestCases/Integer/suppressions-builtin.cpp
M compiler-rt/test/ubsan/TestCases/Misc/builtins.cpp
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio/VisualStudio.py
M cross-project-tests/debuginfo-tests/dexter/dex/tools/Main.py
M cross-project-tests/debuginfo-tests/dexter/dex/tools/help/Tool.py
A cross-project-tests/debuginfo-tests/dexter/dex/utils/Imports.py
M flang/docs/Extensions.md
M flang/docs/FlangDriver.md
M flang/docs/GettingInvolved.md
M flang/docs/ImplementingASemanticCheck.md
M flang/docs/Intrinsics.md
M flang/docs/Overview.md
M flang/examples/FeatureList/FeatureList.cpp
M flang/examples/FlangOmpReport/FlangOmpReport.cpp
M flang/examples/FlangOmpReport/FlangOmpReportVisitor.cpp
M flang/examples/FlangOmpReport/FlangOmpReportVisitor.h
M flang/include/flang/Common/Fortran-features.h
A flang/include/flang/Common/LangOptions.def
A flang/include/flang/Common/LangOptions.h
M flang/include/flang/Common/float128.h
A flang/include/flang/Common/float80.h
M flang/include/flang/Common/format.h
M flang/include/flang/Evaluate/target.h
M flang/include/flang/Evaluate/tools.h
M flang/include/flang/Evaluate/traverse.h
M flang/include/flang/Frontend/CodeGenOptions.h
M flang/include/flang/Frontend/CompilerInvocation.h
R flang/include/flang/Frontend/LangOptions.def
R flang/include/flang/Frontend/LangOptions.h
M flang/include/flang/Frontend/PreprocessorOptions.h
M flang/include/flang/Lower/Bridge.h
M flang/include/flang/Lower/CallInterface.h
M flang/include/flang/Lower/LoweringOptions.def
M flang/include/flang/Optimizer/Analysis/AliasAnalysis.h
M flang/include/flang/Optimizer/Builder/Complex.h
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/include/flang/Optimizer/Builder/LowLevelIntrinsics.h
M flang/include/flang/Optimizer/Builder/Runtime/Intrinsics.h
M flang/include/flang/Optimizer/Builder/Runtime/RTBuilder.h
M flang/include/flang/Optimizer/CodeGen/CodeGen.h
M flang/include/flang/Optimizer/CodeGen/CodeGenOpenMP.h
M flang/include/flang/Optimizer/CodeGen/Target.h
M flang/include/flang/Optimizer/CodeGen/TypeConverter.h
M flang/include/flang/Optimizer/Dialect/FIRAttr.td
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
M flang/include/flang/Optimizer/Dialect/FIRType.h
M flang/include/flang/Optimizer/Dialect/FIRTypes.td
M flang/include/flang/Optimizer/Dialect/Support/FIRContext.h
M flang/include/flang/Optimizer/HLFIR/HLFIROpBase.td
A flang/include/flang/Optimizer/Passes/CommandLineOpts.h
A flang/include/flang/Optimizer/Passes/Pipelines.h
M flang/include/flang/Optimizer/Support/DataLayout.h
M flang/include/flang/Optimizer/Support/Utils.h
A flang/include/flang/Optimizer/Transforms/CufOpConversion.h
M flang/include/flang/Optimizer/Transforms/Passes.h
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/message.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Parser/parsing.h
A flang/include/flang/Runtime/CUDA/allocatable.h
M flang/include/flang/Runtime/CUDA/allocator.h
A flang/include/flang/Runtime/CUDA/common.h
M flang/include/flang/Runtime/CUDA/descriptor.h
A flang/include/flang/Runtime/CUDA/memory.h
M flang/include/flang/Runtime/allocator-registry.h
A flang/include/flang/Runtime/complex.h
M flang/include/flang/Runtime/cpp-type.h
M flang/include/flang/Runtime/extensions.h
M flang/include/flang/Runtime/matmul-instances.inc
M flang/include/flang/Runtime/numeric.h
M flang/include/flang/Runtime/reduce.h
M flang/include/flang/Runtime/reduction.h
M flang/include/flang/Runtime/transformational.h
M flang/include/flang/Semantics/expression.h
A flang/include/flang/Semantics/program-tree.h
M flang/include/flang/Semantics/semantics.h
M flang/include/flang/Semantics/symbol.h
M flang/include/flang/Semantics/tools.h
M flang/include/flang/Semantics/type.h
R flang/include/flang/Tools/CLOptions.inc
M flang/include/flang/Tools/CrossToolHelpers.h
M flang/include/flang/Tools/TargetSetup.h
M flang/lib/Common/CMakeLists.txt
M flang/lib/Common/Fortran-features.cpp
A flang/lib/Common/LangOptions.cpp
M flang/lib/Evaluate/characteristics.cpp
M flang/lib/Evaluate/check-expression.cpp
M flang/lib/Evaluate/common.cpp
M flang/lib/Evaluate/fold-character.cpp
M flang/lib/Evaluate/fold-complex.cpp
M flang/lib/Evaluate/fold-implementation.h
M flang/lib/Evaluate/fold-integer.cpp
M flang/lib/Evaluate/fold-logical.cpp
M flang/lib/Evaluate/fold-matmul.h
M flang/lib/Evaluate/fold-real.cpp
M flang/lib/Evaluate/fold-reduction.h
M flang/lib/Evaluate/formatting.cpp
M flang/lib/Evaluate/host.cpp
M flang/lib/Evaluate/intrinsics-library.cpp
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Evaluate/real.cpp
M flang/lib/Evaluate/tools.cpp
M flang/lib/Evaluate/variable.cpp
M flang/lib/Frontend/CMakeLists.txt
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendAction.cpp
M flang/lib/Frontend/FrontendActions.cpp
R flang/lib/Frontend/LangOptions.cpp
M flang/lib/Frontend/TextDiagnosticPrinter.cpp
M flang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/CallInterface.cpp
M flang/lib/Lower/ConvertCall.cpp
M flang/lib/Lower/ConvertConstant.cpp
M flang/lib/Lower/ConvertExpr.cpp
M flang/lib/Lower/ConvertExprToHLFIR.cpp
M flang/lib/Lower/ConvertType.cpp
M flang/lib/Lower/ConvertVariable.cpp
M flang/lib/Lower/DirectivesCommon.h
M flang/lib/Lower/IO.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/Clauses.h
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.h
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/OpenMP/Utils.h
M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
M flang/lib/Optimizer/Analysis/CMakeLists.txt
M flang/lib/Optimizer/Builder/Complex.cpp
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Builder/LowLevelIntrinsics.cpp
M flang/lib/Optimizer/Builder/Runtime/Intrinsics.cpp
M flang/lib/Optimizer/Builder/Runtime/Reduction.cpp
M flang/lib/Optimizer/CMakeLists.txt
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/CodeGen/CodeGenOpenMP.cpp
M flang/lib/Optimizer/CodeGen/Target.cpp
M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
M flang/lib/Optimizer/CodeGen/TypeConverter.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/Dialect/FIRType.cpp
M flang/lib/Optimizer/Dialect/Support/FIRContext.cpp
M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
A flang/lib/Optimizer/Passes/CMakeLists.txt
A flang/lib/Optimizer/Passes/CommandLineOpts.cpp
A flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/AbstractResult.cpp
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M flang/lib/Optimizer/Transforms/CMakeLists.txt
A flang/lib/Optimizer/Transforms/CUFAddConstructor.cpp
A flang/lib/Optimizer/Transforms/CufImplicitDeviceGlobal.cpp
M flang/lib/Optimizer/Transforms/CufOpConversion.cpp
M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
M flang/lib/Optimizer/Transforms/DebugTypeGenerator.h
M flang/lib/Optimizer/Transforms/LoopVersioning.cpp
M flang/lib/Optimizer/Transforms/PolymorphicOpConversion.cpp
M flang/lib/Optimizer/Transforms/StackArrays.cpp
M flang/lib/Optimizer/Transforms/StackReclaim.cpp
M flang/lib/Parser/message.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/parsing.cpp
M flang/lib/Parser/preprocessor.cpp
M flang/lib/Parser/prescan.cpp
M flang/lib/Parser/prescan.h
M flang/lib/Parser/program-parsers.cpp
M flang/lib/Parser/stmt-parser.h
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-acc-structure.cpp
M flang/lib/Semantics/check-allocate.cpp
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/check-call.h
M flang/lib/Semantics/check-case.cpp
M flang/lib/Semantics/check-cuda.cpp
M flang/lib/Semantics/check-data.cpp
M flang/lib/Semantics/check-declarations.cpp
M flang/lib/Semantics/check-directive-structure.h
M flang/lib/Semantics/check-do-forall.cpp
M flang/lib/Semantics/check-do-forall.h
M flang/lib/Semantics/check-io.cpp
M flang/lib/Semantics/check-namelist.cpp
M flang/lib/Semantics/check-namelist.h
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/check-return.cpp
M flang/lib/Semantics/compute-offsets.cpp
M flang/lib/Semantics/data-to-inits.cpp
M flang/lib/Semantics/definable.cpp
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/mod-file.cpp
M flang/lib/Semantics/pointer-assignment.cpp
M flang/lib/Semantics/program-tree.cpp
R flang/lib/Semantics/program-tree.h
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-labels.cpp
M flang/lib/Semantics/resolve-names-utils.cpp
M flang/lib/Semantics/resolve-names-utils.h
M flang/lib/Semantics/resolve-names.cpp
M flang/lib/Semantics/scope.cpp
M flang/lib/Semantics/semantics.cpp
M flang/lib/Semantics/tools.cpp
M flang/lib/Semantics/type.cpp
M flang/module/__fortran_builtins.f90
M flang/module/ieee_arithmetic.f90
M flang/runtime/CMakeLists.txt
M flang/runtime/CUDA/CMakeLists.txt
A flang/runtime/CUDA/allocatable.cpp
M flang/runtime/CUDA/allocator.cpp
M flang/runtime/CUDA/descriptor.cpp
A flang/runtime/CUDA/memory.cpp
M flang/runtime/Float128Math/CMakeLists.txt
M flang/runtime/Float128Math/acos.cpp
M flang/runtime/Float128Math/acosh.cpp
M flang/runtime/Float128Math/asin.cpp
M flang/runtime/Float128Math/asinh.cpp
M flang/runtime/Float128Math/atan.cpp
M flang/runtime/Float128Math/atan2.cpp
M flang/runtime/Float128Math/atanh.cpp
M flang/runtime/Float128Math/ceil.cpp
M flang/runtime/Float128Math/complex-math.c
M flang/runtime/Float128Math/complex-math.h
M flang/runtime/Float128Math/cos.cpp
M flang/runtime/Float128Math/cosh.cpp
M flang/runtime/Float128Math/erf.cpp
M flang/runtime/Float128Math/erfc.cpp
M flang/runtime/Float128Math/exp.cpp
M flang/runtime/Float128Math/exponent.cpp
M flang/runtime/Float128Math/floor.cpp
M flang/runtime/Float128Math/fma.cpp
M flang/runtime/Float128Math/fraction.cpp
M flang/runtime/Float128Math/hypot.cpp
M flang/runtime/Float128Math/j0.cpp
M flang/runtime/Float128Math/j1.cpp
M flang/runtime/Float128Math/jn.cpp
M flang/runtime/Float128Math/lgamma.cpp
M flang/runtime/Float128Math/llround.cpp
M flang/runtime/Float128Math/log.cpp
M flang/runtime/Float128Math/log10.cpp
M flang/runtime/Float128Math/lround.cpp
M flang/runtime/Float128Math/math-entries.h
M flang/runtime/Float128Math/mod-real.cpp
M flang/runtime/Float128Math/modulo-real.cpp
A flang/runtime/Float128Math/nearbyint.cpp
M flang/runtime/Float128Math/nearest.cpp
M flang/runtime/Float128Math/norm2.cpp
M flang/runtime/Float128Math/pow.cpp
M flang/runtime/Float128Math/random.cpp
M flang/runtime/Float128Math/round.cpp
M flang/runtime/Float128Math/rrspacing.cpp
M flang/runtime/Float128Math/scale.cpp
M flang/runtime/Float128Math/set-exponent.cpp
M flang/runtime/Float128Math/sin.cpp
M flang/runtime/Float128Math/sinh.cpp
M flang/runtime/Float128Math/spacing.cpp
M flang/runtime/Float128Math/sqrt.cpp
M flang/runtime/Float128Math/tan.cpp
M flang/runtime/Float128Math/tanh.cpp
M flang/runtime/Float128Math/tgamma.cpp
M flang/runtime/Float128Math/trunc.cpp
M flang/runtime/Float128Math/y0.cpp
M flang/runtime/Float128Math/y1.cpp
M flang/runtime/Float128Math/yn.cpp
M flang/runtime/complex-powi.cpp
M flang/runtime/complex-reduction.c
M flang/runtime/complex-reduction.h
M flang/runtime/dot-product.cpp
M flang/runtime/extensions.cpp
M flang/runtime/extrema.cpp
M flang/runtime/io-api.cpp
M flang/runtime/io-stmt.cpp
M flang/runtime/io-stmt.h
M flang/runtime/matmul-transpose.cpp
M flang/runtime/matmul.cpp
M flang/runtime/numeric-templates.h
M flang/runtime/numeric.cpp
M flang/runtime/product.cpp
M flang/runtime/random.cpp
M flang/runtime/reduce.cpp
M flang/runtime/reduction-templates.h
M flang/runtime/sum.cpp
M flang/runtime/transformational.cpp
A flang/test/Analysis/AliasAnalysis/alias-analysis-9.fir
A flang/test/Analysis/AliasAnalysis/alias-analysis-omp-target-1.fir
A flang/test/Analysis/AliasAnalysis/alias-analysis-omp-target-2.fir
M flang/test/CMakeLists.txt
A flang/test/Driver/B-opt.f90
A flang/test/Driver/Inputs/B_opt_tree/dir1/i386-unknown-linux-ld
A flang/test/Driver/Inputs/B_opt_tree/dir1/ld
A flang/test/Driver/Inputs/B_opt_tree/dir2/ld
A flang/test/Driver/Inputs/B_opt_tree/dir3/prefix-ld
M flang/test/Driver/aarch64-outline-atomics.f90
M flang/test/Driver/color-diagnostics-forwarding.f90
M flang/test/Driver/color-diagnostics-parse.f90
M flang/test/Driver/color-diagnostics-scan.f
M flang/test/Driver/color-diagnostics-sema.f90
M flang/test/Driver/color-diagnostics.f90
M flang/test/Driver/compiler-options.f90
M flang/test/Driver/convert.f90
M flang/test/Driver/default-backend-pipelines.f90
M flang/test/Driver/disable-ext-name-interop.f90
M flang/test/Driver/driver-version.f90
M flang/test/Driver/escaped-backslash.f90
M flang/test/Driver/fdefault.f90
M flang/test/Driver/flarge-sizes.f90
M flang/test/Driver/fopenmp.f90
M flang/test/Driver/frame-pointer-forwarding.f90
A flang/test/Driver/frecord-command-line.f90
M flang/test/Driver/frontend-forwarding.f90
M flang/test/Driver/hlfir-no-hlfir-error.f90
M flang/test/Driver/intrinsic-module-path.f90
M flang/test/Driver/large-data-threshold.f90
M flang/test/Driver/lto-flags.f90
M flang/test/Driver/macro-def-undef.F90
M flang/test/Driver/missing-input.f90
M flang/test/Driver/multiple-input-files.f90
A flang/test/Driver/nostdlib.f90
M flang/test/Driver/omp-driver-offload.f90
M flang/test/Driver/predefined-macros-compiler-version.F90
M flang/test/Driver/std2018-wrong.f90
M flang/test/Driver/std2018.f90
M flang/test/Driver/supported-suffices/f03-suffix.f03
M flang/test/Driver/supported-suffices/f08-suffix.f08
M flang/test/Driver/target-cpu-features.f90
M flang/test/Driver/use-module-error.f90
M flang/test/Driver/use-module.f90
M flang/test/Driver/version-loops.f90
M flang/test/Driver/wextra-ok.f90
A flang/test/Driver/xoffload-linker.f90
M flang/test/Evaluate/errors01.f90
M flang/test/Evaluate/fold-spacing.f90
A flang/test/Evaluate/int8.f90
M flang/test/Examples/omp-in-reduction-clause.f90
M flang/test/Examples/omp-order-clause.f90
A flang/test/Fir/CUDA/cuda-alloc-free.fir
M flang/test/Fir/CUDA/cuda-allocate.fir
A flang/test/Fir/CUDA/cuda-constructor.f90
A flang/test/Fir/CUDA/cuda-data-transfer.fir
A flang/test/Fir/CUDA/cuda-implicit-device-global.f90
A flang/test/Fir/abstract-results-bindc.fir
M flang/test/Fir/array-copies-pointers.fir
M flang/test/Fir/compare.fir
M flang/test/Fir/constant.fir
M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
M flang/test/Fir/convert-to-llvm.fir
M flang/test/Fir/convert.fir
M flang/test/Fir/dispatch.f90
M flang/test/Fir/fir-ops.fir
M flang/test/Fir/fir-types.fir
M flang/test/Fir/invalid-types.fir
M flang/test/Fir/invalid.fir
M flang/test/Fir/rebox.fir
M flang/test/Fir/struct-passing-x86-64-byval.fir
A flang/test/Fir/struct-return-x86-64.fir
M flang/test/Fir/target-complex16.f90
M flang/test/Fir/target-rewrite-arg-position.fir
M flang/test/Fir/target-rewrite-complex-10-x86.fir
M flang/test/Fir/target-rewrite-complex.fir
M flang/test/Fir/target-rewrite-complex16.fir
M flang/test/Fir/target-rewrite-selective.fir
M flang/test/Fir/target.fir
M flang/test/Fir/types-to-llvm.fir
M flang/test/Fir/undo-complex-pattern.fir
M flang/test/HLFIR/assign-codegen.fir
M flang/test/HLFIR/assign.fir
M flang/test/HLFIR/associate.fir
M flang/test/HLFIR/assumed_shape_with_value_keyword.f90
M flang/test/HLFIR/designate-codegen-complex-part.fir
M flang/test/HLFIR/designate.fir
M flang/test/HLFIR/hlfir-flags.f90
M flang/test/HLFIR/invalid.fir
M flang/test/HLFIR/opt-scalar-assign.fir
M flang/test/HLFIR/order_assignments/where-scheduling.f90
M flang/test/Integration/debug-allocatable-1.f90
M flang/test/Integration/debug-assumed-shape-array.f90
M flang/test/Integration/debug-assumed-size-array.f90
A flang/test/Integration/debug-cyclic-derived-type-2.f90
M flang/test/Integration/debug-cyclic-derived-type.f90
M flang/test/Integration/debug-fixed-array-type-2.f90
M flang/test/Integration/debug-local-var-2.f90
M flang/test/Integration/debug-ptr-type.f90
A flang/test/Integration/debug-variable-array-dim.f90
M flang/test/Intrinsics/math-codegen.fir
M flang/test/Lower/CUDA/cuda-data-transfer.cuf
M flang/test/Lower/CUDA/cuda-device-proc.cuf
M flang/test/Lower/HLFIR/array-ctor-as-elemental-nested.f90
M flang/test/Lower/HLFIR/array-ctor-as-elemental.f90
M flang/test/Lower/HLFIR/array-ctor-as-inlined-temp.f90
M flang/test/Lower/HLFIR/assignment-intrinsics.f90
M flang/test/Lower/HLFIR/assumed-rank-calls.f90
M flang/test/Lower/HLFIR/assumed-rank-entry.f90
M flang/test/Lower/HLFIR/assumed-rank-inquiries-2.f90
M flang/test/Lower/HLFIR/assumed-rank-inquiries-3.f90
M flang/test/Lower/HLFIR/assumed-rank-inquiries.f90
M flang/test/Lower/HLFIR/assumed-rank-internal-proc.f90
M flang/test/Lower/HLFIR/binary-ops.f90
M flang/test/Lower/HLFIR/bindc-value-derived.f90
M flang/test/Lower/HLFIR/block_bindc_pocs.f90
M flang/test/Lower/HLFIR/calls-f77.f90
M flang/test/Lower/HLFIR/calls-percent-val-ref.f90
M flang/test/Lower/HLFIR/constant.f90
M flang/test/Lower/HLFIR/conversion-ops.f90
M flang/test/Lower/HLFIR/convert-variable-assumed-rank.f90
M flang/test/Lower/HLFIR/designators-component-ref.f90
M flang/test/Lower/HLFIR/designators.f90
M flang/test/Lower/HLFIR/elemental-array-ops.f90
M flang/test/Lower/HLFIR/elemental-user-procedure-ref.f90
A flang/test/Lower/HLFIR/elemental-user-procedure-stacksave.f90
M flang/test/Lower/HLFIR/entry_return.f90
M flang/test/Lower/HLFIR/forall.f90
A flang/test/Lower/HLFIR/ignore-type-f77-character.f90
M flang/test/Lower/HLFIR/implicit-call-mismatch.f90
M flang/test/Lower/HLFIR/implicit-type-conversion-allocatable.f90
M flang/test/Lower/HLFIR/initial-target-component.f90
M flang/test/Lower/HLFIR/intrinsic-dynamically-optional.f90
M flang/test/Lower/HLFIR/proc-pointer-comp-pass.f90
M flang/test/Lower/HLFIR/select-rank.f90
M flang/test/Lower/HLFIR/unary-ops.f90
M flang/test/Lower/HLFIR/user-defined-assignment.f90
M flang/test/Lower/HLFIR/vector-subscript-as-value.f90
M flang/test/Lower/HLFIR/where-nonelemental.f90
M flang/test/Lower/Intrinsics/abs.f90
M flang/test/Lower/Intrinsics/acos.f90
M flang/test/Lower/Intrinsics/acos_complex16.f90
M flang/test/Lower/Intrinsics/acosh.f90
M flang/test/Lower/Intrinsics/acosh_complex16.f90
M flang/test/Lower/Intrinsics/asin.f90
M flang/test/Lower/Intrinsics/asin_complex16.f90
M flang/test/Lower/Intrinsics/asinh.f90
M flang/test/Lower/Intrinsics/asinh_complex16.f90
M flang/test/Lower/Intrinsics/atan.f90
M flang/test/Lower/Intrinsics/atan_complex16.f90
M flang/test/Lower/Intrinsics/atanh.f90
M flang/test/Lower/Intrinsics/atanh_complex16.f90
M flang/test/Lower/Intrinsics/cabs_real16.f90
M flang/test/Lower/Intrinsics/cmplx.f90
M flang/test/Lower/Intrinsics/command_argument_count.f90
M flang/test/Lower/Intrinsics/cos_complex16.f90
M flang/test/Lower/Intrinsics/cosh_complex16.f90
M flang/test/Lower/Intrinsics/dconjg.f90
M flang/test/Lower/Intrinsics/dimag.f90
M flang/test/Lower/Intrinsics/dot_product.f90
M flang/test/Lower/Intrinsics/dreal.f90
M flang/test/Lower/Intrinsics/exit.f90
M flang/test/Lower/Intrinsics/exp.f90
M flang/test/Lower/Intrinsics/exp_complex16.f90
A flang/test/Lower/Intrinsics/free.f90
M flang/test/Lower/Intrinsics/ieee_is_normal.f90
A flang/test/Lower/Intrinsics/ieee_rint_int.f90
M flang/test/Lower/Intrinsics/isnan.f90
M flang/test/Lower/Intrinsics/log.f90
M flang/test/Lower/Intrinsics/log_complex16.f90
A flang/test/Lower/Intrinsics/malloc.f90
M flang/test/Lower/Intrinsics/modulo.f90
M flang/test/Lower/Intrinsics/pow_complex16.f90
M flang/test/Lower/Intrinsics/pow_complex16i.f90
M flang/test/Lower/Intrinsics/pow_complex16k.f90
M flang/test/Lower/Intrinsics/product.f90
M flang/test/Lower/Intrinsics/signal.f90
M flang/test/Lower/Intrinsics/sin_complex16.f90
M flang/test/Lower/Intrinsics/sinh_complex16.f90
M flang/test/Lower/Intrinsics/sqrt_complex16.f90
M flang/test/Lower/Intrinsics/sum.f90
M flang/test/Lower/Intrinsics/tan_complex16.f90
M flang/test/Lower/Intrinsics/tanh_complex16.f90
M flang/test/Lower/OpenACC/acc-reduction.f90
A flang/test/Lower/OpenMP/DelayedPrivatization/distribute-standalone-private.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-multiple-variables.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-simple.f90
R flang/test/Lower/OpenMP/Todo/atomic-complex.f90
A flang/test/Lower/OpenMP/Todo/lastprivate-conditional.f90
A flang/test/Lower/OpenMP/Todo/map-modifiers-close.f90
A flang/test/Lower/OpenMP/Todo/map-modifiers-ompxhold.f90
A flang/test/Lower/OpenMP/Todo/map-modifiers-present.f90
M flang/test/Lower/OpenMP/Todo/omp-declarative-allocate.f90
M flang/test/Lower/OpenMP/Todo/omp-declare-reduction.f90
M flang/test/Lower/OpenMP/Todo/omp-declare-simd.f90
M flang/test/Lower/OpenMP/Todo/omp-default-clause-inner-loop.f90
A flang/test/Lower/OpenMP/Todo/reduction-inscan.f90
A flang/test/Lower/OpenMP/Todo/reduction-task.f90
A flang/test/Lower/OpenMP/Todo/target-inreduction.f90
A flang/test/Lower/OpenMP/Todo/task-inreduction.f90
M flang/test/Lower/OpenMP/Todo/task_mergeable.f90
A flang/test/Lower/OpenMP/Todo/taskgroup-task-reduction.f90
A flang/test/Lower/OpenMP/Todo/taskloop.f90
A flang/test/Lower/OpenMP/Todo/taskwait-depend.f90
A flang/test/Lower/OpenMP/Todo/taskwait-nowait.f90
M flang/test/Lower/OpenMP/atomic-capture.f90
M flang/test/Lower/OpenMP/atomic-read.f90
M flang/test/Lower/OpenMP/atomic-update.f90
M flang/test/Lower/OpenMP/atomic-write.f90
M flang/test/Lower/OpenMP/common-block-map.f90
M flang/test/Lower/OpenMP/copyprivate.f90
M flang/test/Lower/OpenMP/declare-target-data.f90
M flang/test/Lower/OpenMP/declare-target-deferred-marking.f90
M flang/test/Lower/OpenMP/declare-target-func-and-subr.f90
M flang/test/Lower/OpenMP/declare-target-implicit-func-and-subr-cap-enter.f90
M flang/test/Lower/OpenMP/declare-target-implicit-func-and-subr-cap.f90
M flang/test/Lower/OpenMP/declare-target-implicit-tarop-cap.f90
M flang/test/Lower/OpenMP/default-clause-byref.f90
M flang/test/Lower/OpenMP/default-clause.f90
M flang/test/Lower/OpenMP/delayed-privatization-private-firstprivate.f90
M flang/test/Lower/OpenMP/delayed-privatization-reduction-byref.f90
M flang/test/Lower/OpenMP/delayed-privatization-reduction.f90
M flang/test/Lower/OpenMP/derived-type-map.f90
M flang/test/Lower/OpenMP/distribute-parallel-do-simd.f90
M flang/test/Lower/OpenMP/distribute-parallel-do.f90
M flang/test/Lower/OpenMP/firstprivate-commonblock.f90
M flang/test/Lower/OpenMP/function-filtering-2.f90
M flang/test/Lower/OpenMP/function-filtering.f90
M flang/test/Lower/OpenMP/hlfir-seqloop-parallel.f90
M flang/test/Lower/OpenMP/implicit-dsa.f90
M flang/test/Lower/OpenMP/lastprivate-allocatable.f90
M flang/test/Lower/OpenMP/loop-compound.f90
M flang/test/Lower/OpenMP/map-component-ref.f90
M flang/test/Lower/OpenMP/parallel-firstprivate-clause-scalar.f90
M flang/test/Lower/OpenMP/parallel-lastprivate-clause-scalar.f90
M flang/test/Lower/OpenMP/parallel-private-clause.f90
M flang/test/Lower/OpenMP/parallel-reduction-add-byref.f90
M flang/test/Lower/OpenMP/parallel-reduction-add.f90
M flang/test/Lower/OpenMP/parallel-reduction-complex-mul.f90
M flang/test/Lower/OpenMP/parallel-reduction-complex.f90
M flang/test/Lower/OpenMP/parallel-wsloop-reduction-byref.f90
M flang/test/Lower/OpenMP/parallel-wsloop-reduction.f90
M flang/test/Lower/OpenMP/parallel-wsloop.f90
M flang/test/Lower/OpenMP/parallel.f90
M flang/test/Lower/OpenMP/private-commonblock.f90
M flang/test/Lower/OpenMP/sections-array-reduction.f90
M flang/test/Lower/OpenMP/sections-reduction.f90
A flang/test/Lower/OpenMP/shared-loop.f90
M flang/test/Lower/OpenMP/simd.f90
M flang/test/Lower/OpenMP/statement-function.f90
M flang/test/Lower/OpenMP/target.f90
M flang/test/Lower/OpenMP/task.f90
M flang/test/Lower/OpenMP/threadprivate-commonblock.f90
M flang/test/Lower/OpenMP/threadprivate-non-global.f90
M flang/test/Lower/OpenMP/threadprivate-real-logical-complex-derivedtype.f90
M flang/test/Lower/OpenMP/unstructured.f90
M flang/test/Lower/OpenMP/use-device-ptr-to-use-device-addr.f90
M flang/test/Lower/OpenMP/wsloop-chunks.f90
M flang/test/Lower/OpenMP/wsloop-monotonic.f90
M flang/test/Lower/OpenMP/wsloop-nonmonotonic.f90
M flang/test/Lower/OpenMP/wsloop-reduction-add-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-add.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-and-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-and.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-eqv-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-eqv.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-neqv-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-neqv.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-or-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-logical-or.f90
M flang/test/Lower/OpenMP/wsloop-reduction-mul-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-mul.f90
M flang/test/Lower/OpenMP/wsloop-reduction-multi.f90
M flang/test/Lower/OpenMP/wsloop-reduction-multiple-clauses.f90
M flang/test/Lower/OpenMP/wsloop-schedule.f90
M flang/test/Lower/OpenMP/wsloop.f90
M flang/test/Lower/array-constructor-1.f90
M flang/test/Lower/array-elemental-calls-2.f90
M flang/test/Lower/array-elemental-calls-char.f90
M flang/test/Lower/array-elemental-subroutines.f90
M flang/test/Lower/array-user-def-assignments.f90
M flang/test/Lower/array.f90
M flang/test/Lower/assignment.f90
M flang/test/Lower/basic-function.f90
M flang/test/Lower/bindc_procs.f90
M flang/test/Lower/block.f90
M flang/test/Lower/c-interoperability-c-pointer.f90
M flang/test/Lower/call-bindc.f90
M flang/test/Lower/call-by-value.f90
M flang/test/Lower/call-suspect.f90
M flang/test/Lower/call.f90
M flang/test/Lower/complex-operations.f90
M flang/test/Lower/complex-real.f90
M flang/test/Lower/computed-goto.f90
M flang/test/Lower/derived-assignments.f90
M flang/test/Lower/dummy-procedure-character.f90
M flang/test/Lower/dummy-procedure.f90
M flang/test/Lower/entry-statement.f90
M flang/test/Lower/explicit-interface-results-2.f90
M flang/test/Lower/forall/array-constructor.f90
M flang/test/Lower/func-attrs.f90
M flang/test/Lower/host-associated-functions.f90
M flang/test/Lower/host-associated.f90
M flang/test/Lower/implicit-call-mismatch.f90
M flang/test/Lower/io-write.f90
M flang/test/Lower/math-lowering/abs.f90
A flang/test/Lower/nsw.f90
M flang/test/Lower/pointer.f90
M flang/test/Lower/polymorphic.f90
M flang/test/Lower/program-units-fir-mangling.f90
A flang/test/Lower/record-command-line.f90
M flang/test/Lower/sqrt.f90
M flang/test/Lower/trigonometric-intrinsics.f90
M flang/test/Lower/vector-subscript-io.f90
M flang/test/Parser/OpenMP/declare_target-device_type.f90
M flang/test/Parser/OpenMP/in-reduction-clause.f90
A flang/test/Parser/OpenMP/lastprivate-clause.f90
A flang/test/Parser/OpenMP/map-modifiers.f90
M flang/test/Parser/OpenMP/order-clause01.f90
M flang/test/Parser/OpenMP/tile-size.f90
M flang/test/Parser/OpenMP/unroll-full.f90
M flang/test/Parser/OpenMP/unroll.f90
M flang/test/Parser/include.f
A flang/test/Parser/recovery06.f90
M flang/test/Semantics/OpenMP/atomic-hint-clause.f90
M flang/test/Semantics/OpenMP/atomic01.f90
M flang/test/Semantics/OpenMP/atomic05.f90
A flang/test/Semantics/OpenMP/bad_module_subroutine.f90
M flang/test/Semantics/OpenMP/clause-validity01.f90
A flang/test/Semantics/OpenMP/clause-validity02.f90
M flang/test/Semantics/OpenMP/combined-constructs.f90
M flang/test/Semantics/OpenMP/declarative-directive.f90
M flang/test/Semantics/OpenMP/declare-target01.f90
M flang/test/Semantics/OpenMP/declare-target02.f90
M flang/test/Semantics/OpenMP/declare-target06.f90
M flang/test/Semantics/OpenMP/device-constructs.f90
M flang/test/Semantics/OpenMP/do05-positivecase.f90
M flang/test/Semantics/OpenMP/do20.f90
M flang/test/Semantics/OpenMP/flush02.f90
M flang/test/Semantics/OpenMP/if-clause.f90
M flang/test/Semantics/OpenMP/implicit-dsa.f90
A flang/test/Semantics/OpenMP/map-modifiers.f90
A flang/test/Semantics/OpenMP/name-conflict.f90
M flang/test/Semantics/OpenMP/nontemporal.f90
A flang/test/Semantics/OpenMP/omp-atomic-assignment-stmt-read.f90
M flang/test/Semantics/OpenMP/omp-atomic-assignment-stmt.f90
M flang/test/Semantics/OpenMP/order-clause01.f90
M flang/test/Semantics/OpenMP/ordered03.f90
A flang/test/Semantics/OpenMP/private-assoc.f90
A flang/test/Semantics/OpenMP/private03.f90
A flang/test/Semantics/OpenMP/reduction-namelist.f90
M flang/test/Semantics/OpenMP/requires-atomic01.f90
M flang/test/Semantics/OpenMP/requires-atomic02.f90
M flang/test/Semantics/OpenMP/requires04.f90
M flang/test/Semantics/OpenMP/requires05.f90
A flang/test/Semantics/OpenMP/shared-pointer.f90
M flang/test/Semantics/OpenMP/simd-nontemporal.f90
M flang/test/Semantics/OpenMP/symbol01.f90
M flang/test/Semantics/OpenMP/symbol02.f90
M flang/test/Semantics/OpenMP/symbol03.f90
M flang/test/Semantics/OpenMP/symbol07.f90
M flang/test/Semantics/OpenMP/symbol09.f90
M flang/test/Semantics/OpenMP/target01.f90
M flang/test/Semantics/OpenMP/taskgroup01.f90
M flang/test/Semantics/OpenMP/use_device_addr.f90
M flang/test/Semantics/OpenMP/use_device_addr1.f90
M flang/test/Semantics/OpenMP/use_device_ptr1.f90
M flang/test/Semantics/OpenMP/workshare02.f90
M flang/test/Semantics/bad-forward-type.f90
M flang/test/Semantics/call11.f90
A flang/test/Semantics/call42.f90
A flang/test/Semantics/free.f90
M flang/test/Semantics/get_team.f90
A flang/test/Semantics/ieee_int.f90
A flang/test/Semantics/implicit16.f90
M flang/test/Semantics/io07.f90
M flang/test/Semantics/io14.f90
A flang/test/Semantics/modfile68.f90
A flang/test/Semantics/modfile69.f90
M flang/test/Semantics/modproc01.f90
A flang/test/Semantics/named-construct-declaration-conflict.f90
M flang/test/Semantics/resolve123.f90
M flang/test/Semantics/separate-mp02.f90
A flang/test/Semantics/windows.f90
A flang/test/Transforms/debug-107988.fir
R flang/test/Transforms/debug-90683.fir
A flang/test/Transforms/debug-assumed-shape-array-2.fir
M flang/test/Transforms/debug-assumed-shape-array.fir
M flang/test/Transforms/debug-assumed-size-array.fir
M flang/test/Transforms/debug-complex-1.fir
M flang/test/Transforms/debug-derived-type-1.fir
M flang/test/Transforms/debug-fixed-array-type.fir
M flang/test/Transforms/debug-fn-info.fir
M flang/test/Transforms/debug-local-global-storage-1.fir
M flang/test/Transforms/debug-local-var.fir
M flang/test/Transforms/debug-module-2.fir
A flang/test/Transforms/debug-variable-array-dim.fir
A flang/test/Transforms/debug-variable-char-len.fir
M flang/test/Transforms/loop-versioning.fir
M flang/test/Transforms/omp-map-info-finalization.fir
M flang/test/Transforms/simplifyintrinsics.fir
M flang/test/Transforms/stack-arrays.fir
M flang/test/lit.cfg.py
M flang/tools/bbc/CMakeLists.txt
M flang/tools/bbc/bbc.cpp
M flang/tools/f18/CMakeLists.txt
M flang/tools/flang-driver/CMakeLists.txt
M flang/tools/flang-driver/driver.cpp
M flang/tools/tco/CMakeLists.txt
M flang/tools/tco/tco.cpp
M flang/unittests/Evaluate/real.cpp
M flang/unittests/Frontend/CodeGenActionTest.cpp
M flang/unittests/Frontend/CompilerInstanceTest.cpp
M flang/unittests/Optimizer/Builder/ComplexTest.cpp
M flang/unittests/Optimizer/Builder/FIRBuilderTest.cpp
M flang/unittests/Optimizer/Builder/Runtime/CommandTest.cpp
A flang/unittests/Optimizer/Builder/Runtime/IntrinsicsTest.cpp
M flang/unittests/Optimizer/Builder/Runtime/RuntimeCallTestBase.h
M flang/unittests/Optimizer/CMakeLists.txt
M flang/unittests/Optimizer/FIRTypesTest.cpp
M flang/unittests/Optimizer/RTBuilder.cpp
A flang/unittests/Runtime/CUDA/Allocatable.cpp
M flang/unittests/Runtime/CUDA/CMakeLists.txt
A flang/unittests/Runtime/CUDA/Memory.cpp
M flang/unittests/Runtime/Numeric.cpp
M flang/unittests/Runtime/Reduction.cpp
M flang/unittests/Runtime/Transformational.cpp
M libc/benchmarks/MemorySizeDistributions.cpp
M libc/benchmarks/automemcpy/unittests/CodeGenTest.cpp
M libc/cmake/modules/CheckCompilerFeatures.cmake
M libc/cmake/modules/LLVMLibCHeaderRules.cmake
M libc/cmake/modules/LLVMLibCTestRules.cmake
A libc/cmake/modules/compiler_features/check_float16_conversion.cpp
M libc/cmake/modules/prepare_libc_gpu_build.cmake
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/config.json
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/config.json
M libc/config/darwin/arm/entrypoints.txt
M libc/config/gpu/config.json
M libc/config/gpu/entrypoints.txt
M libc/config/gpu/headers.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/aarch64/headers.txt
M libc/config/linux/api.td
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/arm/headers.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/riscv/headers.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/linux/x86_64/headers.txt
M libc/docs/configure.rst
M libc/docs/date_and_time.rst
M libc/docs/dev/printf_behavior.rst
M libc/docs/gpu/support.rst
M libc/docs/gpu/using.rst
M libc/docs/math/index.rst
M libc/hdr/CMakeLists.txt
M libc/hdr/errno_macros.h
M libc/hdr/stdio_macros.h
A libc/hdr/stdio_overlay.h
M libc/hdr/types/CMakeLists.txt
M libc/hdr/types/FILE.h
M libc/hdr/types/cookie_io_functions_t.h
M libc/hdr/types/off_t.h
A libc/hdr/types/socklen_t.h
A libc/hdr/types/ssize_t.h
A libc/hdr/types/struct_msghdr.h
A libc/hdr/types/struct_sockaddr.h
A libc/hdr/types/wchar_t.h
A libc/hdr/types/wint_t.h
A libc/hdr/wchar_macros.h
A libc/hdr/wchar_overlay.h
M libc/include/CMakeLists.txt
M libc/include/llvm-libc-macros/CMakeLists.txt
M libc/include/llvm-libc-macros/linux/error-number-macros.h
A libc/include/llvm-libc-macros/malloc-macros.h
M libc/include/llvm-libc-macros/math-function-macros.h
M libc/include/llvm-libc-macros/stdio-macros.h
M libc/include/llvm-libc-types/CMakeLists.txt
M libc/include/llvm-libc-types/rpc_opcodes_t.h
A libc/include/llvm-libc-types/struct_iovec.h
A libc/include/llvm-libc-types/struct_msghdr.h
M libc/include/llvm-libc-types/struct_sockaddr.h
M libc/include/llvm-libc-types/wchar_t.h
M libc/include/llvm-libc-types/wint_t.h
A libc/include/malloc.h.def
M libc/newhdrgen/yaml/gpu/rpc.yaml
A libc/newhdrgen/yaml/malloc.yaml
M libc/newhdrgen/yaml/math.yaml
M libc/newhdrgen/yaml/stdlib.yaml
M libc/newhdrgen/yaml/sys/socket.yaml
M libc/newhdrgen/yaml/time.yaml
M libc/newhdrgen/yaml_functions_sorted.py
M libc/spec/gnu_ext.td
M libc/spec/gpu_ext.td
M libc/spec/posix.td
M libc/spec/stdc.td
M libc/src/__support/CMakeLists.txt
M libc/src/__support/CPP/string_view.h
M libc/src/__support/CPP/utility/in_place.h
M libc/src/__support/FPUtil/BasicOperations.h
M libc/src/__support/FPUtil/CMakeLists.txt
M libc/src/__support/FPUtil/ManipulationFunctions.h
M libc/src/__support/FPUtil/NearestIntegerOperations.h
A libc/src/__support/FPUtil/cast.h
M libc/src/__support/FPUtil/double_double.h
M libc/src/__support/FPUtil/dyadic_float.h
M libc/src/__support/FPUtil/except_value_utils.h
M libc/src/__support/FPUtil/generic/CMakeLists.txt
M libc/src/__support/FPUtil/generic/FMA.h
M libc/src/__support/FPUtil/generic/add_sub.h
M libc/src/__support/FPUtil/generic/sqrt.h
M libc/src/__support/File/linux/CMakeLists.txt
M libc/src/__support/OSUtil/linux/vdso.cpp
M libc/src/__support/OSUtil/linux/vdso_sym.h
M libc/src/__support/StringUtil/error_to_string.cpp
M libc/src/__support/StringUtil/error_to_string.h
M libc/src/__support/StringUtil/tables/CMakeLists.txt
M libc/src/__support/StringUtil/tables/linux_extension_errors.h
M libc/src/__support/StringUtil/tables/linux_platform_errors.h
M libc/src/__support/StringUtil/tables/minimal_platform_errors.h
M libc/src/__support/StringUtil/tables/posix_errors.h
M libc/src/__support/StringUtil/tables/stdc_errors.h
M libc/src/__support/float_to_string.h
M libc/src/__support/macros/optimization.h
M libc/src/__support/sign.h
M libc/src/__support/str_to_integer.h
M libc/src/__support/time/linux/CMakeLists.txt
M libc/src/__support/time/linux/clock_gettime.h
M libc/src/__support/wctype_utils.h
M libc/src/gpu/rpc_host_call.cpp
M libc/src/gpu/rpc_host_call.h
M libc/src/math/CMakeLists.txt
A libc/src/math/exp2m1f16.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/acosf.cpp
M libc/src/math/generic/asinf.cpp
M libc/src/math/generic/ceilf16.cpp
M libc/src/math/generic/cos.cpp
M libc/src/math/generic/cosf.cpp
M libc/src/math/generic/exp.cpp
M libc/src/math/generic/exp10.cpp
M libc/src/math/generic/exp10f16.cpp
M libc/src/math/generic/exp10f_impl.h
M libc/src/math/generic/exp2.cpp
M libc/src/math/generic/exp2f16.cpp
M libc/src/math/generic/exp2f_impl.h
A libc/src/math/generic/exp2m1f16.cpp
M libc/src/math/generic/expf.cpp
M libc/src/math/generic/expf16.cpp
M libc/src/math/generic/explogxf.h
M libc/src/math/generic/expm1f.cpp
M libc/src/math/generic/expm1f16.cpp
M libc/src/math/generic/expxf16.h
M libc/src/math/generic/floorf16.cpp
M libc/src/math/generic/fmul.cpp
A libc/src/math/generic/iscanonical.cpp
A libc/src/math/generic/iscanonicalf.cpp
A libc/src/math/generic/iscanonicalf128.cpp
A libc/src/math/generic/iscanonicalf16.cpp
A libc/src/math/generic/iscanonicall.cpp
A libc/src/math/generic/issignaling.cpp
A libc/src/math/generic/issignalingf.cpp
A libc/src/math/generic/issignalingf128.cpp
A libc/src/math/generic/issignalingf16.cpp
A libc/src/math/generic/issignalingl.cpp
M libc/src/math/generic/pow.cpp
M libc/src/math/generic/powf.cpp
M libc/src/math/generic/range_reduction_double_common.h
M libc/src/math/generic/range_reduction_double_fma.h
M libc/src/math/generic/range_reduction_double_nofma.h
M libc/src/math/generic/rintf16.cpp
M libc/src/math/generic/roundevenf16.cpp
M libc/src/math/generic/roundf16.cpp
M libc/src/math/generic/sin.cpp
M libc/src/math/generic/sincos.cpp
M libc/src/math/generic/sincos_eval.h
M libc/src/math/generic/sincosf.cpp
M libc/src/math/generic/sinf.cpp
M libc/src/math/generic/tan.cpp
M libc/src/math/generic/tanf.cpp
M libc/src/math/generic/truncf16.cpp
A libc/src/math/iscanonical.h
A libc/src/math/iscanonicalf.h
A libc/src/math/iscanonicalf128.h
A libc/src/math/iscanonicalf16.h
A libc/src/math/iscanonicall.h
A libc/src/math/issignaling.h
A libc/src/math/issignalingf.h
A libc/src/math/issignalingf128.h
A libc/src/math/issignalingf16.h
A libc/src/math/issignalingl.h
M libc/src/pthread/CMakeLists.txt
M libc/src/pthread/pthread_atfork.cpp
M libc/src/pthread/pthread_attr_setdetachstate.cpp
M libc/src/pthread/pthread_attr_setguardsize.cpp
M libc/src/pthread/pthread_attr_setstack.cpp
M libc/src/pthread/pthread_attr_setstacksize.cpp
M libc/src/pthread/pthread_condattr_setclock.cpp
M libc/src/pthread/pthread_condattr_setpshared.cpp
M libc/src/pthread/pthread_create.cpp
M libc/src/pthread/pthread_key_create.cpp
M libc/src/pthread/pthread_key_delete.cpp
M libc/src/pthread/pthread_mutex_init.cpp
M libc/src/pthread/pthread_mutexattr_destroy.cpp
M libc/src/pthread/pthread_mutexattr_getpshared.cpp
M libc/src/pthread/pthread_mutexattr_getrobust.cpp
M libc/src/pthread/pthread_mutexattr_gettype.cpp
M libc/src/pthread/pthread_mutexattr_setpshared.cpp
M libc/src/pthread/pthread_mutexattr_setrobust.cpp
M libc/src/pthread/pthread_mutexattr_settype.cpp
M libc/src/pthread/pthread_rwlock_destroy.cpp
M libc/src/pthread/pthread_rwlock_init.cpp
M libc/src/pthread/pthread_rwlock_rdlock.cpp
M libc/src/pthread/pthread_rwlock_timedrdlock.cpp
M libc/src/pthread/pthread_rwlock_timedwrlock.cpp
M libc/src/pthread/pthread_rwlock_tryrdlock.cpp
M libc/src/pthread/pthread_rwlock_trywrlock.cpp
M libc/src/pthread/pthread_rwlock_unlock.cpp
M libc/src/pthread/pthread_rwlock_wrlock.cpp
M libc/src/pthread/pthread_rwlockattr_setkind_np.cpp
M libc/src/pthread/pthread_rwlockattr_setpshared.cpp
M libc/src/pthread/pthread_setspecific.cpp
M libc/src/spawn/CMakeLists.txt
M libc/src/spawn/posix_spawn_file_actions_addclose.cpp
M libc/src/spawn/posix_spawn_file_actions_adddup2.cpp
M libc/src/spawn/posix_spawn_file_actions_addopen.cpp
M libc/src/spawn/posix_spawn_file_actions_destroy.cpp
M libc/src/stdio/asprintf.cpp
M libc/src/stdio/asprintf.h
M libc/src/stdio/gpu/CMakeLists.txt
M libc/src/stdio/gpu/file.h
M libc/src/stdio/gpu/fprintf.cpp
M libc/src/stdio/gpu/getchar.cpp
M libc/src/stdio/gpu/printf.cpp
M libc/src/stdio/gpu/putchar.cpp
M libc/src/stdio/gpu/puts.cpp
A libc/src/stdio/gpu/rename.cpp
M libc/src/stdio/gpu/vfprintf.cpp
M libc/src/stdio/gpu/vfprintf_utils.h
M libc/src/stdio/gpu/vprintf.cpp
M libc/src/stdio/linux/CMakeLists.txt
M libc/src/stdio/printf_core/CMakeLists.txt
M libc/src/stdio/printf_core/converter.cpp
M libc/src/stdio/printf_core/converter_atlas.h
M libc/src/stdio/printf_core/parser.h
A libc/src/stdio/printf_core/strerror_converter.h
M libc/src/stdio/printf_core/vasprintf_internal.h
M libc/src/stdio/vasprintf.cpp
M libc/src/stdio/vasprintf.h
M libc/src/stdio/vsscanf.cpp
M libc/src/stdlib/CMakeLists.txt
M libc/src/stdlib/gpu/CMakeLists.txt
A libc/src/stdlib/gpu/system.cpp
M libc/src/stdlib/qsort_data.h
M libc/src/stdlib/quick_sort.h
A libc/src/stdlib/system.h
M libc/src/string/memory_utils/aarch64/inline_memcmp.h
M libc/src/string/memory_utils/aarch64/inline_memcpy.h
M libc/src/string/memory_utils/aarch64/inline_memmove.h
M libc/src/string/memory_utils/generic/aligned_access.h
M libc/src/string/memory_utils/generic/byte_per_byte.h
M libc/src/string/memory_utils/inline_memcmp.h
M libc/src/string/memory_utils/inline_memcpy.h
M libc/src/string/memory_utils/inline_memset.h
M libc/src/string/memory_utils/x86_64/inline_memcmp.h
M libc/src/string/memory_utils/x86_64/inline_memcpy.h
M libc/src/string/memory_utils/x86_64/inline_memmove.h
M libc/src/sys/socket/CMakeLists.txt
M libc/src/sys/socket/bind.h
M libc/src/sys/socket/linux/CMakeLists.txt
M libc/src/sys/socket/linux/bind.cpp
A libc/src/sys/socket/linux/recv.cpp
A libc/src/sys/socket/linux/recvfrom.cpp
A libc/src/sys/socket/linux/recvmsg.cpp
A libc/src/sys/socket/linux/send.cpp
A libc/src/sys/socket/linux/sendmsg.cpp
A libc/src/sys/socket/linux/sendto.cpp
A libc/src/sys/socket/linux/socketpair.cpp
A libc/src/sys/socket/recv.h
A libc/src/sys/socket/recvfrom.h
A libc/src/sys/socket/recvmsg.h
A libc/src/sys/socket/send.h
A libc/src/sys/socket/sendmsg.h
A libc/src/sys/socket/sendto.h
A libc/src/sys/socket/socketpair.h
M libc/src/threads/CMakeLists.txt
M libc/src/threads/thrd_create.cpp
M libc/src/time/CMakeLists.txt
A libc/src/time/ctime.cpp
A libc/src/time/ctime.h
A libc/src/time/ctime_r.cpp
A libc/src/time/ctime_r.h
M libc/src/time/time_utils.h
M libc/src/wchar/CMakeLists.txt
M libc/src/wchar/btowc.cpp
M libc/src/wchar/btowc.h
M libc/src/wchar/wctob.cpp
M libc/src/wchar/wctob.h
M libc/test/UnitTest/FPMatcher.h
M libc/test/UnitTest/PrintfMatcher.h
M libc/test/UnitTest/ScanfMatcher.h
M libc/test/include/CMakeLists.txt
A libc/test/include/FpClassifyTest.h
A libc/test/include/IsNormalTest.h
A libc/test/include/IsSubnormalTest.h
A libc/test/include/IsZeroTest.h
A libc/test/include/fpclassify_test.c
A libc/test/include/fpclassify_test.cpp
A libc/test/include/fpclassifyf_test.cpp
A libc/test/include/fpclassifyl_test.cpp
A libc/test/include/iscanonical_test.c
A libc/test/include/isnormal_test.c
A libc/test/include/isnormal_test.cpp
A libc/test/include/isnormalf_test.cpp
A libc/test/include/isnormall_test.cpp
A libc/test/include/issignaling_test.c
A libc/test/include/issubnormal_test.c
A libc/test/include/issubnormal_test.cpp
A libc/test/include/issubnormalf_test.cpp
Log Message:
-----------
[𝘀𝗽𝗿] changes introduced through rebase
Created using spr 1.3.4
[skip ci]
Compare: https://github.com/llvm/llvm-project/compare/60d953907caa...b4be4afcc167
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list