Skip to content

Commit f963e8e

Browse files
committed
Merge commit '403ab9ac740d00b2f85ae6ee3a474cf81e257e4f' into cast_cmp
2 parents 9016d84 + 403ab9a commit f963e8e

File tree

1,883 files changed

+63160
-56326
lines changed

Some content is hidden

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

1,883 files changed

+63160
-56326
lines changed

.ci/monolithic-linux.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,8 @@ cmake -S ${MONOREPO_ROOT}/llvm -B ${BUILD_DIR} \
4949
-D LLVM_ENABLE_LLD=ON \
5050
-D CMAKE_CXX_FLAGS=-gmlt \
5151
-D BOLT_CLANG_EXE=/usr/bin/clang \
52-
-D LLVM_CCACHE_BUILD=ON
52+
-D LLVM_CCACHE_BUILD=ON \
53+
-D MLIR_ENABLE_BINDINGS_PYTHON=ON
5354

5455
echo "--- ninja"
5556
# Targets are not escaped as they are passed as separate arguments.

.ci/monolithic-windows.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,8 @@ cmake -S ${MONOREPO_ROOT}/llvm -B ${BUILD_DIR} \
4848
-D LLVM_LIT_ARGS="-v --xunit-xml-output ${BUILD_DIR}/test-results.xml" \
4949
-D COMPILER_RT_BUILD_ORC=OFF \
5050
-D CMAKE_C_COMPILER_LAUNCHER=sccache \
51-
-D CMAKE_CXX_COMPILER_LAUNCHER=sccache
51+
-D CMAKE_CXX_COMPILER_LAUNCHER=sccache \
52+
-D MLIR_ENABLE_BINDINGS_PYTHON=ON
5253

5354
echo "--- ninja"
5455
# Targets are not escaped as they are passed as separate arguments.

.github/CODEOWNERS

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,14 @@
4242
/mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp @MaheshRavishankar
4343
/mlir/lib/Interfaces/TilingInterface.* @MaheshRavishankar
4444

