Skip to content

Commit 2ad6038

Browse files
committed
[𝘀𝗽𝗿] changes introduced through rebase
Created using spr 1.3.4 [skip ci]
2 parents 9b8dbe2 + 5f140ba commit 2ad6038

File tree

13,428 files changed

+950610
-371982
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

13,428 files changed

+950610
-371982
lines changed

.ci/generate-buildkite-pipeline-premerge

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -272,7 +272,7 @@ if [[ "${linux_projects}" != "" ]]; then
272272
artifact_paths:
273273
- 'artifacts/**/*'
274274
- '*_result.json'
275-
- 'build/test-results.xml'
275+
- 'build/test-results.*.xml'
276276
agents: ${LINUX_AGENTS}
277277
retry:
278278
automatic:
@@ -295,7 +295,7 @@ if [[ "${windows_projects}" != "" ]]; then
295295
artifact_paths:
296296
- 'artifacts/**/*'
297297
- '*_result.json'
298-
- 'build/test-results.xml'
298+
- 'build/test-results.*.xml'
299299
agents: ${WINDOWS_AGENTS}
300300
retry:
301301
automatic:

.ci/monolithic-linux.sh

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,8 @@ trap show-stats EXIT
3737
projects="${1}"
3838
targets="${2}"
3939

40+
lit_args="-v --xunit-xml-output ${BUILD_DIR}/test-results.xml --use-unique-output-file-name --timeout=1200 --time-tests"
41+
4042
echo "--- cmake"
4143
pip install -q -r "${MONOREPO_ROOT}"/mlir/python/requirements.txt
4244
pip install -q -r "${MONOREPO_ROOT}"/lldb/test/requirements.txt
@@ -47,7 +49,7 @@ cmake -S "${MONOREPO_ROOT}"/llvm -B "${BUILD_DIR}" \
4749
-D LLVM_ENABLE_ASSERTIONS=ON \
4850
-D LLVM_BUILD_EXAMPLES=ON \
4951
-D COMPILER_RT_BUILD_LIBFUZZER=OFF \
50-
-D LLVM_LIT_ARGS="-v --xunit-xml-output ${BUILD_DIR}/test-results.xml --timeout=1200 --time-tests" \
52+
-D LLVM_LIT_ARGS="${lit_args}" \
5153
-D LLVM_ENABLE_LLD=ON \
5254
-D CMAKE_CXX_FLAGS=-gmlt \
5355
-D LLVM_CCACHE_BUILD=ON \
@@ -87,7 +89,8 @@ if [[ "${runtimes}" != "" ]]; then
8789
-D CMAKE_BUILD_TYPE=RelWithDebInfo \
8890
-D CMAKE_INSTALL_PREFIX="${INSTALL_DIR}" \
8991
-D LIBCXX_TEST_PARAMS="std=c++03" \
90-
-D LIBCXXABI_TEST_PARAMS="std=c++03"
92+
-D LIBCXXABI_TEST_PARAMS="std=c++03" \
93+
-D LLVM_LIT_ARGS="${lit_args}"
9194

9295
echo "--- ninja runtimes C++03"
9396

@@ -104,7 +107,8 @@ if [[ "${runtimes}" != "" ]]; then
104107
-D CMAKE_BUILD_TYPE=RelWithDebInfo \
105108
-D CMAKE_INSTALL_PREFIX="${INSTALL_DIR}" \
106109
-D LIBCXX_TEST_PARAMS="std=c++26" \
107-
-D LIBCXXABI_TEST_PARAMS="std=c++26"
110+
-D LIBCXXABI_TEST_PARAMS="std=c++26" \
111+
-D LLVM_LIT_ARGS="${lit_args}"
108112

109113
echo "--- ninja runtimes C++26"
110114

@@ -121,7 +125,8 @@ if [[ "${runtimes}" != "" ]]; then
121125
-D CMAKE_BUILD_TYPE=RelWithDebInfo \
122126
-D CMAKE_INSTALL_PREFIX="${INSTALL_DIR}" \
123127
-D LIBCXX_TEST_PARAMS="enable_modules=clang" \
124-
-D LIBCXXABI_TEST_PARAMS="enable_modules=clang"
128+
-D LIBCXXABI_TEST_PARAMS="enable_modules=clang" \
129+
-D LLVM_LIT_ARGS="${lit_args}"
125130

