[all-commits] [llvm/llvm-project] b0a1ae: [LV] Add additional variants of tests with udiv/ur...
wanglei via All-commits
all-commits at lists.llvm.org
Thu May 16 02:15:25 PDT 2024
Branch: refs/heads/users/wangleiat/spr/loongarch-refactor-loongarchabicomputetargetabi
Home: https://github.com/llvm/llvm-project
Commit: b0a1ae2cca4a438753e093df2f949e73a313dbe2
https://github.com/llvm/llvm-project/commit/b0a1ae2cca4a438753e093df2f949e73a313dbe2
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/test/Transforms/LoopVectorize/trip-count-expansion-may-introduce-ub.ll
Log Message:
-----------
[LV] Add additional variants of tests with udiv/urem/sdiv/srem in TC.
Add additional tests with udiv/urem/sdiv/srem in trip counts, where the
divisor is constant.
For https://github.com/llvm/llvm-project/pull/92177.
Commit: b6f050fa129b08b6bc35168f0b8010742cd1ed9d
https://github.com/llvm/llvm-project/commit/b6f050fa129b08b6bc35168f0b8010742cd1ed9d
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M lldb/docs/resources/lldbgdbremote.md
Log Message:
-----------
[lldb] Document some more packets (#92124)
Comparing a bit of the mock GDB server code to what was in the document
I found these:
* QLaunchArch
* qSpeedTest
* qSymbol
qSymbol is the most mysterious but it did have some examples in a
comment so I've adapted that.
Commit: 03bdfb65617e3cf714a106fdf7a6ae7551d17bce
https://github.com/llvm/llvm-project/commit/03bdfb65617e3cf714a106fdf7a6ae7551d17bce
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M lldb/packages/Python/lldbsuite/test/lldbutil.py
M lldb/test/API/functionalities/thread/concurrent_events/TestConcurrentTwoBreakpointsOneSignal.py
Log Message:
-----------
[lldb][test][FreeBSD] Fix some concurrent event tests (#84155)
A lot of `TestConcurrent*.py` expect one of the threads to crash, but we
weren't checking for it properly.
Possibly because signal reporting got better on FreeBSD at some point,
and it now shows the same info as Linux does.
```
lldb-api :: functionalities/inferior-changed/TestInferiorChanged.py
lldb-api :: functionalities/inferior-crashing/TestInferiorCrashing.py
lldb-api :: functionalities/inferior-crashing/TestInferiorCrashingStep.py
lldb-api :: functionalities/inferior-crashing/recursive-inferior/TestRecursiveInferior.py
lldb-api :: functionalities/inferior-crashing/recursive-inferior/TestRecursiveInferiorStep.py
lldb-api :: functionalities/thread/concurrent_events/TestConcurrentCrashWithBreak.py
lldb-api :: functionalities/thread/concurrent_events/TestConcurrentCrashWithSignal.py
lldb-api :: functionalities/thread/concurrent_events/TestConcurrentCrashWithWatchpoint.py
lldb-api :: functionalities/thread/concurrent_events/TestConcurrentCrashWithWatchpointBreakpointSignal.py
```
Fixes #48777
`TestConcurrentTwoBreakpointsOneSignal.py` no longer fails, at least on
an AWS instance, so I've removed the xfail there.
Commit: e67080df999c035d764c42aaa6d85417331ac52c
https://github.com/llvm/llvm-project/commit/e67080df999c035d764c42aaa6d85417331ac52c
Author: Jacques Pienaar <jpienaar at google.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/include/mlir/Dialect/Tensor/IR/TensorOps.td
M mlir/include/mlir/IR/Operation.h
M mlir/lib/Dialect/Func/Transforms/OneToNFuncConversions.cpp
M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/test/Dialect/OpenMP/invalid.mlir
M mlir/test/Dialect/OpenMP/ops.mlir
M mlir/test/lib/Dialect/Test/TestOps.td
M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
M mlir/unittests/TableGen/OpBuildGen.cpp
Log Message:
-----------
[mlir][ods] Populate properties in generated builder (#90430)
Previously this was only populated in the create method later. This
resolves some of invalid builder paths. This may also be sufficient that
type inference functions no longer have to consider whether property
conversion has happened (but haven't verified that yet).
This also makes Attributes corresponding to Properties as optional
inside the set from attributes method. Today that is in effect what
happens with Property value initialization and folks use it to define
custom C++ types whose default initialization is what they want. This is
the behavior users get if they use properties directly. Propagating
Attributes without allowing partial setting would require iterating over
the dictionary attribute considering the properties of the op type that
will be created. This could also have been an additional method
generated or optional behavior on the set method. But doing it
consistently seems better. In terms of whats lost, it doesn't seem like
anything compared to the pure Property path where Property is default
value initialized and then partially overwritten (this doesn't seem to
buy anything else verification wise).
Default valued Properties (as specified ODS side rather than C++ side)
triggered error as the containing class was not yet complete but
referenced nested class, so that we couldn't have default initializer
for them in the parent class. Added an additional forwarding builder to
avoid needing to update call sites. This could be split out to separate
change.
Inlined templated function in unit test that was only used once. Moved
initialization earlier where seen.
Commit: 7621a0d36465cf870769cd54035d254d409c2ce4
https://github.com/llvm/llvm-project/commit/7621a0d36465cf870769cd54035d254d409c2ce4
Author: Paul Walker <paul.walker at arm.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/sve-extract-fixed-from-scalable-vector.ll
M llvm/test/CodeGen/AArch64/sve-extract-fixed-vector.ll
M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-to-fp.ll
Log Message:
-----------
[LLVM][CodeGen][SVE] Improve custom lowering for EXTRACT_SUBVECTOR. (#90963)
We can extract any legal fixed length vector from a scalable vector by
using VECTOR_SPLICE.
Commit: eacefba9aa3d1a5181d3d49823df24aca0d2b344
https://github.com/llvm/llvm-project/commit/eacefba9aa3d1a5181d3d49823df24aca0d2b344
Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M lldb/test/API/functionalities/gdb_remote_client/TestPty.py
M lldb/test/API/tools/lldb-server/TestPtyServer.py
Log Message:
-----------
[lldb][Windows] Fixed tests TestPty and TestPtyServer (#92090)
The tests TestPty and TestPtyServer use the Unix specific python builtin
module termios. They are failed in case of Windows host and Linux
target. Disable them for Windows host too.
Commit: 3c3f6d877623d0d821f59f4ec6038b27f27ee01d
https://github.com/llvm/llvm-project/commit/3c3f6d877623d0d821f59f4ec6038b27f27ee01d
Author: Ivan Kosarev <ivan.kosarev at amd.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
Log Message:
-----------
[AMDGPU][AsmParser][NFC] Eliminate Match_PreferE32. (#92159)
Was added in 88e0b251815563016ad50241dd592e304bc03ee5 and is unused
since fcef407aa21ad5a79d66a088e6f2a66a5745725d.
Commit: de18f5ecf80ef7183625c80b04445c614a17c483
https://github.com/llvm/llvm-project/commit/de18f5ecf80ef7183625c80b04445c614a17c483
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M flang/test/Lower/OpenMP/taskgroup.f90
Log Message:
-----------
[flang][OpenMP] Remove `allocate` from `taskgroup` in test (#92173)
Remove the `allocate`, because it needs to be used together with a
privatizing clause. The only such clause for `taskgroup` is
`task_reduction`, but it's not yet supported.
Commit: e6ef836f23aa44520e0823c38e44b2f58eb5a52f
https://github.com/llvm/llvm-project/commit/e6ef836f23aa44520e0823c38e44b2f58eb5a52f
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M flang/test/Lower/OpenMP/teams.f90
Log Message:
-----------
[flang][OpenMP] Add -fopenmp-version=52 to teams.f90 (#92180)
One of the functions in the test has `teams if(...)`. The `if` clause
was only allowed on the `teams` directive in OpenMP 5.2.
Commit: ccbf908b0836d8e3945f9331fd3679cbc6be0be1
https://github.com/llvm/llvm-project/commit/ccbf908b0836d8e3945f9331fd3679cbc6be0be1
Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M libc/src/__support/StringUtil/tables/stdc_errors.h
M libc/test/src/string/strerror_test.cpp
Log Message:
-----------
[libc] Fix GPU test build error (#92235)
This fixes a build error on the AMDGPU buildbot introduced in PR
https://github.com/llvm/llvm-project/pull/92172
Commit: 1650f1b3d7f97ca95eb930984e74bdfd91b02b4e
https://github.com/llvm/llvm-project/commit/1650f1b3d7f97ca95eb930984e74bdfd91b02b4e
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/include/clang/AST/VTTBuilder.h
M clang/lib/AST/VTTBuilder.cpp
M clang/lib/CodeGen/CGVTT.cpp
M clang/lib/CodeGen/CGVTables.h
M cross-project-tests/debuginfo-tests/dexter/dex/command/commands/DexExpectStepOrder.py
M flang/docs/HighLevelFIR.md
M flang/test/Lower/HLFIR/forall.f90
M libc/src/stdio/printf_core/parser.h
M libcxx/test/std/containers/views/mdspan/CustomTestLayouts.h
M llvm/docs/GlobalISel/GenericOpcode.rst
M llvm/include/llvm/Target/Target.td
M llvm/lib/Analysis/DependenceAnalysis.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/Bitcode/Writer/ValueEnumerator.cpp
M llvm/lib/Bitcode/Writer/ValueEnumerator.h
M llvm/lib/CodeGen/LiveDebugValues/VarLocBasedImpl.cpp
M llvm/lib/CodeGen/MLRegAllocEvictAdvisor.cpp
M llvm/lib/CodeGen/PrologEpilogInserter.cpp
M llvm/lib/Support/ELFAttributeParser.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp
M llvm/lib/Target/DirectX/DXILWriter/DXILValueEnumerator.cpp
M llvm/lib/Target/DirectX/DXILWriter/DXILValueEnumerator.h
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
M llvm/lib/Transforms/Utils/SampleProfileInference.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/CodeGen/X86/avx-vperm2x128.ll
M llvm/test/DebugInfo/PDB/Inputs/every-type.yaml
M llvm/test/MC/ARM/eh-directive-personalityindex-diagnostics.s
M llvm/test/Transforms/InstCombine/phi-extractvalue.ll
M llvm/test/Transforms/InstCombine/phi-of-insertvalues.ll
M llvm/test/Transforms/VectorCombine/X86/scalarize-vector-gep.ll
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
Log Message:
-----------
Fix typo "indicies" (#92232)
Commit: 398162ddbcf741c49e86bef2ef4aaa3fd0213916
https://github.com/llvm/llvm-project/commit/398162ddbcf741c49e86bef2ef4aaa3fd0213916
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M libc/test/src/string/strerror_test.cpp
Log Message:
-----------
[libc] Fix typo in test message
Commit: 3b5a121a2478e586f59e3277d04d17fb63be5d76
https://github.com/llvm/llvm-project/commit/3b5a121a2478e586f59e3277d04d17fb63be5d76
Author: Julian Schmidt <git.julian.schmidt at gmail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/SuspiciousEnumUsageCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/MisleadingCaptureDefaultByValueCheck.cpp
M clang-tools-extra/clang-tidy/misc/UnusedParametersCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseConstraintsCheck.cpp
Log Message:
-----------
[clang-tidy][NFC] replace comparison of begin and end iterators with range empty (#91994)
Improves readability by changing comparisons of `*_begin` and `*_end`
iterators into `.empty()` on their range.
Commit: 8a71284cb9463a90fab0d9e8edbeb5d879531e32
https://github.com/llvm/llvm-project/commit/8a71284cb9463a90fab0d9e8edbeb5d879531e32
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/test/MC/X86/abs8.s
M llvm/test/MC/X86/align-branch-variant-symbol.s
M llvm/test/MC/X86/data-prefix-fail.s
M llvm/test/MC/X86/displacement-overflow.s
M llvm/test/MC/X86/dwarf-segment-register.s
M llvm/test/MC/X86/index-operations.s
M llvm/test/MC/X86/ret.s
M llvm/test/MC/X86/x86_errors.s
Log Message:
-----------
[MC][X86] Cleanup check prefixes identified in #92248
Avoid using numbers as check prefix - replace with actual triple config names where possible
Commit: 89873694654a635cabdd861ddebd61a041d8342f
https://github.com/llvm/llvm-project/commit/89873694654a635cabdd861ddebd61a041d8342f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/test/CodeGen/X86/sibcall-2.ll
M llvm/test/CodeGen/X86/sibcall-byval.ll
Log Message:
-----------
[X86] sibcall - cleanup check prefixes identified in #92248
Avoid using numbers as check prefix - replace with actual triple config names
Commit: 932f0de43a9e334e161a69a50bd6b01cd51e238e
https://github.com/llvm/llvm-project/commit/932f0de43a9e334e161a69a50bd6b01cd51e238e
Author: Julian Schmidt <git.julian.schmidt at gmail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/MinMaxUseInitializerListCheck.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/min-max-use-initializer-list.cpp
Log Message:
-----------
[clang-tidy] fix crash due to assumed callee in min-max-use-initializer-list (#91992)
Previously, the call to `findArgs` for a `CallExpr` inside of a `min` or
`max` call would call `findArgs` before checking if the argument is a
call to `min` or `max`, which is what `findArgs` is expecting.
The fix moves the name checking before the call to `findArgs`, such that
only a `min` or `max` function call is used as an argument.
Fixes #91982
Fixes #92249
Commit: 83d9aa27680b6a7f3556fcf13ada70b4be95bab2
https://github.com/llvm/llvm-project/commit/83d9aa27680b6a7f3556fcf13ada70b4be95bab2
Author: Pietro Ghiglio <pietro.ghiglio at codeplay.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
A llvm/test/Transforms/LoopVectorize/as_cast.ll
Log Message:
-----------
[VPlan] Add scalar inferencing support for addrspace cast (#92107)
Fixes https://github.com/llvm/llvm-project/issues/91434
PR: https://github.com/llvm/llvm-project/pull/92107
Commit: d06270ee00e37b247eb99268fb2f106dbeee08ff
https://github.com/llvm/llvm-project/commit/d06270ee00e37b247eb99268fb2f106dbeee08ff
Author: Tom Stellard <tstellar at redhat.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M .github/workflows/libclang-abi-tests.yml
Log Message:
-----------
[workflows] Fix libclang-abi-tests to work with new version scheme (#91865)
Commit: 97418bb519d90542aad3c1f82c80264381a5758e
https://github.com/llvm/llvm-project/commit/97418bb519d90542aad3c1f82c80264381a5758e
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/test/CodeGen/X86/patchable-function-entry-ibt.ll
M llvm/test/CodeGen/X86/patchable-function-entry.ll
M llvm/test/CodeGen/X86/patchable-prologue.ll
Log Message:
-----------
[X86] patchable functions - cleanup check prefixes identified in #92248
Avoid using numbers as check prefix - replace with actual triple config names
Commit: 96ac2e3af78a45c4fdf4ecc3f9a76cc00663cac7
https://github.com/llvm/llvm-project/commit/96ac2e3af78a45c4fdf4ecc3f9a76cc00663cac7
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/test/CodeGen/X86/cmpxchg-clobber-flags.ll
Log Message:
-----------
[X86] cmpxchg-clobber-flags.ll - cleanup check prefixes identified in #92248
Avoid using numbers as check prefix - replace with actual triple config names
Commit: e26eacf771fed3226058a84d5d83f94994f583b2
https://github.com/llvm/llvm-project/commit/e26eacf771fed3226058a84d5d83f94994f583b2
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/test/CodeGen/X86/prefetch.ll
Log Message:
-----------
[X86] prefetch.ll - cleanup check prefixes identified in #92248
Avoid using leading numbers in check prefixes - replace with actual triple config names (and makes it easier to add X64 test coverage in a future commit).
Commit: 3f07430c383dffad77a120c91df79cbc7d99313c
https://github.com/llvm/llvm-project/commit/3f07430c383dffad77a120c91df79cbc7d99313c
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/test/CodeGen/X86/avoid-sfb-g-no-change.mir
Log Message:
-----------
[X86] avoid-sfb-g-no-change.mir - cleanup check prefixes identified in #92248
Don't include "-LABEL" (or any other FileCheck modifier) in the core check prefix name
Commit: f8395f8420cee8fc0854f43c9e88819c0ed54696
https://github.com/llvm/llvm-project/commit/f8395f8420cee8fc0854f43c9e88819c0ed54696
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/test/CodeGen/X86/align-branch-boundary-suppressions-tls.ll
M llvm/test/CodeGen/X86/asm-modifier.ll
M llvm/test/CodeGen/X86/pr32345.ll
M llvm/test/CodeGen/X86/x32-va_start.ll
Log Message:
-----------
[X86] Cleanup check prefixes identified in #92248
Avoid using leading numbers in check prefixes - replace with actual triple config names.
Commit: b59760d83d10c27f22d77b7df24871500167c3e8
https://github.com/llvm/llvm-project/commit/b59760d83d10c27f22d77b7df24871500167c3e8
Author: Kamlesh Kumar <kamleshbhalui at gmail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/examples/ExceptionDemo/CMakeLists.txt
M llvm/examples/ExceptionDemo/ExceptionDemo.cpp
Log Message:
-----------
Revert "[ExceptionDemo] Correct and update example ExceptionDemo" (#92257)
Reverts llvm/llvm-project#69485
Commit: 3bb39690d729d85cd93c9dd6e750d82d6f367541
https://github.com/llvm/llvm-project/commit/3bb39690d729d85cd93c9dd6e750d82d6f367541
Author: Hans <hans at hanshq.net>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/lib/CodeGen/CGCoroutine.cpp
M clang/test/CodeGenCoroutines/coro-await.cpp
R clang/test/CodeGenCoroutines/coro-symmetric-transfer-01.cpp
M clang/test/CodeGenCoroutines/coro-symmetric-transfer-02.cpp
M llvm/docs/Coroutines.rst
M llvm/include/llvm/IR/Intrinsics.td
M llvm/lib/Transforms/Coroutines/CoroInternal.h
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/lib/Transforms/Coroutines/Coroutines.cpp
M llvm/test/Transforms/Coroutines/coro-await-suspend-lower-invoke.ll
M llvm/test/Transforms/Coroutines/coro-await-suspend-lower.ll
R llvm/test/Transforms/Coroutines/coro-preserve-final.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail-chain-pgo-counter-promo.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail1.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail10.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail2.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail3.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail4.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail5.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail6.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail7.ll
Log Message:
-----------
[coro] Lower `llvm.coro.await.suspend.handle` to resume with tail call (#89751)
The C++ standard requires that symmetric transfer from one coroutine to
another is performed via a tail call. Failure to do so is a miscompile
and often breaks programs by quickly overflowing the stack.
Until now, the coro split pass tried to ensure this in the
`addMustTailToCoroResumes()` function by searching for
`llvm.coro.resume` calls to lower as tail calls if the conditions were
right: the right function arguments, attributes, calling convention
etc., and if a `ret void` was sure to be reached after traversal with
some ad-hoc constant folding following the call.
This was brittle, as the kind of implicit variants required for a tail
call to happen could easily be broken by other passes (e.g. if some
instruction got in between the `resume` and `ret`), see for example
9d1cb18d19862fc0627e4a56e1e491a498e84c71 and
284da049f5feb62b40f5abc41dda7895e3d81d72.
Also the logic seemed backwards: instead of searching for possible tail
call candidates and doing them if the circumstances are right, it seems
better to start with the intention of making the tail calls we need, and
forcing the circumstances to be right.
Now that we have the `llvm.coro.await.suspend.handle` intrinsic (since
f78688134026686288a8d310b493d9327753a022) which corresponds exactly to
symmetric transfer, change the lowering of that to also include the
`resume` part, always lowered as a tail call.
Commit: 95e307caeb17c080724921564d96e1b8457264bc
https://github.com/llvm/llvm-project/commit/95e307caeb17c080724921564d96e1b8457264bc
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M bolt/lib/Rewrite/CMakeLists.txt
Log Message:
-----------
Fix bolt build with -DBUILD_SHARED_LIBS=ON after 71fbbb69d
Commit 71fbbb69d63c461f391cbabf1e32cd9977c4ce68 moved getGUID out of
line in llvm/IR/GlobalValue, now users have to link LLVMCore to have
the definition of it.
/usr/bin/ld: CMakeFiles/LLVMBOLTRewrite.dir/PseudoProbeRewriter.cpp.o: in function `(anonymous namespace)::PseudoProbeRewriter::parsePseudoProbe()':
PseudoProbeRewriter.cpp:(.text._ZN12_GLOBAL__N_119PseudoProbeRewriter16parsePseudoProbeEv+0x3d0): undefined reference to `llvm::GlobalValue::getGUID(llvm::StringRef)'
/usr/bin/ld: CMakeFiles/LLVMBOLTRewrite.dir/PseudoProbeRewriter.cpp.o: in function `(anonymous namespace)::PseudoProbeRewriter::encodePseudoProbes()':
PseudoProbeRewriter.cpp:(.text._ZN12_GLOBAL__N_119PseudoProbeRewriter18encodePseudoProbesEv+0x11a1): undefined reference to `llvm::GlobalValue::getGUID(llvm::StringRef)'
collect2: error: ld returned 1 exit status
make[2]: *** [tools/bolt/lib/Rewrite/CMakeFiles/LLVMBOLTRewrite.dir/build.make:275: lib/libLLVMBOLTRewrite.so.19.0git] Error 1
Commit: c2fba6df944e11e2c9a7073405c6a817fdba14e3
https://github.com/llvm/llvm-project/commit/c2fba6df944e11e2c9a7073405c6a817fdba14e3
Author: Koakuma <koachan at protonmail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/lib/CodeGen/Targets/Sparc.cpp
M clang/test/CodeGen/sparcv9-abi.c
A clang/test/CodeGen/sparcv9-class-return.cpp
Log Message:
-----------
[clang][SPARC] Treat empty structs as if it's a one-bit type in the CC (#90338)
Make sure that empty structs are treated as if it has a size of one bit
in function parameters and return types so that it occupies a full
argument and/or return register slot.
This fixes crashes and miscompilations when passing and/or returning
empty structs.
Reviewed by: @s-barannikov
Commit: 97a30448f9477e0196f9340303aa20d544f1629a
https://github.com/llvm/llvm-project/commit/97a30448f9477e0196f9340303aa20d544f1629a
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M flang/test/Lower/OpenMP/parallel-sections.f90
Log Message:
-----------
[flang][OpenMP] Add `private` to `allocate` in parallel-sections.f90 (#92185)
Add a privatizing clause to the construct that uses `allocate` clause.
Amend the CHECK lines to reflect the expected output.
Commit: 4ec4a8e7fe463852e197d4ff396f4911ccce7449
https://github.com/llvm/llvm-project/commit/4ec4a8e7fe463852e197d4ff396f4911ccce7449
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/include/llvm/Frontend/OpenMP/ConstructCompositionT.h
M llvm/include/llvm/Frontend/OpenMP/ConstructDecompositionT.h
M llvm/unittests/Frontend/OpenMPDecompositionTest.cpp
Log Message:
-----------
[Frontend][OpenMP] Privatizing clauses in construct decomposition (#92176)
Add remaining clauses with the "privatizing" property to construct
decomposition, specifically to the part handling the `allocate` clause.
---------
Co-authored-by: Tom Eccles <t at freedommail.info>
Commit: 8d386c63a8d38bc50acba8dba2cd5f0daca57012
https://github.com/llvm/llvm-project/commit/8d386c63a8d38bc50acba8dba2cd5f0daca57012
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
A flang/test/Lower/OpenMP/invalid-reduction-modifier.f90
M llvm/include/llvm/Frontend/OpenMP/ConstructDecompositionT.h
Log Message:
-----------
[Frontend][OpenMP] Reduction modifier must be applied somewhere (#92160)
Detect the case when a reduction modifier ends up not being applied
after construct decomposition, treat it as an error.
This fixes a regression in the gfortran test suite after PR90098.
Commit: 7c8176ebd39c357fc4fa488861318409cd87d8f2
https://github.com/llvm/llvm-project/commit/7c8176ebd39c357fc4fa488861318409cd87d8f2
Author: Jie Fu <jiefu at tencent.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
Log Message:
-----------
[Coroutines] Remove unused function (NFC)
llvm-project/llvm/lib/Transforms/Coroutines/CoroSplit.cpp:1223:1:
error: unused function 'scanPHIsAndUpdateValueMap' [-Werror,-Wunused-function]
scanPHIsAndUpdateValueMap(Instruction *Prev, BasicBlock *NewBlock,
^
1 error generated.
Commit: 466d266945196ebbdefd8d72f654551d54d68600
https://github.com/llvm/llvm-project/commit/466d266945196ebbdefd8d72f654551d54d68600
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/test/CodeGen/AMDGPU/agpr-register-count.ll
M llvm/test/CodeGen/AMDGPU/spill-vgpr.ll
Log Message:
-----------
[AMDGPU] Fix GFX90x check prefixes in tests (#92254)
Commit: 61da6366d043792d7db280ce9edd2db62516e0e8
https://github.com/llvm/llvm-project/commit/61da6366d043792d7db280ce9edd2db62516e0e8
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
A flang/include/flang/Optimizer/CodeGen/CGOps.h
M flang/include/flang/Optimizer/CodeGen/CGOps.td
M flang/include/flang/Optimizer/CodeGen/CGPasses.td
M flang/include/flang/Optimizer/CodeGen/CodeGen.h
M flang/include/flang/Tools/CLOptions.inc
M flang/lib/Optimizer/CodeGen/CGOps.cpp
R flang/lib/Optimizer/CodeGen/CGOps.h
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/CodeGen/PreCGRewrite.cpp
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
M flang/test/Fir/declare-codegen.fir
M flang/test/Fir/dummy-scope-codegen.fir
A flang/test/Transforms/debug-local-var-2.f90
A flang/test/Transforms/debug-local-var.f90
Log Message:
-----------
[flang] Initial debug info support for local variables. (#90905)
We need the information in the `DeclareOp` to generate debug information
for variables. Currently, cg-rewrite removes the `DeclareOp`. As
`AddDebugInfo` runs after that, it cannot process the `DeclareOp`. My
initial plan was to make the `AddDebugInfo` pass run before the cg-rewrite
but that has few issues.
1. Initially I was thinking to use the memref op to carry the variable
attr. But as @tblah suggested in the #86939, it makes more sense to
carry that information on `DeclareOp`. It also makes it easy to handle
it in codegen and there is no special handling needed for arguments. For
this reason, we need to preserve the `DeclareOp` till the codegen.
2. Running earlier, we will miss the changes in passes that run between
cg-rewrite and codegen.
But not removing the DeclareOp in cg-rewrite has the issue that ShapeOp
remains and it causes errors during codegen. To solve this problem, I
convert DeclareOp to XDeclareOp in cg-rewrite instead of removing
it. This was mentioned as possible solution by @jeanPerier in
https://reviews.llvm.org/D136254
The conversion follows similar logic as used for other operators in that
file. The FortranAttr and CudaAttr are currently not converted but left
as TODO when the need arise.
Now `AddDebugInfo` pass can extracts information about local variables
from `XDeclareOp` and creates `DILocalVariableAttr`. These are attached
to `XDeclareOp` using `FusedLoc` approach. Codegen can use them to
create `DbgDeclareOp`. I have added tests that checks the debug
information in mlir from and also in llvm ir.
Currently we only handle very limited types. Rest are given a place
holder type. The previous placeholder type was basic type with
`DW_ATE_address` encoding. When variables are added, it started
causing assertions in the llvm debug info generation logic for some
types. It has been changed to an interger type to prevent these issues
until we handle those types properly.
Commit: eda098aadea3e542f95b5f0d4173f00eae42dc72
https://github.com/llvm/llvm-project/commit/eda098aadea3e542f95b5f0d4173f00eae42dc72
Author: Endre Fülöp <endre.fulop at sigmatechnology.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp
A clang/test/Analysis/block-in-critical-section.c
Log Message:
-----------
[clang][analyzer] Fix a crash in alpha.unix.BlockInCriticalSection (#90030)
When analyzing C code with function pointers the checker crashes because
of how the implementation extracts `IdentifierInfo`. Without the fix, this
test crashes.
Commit: da116bd82c0a78d2022c34b56e45cf6e4f91eaed
https://github.com/llvm/llvm-project/commit/da116bd82c0a78d2022c34b56e45cf6e4f91eaed
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/lib/CodeGen/Targets/Sparc.cpp
Log Message:
-----------
[Clang] Use ULL for std::max constant argument to fix build failure.
getKnownMinValue returns uint64_t, use ULL to make sure the second arg
is also 64 bit.
Commit: b42d245b77a83f8f6ca88c2dc441a96a5e8d5b52
https://github.com/llvm/llvm-project/commit/b42d245b77a83f8f6ca88c2dc441a96a5e8d5b52
Author: AdityaK <hiraditya at msn.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/GVNHoist.cpp
Log Message:
-----------
[GVNHoist] Replace combineKnownMetadata with combineMetadataForCSE (#92197)
There is no reason to call combineMetadata directly with a list of MD_
nodes. The combineMetadataForCSE function handles all the metadata
correctly
Partially fixes: #30866
Commit: 8a4cbeada930bf11fe740a2038bd5a3230712284
https://github.com/llvm/llvm-project/commit/8a4cbeada930bf11fe740a2038bd5a3230712284
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/lib/CodeGen/Targets/Sparc.cpp
Log Message:
-----------
[Clang] Unbreak build take 2 using uint64_t() explicitly.
Commit: dceaa0f4491ebe30c0b0f1bc7fa5ec365b60ced6
https://github.com/llvm/llvm-project/commit/dceaa0f4491ebe30c0b0f1bc7fa5ec365b60ced6
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/Support/MemoryBuffer.cpp
Log Message:
-----------
[Support] Use malloc instead of non-throwing new (#92157)
When allocating a memory buffer, we use a non-throwing new so that we
can explicitly handle memory buffers that are too large to fit into
memory. However, when exceptions are disabled, LLVM installs a custom
new handler
(https://github.com/llvm/llvm-project/blob/90109d444839683b09f0aafdc50b749cb4b3203b/llvm/lib/Support/InitLLVM.cpp#L61)
that explicitly crashes when we run out of memory
(https://github.com/llvm/llvm-project/blob/de14b749fee41d4ded711e771e43043ae3100cb3/llvm/lib/Support/ErrorHandling.cpp#L188)
and that means this particular out-of-memory situation cannot be
gracefully handled.
This was discovered while working on #embed
(https://github.com/llvm/llvm-project/pull/68620) on Windows and
resulted in a crash rather than the preprocessor issuing a diagnostic as
expected.
This patch switches away from the non-throwing new to a call to malloc
(and free), which will return a null pointer without calling a custom
new handler. It is the only instance in Clang or LLVM that I could find
which used a non-throwing new, so I did not think we would need anything
more involved than this change.
Testing this would be highly platform dependent and so it does not come
with test coverage. And because it doesn't change behavior that users
are likely to be able to observe, it does not come with a release note.
Commit: 8ab753c121447c1388c4cb1af08ab27b2cd62a82
https://github.com/llvm/llvm-project/commit/8ab753c121447c1388c4cb1af08ab27b2cd62a82
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M flang/test/Lower/OpenMP/invalid-reduction-modifier.f90
Log Message:
-----------
[flang][OpenMP] Add `REQUIRES: asserts` to test that relies on it
This should fix failures in release builds.
Commit: 413aaf11cd74f422f05b990613f822dc10db4391
https://github.com/llvm/llvm-project/commit/413aaf11cd74f422f05b990613f822dc10db4391
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
Log Message:
-----------
[clang][Interp][NFC] Support IntAP(S) in emitPrimCast
Commit: 28d5f7907e8c3adb6f0e2e16c9673a99f5e07522
https://github.com/llvm/llvm-project/commit/28d5f7907e8c3adb6f0e2e16c9673a99f5e07522
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/lib/AST/Interp/IntegralAP.h
Log Message:
-----------
[clang][Interp][NFC] Use a smaller default size for IntegralAP
Since we later possibly initialize the value by using operator-new,
we need the default value to _not_ allocate memory.
Commit: 4527adc500ea0dc4b942a51dc7209da4ea26d9a2
https://github.com/llvm/llvm-project/commit/4527adc500ea0dc4b942a51dc7209da4ea26d9a2
Author: Daniel Kuts <kutz at ispras.ru>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
Log Message:
-----------
Fix null pointer dereference in logging in mlir TransformOps (#92237)
A variable `typeConverterOp` may be nullptr after dynamic cast. There is
a security guard for this, but during logging error message the variable
getting dereferenced.
Found with static analysis.
Commit: b576a6b0452b9bfb634feaa215506d8a1afe857d
https://github.com/llvm/llvm-project/commit/b576a6b0452b9bfb634feaa215506d8a1afe857d
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/Target/X86/X86LowerTileCopy.cpp
M llvm/test/CodeGen/X86/AMX/amx-tile-basic.ll
Log Message:
-----------
[X86][AMX] Fix a bug after #83628 (#91207)
We need to check if `GR64Cand` a valid register before using it.
Test is not needed since it's covered in llvm-test-suite.
Fixes #90954
Commit: bed5546bb53bdb231b62f569b67f449019426ce8
https://github.com/llvm/llvm-project/commit/bed5546bb53bdb231b62f569b67f449019426ce8
Author: Rajveer Singh Bharadwaj <rajveer.developer at icloud.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVObject.h
Log Message:
-----------
[DebugInfo] Get rid of redundant conditional checks in `/DebugInfo` (#92111)
Resolves #90326
Commit: dcf3102be8458fe7588f9d11315beddfca4323b0
https://github.com/llvm/llvm-project/commit/dcf3102be8458fe7588f9d11315beddfca4323b0
Author: Elvina Yakubova <eyakubova at nvidia.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
A bolt/docs/CommandLineArgumentReference.md
Log Message:
-----------
[BOLT][NFC] Add documentation on BOLT options (#92117)
Add .md file documentation with all BOLT options to display it more
conveniently.
Commit: 8e00703be9ceb41d9b80c2bc8f024a9610b9aaa1
https://github.com/llvm/llvm-project/commit/8e00703be9ceb41d9b80c2bc8f024a9610b9aaa1
Author: jyu2-git <jennifer.yu at intel.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
A clang/test/OpenMP/target_map_both_pointer_pointee_codegen.cpp
A offload/test/mapping/map_both_pointer_pointee.c
Log Message:
-----------
[Clang][OpenMP] Fix runtime problem when explicit map both pointer and pointee (#92210)
ponter int *p for following map, test currently crash.
map(p, p[:100]) or map(p, p[1])
Currly IR looks like
// &p, &p, sizeof(int), TARGET_PARAM | TO | FROM
// &p, p[0], 100sizeof(float) TO | FROM
Worrking IR is
// map(p, p[0:100]) to map(p[0:100])
// &p, &p[0], 100*sizeof(float), TARGET_PARAM | TO | FROM | PTR_AND_OBJ
The change is add new argument AreBothBasePtrAndPteeMapped in
generateInfoForComponentList
Use that to skip map for map(p), when processing map(p[:100]) generate
map with right flag.
Commit: ff313ee70a4f27e3555ee4baef53b9b51c5aa27e
https://github.com/llvm/llvm-project/commit/ff313ee70a4f27e3555ee4baef53b9b51c5aa27e
Author: Luke Lau <luke at igalia.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVDeadRegisterDefinitions.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
M llvm/test/CodeGen/RISCV/rvv/calling-conv-fastcc.ll
M llvm/test/CodeGen/RISCV/rvv/calling-conv.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fnearbyint-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp2i-sat.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-i2fp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access-zve32x.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-nearbyint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vselect.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/fmaximum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fminimum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fnearbyint-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/fnearbyint-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/fshr-fshl-vp.ll
M llvm/test/CodeGen/RISCV/rvv/mgather-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/mscatter-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/nearbyint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfma-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmuladd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vpmerge-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vselect-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-crossbb.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvli-regression.ll
Log Message:
-----------
[RISCV] Remove hasSideEffects=1 for vsetvli pseudos (#91319)
In a similar vein to #90049, we currently model all of the effects of a
vsetvli pseudo:
* VL and VTYPE are marked as defs
* VL preserving x0,x0 vsetvlis doesn't get emitted until
RISCVInsertVSETVLI, and when they are they have implicit uses on VL
* Regular vector pseudos are fully modelled too: Before
RISCVInsertVSETVLI they can be moved between vsetvli pseudos because we
will eventually insert vsetvlis to correct VL and VTYPE. Afterwards,
they will have implicit uses on VL and VTYPE.
Since we model everything we can remove hasSideEffects=1. This gives us
some improvements like sinking in vsetvli-insert-crossbb.ll.
We need to update RISCVDeadRegisterDefinitions to keep handling vsetvli
pseudos since it only operates on instructions with unmodelled side
effects.
Commit: 74218a9c8fc4b0bdb4b2a4839455cf2f211a2a30
https://github.com/llvm/llvm-project/commit/74218a9c8fc4b0bdb4b2a4839455cf2f211a2a30
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/lib/AST/Interp/ByteCodeExprGen.h
M clang/test/AST/Interp/builtin-functions.cpp
Log Message:
-----------
[clang][Interp] Implement __builtin_convertvector
Commit: 3a8d176af519e4385652e762c615ace9b80ef045
https://github.com/llvm/llvm-project/commit/3a8d176af519e4385652e762c615ace9b80ef045
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/utils/filecheck_lint/filecheck_lint.py
Log Message:
-----------
[utils][filecheck-lint] Add shebang (#92243)
Commit: ba3447601c435bb2b24ad9e3c8d146c578f00568
https://github.com/llvm/llvm-project/commit/ba3447601c435bb2b24ad9e3c8d146c578f00568
Author: Piotr Zegar <me at piotrzegar.pl>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/UseConstraintsCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-constraints.rst
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-constraints.cpp
Log Message:
-----------
[clang-tidy] Fix crash in modernize-use-constraints (#92019)
Improved modernize-use-constraints check by fixing a crash that occurred
in some scenarios and excluded system headers from analysis.
Problem were with DependentNameTypeLoc having null type location as
getQualifierLoc().getTypeLoc().
Fixes #91872
Commit: 54c6ee922abbaea7d2f138a209f320c414c1657b
https://github.com/llvm/llvm-project/commit/54c6ee922abbaea7d2f138a209f320c414c1657b
Author: Piotr Zegar <me at piotrzegar.pl>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang-tools-extra/clang-tidy/cppcoreguidelines/SpecialMemberFunctionsCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/SpecialMemberFunctionsCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/special-member-functions.rst
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/special-member-functions-relaxed.cpp
Log Message:
-----------
[clang-tidy] Add AllowImplicitlyDeletedCopyOrMove option to cppcoreguidelines-special-member-functions (#71683)
Improved cppcoreguidelines-special-member-functions check with a new
option AllowImplicitlyDeletedCopyOrMove, which removes the requirement
for explicit copy or move special member functions when they are already
implicitly deleted.
Closes #62392
Commit: 9bbefb7f600019c9d7025281132dd160729bfff2
https://github.com/llvm/llvm-project/commit/9bbefb7f600019c9d7025281132dd160729bfff2
Author: Serge Pavlov <sepavloff at gmail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/lib/Parse/Parser.cpp
A clang/test/PCH/optnone.cpp
Log Message:
-----------
[clang] Store FPOptions earlier when parsing function (#92146)
After https://github.com/llvm/llvm-project/pull/85605 ([clang] Set
correct FPOptions if attribute 'optnone' presents) the current FP
options in Sema are saved during parsing function because Sema can
modify them if optnone is present. However they were saved too late, it
caused fails in some cases when precompiled headers are used. This patch
moves the storing earlier.
Commit: 03c53c69a367008da689f0d2940e2197eb4a955c
https://github.com/llvm/llvm-project/commit/03c53c69a367008da689f0d2940e2197eb4a955c
Author: Fangrui Song <i at maskray.me>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/tools/driver/cc1as_main.cpp
M llvm/include/llvm/MC/MCStreamer.h
M llvm/lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp
M llvm/lib/MC/MCObjectStreamer.cpp
M llvm/lib/MC/MCStreamer.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/test/MC/AsmParser/assembler-expressions-inlineasm.ll
M llvm/tools/llvm-mc/llvm-mc.cpp
M llvm/tools/llvm-ml/llvm-ml.cpp
Log Message:
-----------
[MC] Remove UseAssemblerInfoForParsing
Commit 6c0665e22174d474050e85ca367424f6e02476be
(https://reviews.llvm.org/D45164) enabled certain constant expression
evaluation for `MCObjectStreamer` at parse time (e.g. `.if` directives,
see llvm/test/MC/AsmParser/assembler-expressions.s).
`getUseAssemblerInfoForParsing` was added to make `clang -c` handling
inline assembly similar to `MCAsmStreamer` (e.g. `llvm-mc -filetype=asm`),
where such expression folding (related to
`AttemptToFoldSymbolOffsetDifference`) is unavailable.
I believe this is overly conservative. We can make some parse-time
expression folding work for `clang -c` even if `clang -S` would still
report an error, a MCAsmStreamer issue (we cannot print `.if`
directives) that should not restrict the functionality of
MCObjectStreamer.
```
% cat b.cc
asm(R"(
.pushsection .text,"ax"
.globl _start; _start: ret
.if . -_start == 1
ret
.endif
.popsection
)");
% gcc -S b.cc && gcc -c b.cc
% clang -S -fno-integrated-as b.cc # succeeded
% clang -c b.cc # succeeded with this patch
% clang -S b.cc # still failed
<inline asm>:4:5: error: expected absolute expression
4 | .if . -_start == 1
| ^
1 error generated.
```
Close #62520
Link: https://discourse.llvm.org/t/rfc-clang-assembly-object-equivalence-for-files-with-inline-assembly/78841
Pull Request: https://github.com/llvm/llvm-project/pull/91082
Commit: 141391ad2f22885342935442642c6c892f43e1ed
https://github.com/llvm/llvm-project/commit/141391ad2f22885342935442642c6c892f43e1ed
Author: Nuri Amari <nuri.amari99 at gmail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M lld/test/MachO/objc.s
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
Log Message:
-----------
[lld] Fix -ObjC load behavior with LTO (#92162)
When -ObjC is passed, the linker must force load any object files that
contain special sections that store Objective-C / Swift information that
is used at runtime.
This should work regadless if input files are bitcode or native, but it
was not working with bitcode. This is because the sections that identify
an object file that should be loaded were inconsistent when dealing with
a native file vs bitcode file. In particular, bitcode files were not
searched for `__TEXT,__swift` prefixed sections, while native files
were.
This means LLD wasn't loading certain bitcode files and forcing the user
to introduce --force-load to their linker invocation for that archive.
Co-authored-by: Nuri Amari <nuriamari at fb.com>
Commit: f0e79db215ada7316b4d4046490ab715194a519a
https://github.com/llvm/llvm-project/commit/f0e79db215ada7316b4d4046490ab715194a519a
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMatInt.cpp
Log Message:
-----------
[RISCV] Fix 80 columns in RISCVMatInt.cpp. NFC
Commit: 29c2475f215110d9e6b3955d5eb2832b3f719c2f
https://github.com/llvm/llvm-project/commit/29c2475f215110d9e6b3955d5eb2832b3f719c2f
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M mlir/lib/Dialect/GPU/Transforms/SerializeToHsaco.cpp
M mlir/lib/Target/LLVM/ROCDL/Target.cpp
Log Message:
-----------
[mlir] Fix the build after 03c53c69a367008da689f0d2940e2197eb4a955c
Commit: 3f954f575156bce8ac81d6b4d94de443786befed
https://github.com/llvm/llvm-project/commit/3f954f575156bce8ac81d6b4d94de443786befed
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/Support/MemoryBuffer.cpp
Log Message:
-----------
Correct mismatched allocation/deallocation calls
This amends dceaa0f4491ebe30c0b0f1bc7fa5ec365b60ced6 because ASAN
caught an issue where the allocation and deallocation were not properly
paired: https://lab.llvm.org/buildbot/#/builders/239/builds/7001
Use malloc and free throughout this file to ensure that all kinds of
memory buffers use the proper pairing.
Commit: 332de4b2677ce7a95cc2df30d761fbb55376fe07
https://github.com/llvm/llvm-project/commit/332de4b2677ce7a95cc2df30d761fbb55376fe07
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M offload/CMakeLists.txt
M openmp/CMakeLists.txt
Log Message:
-----------
[Offload] Correctly reject building on unsupported architectures (#92276)
Summary:
Previously we had this `LIBOMPTARGET_ENABLED` variable which controlled
including `libomptarget`. This is now redundant since it's controlled by
`LLVM_ENABLE_RUNTIMES`. However, this had the extra effect of not
building it when given unsupported targets. THis was lost during the
move to `offload`. This patch moves this logic back and makes the
`offload` target just quit without doing anything if used on an
unsupported architecture.
https://github.com/llvm/llvm-project/issues/91881
https://github.com/llvm/llvm-project/issues/91819
---------
Co-authored-by: Sylvestre Ledru <sylvestre at debian.org>
Commit: be10746f3a4381456eb5082a968766201c17ab5d
https://github.com/llvm/llvm-project/commit/be10746f3a4381456eb5082a968766201c17ab5d
Author: John Ericson <John.Ericson at Obsidian.Systems>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/lib/Driver/ToolChains/OpenBSD.cpp
Log Message:
-----------
[clang] Don't assume location of compiler-rt for OpenBSD (#92183)
If the `/usr/lib/...` path where compiler-rt is conventionally installed
on OpenBSD does not exist, fall back to the regular logic to find it.
This is a minimal change to allow OpenBSD cross compilation from a
toolchain that doesn't adopt all of OpenBSD's monorepo's conventions.
Commit: e2d74a25eb562b117974add098ba2b9dd4cfc7f5
https://github.com/llvm/llvm-project/commit/e2d74a25eb562b117974add098ba2b9dd4cfc7f5
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/cmp16.ll
M llvm/test/CodeGen/X86/memcmp-more-load-pairs-x32.ll
M llvm/test/CodeGen/X86/memcmp-more-load-pairs.ll
M llvm/test/CodeGen/X86/memcmp-optsize-x32.ll
M llvm/test/CodeGen/X86/memcmp-optsize.ll
M llvm/test/CodeGen/X86/memcmp-pgso-x32.ll
M llvm/test/CodeGen/X86/memcmp-pgso.ll
M llvm/test/CodeGen/X86/memcmp-x32.ll
M llvm/test/CodeGen/X86/memcmp.ll
Log Message:
-----------
[X86] EmitCmp - always use cmpw with foldable loads (#92251)
By default, EmitCmp avoids cmpw with i16 immediates due to 66/67h length-changing prefixes causing stalls, instead extending the value to i32 and using a cmpl with a i32 immediate, unless it has the TuningFastImm16 flag or we're building for optsize/minsize.
However, if we're loading the value for comparison, the performance costs of the decode stalls are likely to be exceeded by the impact of the load latency of the folded load, the shorter encoding and not needing an extra register to store the ext-load.
This matches the behaviour of gcc and msvc.
Fixes #90355
Commit: 34f33babc28d240d4ceee69f9afe7d6f5e8ac29b
https://github.com/llvm/llvm-project/commit/34f33babc28d240d4ceee69f9afe7d6f5e8ac29b
Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M lldb/test/API/tools/lldb-server/TestGdbRemoteCompletion.py
Log Message:
-----------
[lldb] Fixed the TestGdbRemoteCompletion test (#92268)
Do not try to run lldb-server on localhost in case of the remote target.
Commit: fc1df55bcf9b6cc2dec157bcd188b471bc91b945
https://github.com/llvm/llvm-project/commit/fc1df55bcf9b6cc2dec157bcd188b471bc91b945
Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M lldb/test/API/functionalities/gdb_remote_client/TestGDBRemotePlatformFile.py
Log Message:
-----------
[lldb][Windows] Fixed the test gdb_remote_client/TestGDBRemotePlatformFile (#92088)
The tests `test_file_permissions` and `test_file_permissions_fallback`
are disabled for Windows target. These tests use MockGDBServerResponder
and do not depend on the real target. These tests failed in case of
Windows host and Linux target. Disable them for Windows host too.
Commit: 2ec85713bd910c5b22ce090798ca00f742d5eb14
https://github.com/llvm/llvm-project/commit/2ec85713bd910c5b22ce090798ca00f742d5eb14
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M openmp/CMakeLists.txt
Log Message:
-----------
[OpenMP] Add back in `ENABLE_LIBOMPTARGET' definition
Summary:
Even though we moved `libomptarget` this is still present in `omp.h` and
can't be removed.
Commit: 4525f442fadb7cc44cc2eaede2c8ac6ba15bdf78
https://github.com/llvm/llvm-project/commit/4525f442fadb7cc44cc2eaede2c8ac6ba15bdf78
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
Log Message:
-----------
[flang][OpenMP] Don't pass clauses to op-generating functions anymore (#90108)
Remove parameter `const List<Clause> &clauses` from functions that take
construct queue. The clauses should now be accessed from the construct
queue.
Commit: eb822dc25853299ea81166f9bb8a43436ab8b0c8
https://github.com/llvm/llvm-project/commit/eb822dc25853299ea81166f9bb8a43436ab8b0c8
Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M lldb/test/API/functionalities/completion/TestCompletion.py
Log Message:
-----------
[lldb] Fixed the TestCompletion test running on a remote target (#92281)
Install the image to the remote target if necessary.
Commit: 7645269710493c188d1d270b9e4e085b3e92b9b0
https://github.com/llvm/llvm-project/commit/7645269710493c188d1d270b9e4e085b3e92b9b0
Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M lldb/test/API/functionalities/postmortem/netbsd-core/TestNetBSDCore.py
Log Message:
-----------
[lldb] Fixed the TestNetBSDCore test (#92285)
TestNetBSDCore.py contains 3 classes with the same test names
test_aarch64 and test_amd64. It causes conflicts because the same build
dir. Add suffixes to avoid conflicts.
Commit: d92c67784f21063d6334a009dbf4f9e0f8217b41
https://github.com/llvm/llvm-project/commit/d92c67784f21063d6334a009dbf4f9e0f8217b41
Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M lldb/test/API/iohandler/resize/TestIOHandlerResizeNoEditline.py
Log Message:
-----------
[lldb][Windows] Fixed the TestIOHandlerResizeNoEditline test (#92286)
This test caused python crash on Windows x86_64 host with the exit code
0xC0000409 (STATUS_STACK_BUFFER_OVERRUN). Close the input stream before
exit to avoid this crash.
Commit: 217668f641e82f901645f428ae0d07a3c01e9a8a
https://github.com/llvm/llvm-project/commit/217668f641e82f901645f428ae0d07a3c01e9a8a
Author: Mircea Trofin <mtrofin at google.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/include/llvm/Support/Error.h
M llvm/lib/Bitstream/Reader/BitstreamReader.cpp
M llvm/lib/Object/COFFObjectFile.cpp
M llvm/lib/Object/WindowsResource.cpp
Log Message:
-----------
[nfc] Allow forwarding `Error` returns from `Expected` callers (#92208)
On a few compilers (clang 11/12 for example [1]), the following does not
result in a copy elision, and since `Error`'s copy dtor is elided,
results in a compile error:
```
Expect<Something> foobar() {
...
if (Error E = aCallReturningError())
return E;
...
}
```
Moving `E` would, conversely, result in the pessimizing-move warning on
more recent clangs ("moving a local object in a return statement
prevents copy elision")
We just need to make the `Expected` ctor taking an `Error` take it as a
r-value reference.
[1] https://lab.llvm.org/buildbot/#/builders/54/builds/10505
Commit: 0647d1035cb208195e002b38089b82004b6f7b92
https://github.com/llvm/llvm-project/commit/0647d1035cb208195e002b38089b82004b6f7b92
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMatInt.cpp
Log Message:
-----------
[RISCV] Remove unneeded casts from int64_t to uint64_t in RISCVMatInt.cpp. NFC
Most of these were to avoid undefined behavior if a shift left
changed the sign of the result. I don't think its possible to change
the sign of the result here. We're shifting left by 12 after an arithmetic
right shift by more than 12. The bits we are shifting out with the left
shift are guaranteed to be sign bits.
Also use SignExtend64<32> to force upper bits to all 1s instead of an
Or. We know the value isUInt<32> && !isInt<32> which means bit 31 is set.
Commit: ec36145f58d2cf93d86bc4e3be617ad7d7d8ace7
https://github.com/llvm/llvm-project/commit/ec36145f58d2cf93d86bc4e3be617ad7d7d8ace7
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
A llvm/test/Analysis/LoopAccessAnalysis/invariant-dependence-before.ll
Log Message:
-----------
[LAA] Add tests with invariant dependences before strided ones.
Add extra test coverage for loops with strided and invariant accesses to
the same object.
Commit: c19f2c773b0e23fd623502888894add822079f63
https://github.com/llvm/llvm-project/commit/c19f2c773b0e23fd623502888894add822079f63
Author: Mircea Trofin <mtrofin at google.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
A llvm/include/llvm/ProfileData/PGOCtxProfReader.h
A llvm/include/llvm/ProfileData/PGOCtxProfWriter.h
M llvm/lib/ProfileData/CMakeLists.txt
A llvm/lib/ProfileData/PGOCtxProfReader.cpp
A llvm/lib/ProfileData/PGOCtxProfWriter.cpp
M llvm/unittests/ProfileData/CMakeLists.txt
A llvm/unittests/ProfileData/PGOCtxProfReaderWriterTest.cpp
Log Message:
-----------
Reapply "[ctx_profile] Profile reader and writer" (#92199)
This reverts commit 03c7458a3603396d2d0e1dee43399d3d1664a264.
One of the problems was addressed in #92208
The other problem: needed to add `BitstreamReader` to the list of
link deps of `LLVMProfileData`
Commit: df5804aec48f99704ef26c740e19deaa4072fe27
https://github.com/llvm/llvm-project/commit/df5804aec48f99704ef26c740e19deaa4072fe27
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/ProfileData/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/ProfileData/BUILD.gn
Log Message:
-----------
[gn build] Port c19f2c773b0e
Commit: 468357114c64633651ebcc5ef17161990da25a78
https://github.com/llvm/llvm-project/commit/468357114c64633651ebcc5ef17161990da25a78
Author: Pete Steinfeld <47540744+psteinfeld at users.noreply.github.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
R flang/include/flang/Optimizer/CodeGen/CGOps.h
M flang/include/flang/Optimizer/CodeGen/CGOps.td
M flang/include/flang/Optimizer/CodeGen/CGPasses.td
M flang/include/flang/Optimizer/CodeGen/CodeGen.h
M flang/include/flang/Tools/CLOptions.inc
M flang/lib/Optimizer/CodeGen/CGOps.cpp
A flang/lib/Optimizer/CodeGen/CGOps.h
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/CodeGen/PreCGRewrite.cpp
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
M flang/test/Fir/declare-codegen.fir
M flang/test/Fir/dummy-scope-codegen.fir
R flang/test/Transforms/debug-local-var-2.f90
R flang/test/Transforms/debug-local-var.f90
Log Message:
-----------
Revert "[flang] Initial debug info support for local variables. (#909… (#92302)
…05)"
This reverts commit 61da6366d043792d7db280ce9edd2db62516e0e8.
Update #90905 was causing many tests to fail.
See comments in #90905.
Commit: 411bf385ba27f15145c635c7d8ff2701fe8de5b9
https://github.com/llvm/llvm-project/commit/411bf385ba27f15145c635c7d8ff2701fe8de5b9
Author: Walter Erquinigo <a20012251 at gmail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M lldb/tools/lldb-dap/README.md
Log Message:
-----------
[lldb-dap] Include npm install in the extension installation steps (#92028)
Otherwise the build step fails due to missing dependencies.
Commit: 2c54bf497f7d7aecd24f4b849ee08e37a3519611
https://github.com/llvm/llvm-project/commit/2c54bf497f7d7aecd24f4b849ee08e37a3519611
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
R llvm/include/llvm/ProfileData/PGOCtxProfReader.h
R llvm/include/llvm/ProfileData/PGOCtxProfWriter.h
M llvm/lib/ProfileData/CMakeLists.txt
R llvm/lib/ProfileData/PGOCtxProfReader.cpp
R llvm/lib/ProfileData/PGOCtxProfWriter.cpp
M llvm/unittests/ProfileData/CMakeLists.txt
R llvm/unittests/ProfileData/PGOCtxProfReaderWriterTest.cpp
Log Message:
-----------
Revert "Reapply "[ctx_profile] Profile reader and writer" (#92199)"
This reverts commit c19f2c773b0e23fd623502888894add822079f63.
Broke the gcc-7 bot.
Commit: 9ae2177843f681c70ad89506155a2cb83eeebfd4
https://github.com/llvm/llvm-project/commit/9ae2177843f681c70ad89506155a2cb83eeebfd4
Author: Luke Lau <luke at igalia.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert.ll
Log Message:
-----------
[RISCV] Handle undef AVLs in RISCVInsertVSETVLI
Before #91440 a VSETVLIInfo would have had an IMPLICIT_DEF defining
instruction, but now we look up a VNInfo which doesn't exist, which
triggers an assertion failure. Mark these undef AVLs as AVLIsIgnored.
Commit: 378c9e952a3d198873677fb2d2afb33695185b72
https://github.com/llvm/llvm-project/commit/378c9e952a3d198873677fb2d2afb33695185b72
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/ProfileData/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/ProfileData/BUILD.gn
Log Message:
-----------
[gn build] Port 2c54bf497f7d
Commit: d542eb7aa830e94490b943a3ea0937506fece15b
https://github.com/llvm/llvm-project/commit/d542eb7aa830e94490b943a3ea0937506fece15b
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/test/CXX/drs/cwg11xx.cpp
M clang/test/CXX/drs/cwg13xx.cpp
M clang/test/CXX/drs/cwg14xx.cpp
M clang/test/CXX/drs/cwg18xx.cpp
M clang/test/CXX/drs/cwg23xx.cpp
M clang/test/CXX/drs/cwg24xx.cpp
M clang/test/CXX/drs/cwg25xx.cpp
A clang/test/CXX/drs/cwg2630.cpp
M clang/test/CXX/drs/cwg26xx.cpp
M clang/test/CXX/drs/cwg27xx.cpp
M clang/test/CXX/drs/cwg28xx.cpp
M clang/test/CXX/drs/cwg9xx.cpp
M clang/www/cxx_dr_status.html
Log Message:
-----------
[clang] Add tests for CWG issues regarding completeness of types (#92113)
This patch covers the following Core issues:
[CWG930](https://cplusplus.github.io/CWG/issues/930.html) "`alignof`
with incomplete array type"
[CWG1110](https://cplusplus.github.io/CWG/issues/1110.html) "Incomplete
return type should be allowed in `decltype` operand"
[CWG1340](https://cplusplus.github.io/CWG/issues/1340.html) "Complete
type in member pointer expressions"
[CWG1352](https://cplusplus.github.io/CWG/issues/1352.html)
"Inconsistent class scope and completeness rules"
[CWG1458](https://cplusplus.github.io/CWG/issues/1458.html) "Address of
incomplete type vs `operator&()`"
[CWG1824](https://cplusplus.github.io/CWG/issues/1824.html)
"Completeness of return type vs point of instantiation"
[CWG1832](https://cplusplus.github.io/CWG/issues/1832.html) "Casting to
incomplete enumeration"
[CWG2304](https://cplusplus.github.io/CWG/issues/2304.html) "Incomplete
type vs overload resolution"
[CWG2310](https://cplusplus.github.io/CWG/issues/2310.html) "Type
completeness and derived-to-base pointer conversions"
[CWG2430](https://cplusplus.github.io/CWG/issues/2430.html)
"Completeness of return and parameter types of member functions"
[CWG2512](https://cplusplus.github.io/CWG/issues/2512.html) "`typeid`
and incomplete class types"
[CWG2630](https://cplusplus.github.io/CWG/issues/2630.html) "Syntactic
specification of class completeness"
[CWG2718](https://cplusplus.github.io/CWG/issues/2718.html) "Type
completeness for derived-to-base conversions"
[CWG2857](https://cplusplus.github.io/CWG/issues/2857.html)
"Argument-dependent lookup with incomplete class types"
Current wording for CWG1110 came from
[P0135R1](https://wg21.link/p0135R1) "Wording for guaranteed copy
elision through simplified value categories".
As a drive-by fix, I fixed incorrect status of CWG1815, test for which
was added in #87933. CC @yronglin
Commit: 64b3cdc0220174c1af236a42b227a5226f0f12c5
https://github.com/llvm/llvm-project/commit/64b3cdc0220174c1af236a42b227a5226f0f12c5
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
M libc/cmake/modules/prepare_libc_gpu_build.cmake
Log Message:
-----------
[libc] Fix GPU handling for unsupported backends (#92271)
Summary:
If the user does not have the selected backend enabled, we should still
be able to build the LLVM-IR an ddistribute it. This patch makes logic
to suppress tests if the backend can't build it, as well as removing a
flag for the building that's only present int he NVPTX backend.
Commit: 4ab2ac22d0a481460536f673377b644702cb3372
https://github.com/llvm/llvm-project/commit/4ab2ac22d0a481460536f673377b644702cb3372
Author: Patrick O'Neill <patrick at rivosinc.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
A llvm/test/CodeGen/RISCV/pr92193.ll
Log Message:
-----------
[DAGCombiner] Mark vectors as not AllAddOne/AllSubOne on type mismatch (#92195)
Fixes #92193.
Commit: fc8775e2142c6bd7876831c27c3fbef0d64860bc
https://github.com/llvm/llvm-project/commit/fc8775e2142c6bd7876831c27c3fbef0d64860bc
Author: Mircea Trofin <mtrofin at google.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
A llvm/include/llvm/ProfileData/PGOCtxProfReader.h
A llvm/include/llvm/ProfileData/PGOCtxProfWriter.h
M llvm/lib/ProfileData/CMakeLists.txt
A llvm/lib/ProfileData/PGOCtxProfReader.cpp
A llvm/lib/ProfileData/PGOCtxProfWriter.cpp
M llvm/unittests/ProfileData/CMakeLists.txt
A llvm/unittests/ProfileData/PGOCtxProfReaderWriterTest.cpp
Log Message:
-----------
"Reapply "[ctx_profile] Profile reader and writer" (#92199)"
This reverts commit 2c54bf497f7d7aecd24f4b849ee08e37a3519611.
Fixed gcc-7 issue.
Commit: 2fb92520cba15afff6f25a1f0b959ef39912fa0a
https://github.com/llvm/llvm-project/commit/2fb92520cba15afff6f25a1f0b959ef39912fa0a
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/ProfileData/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/ProfileData/BUILD.gn
Log Message:
-----------
[gn build] Port fc8775e2142c
Commit: 24c39261e62d9f99bab91edf67bb9607a681b038
https://github.com/llvm/llvm-project/commit/24c39261e62d9f99bab91edf67bb9607a681b038
Author: Alex Bradbury <asb at igalia.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV][test] Add tests for parsing profiles using RISCVISAInfo::parseArchString
Commit: 891d687137ad9bb3b4efae116f9539addb5be0ea
https://github.com/llvm/llvm-project/commit/891d687137ad9bb3b4efae116f9539addb5be0ea
Author: Alex Bradbury <asb at igalia.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/test/Driver/riscv-profiles.c
M llvm/lib/Target/RISCV/RISCVProfiles.td
M llvm/lib/TargetParser/RISCVISAInfo.cpp
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV] Gate unratified profiles behind -menable-experimental-extensions (#92167)
As discussed in the last sync-up call, because these profiles are not
yet finalised they shouldn't be exposed to users unless they opt-in to
them (much like experimental extensions). We may later want to add a
more specific flag, but reusing `-menable-experimental-extensions`
solves the immediate problem.
This is implemented using the new support for marking profiles s
experimental added in #91993 to move the unratified profiles to
RISCVExperimentalProfile and making the necessary changes to logic in
RISCVISAInfo to handle this.
Commit: 80d9ae9cbf692a73404995a88665af7166c7e8ad
https://github.com/llvm/llvm-project/commit/80d9ae9cbf692a73404995a88665af7166c7e8ad
Author: Samira Bazuzi <bazuzi at google.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h
M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
M clang/unittests/Analysis/FlowSensitive/DataflowEnvironmentTest.cpp
M clang/unittests/Analysis/FlowSensitive/TestingSupport.h
M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
Log Message:
-----------
[clang][dataflow] Fully support Environment construction for Stmt analysis. (#91616)
Assume in fewer places that the analysis is of a `FunctionDecl`, and
initialize the `Environment` properly for `Stmt`s.
Moves constructors for `Environment` to header to make it more obvious
that there are only minor differences between them and very little
initialization in the constructors.
Tested with check-clang-tooling.
Commit: ee765b0c94df7e636d9739216b1646d3a2d3b5db
https://github.com/llvm/llvm-project/commit/ee765b0c94df7e636d9739216b1646d3a2d3b5db
Author: Tim Besard <tim.besard at gmail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/test/Transforms/Internalize/lists.ll
Log Message:
-----------
[NewPM] Add pass options for `InternalizePass` to preserve GVs. (#91334)
This PR adds a string interface to `InternalizePass`' `MustPreserveGV`
option, which is a callback function to indicate if a GV is not to be
internalized. This is for use in LLVM.jl, the Julia wrapper for LLVM,
which uses the C API and is thus required to use the PassBuilder string
API for building NewPM pipelines.
Commit: ec1f28dc97ce22ba5b3e6f95ff84414dfbda46b0
https://github.com/llvm/llvm-project/commit/ec1f28dc97ce22ba5b3e6f95ff84414dfbda46b0
Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/test/CodeGen/AMDGPU/waitcnt-preexisting.mir
Log Message:
-----------
AMDGPU/gfx12: avoid crashing on legacy waitcnt intrinsics (#92306)
They *are* still accepted by the HW but have a conservative effect.
Leave them untouched since handling them would complicate the logic a
bit, and developers who code to such a low level really need to revisit
what they're doing anyway.
Commit: 81d20d861e48f5202c9f79b47dee244674fb9121
https://github.com/llvm/llvm-project/commit/81d20d861e48f5202c9f79b47dee244674fb9121
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
M offload/plugins-nextgen/common/src/PluginInterface.cpp
M offload/src/LegacyAPI.cpp
M offload/src/OpenMP/API.cpp
M offload/src/OpenMP/Mapping.cpp
M offload/src/omptarget.cpp
Log Message:
-----------
[Offload][NFC] Fix warning messages in runtime
Summary:
These are lots of random warnings due to inconsistent initialization or
signedness.
Commit: 83f065d582977aca5c037c27a7290f30850bdd35
https://github.com/llvm/llvm-project/commit/83f065d582977aca5c037c27a7290f30850bdd35
Author: Alex Bradbury <asb at igalia.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/TargetParser/RISCVISAInfo.cpp
Log Message:
-----------
[RISCV] static_assert SupportedProfiles and SupportedExperimentalProfiles are sorted
Just as we do for the arrays of extension names.
Commit: e1ed138a67a92ef1ff0214ca198094be13045090
https://github.com/llvm/llvm-project/commit/e1ed138a67a92ef1ff0214ca198094be13045090
Author: Fangrui Song <i at maskray.me>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
[bazel] Port #92199
Commit: 8530b1c464ae9af4a5c8be145a8db043798634f6
https://github.com/llvm/llvm-project/commit/8530b1c464ae9af4a5c8be145a8db043798634f6
Author: Dave Lee <davelee.com at gmail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M lldb/docs/use/variable.rst
M lldb/source/Core/FormatEntity.cpp
A lldb/test/API/functionalities/data-formatter/custom-printf-summary/Makefile
A lldb/test/API/functionalities/data-formatter/custom-printf-summary/TestCustomSummaryLLVMFormat.py
A lldb/test/API/functionalities/data-formatter/custom-printf-summary/main.c
Log Message:
-----------
[lldb] Support custom LLVM formatting for variables (#91868)
Re-apply https://github.com/llvm/llvm-project/pull/81196, with a fix that handles the
absence of llvm formatting:
https://github.com/llvm/llvm-project/pull/91868/commits/3ba650e91eded3543764f37921dcce3b
b47d425f
Commit: 1daa7fd3fadd17e61d9dfa56f84228617c5514d9
https://github.com/llvm/llvm-project/commit/1daa7fd3fadd17e61d9dfa56f84228617c5514d9
Author: Amara Emerson <amara at apple.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
M llvm/test/CodeGen/AArch64/sme-support-routines-calling-convention.ll
Log Message:
-----------
[AArch64][SME] Remove Darwin compile error for ABI support routine calls.
These are allowed for Darwin and use the same ABI.
Commit: 537a94b2ef67cd96a4b3a9b5612ea726a91c602b
https://github.com/llvm/llvm-project/commit/537a94b2ef67cd96a4b3a9b5612ea726a91c602b
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/test/Transforms/Internalize/lists.ll
Log Message:
-----------
Revert "[NewPM] Add pass options for `InternalizePass` to preserve GVs." (#92321)
Reverts llvm/llvm-project#91334
This broke the gcc7 build.
I suspect the issue is a mismatch on user-defined move constructor on
the return: `return PreservedGVs;` does not match the return type of the
function.
Commit: f97f039e0bb7bb60c9cc437f678059c5ee19c8da
https://github.com/llvm/llvm-project/commit/f97f039e0bb7bb60c9cc437f678059c5ee19c8da
Author: klensy <klensy at users.noreply.github.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M lld/test/MachO/install-name.s
M lld/test/MachO/objc-methname.s
Log Message:
-----------
[lld,test] Fix few FileCheck annotation typos (#92238)
Commit: 00179e92c147e16de1f7c653f88c8805aef820c1
https://github.com/llvm/llvm-project/commit/00179e92c147e16de1f7c653f88c8805aef820c1
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/lldb/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel
Log Message:
-----------
[bazel] Add new dependencies (#92323)
This also fixes building ... on Linux. Seems like target_compatible_with
isn't enough but you also need a manual tag.
Commit: 050593fc4f9a7f2b9450ee093c4638b8539315b7
https://github.com/llvm/llvm-project/commit/050593fc4f9a7f2b9450ee093c4638b8539315b7
Author: Andrey Ali Khan Bolshakov <bolsh.andrey at yandex.ru>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/lib/CodeGen/CoverageMappingGen.cpp
M clang/test/CoverageMapping/coroutine.cpp
Log Message:
-----------
[Coverage] Handle `CoroutineSuspendExpr` correctly (#88898)
This avoids visiting `co_await` or `co_yield` operand 5 times (it is
repeated under transformed awaiter subexpression, and under
`await_ready`, `await_suspend`, and `await_resume` generated call
subexpressions).
Commit: 5ff6c6542ac451daaed6c417e481e313165d3454
https://github.com/llvm/llvm-project/commit/5ff6c6542ac451daaed6c417e481e313165d3454
Author: Andrey Ali Khan Bolshakov <bolsh.andrey at yandex.ru>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/lib/CodeGen/CoverageMappingGen.cpp
A clang/test/CoverageMapping/decomposition.cpp
Log Message:
-----------
[Coverage] Handle array decomposition correctly (#88881)
`ArrayInitLoopExpr` AST node has two occurences of its as-written
initializing expression in its subexpressions through a non-unique
`OpaqueValueExpr`. It causes double-visiting of the initializing
expression if not handled explicitly, as discussed in #85837.
Commit: aa889d7783af050ce5d19af67c7225ee119d625e
https://github.com/llvm/llvm-project/commit/aa889d7783af050ce5d19af67c7225ee119d625e
Author: Fangrui Song <i at maskray.me>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M lld/test/ELF/arm-exidx-shared.s
M lld/test/ELF/mips-tls-hilo.s
M lld/test/ELF/ppc32-reloc-rel.s
M lld/test/ELF/ppc64-pcrel-call-to-extern.s
M lld/test/ELF/ppc64-toc-relax-ifunc.s
M lld/test/ELF/riscv-gp.s
Log Message:
-----------
[ELF,test] Fix FileCheck prefixes
Most violations are stale and should be removed while a few can be
adjusted.
Reported at #92238
Commit: 0585eed9409c1362f7deaabc42c1d3c3f55c4b6c
https://github.com/llvm/llvm-project/commit/0585eed9409c1362f7deaabc42c1d3c3f55c4b6c
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M lldb/tools/lldb-dap/package.json
Log Message:
-----------
[lldb-dap] Support publishing to the VSCode market place (#92320)
Update the publisher and add a publish script that we can use from
Github actions.
Commit: e00a3ccf43563209b71c5b68f56d83f4052dca63
https://github.com/llvm/llvm-project/commit/e00a3ccf43563209b71c5b68f56d83f4052dca63
Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/include/clang/Driver/Options.td
M flang/include/flang/Frontend/FrontendActions.h
M flang/include/flang/Frontend/FrontendOptions.h
M flang/include/flang/Semantics/unparse-with-symbols.h
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M flang/lib/Semantics/mod-file.cpp
M flang/lib/Semantics/mod-file.h
M flang/lib/Semantics/unparse-with-symbols.cpp
A flang/test/Driver/unparse-with-modules.f90
Log Message:
-----------
[flang] New -fdebug-unparse-with-modules option (#91660)
This option is a compilation action that parses a source file and
performs semantic analysis on it, like the existing -fdebug-unparse
option does. Its output, however, is preceded by the effective contents
of all of the non-intrinsic modules on which it depends but does not
define, transitively preceded by the closure of all of those modules'
dependencies.
The output from this option is therefore the analyzed parse tree for a
source file encapsulated with all of its non-intrinsic module
dependencies. This output may be useful for extracting code from large
applications for use as an attachment to a bug report, or as input to a
test case reduction tool for problem isolation.
Commit: 667d12f86e626173726e87e101626a9060b8d967
https://github.com/llvm/llvm-project/commit/667d12f86e626173726e87e101626a9060b8d967
Author: Krystian Stasiowski <sdkrystian at gmail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaTemplateDeduction.cpp
A clang/test/CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.partial/p3.cpp
Log Message:
-----------
[Clang][Sema] Do not mark template parameters in the exception specification as used during partial ordering (#91534)
We do not deduce template arguments from the exception specification
when determining the primary template of a function template
specialization or when taking the address of a function template.
Therefore, this patch changes `isAtLeastAsSpecializedAs` such that we do
not mark template parameters in the exception specification as 'used'
during partial ordering (per [temp.deduct.partial]
p12) to prevent the following from being ambiguous:
```
template<typename T, typename U>
void f(U) noexcept(noexcept(T())); // #1
template<typename T>
void f(T*) noexcept; // #2
template<>
void f<int>(int*) noexcept; // currently ambiguous, selects #2 with this patch applied
```
Although there is no corresponding wording in the standard (see core issue filed here
https://github.com/cplusplus/CWG/issues/537), this seems
to be the intended behavior given the definition of _deduction
substitution loci_ in [temp.deduct.general] p7 (and EDG does the same thing).
Commit: 325d1d0b73aa6bff0ce4174b45a7601f6b32a793
https://github.com/llvm/llvm-project/commit/325d1d0b73aa6bff0ce4174b45a7601f6b32a793
Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M flang/lib/Semantics/check-purity.cpp
A flang/test/Semantics/pure02.f90
Log Message:
-----------
[flang] Fix purity checking for internal subprograms (#91759)
ELEMENTAL internal subprograms are pure unless explicitly IMPURE.
Commit: c227bf1b217598066acd32de8c9a75c2e0928f89
https://github.com/llvm/llvm-project/commit/c227bf1b217598066acd32de8c9a75c2e0928f89
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/frelaxed-template-template-args.cpp
Log Message:
-----------
[clang] Create new warning group for deprecation of '-fno-relaxed-template-template-args' (#92324)
This allows the warning to be disabled in isolation, as it helps when
treating them as errors.
Commit: 7605ad8a2f95e3b37de83e7fb3d320efc74e0ccc
https://github.com/llvm/llvm-project/commit/7605ad8a2f95e3b37de83e7fb3d320efc74e0ccc
Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M flang/lib/Semantics/check-declarations.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/test/Semantics/entry01.f90
M flang/test/Semantics/resolve102.f90
Log Message:
-----------
[flang] Always check procedure characterizability (#92008)
When a procedure is defined with a subprogram but never referenced in a
compilation unit, it may not be characterized until lowering, and any
errors in characterization then may crash the compiler. So always ensure
that procedure definitions are characterizable in declaration checking.
Fixes https://github.com/llvm/llvm-project/issues/91845.
Commit: 463f58a564a8d136b3e5d56d23bb86b99ab75245
https://github.com/llvm/llvm-project/commit/463f58a564a8d136b3e5d56d23bb86b99ab75245
Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M flang/lib/Semantics/check-declarations.cpp
A flang/test/Semantics/bind-c15.f90
Log Message:
-----------
[flang] Further work on relaxing BIND(C) enforcement (#92029)
When a BIND(C) interface or subprogram has a dummy argument whose
derived type is not BIND(C) but meets the constraints and requirements
of a BIND(C) type, accept it with a warning.
Commit: 5bbb63bd6d6d3929de643fcd88babbda20c97b69
https://github.com/llvm/llvm-project/commit/5bbb63bd6d6d3929de643fcd88babbda20c97b69
Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Parser/executable-parsers.cpp
M flang/lib/Parser/openacc-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-cuda.cpp
M flang/lib/Semantics/resolve-directives.h
M flang/lib/Semantics/resolve-names.cpp
M flang/test/Parser/cuf-sanity-common
M flang/test/Parser/cuf-sanity-unparse.CUF
A flang/test/Semantics/reduce.cuf
Log Message:
-----------
[flang] Parse REDUCE clauses in !$CUF KERNEL DO (#92154)
A !$CUF KERNEL DO directive is allowed to have advisory REDUCE clauses
similar to those in OpenACC and DO CONCURRENT. Parse and represent them.
Semantic validation will follow.
Commit: 3ddfb6807e905868a3a9df71fa5ea87309181270
https://github.com/llvm/llvm-project/commit/3ddfb6807e905868a3a9df71fa5ea87309181270
Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M flang/lib/Evaluate/fold.cpp
Log Message:
-----------
[flang] Prevent crash from unfoldable TRANSFER() (#92282)
When the MOLD= argument's type is polymorphic, the type of the result
cannot be known at compilation time, so the call cannot be folded even
when the SOURCE= is constant.
Fixes https://github.com/llvm/llvm-project/issues/92264.
Commit: c87b1ca4edefe3c267a20f28eaf79f6b83d36c66
https://github.com/llvm/llvm-project/commit/c87b1ca4edefe3c267a20f28eaf79f6b83d36c66
Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/ProfileData/InstrProfWriter.cpp
M llvm/test/tools/llvm-profdata/trace-limit.proftext
Log Message:
-----------
[InstrProf] Fix bug when clearing traces with samples (#92310)
The `--temporal-profile-max-trace-length=0` flag in the `llvm-profdata
merge` command is used to remove traces from a profile. There was a bug
where traces would not be cleared if the profile was already sampled.
This patch fixes that.
Commit: c00e012bcf5da384a3e7339dc2e046779b339063
https://github.com/llvm/llvm-project/commit/c00e012bcf5da384a3e7339dc2e046779b339063
Author: Mircea Trofin <mtrofin at google.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/include/llvm/ProfileData/PGOCtxProfWriter.h
Log Message:
-----------
[ctx_profile] Follow the pattern elsewhere for choosing the block IDs
This was an oversight in #91859. Using the subblock ID mechanism
other places that use the bitstream APIs (e.g. `BitstreamRemarkSerializer`) use.
Commit: 772b1b0cb26c66804d0a7e416dc7a5742b7f8db2
https://github.com/llvm/llvm-project/commit/772b1b0cb26c66804d0a7e416dc7a5742b7f8db2
Author: ChiaHungDuan <chiahungduan at google.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/combined.h
Log Message:
-----------
[scudo] Move the chunk update into functions (#83493)
The code paths for mte enabled and disabled were interleaving and which
increases the difficulty of reading each path in both source level and
assembly level. In this change, we move the parts that they have
different logic into functions and minor refactors on the code
structure.
Commit: c6e787f771d1f9d6a846b2d9b8db6adcd87e8dba
https://github.com/llvm/llvm-project/commit/c6e787f771d1f9d6a846b2d9b8db6adcd87e8dba
Author: Fangrui Song <i at maskray.me>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/MC/MCParser/AsmParser.cpp
M llvm/test/MC/AsmParser/macro-rept.s
Log Message:
-----------
[MCAsmParser] .rept/.irp/.irpc: remove excess tail EOL in expansion
```
.irp foo,1
nop
.endr
nop
```
expands to an excess EOL between two nop lines. Remove the excess EOL.
Commit: 26fabdded34f8cea490060a70188a07ad6b76b8b
https://github.com/llvm/llvm-project/commit/26fabdded34f8cea490060a70188a07ad6b76b8b
Author: Kazu Hirata <kazu at google.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/include/llvm/ProfileData/MemProf.h
M llvm/lib/ProfileData/MemProf.cpp
M llvm/unittests/ProfileData/MemProfTest.cpp
Log Message:
-----------
[memprof] Pass FrameIdConverter and CallStackIdConverter by reference (#92327)
CallStackIdConverter sets LastUnmappedId when a mapping failure
occurs. Now, since toMemProfRecord takes an instance of
CallStackIdConverter by value, namely std::function, the caller of
toMemProfRecord never receives the mapping failure that occurs inside
toMemProfRecord. The same problem applies to FrameIdConverter.
The patch fixes the problem by passing FrameIdConverter and
CallStackIdConverter by reference, namely llvm::function_ref.
While I am it, this patch deletes the copy constructor and copy
assignment operator to avoid accidental copies.
Commit: fa750f09be6966de7423ddce1af7d1eaf817182c
https://github.com/llvm/llvm-project/commit/fa750f09be6966de7423ddce1af7d1eaf817182c
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M clang/tools/driver/cc1as_main.cpp
M llvm/include/llvm/MC/MCStreamer.h
M llvm/lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp
M llvm/lib/MC/MCObjectStreamer.cpp
M llvm/lib/MC/MCStreamer.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/test/MC/AsmParser/assembler-expressions-inlineasm.ll
M llvm/tools/llvm-mc/llvm-mc.cpp
M llvm/tools/llvm-ml/llvm-ml.cpp
Log Message:
-----------
Revert "[MC] Remove UseAssemblerInfoForParsing"
This reverts commit 03c53c69a367008da689f0d2940e2197eb4a955c.
This causes very large compile-time regressions in some cases,
e.g. sqlite3 at O0 regresses by 5%.
Commit: a9763deb2f3f20d789b947ec69360c258377db6a
https://github.com/llvm/llvm-project/commit/a9763deb2f3f20d789b947ec69360c258377db6a
Author: Shubham Sandeep Rastogi <srastogi22 at apple.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h
M llvm/lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp
A llvm/test/DebugInfo/AArch64/merge-locations-legalizer.mir
Log Message:
-----------
Merge sourcelocation in CSEMIRBuilder::getDominatingInstrForID. (#90922)
Make sure to merge the sourcelocation of the Dominating Instruction that
is hoisted in a basic block in the CSEMIRBuilder in the legalizer pass.
If this is not done, we can have a incorrect line table entry that makes
the instruction pointer jump around.
For example the line table without this patch looks like:
```
Address Line Column File ISA Discriminator OpIndex Flags
------------------ ------ ------ ------ --- ------------- ------- -------------
0x0000000000000000 0 0 1 0 0 0 is_stmt
0x0000000000000010 11 14 1 0 0 0 is_stmt prologue_end
0x0000000000000028 12 1 1 0 0 0 is_stmt
0x000000000000002c 12 15 1 0 0 0
0x000000000000004c 12 13 1 0 0 0
0x000000000000005c 13 1 1 0 0 0 is_stmt
0x0000000000000064 12 13 1 0 0 0 is_stmt
0x000000000000007c 13 7 1 0 0 0 is_stmt
0x00000000000000c8 13 1 1 0 0 0
0x00000000000000e8 13 1 1 0 0 0 epilogue_begin
0x00000000000000f8 13 1 1 0 0 0 end_sequence
```
The line table entry for 0x000000000000005c should be 0
After this patch, the line table looks like:
```
Address Line Column File ISA Discriminator OpIndex Flags
------------------ ------ ------ ------ --- ------------- ------- -------------
0x0000000000000000 0 0 1 0 0 0 is_stmt
0x0000000000000010 11 14 1 0 0 0 is_stmt prologue_end
0x0000000000000028 12 1 1 0 0 0 is_stmt
0x000000000000002c 12 15 1 0 0 0
0x000000000000004c 12 13 1 0 0 0
0x000000000000005c 0 0 1 0 0 0
0x0000000000000064 12 13 1 0 0 0
0x000000000000007c 13 7 1 0 0 0 is_stmt
0x00000000000000c8 13 1 1 0 0 0
0x00000000000000e8 13 1 1 0 0 0 epilogue_begin
0x00000000000000f8 13 1 1 0 0 0 end_sequence
```
Commit: 72200fcc346bee1830d9e640e42d717a55acd74c
https://github.com/llvm/llvm-project/commit/72200fcc346bee1830d9e640e42d717a55acd74c
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
Log Message:
-----------
[analyzer] Check C++ base or member initializer in WebKit checkers. (#92220)
Co-authored-by: Ryosuke Niwa <rniwa at apple.com>
Commit: f0b3654701bde1cf7821d60698b42383edaff9f3
https://github.com/llvm/llvm-project/commit/f0b3654701bde1cf7821d60698b42383edaff9f3
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/test/Transforms/LoopUnroll/X86/znver3.ll
Log Message:
-----------
[LoopUnroll] Clamp PartialThreshold for large LoopMicroOpBufferSize (#67657)
The znver3/znver4 scheduler models are outliers, specifying very large
LoopMicroOpBufferSizes at 512, while typical values for other subtargets
are on the order of ~50. Even if this information is
micro-architecturally correct (*), this does not mean that we want to
runtime unroll all loops to a size that completely fills the loop
buffer. Unless this is the single hot loop in the entire application,
the massive code size increase will bust the micro-op and instruction
caches.
Protect against this by clamping to the default PartialThreshold of 150,
which is the same as the default full-unroll threshold and half the
aggressive full-unroll threshold. Allowing more partial unrolling than
full unrolling certainly does not make sense.
(*) I strongly doubt that this is actually correct -- I believe this may
derive from an incorrect reading of Agner Fog's micro-architecture
guide. The number 4096 that was originally used here is the size of the
general micro-op cache, not that of a loop buffer. A separate loop
buffer is not listed for the Zen microarchitecture. Comparing this to
the listing for Skylake, it has a 1536 micro-op buffer, but only a 64
micro-op loopback buffer, with a note that it's rarely fully utilized.
Our scheduling model specifies LoopMicroOpBufferSize of 50 in that case.
Commit: f60c699d37c41c46dd0be4ec98e5b4d74e73b2b7
https://github.com/llvm/llvm-project/commit/f60c699d37c41c46dd0be4ec98e5b4d74e73b2b7
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M openmp/runtime/src/CMakeLists.txt
Log Message:
-----------
[OpenMP] Fix intermediate header locations for OpenMP
Summary:
A previous patch moved the code here and accidentally overrwrote the
include path that the LSP interface used. This caused incorrect errors
when using clangd with the offload project. This patch removes the
unnecessary header and makes sure we include the correct folder.
Commit: 1595988ee6f9732e7ea79928af8a470ad5ef7dbe
https://github.com/llvm/llvm-project/commit/1595988ee6f9732e7ea79928af8a470ad5ef7dbe
Author: Krystian Stasiowski <sdkrystian at gmail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/Type.h
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/TreeTransform.h
M clang/test/AST/ast-dump-expr-json.cpp
M clang/test/AST/ast-dump-expr.cpp
M clang/test/AST/ast-dump-lambda.cpp
A clang/test/CXX/expr/expr.unary/expr.unary.general/p1.cpp
M clang/test/CXX/over/over.built/ast.cpp
M clang/test/CXX/over/over.built/p10.cpp
M clang/test/CXX/over/over.built/p11.cpp
A clang/test/CXX/over/over.oper/over.oper.general/p1.cpp
M clang/test/CXX/temp/temp.res/temp.dep/temp.dep.type/p4.cpp
M clang/test/Frontend/noderef_templates.cpp
M clang/test/SemaCXX/cxx2b-deducing-this.cpp
M clang/test/SemaTemplate/class-template-spec.cpp
M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
Log Message:
-----------
Reapply "[Clang][Sema] Earlier type checking for builtin unary operators (#90500)" (#92283)
This patch reapplies #90500, addressing a bug which caused binary
operators with dependent operands to be incorrectly rebuilt by
`TreeTransform`.
Commit: 3a4c1b9b4428b08d4475decf74c11e0d328c5842
https://github.com/llvm/llvm-project/commit/3a4c1b9b4428b08d4475decf74c11e0d328c5842
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M clang/lib/Serialization/ASTReaderDecl.cpp
A clang/test/Modules/pr91418.cppm
M clang/test/OpenMP/nvptx_lambda_capturing.cpp
Log Message:
-----------
[Serialization] Read the initializer for interesting static variables before consuming it (#92218)
Close https://github.com/llvm/llvm-project/issues/91418
Since we load the variable's initializers lazily, it'd be problematic if
the initializers dependent on each other.
For example,
```
SomeType a = ...;
SomeType b = a;
```
Previously, when we load variable `b`, we need to load the initializer,
then we need to load `a`. We can only mark the variable `b` as loaded
after we load `a`. Then `a` is always initialized before `b`. However,
it is not true after we implement lazy loading for initializers.
So here we try to load the initializers of static variables to make sure
they are passed to code generator by order. If we read any thing
interesting, we would consume that before emitting the current
declaration.
Commit: 1dd0d3cf40f21b842dbee107b3d203db9fbaa4ae
https://github.com/llvm/llvm-project/commit/1dd0d3cf40f21b842dbee107b3d203db9fbaa4ae
Author: Dhruv Chawla <dhruvc at nvidia.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M llvm/lib/Target/AArch64/GISel/AArch64PostSelectOptimize.cpp
M llvm/test/CodeGen/AArch64/aarch64-mulv.ll
M llvm/test/CodeGen/AArch64/aarch64-smull.ll
M llvm/test/CodeGen/AArch64/arm64-neon-copy.ll
M llvm/test/CodeGen/AArch64/bitcast.ll
M llvm/test/CodeGen/AArch64/insertextract.ll
M llvm/test/CodeGen/AArch64/ptradd.ll
M llvm/test/CodeGen/AArch64/reduce-and.ll
M llvm/test/CodeGen/AArch64/reduce-or.ll
M llvm/test/CodeGen/AArch64/reduce-xor.ll
Log Message:
-----------
[AArch64][GISel] Fold COPY(y:gpr, DUP(x:fpr, i)) -> UMOV(y:gpr, x:fpr, i) (#89017)
This patch adds a peephole to AArch64PostSelectOptimize for codegen
that is caused by RegBankSelect limiting G_EXTRACT_VECTOR_ELT
only to FPR registers in both the input and output registers. This can
cause a generation of COPY from FPR to GPR when, for example, the
output register of the G_EXTRACT_VECTOR_ELT is used in a branch
condition.
This was noticed when looking at codegen differences between SDAG and GI
for the s1279 kernel in the TSVC benchmark.
Commit: 31c903890a905d203de3303eaaa63063754ffbca
https://github.com/llvm/llvm-project/commit/31c903890a905d203de3303eaaa63063754ffbca
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M llvm/test/Transforms/SeparateConstOffsetFromGEP/NVPTX/lower-gep-reorder.ll
Log Message:
-----------
[SeparateConstOffsetFromGEP] Add additional inbounds preservation tests (NFC)
Adding these for NVPTX because for AMDGPU the problematic -1 case
does not get reordered in the first place.
Commit: b4d1a606c7492d827aff6ff0c1c109adff1253b9
https://github.com/llvm/llvm-project/commit/b4d1a606c7492d827aff6ff0c1c109adff1253b9
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
M llvm/test/Transforms/SeparateConstOffsetFromGEP/NVPTX/lower-gep-reorder.ll
Log Message:
-----------
[SeparateConstOffsetFromGEP] Check correct index for non-negativity
We were checking the index of GEP twice, instead of checking both
GEP and PtrGEP.
Commit: 83e61d03deaaa8f4dd8395cfa753af7b38f74b24
https://github.com/llvm/llvm-project/commit/83e61d03deaaa8f4dd8395cfa753af7b38f74b24
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M llvm/test/Transforms/SeparateConstOffsetFromGEP/AMDGPU/reorder-gep.ll
Log Message:
-----------
[SeparateConstOffsetFromGEP] Add tests for multiple indices (NFC)
Commit: e91ea1b5d88805ebf7657da57ca6a7577374e4ad
https://github.com/llvm/llvm-project/commit/e91ea1b5d88805ebf7657da57ca6a7577374e4ad
Author: Jim M. R. Teichgräber <a at teichgraeber.digital>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaExpr.cpp
M clang/test/C/C2x/n2900_n3011.c
M clang/test/C/C2x/n2900_n3011_2.c
M clang/test/Sema/compound-literal.c
Log Message:
-----------
[Clang] Disallow VLA type compound literals (#91891)
C99-C23 6.5.2.5 says: The type name shall specify an object type or an
array of unknown size, but not a variable length array type.
Fixes #89835.
Commit: 90fbc5bbcdc7d35d57157e4cc0459470d473f2ae
https://github.com/llvm/llvm-project/commit/90fbc5bbcdc7d35d57157e4cc0459470d473f2ae
Author: Fangrui Song <i at maskray.me>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/MC/MCParser/AsmParser.cpp
M llvm/lib/MC/MCParser/MCAsmParser.cpp
Log Message:
-----------
[MCAsmParser] Simplify. NFC
Commit: ce961c5607dd5c2d181117938720e410b406a49f
https://github.com/llvm/llvm-project/commit/ce961c5607dd5c2d181117938720e410b406a49f
Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M lldb/test/API/functionalities/avoids-fd-leak/TestFdLeak.py
Log Message:
-----------
[lldb] Fixed the TestFdLeak test (#92273)
Use `os.devnull` instead of `/dev/null`.
Commit: b11a6607cb6522c58dfbd5f54239e7daa281368e
https://github.com/llvm/llvm-project/commit/b11a6607cb6522c58dfbd5f54239e7daa281368e
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/tools/clang-format/ClangFormat.cpp
Log Message:
-----------
[clang-format][NFC] Reformat with 18.1.5
Commit: 526553b25131a69d9d6426e17c7b69c2ba27144f
https://github.com/llvm/llvm-project/commit/526553b25131a69d9d6426e17c7b69c2ba27144f
Author: Yusuke MINATO <minato.yusuke at fujitsu.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/Flang.cpp
M flang/include/flang/Lower/LoweringOptions.def
M flang/include/flang/Optimizer/Transforms/Passes.h
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Tools/CLOptions.inc
M flang/include/flang/Tools/CrossToolHelpers.h
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/IO.cpp
M flang/lib/Optimizer/Transforms/ControlFlowConverter.cpp
M flang/test/Driver/frontend-forwarding.f90
M flang/test/Fir/loop01.fir
M flang/test/Lower/array-substring.f90
M flang/test/Lower/do_loop.f90
M flang/test/Lower/do_loop_unstructured.f90
M flang/test/Lower/infinite_loop.f90
M flang/test/Lower/io-implied-do-fixes.f90
M flang/tools/bbc/bbc.cpp
Log Message:
-----------
[flang] Add nsw flag to do-variable increment with a new option (#91579)
This patch adds nsw flag to the increment of do-variables when a new
option is enabled.
NOTE 11.10 in the Fortran 2018 standard says they never overflow.
See also the discussion in #74709 and the following discourse post.
https://discourse.llvm.org/t/rfc-add-nsw-flags-to-arithmetic-integer-operations-using-the-option-fno-wrapv/77584/5
Commit: 3cc445a6608dc0e88f7d5f16501ef827199cf0c4
https://github.com/llvm/llvm-project/commit/3cc445a6608dc0e88f7d5f16501ef827199cf0c4
Author: Fangrui Song <i at maskray.me>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/MC/MCParser/AsmParser.cpp
Log Message:
-----------
[MCAsmParser] Simplify expandMacro
The error checking is only for .macro directives. Move it to the .macro
parser to remove one parameter.
Commit: 245b7b65cb341ac5499fabf62f28fdbbc39bc7d7
https://github.com/llvm/llvm-project/commit/245b7b65cb341ac5499fabf62f28fdbbc39bc7d7
Author: jiajie zhang <56027356+JumpMasterJJ at users.noreply.github.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
A etime-function.mlir
M flang/docs/Intrinsics.md
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/include/flang/Optimizer/Builder/Runtime/Intrinsics.h
M flang/include/flang/Runtime/time-intrinsic.h
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Builder/Runtime/Intrinsics.cpp
M flang/runtime/time-intrinsic.cpp
M flang/runtime/tools.h
A flang/test/Lower/Intrinsics/etime-function.f90
A flang/test/Lower/Intrinsics/etime.f90
A flang/test/Semantics/etime.f90
Log Message:
-----------
[flang] Add ETIME runtime and lowering intrinsics implementation (#90578)
This patch add support of intrinsics GNU extension ETIME
https://github.com/llvm/llvm-project/issues/84205. Some usage info and
example has been added to `flang/docs/Intrinsics.md`. The patch contains
both the lowering and the runtime code and works on both Windows and
Linux.
| System | Implmentation |
|-----------|--------------------|
| Windows| GetProcessTimes |
| Linux |times |
Commit: f2d74002fdad2171b62392eaedf38aac7e4fb50d
https://github.com/llvm/llvm-project/commit/f2d74002fdad2171b62392eaedf38aac7e4fb50d
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
M llvm/test/CodeGen/X86/midpoint-int-vec-128.ll
M llvm/test/CodeGen/X86/midpoint-int-vec-256.ll
Log Message:
-----------
[LegalizeVectorOps][X86] Add ISD::ABDS/ABSDU to the list of opcodes handled by LegalizeVectorOps. (#92332)
The expand code is present, but we were missing the type query code
so the nodes would be ignored until LegalizeDAG.
Commit: 487b43cdc9fff9e370b8ea948c0cc19ca817aa86
https://github.com/llvm/llvm-project/commit/487b43cdc9fff9e370b8ea948c0cc19ca817aa86
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-cost.ll
Log Message:
-----------
[RISCV] Pass subvector type to isLegalInterleavedAccessType in getInterleavedMemoryOpCost. (#91825)
isLegalInterleavedAccessType expects the subvector type, but
getInterleavedMemoryOpCost is called with the full vector type. So we
need to divide by Factor.
Commit: 6bf185920bd6831efc151d7d4158d6390006c50b
https://github.com/llvm/llvm-project/commit/6bf185920bd6831efc151d7d4158d6390006c50b
Author: Lang Hames <lhames at gmail.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
Log Message:
-----------
[ORC] Support visionOS in LC_BUILD_VERSIONs for JITDylibs.
rdar://127846581
Commit: 566fbb450092bf8c9f966a6ab1b0381626e3e535
https://github.com/llvm/llvm-project/commit/566fbb450092bf8c9f966a6ab1b0381626e3e535
Author: Luke Lau <luke at igalia.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCV.h
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
Log Message:
-----------
[RISCV] Defer creating RISCVInsertVSETVLI to avoid leak with -stop-after (#92303)
As noted in
https://github.com/llvm/llvm-project/pull/91440#discussion_r1601976425,
if the pass pipeline stops early because of -stop-after any allocated
passes added with insertPass will not be freed if they haven't already
been added.
This was showing up as a failure on the address sanitizer buildbots. We
can fix it by instead passing the pass ID instead so that allocation is
deferred.
Commit: 70a926cfb1d4af326be5afe6419991aeff8f44b2
https://github.com/llvm/llvm-project/commit/70a926cfb1d4af326be5afe6419991aeff8f44b2
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M clang/test/SemaTemplate/cwg2398.cpp
Log Message:
-----------
[clang] NFC: Add a few more interesting test cases for CWG2398
Commit: 5bd8091f4bde53de48329e14d5b955314e6518f4
https://github.com/llvm/llvm-project/commit/5bd8091f4bde53de48329e14d5b955314e6518f4
Author: Jeremy Kun <jkun at google.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
R mlir/docs/Dialects/Polynomial.md
M mlir/include/mlir/Dialect/Polynomial/IR/CMakeLists.txt
Log Message:
-----------
[mlir] fix polynomial docs for MLIR website (#92348)
I built it and confirmed this fixes the issue locally.
Co-authored-by: Jeremy Kun <j2kun at users.noreply.github.com>
Commit: afce597baa9c6cf46feb30aba97cf832bff32673
https://github.com/llvm/llvm-project/commit/afce597baa9c6cf46feb30aba97cf832bff32673
Author: Jeremy Kun <jkun at google.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
M mlir/include/mlir/Dialect/IRDL/IR/CMakeLists.txt
Log Message:
-----------
[mlir] fix IRDL dialect docs (#92349)
Currently the irdl dialect page has no content beyond the header.
By referring to the Ops.td in the CMake config, it pulls in all the
types, attributes, etc., so that the doc generation can include them all
in the page.
Rendered locally to confirm it fixes the issue
![image](https://github.com/llvm/llvm-project/assets/2467754/8758f324-6bc3-4f0e-8fa9-8962cdb0177f)
Co-authored-by: Jeremy Kun <j2kun at users.noreply.github.com>
Commit: 3c2638dae58466f7eb4384bb7f26c9af904bf94c
https://github.com/llvm/llvm-project/commit/3c2638dae58466f7eb4384bb7f26c9af904bf94c
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M clang/lib/Serialization/ASTReaderDecl.cpp
R clang/test/Modules/pr91418.cppm
M clang/test/OpenMP/nvptx_lambda_capturing.cpp
Log Message:
-----------
Revert "[Serialization] Read the initializer for interesting static variables before consuming it (#92218)"
This reverts commit 3a4c1b9b4428b08d4475decf74c11e0d328c5842.
This breaks a bot on clang-s390x-linux
Commit: 5c35b63da3c2e3c773580f748129fdec76354ede
https://github.com/llvm/llvm-project/commit/5c35b63da3c2e3c773580f748129fdec76354ede
Author: William G Hatch <william at hatch.uno>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
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/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][LLVM] add dwarfAddressSpace to DIDerivedType (#92043)
This field is present in LLVM, but was missing from the MLIR wrapper
type. This addition allows MLIR languages to add proper DWARF info for
GPU programs.
Commit: 6706aebefac3c89d8df55bade022f3aeb55cfeb9
https://github.com/llvm/llvm-project/commit/6706aebefac3c89d8df55bade022f3aeb55cfeb9
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-05-15 (Wed, 15 May 2024)
Changed paths:
R etime-function.mlir
M flang/docs/Intrinsics.md
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/include/flang/Optimizer/Builder/Runtime/Intrinsics.h
M flang/include/flang/Runtime/time-intrinsic.h
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Builder/Runtime/Intrinsics.cpp
M flang/runtime/time-intrinsic.cpp
M flang/runtime/tools.h
R flang/test/Lower/Intrinsics/etime-function.f90
R flang/test/Lower/Intrinsics/etime.f90
R flang/test/Semantics/etime.f90
Log Message:
-----------
Revert "[flang] Add ETIME runtime and lowering intrinsics implementation" (#92354)
Reverts llvm/llvm-project#90578
This broke the premerge linux buildbot.
Commit: 45cc6bdea97be10793e4cd5f0ef11abd9d19adea
https://github.com/llvm/llvm-project/commit/45cc6bdea97be10793e4cd5f0ef11abd9d19adea
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M .github/CODEOWNERS
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/lib/AST/Interp/ByteCodeExprGen.h
M clang/test/AST/Interp/builtin-functions.cpp
Log Message:
-----------
[clang][Interp] Implement __builtin_shufflevector
Commit: e27f9bb31984927d10995e3d7e5a8fcde60cf5d4
https://github.com/llvm/llvm-project/commit/e27f9bb31984927d10995e3d7e5a8fcde60cf5d4
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M .github/CODEOWNERS
Log Message:
-----------
[github] Add keith back to bazel codeowners
Wrongly removed in 45cc6bdea97be10793e4cd5f0ef11abd9d19adea.
Commit: 7c956293d856224dd6a1b633820ef53009f7ef1c
https://github.com/llvm/llvm-project/commit/7c956293d856224dd6a1b633820ef53009f7ef1c
Author: Fangrui Song <i at maskray.me>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M llvm/include/llvm/MC/MCAsmMacro.h
M llvm/include/llvm/MC/MCContext.h
M llvm/lib/MC/MCParser/AsmParser.cpp
M llvm/test/MC/AsmParser/macro-at-pseudo-variable.s
Log Message:
-----------
MCAsmParser: Support \+
In .macro, \+ expands to the per-macro invocation count.
https://sourceware.org/pipermail/binutils/2024-May/134009.html
\+ counts from 0 for .irp/.irpc/.rept .
Note: We currently prints \q for `.print "\q"` while gas doesn't. This
patch does not change this behavior.
Commit: 89ee3ae2bd1d5705a3e775e3f30bf0ec6d8d863a
https://github.com/llvm/llvm-project/commit/89ee3ae2bd1d5705a3e775e3f30bf0ec6d8d863a
Author: Kiran Chandramohan <kiran.chandramohan at arm.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Target/LLVMIR/openmp-llvm.mlir
Log Message:
-----------
[Flang][OpenMP] Fix update operation not found issue (#92165)
If there is only one non-terminator operation in the update region then
the update operation can be found and we can try to generate an
atomicrmw instruction. Otherwise use the cmpxchg loop.
Fixes #91929
Commit: ca1f0d41b8c5f42ca6cdcbdf9732bf4df2fcc80f
https://github.com/llvm/llvm-project/commit/ca1f0d41b8c5f42ca6cdcbdf9732bf4df2fcc80f
Author: Daniil Kovalev <dkovalev at accesssoftek.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Relocations.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
M lld/ELF/Writer.cpp
M lld/test/ELF/aarch64-reloc-pauth.s
Log Message:
-----------
[lld][AArch64][ELF][PAC] Support `.relr.auth.dyn` section (#87635)
Support `R_AARCH64_AUTH_RELATIVE` relocation compression as described in
https://github.com/ARM-software/abi-aa/blob/main/pauthabielf64/pauthabielf64.rst#relocation-compression
Commit: ce1ce5d30c7696fddcb0c040909a9b786fe7cb06
https://github.com/llvm/llvm-project/commit/ce1ce5d30c7696fddcb0c040909a9b786fe7cb06
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
M llvm/test/Transforms/InstCombine/pow-1.ll
Log Message:
-----------
InstCombine: Try to use exp10 intrinsic instead of libcall (#92287)
Addresses old TODO about the exp10 intrinsic not existing.
Commit: b5107bdda332234d632c9749e01d60dd0f01bf39
https://github.com/llvm/llvm-project/commit/b5107bdda332234d632c9749e01d60dd0f01bf39
Author: Cullen Rhodes <cullen.rhodes at arm.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M mlir/lib/Conversion/ArmSMEToLLVM/ArmSMEToLLVM.cpp
M mlir/test/Conversion/ArmSMEToLLVM/arm-sme-to-llvm.mlir
M mlir/test/Conversion/ArmSMEToLLVM/tile-spills-and-fills.mlir
M mlir/test/Conversion/ArmSMEToLLVM/unsupported.mlir
Log Message:
-----------
[mlir][ArmSME] Verify ops on tile types post LLVM conversion (#92076)
Unsupported ops on tile types can become dead after
`-convert-arm-sme-to-llvm` resulting in incorrect results. Verify such
operations don't exist post-conversion and fail if they do.
Based on discussion from
https://discourse.llvm.org/t/on-improving-arm-sme-lowering-resilience-in-mlir/78543
Commit: 8389177710c2cb7a7e0cf5c6c9b34aabb8048f39
https://github.com/llvm/llvm-project/commit/8389177710c2cb7a7e0cf5c6c9b34aabb8048f39
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
Log Message:
-----------
SimplifyLibCalls: Use IRBuilder helpers for creating intrinsics (#92288)
Commit: de483ad513895c0adf7f21c7001c30f031998ea3
https://github.com/llvm/llvm-project/commit/de483ad513895c0adf7f21c7001c30f031998ea3
Author: Kazu Hirata <kazu at google.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M llvm/include/llvm/ADT/StringRef.h
Log Message:
-----------
[ADT] Deprecate StringRef::equals (#92351)
This patch deprecates StringRef::equals. Note that I've migrated all
known users to operator==(StringRef, StringRef).
Commit: 8f711aa32488beb3382de101a290e11b41ceb876
https://github.com/llvm/llvm-project/commit/8f711aa32488beb3382de101a290e11b41ceb876
Author: Mital Ashok <mital at mitalashok.co.uk>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/include/version
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
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++][test] `__cpp_lib_within_lifetime` -> `__cpp_lib_is_within_lifetime` (#91896)
The feature test macro was renamed when
[P2641R4](https://wg21.link/P2641R4) was adopted into the standard:
https://github.com/cplusplus/draft/commit/0facada4cadd97e1ba15bfaea76a804f1dc5c309
https://wg21.link/version.syn#lib:__cpp_lib_is_constant_evaluated
Commit: dcd32bd65f16e80db2485e6e02b62d6a91c3cddf
https://github.com/llvm/llvm-project/commit/dcd32bd65f16e80db2485e6e02b62d6a91c3cddf
Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/test/Dialect/Tensor/canonicalize.mlir
Log Message:
-----------
[mlir][tensor] Fold pack-unpack with unbalanced outer_dims_perm attr (#92234)
Extends pack/unpack perm attribute checker to account for cases when the
optional outer_dims_perm attribute might be missing in one operation and
the other one has explicit identity permutation. This enables
canonicalizer to fold more unpack(pack(x)) variants.
Commit: cd5ee2715e89ad31982f91cc85fc3939977f2f4e
https://github.com/llvm/llvm-project/commit/cd5ee2715e89ad31982f91cc85fc3939977f2f4e
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
A flang/include/flang/Optimizer/CodeGen/CGOps.h
M flang/include/flang/Optimizer/CodeGen/CGOps.td
M flang/include/flang/Optimizer/CodeGen/CGPasses.td
M flang/include/flang/Optimizer/CodeGen/CodeGen.h
M flang/include/flang/Tools/CLOptions.inc
M flang/lib/Optimizer/CodeGen/CGOps.cpp
R flang/lib/Optimizer/CodeGen/CGOps.h
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/CodeGen/PreCGRewrite.cpp
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
M flang/test/Fir/declare-codegen.fir
M flang/test/Fir/dummy-scope-codegen.fir
A flang/test/Transforms/debug-local-var-2.f90
A flang/test/Transforms/debug-local-var.f90
Log Message:
-----------
[reland][flang] Initial debug info support for local variables (#92304)
This is same as #90905 with an added fix. The issue was that we
generated variable info even when user asked for line-tables-only. This
caused llvm dwarf generation code to fail an assertion as it expected an
empty variable list.
Fixed by not generating debug info for variables when user wants only
line table. I also updated a test check for this case.
Commit: 0ea178b085ba386d9d7bfea5afa072aa37f633fd
https://github.com/llvm/llvm-project/commit/0ea178b085ba386d9d7bfea5afa072aa37f633fd
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
M llvm/test/Transforms/InstCombine/exp2-1.ll
M llvm/test/Transforms/InstCombine/exp2-to-ldexp.ll
M llvm/test/Transforms/InstCombine/pow_fp_int.ll
Log Message:
-----------
SimplifyLibCalls: Emit vector ldexp intrinsics in exp2->ldexp combine (#92219)
Co-authored-by: Nikita Popov <github at npopov.com>
Commit: 710f4bd054a857dd25012c9fef0cb66104f17ec0
https://github.com/llvm/llvm-project/commit/710f4bd054a857dd25012c9fef0cb66104f17ec0
Author: Alex Zinenko <ftynse at gmail.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M mlir/include/mlir/Dialect/MemRef/TransformOps/MemRefTransformOps.h
Log Message:
-----------
[mlir] add missing include to MemRefTransformOps.h
The ODS-generated code has the following:
```
::mlir::TypedValue<::mlir::transform::OperationType> getAlloca() {
return ::llvm::cast<::mlir::TypedValue<::mlir::transform::OperationType>>(
*getODSOperands(0).begin());
}
```
that may require the compiler seing the definition of `OperationType` so
include the corresponding header.
Commit: 51403ada789e63e98e0dd5ac0ceba351465490d1
https://github.com/llvm/llvm-project/commit/51403ada789e63e98e0dd5ac0ceba351465490d1
Author: Alex Zinenko <ftynse at gmail.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M mlir/docs/Dialects/Transform.md
Log Message:
-----------
[mlir] fix orphaned IRDLExtensionOps documentation
.md files should be included into other .md files so they don't show up in the
top-level menu.
Commit: 72a895336b1e4df1ec2f485f8786ead6c356edb8
https://github.com/llvm/llvm-project/commit/72a895336b1e4df1ec2f485f8786ead6c356edb8
Author: Tomas Matheson <Tomas.Matheson at arm.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/lib/Target/AArch64/AArch64Features.td
M llvm/utils/TableGen/ARMTargetDefEmitter.cpp
Log Message:
-----------
[AArch64][TargetParser] move ArchInfo into tablegen [NFC] (#92037)
This moves the architecture version, profile and extension information
into tablegen, and generates the TargetParser ArchInfo objects from
this data.
There are two lists of "dependencies" defined for each architecture: the
SubtargetFeature::Implies which controls which features are
automatically enabled in the backend when the corresponding architecture
SubtargetFeature is enabled; and the list of Extensions which are
enabled by default for this architecture. As far as I can tell, the idea
here is that the SubtargetFeature models the mandatory dependencies (although
they can still be disabled if desired) while the default extensions models
the typical use case for that architecture.
Commit: ca02f36bacaec58071a26ff65329fbab5526d1d7
https://github.com/llvm/llvm-project/commit/ca02f36bacaec58071a26ff65329fbab5526d1d7
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Vector/vector-transferop-opt.mlir
Log Message:
-----------
[mlir][vector] Teach `TransferOptimization` to forward masked stores (#87794)
This only handles one case (that's fairly common in practice*), storing
a masked constant splat, then reloading again with the same mask and a
padding value that matches the splat.
* For SVE/SME (without peeling) this occurs when you have a
`linalg.fill` preceding a `linalg.matmul`.
Commit: 30410018d32b2cc19552c6d6a3b7b6de84d99382
https://github.com/llvm/llvm-project/commit/30410018d32b2cc19552c6d6a3b7b6de84d99382
Author: wanglei <wanglei at loongson.cn>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchBaseInfo.cpp
A llvm/test/CodeGen/LoongArch/target-abi.ll
Log Message:
-----------
[LoongArch] Enable all -target-abi options
This is a pre-commit for modifying `computeTargetABI` logic.
This patch will provide warning prompts when using those ABIs that have
not yet been standardized.
Reviewed By: xen0n, SixWeining
Pull Request: https://github.com/llvm/llvm-project/pull/92222
Commit: c81fef7a20605c836a5663c6929071b2cb536039
https://github.com/llvm/llvm-project/commit/c81fef7a20605c836a5663c6929071b2cb536039
Author: wanglei <wanglei at loongson.cn>
Date: 2024-05-16 (Thu, 16 May 2024)
Changed paths:
M .github/workflows/libclang-abi-tests.yml
A bolt/docs/CommandLineArgumentReference.md
M bolt/lib/Rewrite/CMakeLists.txt
M clang-tools-extra/clang-tidy/bugprone/SuspiciousEnumUsageCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/MisleadingCaptureDefaultByValueCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/SpecialMemberFunctionsCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/SpecialMemberFunctionsCheck.h
M clang-tools-extra/clang-tidy/misc/UnusedParametersCheck.cpp
M clang-tools-extra/clang-tidy/modernize/MinMaxUseInitializerListCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseConstraintsCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/special-member-functions.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-constraints.rst
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/special-member-functions-relaxed.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-constraints.cpp
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/Type.h
M clang/include/clang/AST/VTTBuilder.h
M clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Driver/Options.td
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/lib/AST/Interp/ByteCodeExprGen.h
M clang/lib/AST/Interp/IntegralAP.h
M clang/lib/AST/VTTBuilder.cpp
M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
M clang/lib/CodeGen/CGCoroutine.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGVTT.cpp
M clang/lib/CodeGen/CGVTables.h
M clang/lib/CodeGen/CoverageMappingGen.cpp
M clang/lib/CodeGen/Targets/Sparc.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Driver/ToolChains/OpenBSD.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Parse/Parser.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/test/AST/Interp/builtin-functions.cpp
M clang/test/AST/ast-dump-expr-json.cpp
M clang/test/AST/ast-dump-expr.cpp
M clang/test/AST/ast-dump-lambda.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
A clang/test/Analysis/block-in-critical-section.c
M clang/test/C/C2x/n2900_n3011.c
M clang/test/C/C2x/n2900_n3011_2.c
M clang/test/CXX/drs/cwg11xx.cpp
M clang/test/CXX/drs/cwg13xx.cpp
M clang/test/CXX/drs/cwg14xx.cpp
M clang/test/CXX/drs/cwg18xx.cpp
M clang/test/CXX/drs/cwg23xx.cpp
M clang/test/CXX/drs/cwg24xx.cpp
M clang/test/CXX/drs/cwg25xx.cpp
A clang/test/CXX/drs/cwg2630.cpp
M clang/test/CXX/drs/cwg26xx.cpp
M clang/test/CXX/drs/cwg27xx.cpp
M clang/test/CXX/drs/cwg28xx.cpp
M clang/test/CXX/drs/cwg9xx.cpp
A clang/test/CXX/expr/expr.unary/expr.unary.general/p1.cpp
M clang/test/CXX/over/over.built/ast.cpp
M clang/test/CXX/over/over.built/p10.cpp
M clang/test/CXX/over/over.built/p11.cpp
A clang/test/CXX/over/over.oper/over.oper.general/p1.cpp
A clang/test/CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.partial/p3.cpp
M clang/test/CXX/temp/temp.res/temp.dep/temp.dep.type/p4.cpp
M clang/test/CodeGen/sparcv9-abi.c
A clang/test/CodeGen/sparcv9-class-return.cpp
M clang/test/CodeGenCoroutines/coro-await.cpp
R clang/test/CodeGenCoroutines/coro-symmetric-transfer-01.cpp
M clang/test/CodeGenCoroutines/coro-symmetric-transfer-02.cpp
M clang/test/CoverageMapping/coroutine.cpp
A clang/test/CoverageMapping/decomposition.cpp
M clang/test/Driver/frelaxed-template-template-args.cpp
M clang/test/Driver/riscv-profiles.c
M clang/test/Frontend/noderef_templates.cpp
A clang/test/OpenMP/target_map_both_pointer_pointee_codegen.cpp
A clang/test/PCH/optnone.cpp
M clang/test/Sema/compound-literal.c
M clang/test/SemaCXX/cxx2b-deducing-this.cpp
M clang/test/SemaTemplate/class-template-spec.cpp
M clang/test/SemaTemplate/cwg2398.cpp
M clang/tools/clang-format/ClangFormat.cpp
M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
M clang/unittests/Analysis/FlowSensitive/DataflowEnvironmentTest.cpp
M clang/unittests/Analysis/FlowSensitive/TestingSupport.h
M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
M clang/www/cxx_dr_status.html
M compiler-rt/lib/scudo/standalone/combined.h
M cross-project-tests/debuginfo-tests/dexter/dex/command/commands/DexExpectStepOrder.py
M flang/docs/HighLevelFIR.md
M flang/include/flang/Frontend/FrontendActions.h
M flang/include/flang/Frontend/FrontendOptions.h
M flang/include/flang/Lower/LoweringOptions.def
A flang/include/flang/Optimizer/CodeGen/CGOps.h
M flang/include/flang/Optimizer/CodeGen/CGOps.td
M flang/include/flang/Optimizer/CodeGen/CGPasses.td
M flang/include/flang/Optimizer/CodeGen/CodeGen.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/parse-tree.h
M flang/include/flang/Semantics/unparse-with-symbols.h
M flang/include/flang/Tools/CLOptions.inc
M flang/include/flang/Tools/CrossToolHelpers.h
M flang/lib/Evaluate/fold.cpp
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/IO.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Optimizer/CodeGen/CGOps.cpp
R flang/lib/Optimizer/CodeGen/CGOps.h
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/CodeGen/PreCGRewrite.cpp
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M flang/lib/Optimizer/Transforms/ControlFlowConverter.cpp
M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
M flang/lib/Parser/executable-parsers.cpp
M flang/lib/Parser/openacc-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-cuda.cpp
M flang/lib/Semantics/check-declarations.cpp
M flang/lib/Semantics/check-purity.cpp
M flang/lib/Semantics/mod-file.cpp
M flang/lib/Semantics/mod-file.h
M flang/lib/Semantics/resolve-directives.h
M flang/lib/Semantics/resolve-names.cpp
M flang/lib/Semantics/unparse-with-symbols.cpp
M flang/test/Driver/frontend-forwarding.f90
A flang/test/Driver/unparse-with-modules.f90
M flang/test/Fir/declare-codegen.fir
M flang/test/Fir/dummy-scope-codegen.fir
M flang/test/Fir/loop01.fir
M flang/test/Lower/HLFIR/forall.f90
A flang/test/Lower/OpenMP/invalid-reduction-modifier.f90
M flang/test/Lower/OpenMP/parallel-sections.f90
M flang/test/Lower/OpenMP/taskgroup.f90
M flang/test/Lower/OpenMP/teams.f90
M flang/test/Lower/array-substring.f90
M flang/test/Lower/do_loop.f90
M flang/test/Lower/do_loop_unstructured.f90
M flang/test/Lower/infinite_loop.f90
M flang/test/Lower/io-implied-do-fixes.f90
M flang/test/Parser/cuf-sanity-common
M flang/test/Parser/cuf-sanity-unparse.CUF
A flang/test/Semantics/bind-c15.f90
M flang/test/Semantics/entry01.f90
A flang/test/Semantics/pure02.f90
A flang/test/Semantics/reduce.cuf
M flang/test/Semantics/resolve102.f90
A flang/test/Transforms/debug-local-var-2.f90
A flang/test/Transforms/debug-local-var.f90
M flang/tools/bbc/bbc.cpp
M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
M libc/cmake/modules/prepare_libc_gpu_build.cmake
M libc/src/__support/StringUtil/tables/stdc_errors.h
M libc/src/stdio/printf_core/parser.h
M libc/test/src/string/strerror_test.cpp
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/include/version
M libcxx/test/std/containers/views/mdspan/CustomTestLayouts.h
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
M libcxx/utils/generate_feature_test_macro_components.py
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Relocations.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
M lld/ELF/Writer.cpp
M lld/test/ELF/aarch64-reloc-pauth.s
M lld/test/ELF/arm-exidx-shared.s
M lld/test/ELF/mips-tls-hilo.s
M lld/test/ELF/ppc32-reloc-rel.s
M lld/test/ELF/ppc64-pcrel-call-to-extern.s
M lld/test/ELF/ppc64-toc-relax-ifunc.s
M lld/test/ELF/riscv-gp.s
M lld/test/MachO/install-name.s
M lld/test/MachO/objc-methname.s
M lld/test/MachO/objc.s
M lldb/docs/resources/lldbgdbremote.md
M lldb/docs/use/variable.rst
M lldb/packages/Python/lldbsuite/test/lldbutil.py
M lldb/source/Core/FormatEntity.cpp
M lldb/test/API/functionalities/avoids-fd-leak/TestFdLeak.py
M lldb/test/API/functionalities/completion/TestCompletion.py
A lldb/test/API/functionalities/data-formatter/custom-printf-summary/Makefile
A lldb/test/API/functionalities/data-formatter/custom-printf-summary/TestCustomSummaryLLVMFormat.py
A lldb/test/API/functionalities/data-formatter/custom-printf-summary/main.c
M lldb/test/API/functionalities/gdb_remote_client/TestGDBRemotePlatformFile.py
M lldb/test/API/functionalities/gdb_remote_client/TestPty.py
M lldb/test/API/functionalities/postmortem/netbsd-core/TestNetBSDCore.py
M lldb/test/API/functionalities/thread/concurrent_events/TestConcurrentTwoBreakpointsOneSignal.py
M lldb/test/API/iohandler/resize/TestIOHandlerResizeNoEditline.py
M lldb/test/API/tools/lldb-server/TestGdbRemoteCompletion.py
M lldb/test/API/tools/lldb-server/TestPtyServer.py
M lldb/tools/lldb-dap/README.md
M lldb/tools/lldb-dap/package.json
M llvm/docs/Coroutines.rst
M llvm/docs/GlobalISel/GenericOpcode.rst
M llvm/examples/ExceptionDemo/CMakeLists.txt
M llvm/examples/ExceptionDemo/ExceptionDemo.cpp
M llvm/include/llvm/ADT/StringRef.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVObject.h
M llvm/include/llvm/Frontend/OpenMP/ConstructCompositionT.h
M llvm/include/llvm/Frontend/OpenMP/ConstructDecompositionT.h
M llvm/include/llvm/IR/Intrinsics.td
M llvm/include/llvm/MC/MCAsmMacro.h
M llvm/include/llvm/MC/MCContext.h
M llvm/include/llvm/ProfileData/MemProf.h
A llvm/include/llvm/ProfileData/PGOCtxProfReader.h
A llvm/include/llvm/ProfileData/PGOCtxProfWriter.h
M llvm/include/llvm/Support/Error.h
M llvm/include/llvm/Target/Target.td
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/lib/Analysis/DependenceAnalysis.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/Bitcode/Writer/ValueEnumerator.cpp
M llvm/lib/Bitcode/Writer/ValueEnumerator.h
M llvm/lib/Bitstream/Reader/BitstreamReader.cpp
M llvm/lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp
M llvm/lib/CodeGen/LiveDebugValues/VarLocBasedImpl.cpp
M llvm/lib/CodeGen/MLRegAllocEvictAdvisor.cpp
M llvm/lib/CodeGen/PrologEpilogInserter.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
M llvm/lib/MC/MCParser/AsmParser.cpp
M llvm/lib/MC/MCParser/MCAsmParser.cpp
M llvm/lib/Object/COFFObjectFile.cpp
M llvm/lib/Object/WindowsResource.cpp
M llvm/lib/ProfileData/CMakeLists.txt
M llvm/lib/ProfileData/InstrProfWriter.cpp
M llvm/lib/ProfileData/MemProf.cpp
A llvm/lib/ProfileData/PGOCtxProfReader.cpp
A llvm/lib/ProfileData/PGOCtxProfWriter.cpp
M llvm/lib/Support/ELFAttributeParser.cpp
M llvm/lib/Support/MemoryBuffer.cpp
M llvm/lib/Target/AArch64/AArch64Features.td
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
M llvm/lib/Target/AArch64/GISel/AArch64PostSelectOptimize.cpp
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp
M llvm/lib/Target/DirectX/DXILWriter/DXILValueEnumerator.cpp
M llvm/lib/Target/DirectX/DXILWriter/DXILValueEnumerator.h
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMatInt.cpp
M llvm/lib/Target/RISCV/RISCV.h
M llvm/lib/Target/RISCV/RISCVDeadRegisterDefinitions.cpp
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
M llvm/lib/Target/RISCV/RISCVProfiles.td
M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86LowerTileCopy.cpp
M llvm/lib/TargetParser/RISCVISAInfo.cpp
M llvm/lib/Transforms/Coroutines/CoroInternal.h
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/lib/Transforms/Coroutines/Coroutines.cpp
M llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
M llvm/lib/Transforms/Scalar/GVNHoist.cpp
M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
M llvm/lib/Transforms/Utils/SampleProfileInference.cpp
M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
A llvm/test/Analysis/LoopAccessAnalysis/invariant-dependence-before.ll
M llvm/test/CodeGen/AArch64/aarch64-mulv.ll
M llvm/test/CodeGen/AArch64/aarch64-smull.ll
M llvm/test/CodeGen/AArch64/arm64-neon-copy.ll
M llvm/test/CodeGen/AArch64/bitcast.ll
M llvm/test/CodeGen/AArch64/insertextract.ll
M llvm/test/CodeGen/AArch64/ptradd.ll
M llvm/test/CodeGen/AArch64/reduce-and.ll
M llvm/test/CodeGen/AArch64/reduce-or.ll
M llvm/test/CodeGen/AArch64/reduce-xor.ll
M llvm/test/CodeGen/AArch64/sme-support-routines-calling-convention.ll
M llvm/test/CodeGen/AArch64/sve-extract-fixed-from-scalable-vector.ll
M llvm/test/CodeGen/AArch64/sve-extract-fixed-vector.ll
M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-to-fp.ll
M llvm/test/CodeGen/AMDGPU/agpr-register-count.ll
M llvm/test/CodeGen/AMDGPU/spill-vgpr.ll
M llvm/test/CodeGen/AMDGPU/waitcnt-preexisting.mir
M llvm/test/CodeGen/RISCV/attributes.ll
A llvm/test/CodeGen/RISCV/pr92193.ll
M llvm/test/CodeGen/RISCV/rvv/calling-conv-fastcc.ll
M llvm/test/CodeGen/RISCV/rvv/calling-conv.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fnearbyint-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp2i-sat.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-i2fp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access-zve32x.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-nearbyint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vselect.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/fmaximum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fminimum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fnearbyint-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/fnearbyint-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/fshr-fshl-vp.ll
M llvm/test/CodeGen/RISCV/rvv/mgather-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/mscatter-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/nearbyint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfma-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmuladd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vpmerge-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vselect-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-crossbb.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvli-regression.ll
M llvm/test/CodeGen/X86/AMX/amx-tile-basic.ll
M llvm/test/CodeGen/X86/align-branch-boundary-suppressions-tls.ll
M llvm/test/CodeGen/X86/asm-modifier.ll
M llvm/test/CodeGen/X86/avoid-sfb-g-no-change.mir
M llvm/test/CodeGen/X86/avx-vperm2x128.ll
M llvm/test/CodeGen/X86/cmp16.ll
M llvm/test/CodeGen/X86/cmpxchg-clobber-flags.ll
M llvm/test/CodeGen/X86/memcmp-more-load-pairs-x32.ll
M llvm/test/CodeGen/X86/memcmp-more-load-pairs.ll
M llvm/test/CodeGen/X86/memcmp-optsize-x32.ll
M llvm/test/CodeGen/X86/memcmp-optsize.ll
M llvm/test/CodeGen/X86/memcmp-pgso-x32.ll
M llvm/test/CodeGen/X86/memcmp-pgso.ll
M llvm/test/CodeGen/X86/memcmp-x32.ll
M llvm/test/CodeGen/X86/memcmp.ll
M llvm/test/CodeGen/X86/midpoint-int-vec-128.ll
M llvm/test/CodeGen/X86/midpoint-int-vec-256.ll
M llvm/test/CodeGen/X86/patchable-function-entry-ibt.ll
M llvm/test/CodeGen/X86/patchable-function-entry.ll
M llvm/test/CodeGen/X86/patchable-prologue.ll
M llvm/test/CodeGen/X86/pr32345.ll
M llvm/test/CodeGen/X86/prefetch.ll
M llvm/test/CodeGen/X86/sibcall-2.ll
M llvm/test/CodeGen/X86/sibcall-byval.ll
M llvm/test/CodeGen/X86/x32-va_start.ll
A llvm/test/DebugInfo/AArch64/merge-locations-legalizer.mir
M llvm/test/DebugInfo/PDB/Inputs/every-type.yaml
M llvm/test/MC/ARM/eh-directive-personalityindex-diagnostics.s
M llvm/test/MC/AsmParser/macro-at-pseudo-variable.s
M llvm/test/MC/AsmParser/macro-rept.s
M llvm/test/MC/X86/abs8.s
M llvm/test/MC/X86/align-branch-variant-symbol.s
M llvm/test/MC/X86/data-prefix-fail.s
M llvm/test/MC/X86/displacement-overflow.s
M llvm/test/MC/X86/dwarf-segment-register.s
M llvm/test/MC/X86/index-operations.s
M llvm/test/MC/X86/ret.s
M llvm/test/MC/X86/x86_errors.s
M llvm/test/Transforms/Coroutines/coro-await-suspend-lower-invoke.ll
M llvm/test/Transforms/Coroutines/coro-await-suspend-lower.ll
R llvm/test/Transforms/Coroutines/coro-preserve-final.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail-chain-pgo-counter-promo.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail1.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail10.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail2.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail3.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail4.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail5.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail6.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail7.ll
M llvm/test/Transforms/InstCombine/exp2-1.ll
M llvm/test/Transforms/InstCombine/exp2-to-ldexp.ll
M llvm/test/Transforms/InstCombine/phi-extractvalue.ll
M llvm/test/Transforms/InstCombine/phi-of-insertvalues.ll
M llvm/test/Transforms/InstCombine/pow-1.ll
M llvm/test/Transforms/InstCombine/pow_fp_int.ll
M llvm/test/Transforms/LoopUnroll/X86/znver3.ll
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-cost.ll
A llvm/test/Transforms/LoopVectorize/as_cast.ll
M llvm/test/Transforms/LoopVectorize/trip-count-expansion-may-introduce-ub.ll
M llvm/test/Transforms/SeparateConstOffsetFromGEP/AMDGPU/reorder-gep.ll
M llvm/test/Transforms/SeparateConstOffsetFromGEP/NVPTX/lower-gep-reorder.ll
M llvm/test/Transforms/VectorCombine/X86/scalarize-vector-gep.ll
M llvm/test/tools/llvm-profdata/trace-limit.proftext
M llvm/unittests/Frontend/OpenMPDecompositionTest.cpp
M llvm/unittests/ProfileData/CMakeLists.txt
M llvm/unittests/ProfileData/MemProfTest.cpp
A llvm/unittests/ProfileData/PGOCtxProfReaderWriterTest.cpp
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
M llvm/utils/TableGen/ARMTargetDefEmitter.cpp
M llvm/utils/filecheck_lint/filecheck_lint.py
M llvm/utils/gn/secondary/llvm/lib/ProfileData/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/ProfileData/BUILD.gn
R mlir/docs/Dialects/Polynomial.md
M mlir/docs/Dialects/Transform.md
M mlir/include/mlir-c/Dialect/LLVM.h
M mlir/include/mlir/Dialect/IRDL/IR/CMakeLists.txt
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/include/mlir/Dialect/MemRef/TransformOps/MemRefTransformOps.h
M mlir/include/mlir/Dialect/Polynomial/IR/CMakeLists.txt
M mlir/include/mlir/Dialect/Tensor/IR/TensorOps.td
M mlir/include/mlir/IR/Operation.h
M mlir/lib/CAPI/Dialect/LLVM.cpp
M mlir/lib/Conversion/ArmSMEToLLVM/ArmSMEToLLVM.cpp
M mlir/lib/Dialect/Func/Transforms/OneToNFuncConversions.cpp
M mlir/lib/Dialect/GPU/Transforms/SerializeToHsaco.cpp
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Target/LLVM/ROCDL/Target.cpp
M mlir/lib/Target/LLVMIR/DebugImporter.cpp
M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/CAPI/llvm.c
M mlir/test/Conversion/ArmSMEToLLVM/arm-sme-to-llvm.mlir
M mlir/test/Conversion/ArmSMEToLLVM/tile-spills-and-fills.mlir
M mlir/test/Conversion/ArmSMEToLLVM/unsupported.mlir
M mlir/test/Dialect/LLVMIR/debuginfo.mlir
M mlir/test/Dialect/OpenMP/invalid.mlir
M mlir/test/Dialect/OpenMP/ops.mlir
M mlir/test/Dialect/Tensor/canonicalize.mlir
M mlir/test/Dialect/Vector/vector-transferop-opt.mlir
M mlir/test/Target/LLVMIR/Import/debug-info.ll
M mlir/test/Target/LLVMIR/llvmir-debug.mlir
M mlir/test/Target/LLVMIR/openmp-llvm.mlir
M mlir/test/lib/Dialect/Test/TestOps.td
M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
M mlir/unittests/TableGen/OpBuildGen.cpp
M offload/CMakeLists.txt
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
M offload/plugins-nextgen/common/src/PluginInterface.cpp
M offload/src/LegacyAPI.cpp
M offload/src/OpenMP/API.cpp
M offload/src/OpenMP/Mapping.cpp
M offload/src/omptarget.cpp
A offload/test/mapping/map_both_pointer_pointee.c
M openmp/runtime/src/CMakeLists.txt
M utils/bazel/llvm-project-overlay/lldb/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel
Log Message:
-----------
rebase
Created using spr 1.3.5-bogner
Compare: https://github.com/llvm/llvm-project/compare/fa6d8511fac1...c81fef7a2060
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