45+
/mlir/**/*EmulateNarrowType* @hanhanW
46+
/mlir/lib/Dialect/Linalg/Transforms/DataLayoutPropagation.cpp @hanhanW
47+
/mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp @hanhanW
48+
/mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp @hanhanW
49+
/mlir/lib/Dialect/Tensor/IR/TensorTilingInterfaceImpl.cpp @hanhanW
50+
/mlir/lib/Dialect/Tensor/Transforms/FoldIntoPackAndUnpackPatterns.cpp @hanhanW
51+
/mlir/lib/Dialect/Vector/Transforms/* @hanhanW
52+
4553
# Transform Dialect in MLIR.
4654
/mlir/include/mlir/Dialect/Transform/* @ftynse
4755
/mlir/lib/Dialect/Transform/* @ftynse

.github/workflows/docs.yml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@ on:
1515
paths:
1616
- 'llvm/docs/**'
1717
- 'clang/docs/**'
18+
- 'clang/include/clang/Basic/AttrDocs.td'
19+
- 'clang/include/clang/Driver/ClangOptionDocs.td'
20+
- 'clang/include/clang/Basic/DiagnosticDocs.td'
1821
- 'clang-tools-extra/docs/**'
1922
- 'lldb/docs/**'
2023
- 'libunwind/docs/**'
@@ -29,6 +32,9 @@ on:
2932
paths:
3033
- 'llvm/docs/**'
3134
- 'clang/docs/**'
35+
- 'clang/include/clang/Basic/AttrDocs.td'
36+
- 'clang/include/clang/Driver/ClangOptionDocs.td'
37+
- 'clang/include/clang/Basic/DiagnosticDocs.td'
3238
- 'clang-tools-extra/docs/**'
3339
- 'lldb/docs/**'
3440
- 'libunwind/docs/**'
@@ -64,6 +70,9 @@ jobs:
6470
- 'llvm/docs/**'
6571
clang:
6672
- 'clang/docs/**'
73+
- 'clang/include/clang/Basic/AttrDocs.td'
74+
- 'clang/include/clang/Driver/ClangOptionDocs.td'
75+
- 'clang/include/clang/Basic/DiagnosticDocs.td'
6776
clang-tools-extra:
6877
- 'clang-tools-extra/docs/**'
6978
lldb:

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

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ env:
4343

4444
jobs:
4545
stage1:
46+
if: github.repository_owner == 'llvm'
4647
runs-on:
4748
group: libcxx-runners-8
4849
continue-on-error: false
@@ -81,6 +82,7 @@ jobs:
8182
**/CMakeOutput.log
8283
**/crash_diagnostics/*
8384
stage2:
85+
if: github.repository_owner == 'llvm'
8486
runs-on:
8587
group: libcxx-runners-8
8688
needs: [ stage1 ]
@@ -130,6 +132,7 @@ jobs:
130132
**/CMakeOutput.log
131133
**/crash_diagnostics/*
132134
stage3:
135+
if: github.repository_owner == 'llvm'
133136
needs: [ stage1, stage2 ]
134137
continue-on-error: false
135138
strategy:

.github/workflows/pr-code-format.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,9 +40,11 @@ jobs:
4040
path: code-format-tools
4141

4242
- name: "Listed files"
43+
env:
44+
CHANGED_FILES: ${{ steps.changed-files.outputs.all_changed_files }}
4345
run: |
4446
echo "Formatting files:"
45-
echo "${{ steps.changed-files.outputs.all_changed_files }}"
47+
echo "$CHANGED_FILES"
4648
4749
- name: Install clang-format
4850
uses: aminya/setup-cpp@v1

bolt/include/bolt/Core/DIEBuilder.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -273,7 +273,8 @@ class DIEBuilder {
273273
void buildCompileUnits(const std::vector<DWARFUnit *> &CUs);
274274
/// Preventing implicit conversions.
275275
template <class T> void buildCompileUnits(T) = delete;
276-
void buildBoth();
276+
/// Builds DWO Unit. For DWARF5 this includes the type units.
277+
void buildDWOUnit(DWARFUnit &U);
277278

278279
/// Returns DWARFUnitInfo for DWARFUnit
279280
DWARFUnitInfo &getUnitInfoByDwarfUnit(const DWARFUnit &DwarfUnit) {

bolt/lib/Core/BinaryFunction.cpp

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@
4040
#include "llvm/Support/Regex.h"
4141
#include "llvm/Support/Timer.h"
4242
#include "llvm/Support/raw_ostream.h"
43+
#include "llvm/Support/xxhash.h"
4344
#include <functional>
4445
#include <limits>
4546
#include <numeric>
@@ -3636,7 +3637,7 @@ size_t BinaryFunction::computeHash(bool UseDFS,
36363637
for (const BinaryBasicBlock *BB : Order)
36373638
HashString.append(hashBlock(BC, *BB, OperandHashFunc));
36383639

3639-
return Hash = std::hash<std::string>{}(HashString);
3640+
return Hash = llvm::xxh3_64bits(HashString);
36403641
}
36413642

36423643
void BinaryFunction::insertBasicBlocks(
@@ -4143,10 +4144,6 @@ void BinaryFunction::updateOutputValues(const BOLTLinker &Linker) {
41434144
if (!requiresAddressMap())
41444145
return;
41454146

4146-
// Output ranges should match the input if the body hasn't changed.
4147-
if (!isSimple() && !BC.HasRelocations)
4148-
return;
4149-
41504147
// AArch64 may have functions that only contains a constant island (no code).
41514148
if (getLayout().block_empty())
41524149
return;
@@ -4194,6 +4191,12 @@ void BinaryFunction::updateOutputValues(const BOLTLinker &Linker) {
41944191
? FF.getAddress() + FF.getImageSize()
41954192
: getOutputAddress() + getOutputSize());
41964193
}
4194+
4195+
// Reset output addresses for deleted blocks.
4196+
for (BinaryBasicBlock *BB : DeletedBasicBlocks) {
4197+
BB->setOutputStartAddress(0);
4198+
BB->setOutputEndAddress(0);
4199+
}
41974200
}
41984201

41994202
DebugAddressRangesVector BinaryFunction::getOutputAddressRanges() const {

bolt/lib/Core/DIEBuilder.cpp

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -193,12 +193,6 @@ void DIEBuilder::buildTypeUnits(const bool Init) {
193193
if (Init)
194194
BuilderState.reset(new State());
195195

196-
unsigned int CUNum = getCUNum(DwarfContext, IsDWO);
197-
getState().CloneUnitCtxMap.resize(CUNum);
198-
DWARFContext::unit_iterator_range CU4TURanges =
199-
IsDWO ? DwarfContext->dwo_types_section_units()
200-
: DwarfContext->types_section_units();
201-
202196
const DWARFUnitIndex &TUIndex = DwarfContext->getTUIndex();
203197
if (!TUIndex.getRows().empty()) {
204198
for (auto &Row : TUIndex.getRows()) {
@@ -208,6 +202,11 @@ void DIEBuilder::buildTypeUnits(const bool Init) {
208202
true);
209203
}
210204
}
205+
const unsigned int CUNum = getCUNum(DwarfContext, IsDWO);
206+
getState().CloneUnitCtxMap.resize(CUNum);
207+
DWARFContext::unit_iterator_range CU4TURanges =
208+
IsDWO ? DwarfContext->dwo_types_section_units()
209+
: DwarfContext->types_section_units();
211210

212211
getState().Type = ProcessingType::DWARF4TUs;
213212
for (std::unique_ptr<DWARFUnit> &DU : CU4TURanges)
@@ -278,11 +277,13 @@ void DIEBuilder::buildCompileUnits(const std::vector<DWARFUnit *> &CUs) {
278277
constructFromUnit(*DU);
279278
}
280279

281-
void DIEBuilder::buildBoth() {
280+
void DIEBuilder::buildDWOUnit(DWARFUnit &U) {
282281
BuilderState.release();
283282
BuilderState = std::make_unique<State>();
284283
buildTypeUnits(false);
285-
buildCompileUnits(false);
284+
getState().Type = ProcessingType::CUs;
285+
registerUnit(U, false);
286+
constructFromUnit(U);
286287
}
287288

288289
DIE *DIEBuilder::constructDIEFast(DWARFDie &DDie, DWARFUnit &U,

bolt/lib/Core/HashUtilities.cpp

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,15 +18,6 @@
1818
namespace llvm {
1919
namespace bolt {
2020

21-
/// Hashing a 64-bit integer to a 16-bit one.
22-
uint16_t hash_64_to_16(const uint64_t Hash) {
23-
uint16_t Res = (uint16_t)(Hash & 0xFFFF);
24-
Res ^= (uint16_t)((Hash >> 16) & 0xFFFF);
25-
Res ^= (uint16_t)((Hash >> 32) & 0xFFFF);
26-
Res ^= (uint16_t)((Hash >> 48) & 0xFFFF);
27-
return Res;
28-
}
29-
3021
std::string hashInteger(uint64_t Value) {
3122
std::string HashString;
3223
if (Value == 0)

0 commit comments

Comments
 (0)