126131
echo "--- ninja runtimes clang modules"
127132

.ci/monolithic-windows.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ cmake -S "${MONOREPO_ROOT}"/llvm -B "${BUILD_DIR}" \
5353
-D LLVM_ENABLE_ASSERTIONS=ON \
5454
-D LLVM_BUILD_EXAMPLES=ON \
5555
-D COMPILER_RT_BUILD_LIBFUZZER=OFF \
56-
-D LLVM_LIT_ARGS="-v --xunit-xml-output ${BUILD_DIR}/test-results.xml --timeout=1200 --time-tests" \
56+
-D LLVM_LIT_ARGS="-v --xunit-xml-output ${BUILD_DIR}/test-results.xml --use-unique-output-file-name --timeout=1200 --time-tests" \
5757
-D COMPILER_RT_BUILD_ORC=OFF \
5858
-D CMAKE_C_COMPILER_LAUNCHER=sccache \
5959
-D CMAKE_CXX_COMPILER_LAUNCHER=sccache \

.github/CODEOWNERS

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@
6868
/mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp @MaheshRavishankar @nicolasvasilache
6969
/mlir/lib/Dialect/Linalg/Transforms/DataLayoutPropagation.cpp @hanhanW @nicolasvasilache
7070
/mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp @dcaballe @hanhanW @nicolasvasilache
71-
/mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp @banach-space @dcaballe @hanhanW @nicolasvasilache
71+
/mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp @banach-space @dcaballe @hanhanW @nicolasvasilache @Groverkss
7272

7373
# MemRef Dialect in MLIR.
7474
/mlir/lib/Dialect/MemRef/Transforms/EmulateNarrowType.cpp @MaheshRavishankar @nicolasvasilache
@@ -82,9 +82,9 @@
8282
/mlir/**/*VectorToSCF* @banach-space @dcaballe @matthias-springer @nicolasvasilache
8383
/mlir/**/*VectorToLLVM* @banach-space @dcaballe @nicolasvasilache
8484
/mlir/**/*X86Vector* @aartbik @dcaballe @nicolasvasilache
85-
/mlir/include/mlir/Dialect/Vector @banach-space @dcaballe @nicolasvasilache
85+
/mlir/include/mlir/Dialect/Vector @banach-space @dcaballe @nicolasvasilache @Groverkss
8686
/mlir/include/mlir/Dialect/Vector/IR @kuhar
87-
/mlir/lib/Dialect/Vector @banach-space @dcaballe @nicolasvasilache
87+
/mlir/lib/Dialect/Vector @banach-space @dcaballe @nicolasvasilache @Groverkss
8888
/mlir/lib/Dialect/Vector/Transforms/* @banach-space @dcaballe @hanhanW @nicolasvasilache
8989
/mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp @banach-space @dcaballe @MaheshRavishankar @nicolasvasilache
9090
/mlir/**/*EmulateNarrowType* @dcaballe @hanhanW
@@ -141,7 +141,7 @@
141141
/clang/tools/clang-installapi/ @cyndyishida
142142

143143
# ExtractAPI
144-
/clang/**/ExtractAPI @daniel-grumberg
144+
/clang/**/ExtractAPI @daniel-grumberg @QuietMisdreavus
145145

146146
# DWARFLinker, dwarfutil, dsymutil
147147
/llvm/**/DWARFLinker/ @JDevlieghere

.github/new-prs-labeler.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -605,6 +605,14 @@ llvm:transforms:
605605
- llvm/test/Transforms/**
606606
- llvm/unittests/Transforms/**
607607

608+
llvm:instcombine:
609+
- llvm/lib/Analysis/InstructionSimplify.cpp
610+
- llvm/lib/Transforms/InstCombine/**
611+
- llvm/include/llvm/Transforms/InstCombine/
612+
- llvm/include/llvm/Analysis/InstructionSimplify.h
613+
- llvm/test/Transforms/InstCombine/**
614+
- llvm/test/Transforms/InstSimplify/**
615+
608616
clangd:
609617
- clang-tools-extra/clangd/**
610618

.github/workflows/containers/github-action-ci/stage1.Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ FROM docker.io/library/ubuntu:22.04 as base
22
ENV LLVM_SYSROOT=/opt/llvm
33

44
FROM base as stage1-toolchain
5-
ENV LLVM_VERSION=18.1.8
5+
ENV LLVM_VERSION=19.1.2
66

77
RUN apt-get update && \
88
apt-get install -y \

.github/workflows/libcxx-build-and-test.yaml

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,8 @@ env:
4949
jobs:
5050
stage1:
5151
if: github.repository_owner == 'llvm'
52-
runs-on: libcxx-runners-8-set
52+
runs-on: libcxx-runners-set
53+
container: ghcr.io/libcxx/actions-builder:testing-2024-09-21
5354
continue-on-error: false
5455
strategy:
5556
fail-fast: false
@@ -79,12 +80,14 @@ jobs:
7980
path: |
8081
**/test-results.xml
8182
**/*.abilist
83+
**/CMakeConfigureLog.yaml
8284
**/CMakeError.log
8385
**/CMakeOutput.log
8486
**/crash_diagnostics/*
8587
stage2:
8688
if: github.repository_owner == 'llvm'
87-
runs-on: libcxx-runners-8-set
89+
runs-on: libcxx-runners-set
90+
container: ghcr.io/libcxx/actions-builder:testing-2024-09-21
8891
needs: [ stage1 ]
8992
continue-on-error: false
9093
strategy:
@@ -123,6 +126,7 @@ jobs:
123126
path: |
124127
**/test-results.xml
125128
**/*.abilist
129+
**/CMakeConfigureLog.yaml
126130
**/CMakeError.log
127131
**/CMakeOutput.log
128132
**/crash_diagnostics/*
@@ -155,25 +159,23 @@ jobs:
155159
'generic-no-rtti',
156160
'generic-optimized-speed',
157161
'generic-static',
158-
# TODO Find a better place for the benchmark and bootstrapping builds to live. They're either very expensive
159-
# or don't provide much value since the benchmark run results are too noise on the bots.
160-
'benchmarks',
161162
'bootstrapping-build'
162163
]
163-
machine: [ 'libcxx-runners-8-set' ]
164+
machine: [ 'libcxx-runners-set' ]
164165
include:
165166
- config: 'generic-cxx26'
166-
machine: libcxx-runners-8-set
167+
machine: libcxx-runners-set
167168
- config: 'generic-asan'
168-
machine: libcxx-runners-8-set
169+
machine: libcxx-runners-set
169170
- config: 'generic-tsan'
170-
machine: libcxx-runners-8-set
171+
machine: libcxx-runners-set
171172
- config: 'generic-ubsan'
172-
machine: libcxx-runners-8-set
173+
machine: libcxx-runners-set
173174
# Use a larger machine for MSAN to avoid timeout and memory allocation issues.
174175
- config: 'generic-msan'
175-
machine: libcxx-runners-8-set
176+
machine: libcxx-runners-set
176177
runs-on: ${{ matrix.machine }}
178+
container: ghcr.io/libcxx/actions-builder:testing-2024-09-21
177179
steps:
178180
- uses: actions/checkout@v4
179181
- name: ${{ matrix.config }}
@@ -188,6 +190,7 @@ jobs:
188190
path: |
189191
**/test-results.xml
190192
**/*.abilist
193+
**/CMakeConfigureLog.yaml
191194
**/CMakeError.log
192195
**/CMakeOutput.log
193196
**/crash_diagnostics/*
@@ -230,6 +233,7 @@ jobs:
230233
path: |
231234
**/test-results.xml
232235
**/*.abilist
236+
**/CMakeConfigureLog.yaml
233237
**/CMakeError.log
234238
**/CMakeOutput.log
235239
**/crash_diagnostics/*

bolt/include/bolt/Core/BinaryBasicBlock.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -819,6 +819,9 @@ class BinaryBasicBlock {
819819
return OutputAddressRange;
820820
}
821821

822+
uint64_t getOutputStartAddress() const { return OutputAddressRange.first; }
823+
uint64_t getOutputEndAddress() const { return OutputAddressRange.second; }
824+
822825
bool hasLocSyms() const { return LocSyms != nullptr; }
823826

824827
/// Return mapping of input offsets to symbols in the output.

bolt/include/bolt/Core/BinaryContext.h

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -723,12 +723,28 @@ class BinaryContext {
723723
/// Stats for stale profile matching:
724724
/// the total number of basic blocks in the profile
725725
uint32_t NumStaleBlocks{0};
726-
/// the number of matched basic blocks
727-
uint32_t NumMatchedBlocks{0};
726+
/// the number of exactly matched basic blocks
727+
uint32_t NumExactMatchedBlocks{0};
728+
/// the number of loosely matched basic blocks
729+
uint32_t NumLooseMatchedBlocks{0};
730+
/// the number of exactly pseudo probe matched basic blocks
731+
uint32_t NumPseudoProbeExactMatchedBlocks{0};
732+
/// the number of loosely pseudo probe matched basic blocks
733+
uint32_t NumPseudoProbeLooseMatchedBlocks{0};
734+
/// the number of call matched basic blocks
735+
uint32_t NumCallMatchedBlocks{0};
728736
/// the total count of samples in the profile
729737
uint64_t StaleSampleCount{0};
730-
/// the count of matched samples
731-
uint64_t MatchedSampleCount{0};
738+
/// the count of exactly matched samples
739+
uint64_t ExactMatchedSampleCount{0};
740+
/// the count of loosely matched samples
741+
uint64_t LooseMatchedSampleCount{0};
742+
/// the count of exactly pseudo probe matched samples
743+
uint64_t PseudoProbeExactMatchedSampleCount{0};
744+
/// the count of loosely pseudo probe matched samples
745+
uint64_t PseudoProbeLooseMatchedSampleCount{0};
746+
/// the count of call matched samples
747+
uint64_t CallMatchedSampleCount{0};
732748
/// the number of stale functions that have matching number of blocks in
733749
/// the profile
734750
uint64_t NumStaleFuncsWithEqualBlockCount{0};

bolt/include/bolt/Core/BinaryFunction.h

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -386,6 +386,9 @@ class BinaryFunction {
386386
/// Raw branch count for this function in the profile.
387387
uint64_t RawBranchCount{0};
388388

389+
/// Dynamically executed function bytes, used for density computation.
390+
uint64_t SampleCountInBytes{0};
391+
389392
/// Indicates the type of profile the function is using.
390393
uint16_t ProfileFlags{PF_NONE};
391394

@@ -905,6 +908,10 @@ class BinaryFunction {
905908
return BB && BB->getOffset() == Offset ? BB : nullptr;
906909
}
907910

911+
const BinaryBasicBlock *getBasicBlockAtOffset(uint64_t Offset) const {
912+
return const_cast<BinaryFunction *>(this)->getBasicBlockAtOffset(Offset);
913+
}
914+
908915
/// Retrieve the landing pad BB associated with invoke instruction \p Invoke
909916
/// that is in \p BB. Return nullptr if none exists
910917
BinaryBasicBlock *getLandingPadBBFor(const BinaryBasicBlock &BB,
@@ -1844,6 +1851,9 @@ class BinaryFunction {
18441851
/// to this function.
18451852
void setRawBranchCount(uint64_t Count) { RawBranchCount = Count; }
18461853

1854+
/// Return the number of dynamically executed bytes, from raw perf data.
1855+
uint64_t getSampleCountInBytes() const { return SampleCountInBytes; }
1856+
18471857
/// Return the execution count for functions with known profile.
18481858
/// Return 0 if the function has no profile.
18491859
uint64_t getKnownExecutionCount() const {

0 commit comments

Comments
 (0)