Skip to content

Pull in Trunk #6

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1,702 commits into from
Jun 15, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1702 commits
Select commit Hold shift + click to select a range
bf0bac4
[CodeGen] Initialize ISD after 800d222e53dabfe1e242bd06ab70f58c36e768ed
MaskRay Jun 14, 2022
e99c07a
[InstCombine] add tests for compare-signs
ZCBing Jun 14, 2022
286198f
[InstCombine] Optimize lshr+shl+and conversion pattern
bcl5980 Jun 14, 2022
059ee5d
[mlir][Vector] Support vectorize to vector.reduction or/and.
Jun 6, 2022
5179f88
[mlir][Arithmetic] Fold NegF in MulF and DivF.
May 20, 2022
3c68d58
[mlir][doc] Move pass to passes list and remove redundant doc
jpienaar Jun 14, 2022
db37225
[JITLink][AArch64] Unify table managers of ELF and MachO.
sunho Jun 14, 2022
6cc3450
[JITLink][AArch64] Lift fixup functions from aarch64.cpp to aarch64.h…
sunho Jun 14, 2022
743791d
[mlir] Include attributes in ML program dialect ops def
jpienaar Jun 14, 2022
f8ec4df
[mlir][sparse_tensor] fix windows build
Mogball Jun 14, 2022
7735653
[PowerPC] Update cfence tests to avoid using undef. NFC.
bzEq Jun 14, 2022
f7e19a5
[Lex] Keep track of skipped preprocessor blocks and advance the lexer…
akyrtzi Jun 9, 2022
ac25172
[libc++][NFC] clang-format <__config>
philnik777 Jun 13, 2022
398df66
[JITLink][AArch64] Implement MoveWide16 generic edge.
sunho Jun 14, 2022
095bf6b
[Greedy RegAlloc] Fix the handling of split register in last chance r…
Jun 8, 2022
3d8061a
[JITLink][ELF][AArch64] Implement R_AARCH64_MOVW_UABS_G*_NC.
sunho Jun 14, 2022
baca1c1
[mlir][ods] Make Attr/Type def accessors match the dialect
Mogball Jun 14, 2022
76cf33d
[mlir][vector] Add patterns to ppropagate vector distribution
ThomasRaoux Jun 14, 2022
087aba4
[mlir][vector] Add pattern to distribute vector reduction to GPU shuf…
ThomasRaoux Jun 7, 2022
0cb3355
[AArch64][NFC] Fix a comment error
vfdff Jun 14, 2022
34ff78c
[CodeGen] Remove restrictRef (NFC)
kazutakahirata Jun 14, 2022
a2232da
[CodeGen] Remove addSEHCatchHandler and addSEHCleanupHandler (NFC)
kazutakahirata Jun 14, 2022
735e6c4
[Coroutines] Convert coroutine.presplit to enum attr
ChuanqiXu9 Jun 10, 2022
029fc37
[PowerPC][AtomicExpand] Precommit IR tests for D127609. NFC.
bzEq Jun 14, 2022
d029db9
[NFC] Fix Wswitch warning triggered by 735e6c
ChuanqiXu9 Jun 14, 2022
926a7ec
[lldb] Fix TCPSocket::Connect when getaddrinfo returns multiple addrs
labath Jun 14, 2022
8091f71
[PowerPC] Correct test RUN line. NFC.
bzEq Jun 14, 2022
ffe7950
Reland "[analyzer] Deprecate `-analyzer-store region` flag"
Jun 14, 2022
24bd47d
[analyzer][NFC] Inline AnalyzerOptions::getUserMode()
Jun 14, 2022
c0e965e
[Statepoints] FixupStatepoint: Clear isKill flag if COPY is not deleted.
dantrushin Jun 8, 2022
9da697e
Reland "[analyzer] Deprecate the unused 'analyzer-opt-analyze-nested-…
Jun 14, 2022
9de831a
Add lowering TODO for bindings returning derived types or arrays
jeanPerier Jun 14, 2022
c4a35c7
[llvm-cxxfilt] Add description for --types in help text
gbreynoo Jun 14, 2022
782e912
[ConstraintElimination] Support constraints with only const ops.
fhahn Jun 14, 2022
cf2c8e4
[lldb] Fix TestDyldExecLinux with xml enabled
labath Jun 14, 2022
3397236
[SCEV] Add tests where assumes can be used to improve trip multiple.
komalon1 Jun 14, 2022
365d827
[AMDGPU][MC][GFX11] Correct ds_swizzle_b32
dpreobra Jun 14, 2022
2c4e447
[AArch64][SME] Add load/store intrinsics
RosieSumpter Jun 6, 2022
781ee53
Reland "[CodeGen] Keep track info of lazy-emitted symbols in ModuleBu…
junaire Jun 14, 2022
e0ae4b5
[AMDGPU] Add GFX11 llvm-objdump tests
jayfoad Jun 14, 2022
6fd480d
[NFC][Alignment] use getAlign in AddressSanitizer
gchatelet Jun 14, 2022
6725d80
[NFC][Alignment] Use Align in shouldAlignPointerArgs
gchatelet Jun 14, 2022
c0e85f1
[NFC][Alignment] Use Align in SafeStack
gchatelet Jun 14, 2022
77bba68
[NFC][Alignment] Use Align in CoroFrame
gchatelet Jun 14, 2022
d9b8d13
[NFC][Alignment] Use MaybeAlign in CGCleanup/CGExpr
gchatelet Jun 14, 2022
b4cf74d
[NFC] Remove dead code
gchatelet Jun 14, 2022
6bf2791
[MachineSSAUpdater] compile time improvement in GetValueInMiddleOfBlock
May 26, 2022
de6ba97
[analyzer][Casting] Support isa, cast, dyn_cast of SVals
Jun 14, 2022
44f0a26
Revert "Reland "[CodeGen] Keep track info of lazy-emitted symbols in …
junaire Jun 14, 2022
e5c4308
[InterleavedLoadComb] Rename uses when inserting new uses.
fhahn Jun 14, 2022
7625e01
[ARM][Thumb] Command-line option to ensure AAPCS compliant Frame Records
pratlucas May 6, 2022
ac64c7b
[flang] Support PDT declaration with initial comp value in internal p…
jeanPerier Jun 14, 2022
d393538
[AMDGPU] Add a GFX11 MCA test
jayfoad Jun 14, 2022
bd61664
[AArch64][SME] Add ldr/str (fill/spill) intrinsics
david-arm Jun 8, 2022
1da6940
[ARM] Add more opaque pointer gather/scatter tests. NFC
davemgreen Jun 14, 2022
81e8900
[AArch64] Add cost tests for fadd reductions with fast math flags.
virnarula Jun 14, 2022
ee78181
[libc++] Remove macros for IBM compiler
ldionne Jun 13, 2022
6a6484c
[OpenMP] Fix offload packager not writing to temps correctly
jhuber6 Jun 13, 2022
d713f0e
Revert "[MachineSSAUpdater] compile time improvement in GetValueInMid…
Jun 14, 2022
989bd57
[AMDGPU] gfx11 support add_f16
Sisyph Jun 13, 2022
cbcce82
[NFC][Thumb] Update frame-chain codegen test to use thumbv6m
pratlucas Jun 14, 2022
f2e92cf
[lld-macho] Print the name of functions containing undefined references
BertalanD Jun 14, 2022
0c66a4c
Add __config formatting to .git-blame-ignore-revs
ldionne Jun 14, 2022
3260d42
[flang] Avoid losing type parameter information
clementval Jun 14, 2022
d5d8366
[Libomptarget] Add test config for compiling in LTO-mode
jhuber6 Jun 10, 2022
48e1829
[Diagnostics] Fix inconsistent shift-overflow warnings in C++20
xgupta Jun 14, 2022
7659dc6
[RISCV] simplify emitVSETVLIs handling of vsetvli xN, phi(), vtype ca…
preames Jun 14, 2022
6117784
[NFC] Remove unused function parameter
spavloff Jun 14, 2022
60d4a10
[libc] Guard common macro names
abrachet Jun 14, 2022
9f2b873
[inliner] Add per-SCC-pass InlineAdvisor printing option
Northbadge Jun 14, 2022
304cda0
[InstCombine] add tests for sub with extended operands; NFC
rotateright Jun 13, 2022
e3890b7
[mlir] Introduce transform.alternatives op
ftynse Jun 14, 2022
069ca6f
[mlir] fix compiler error due to commit landing race
ftynse Jun 14, 2022
3035cc5
[AMDGPU] Regenerate MIR checks for image instructions
jayfoad Jun 14, 2022
671eb7d
[clang] AST/Print: honor AlwaysIncludeTypeForTemplateArgument policy
mizvekov May 29, 2022
ba0222c
[mlir][linalg] Add named ops for depthwise 3d convolution
d0k Jun 13, 2022
263f1b2
[PowerPC] Fix combine step for shufflevector.
stefanp-synopsys Jun 14, 2022
3b54aa9
freeze does not change the constant property
danilaml Jun 14, 2022
9dea117
[mlir] Add a generic data-flow analysis framework
Mogball Jun 13, 2022
4d27c15
remove a duplicated include
llunak Jun 14, 2022
cfc9151
[analyzer][NFC] Relocate unary transfer functions
Jun 14, 2022
40940fb
[analyzer][NFC] Substitute the SVal::evalMinus and evalComplement fun…
Jun 14, 2022
52b166c
[RISCV] Split out getEEWForLoadStore [nfc]
preames Jun 14, 2022
cf078ad
[analyzer][NFC] Remove unused ExprEngine::evalBinOp functions
Jun 14, 2022
3af7aa5
[libcxx][AIX] Enable ABI list checking for XCOFF
jakeegan Jun 14, 2022
18a1fc8
[CMake][compiler-rt] Provide a dedicated option for LLVM unwinder
petrhosek Apr 27, 2022
21ff652
[analyzer][NFC] Replace getLastArg with hasArg when applicable
Jun 14, 2022
c36eebb
[PS5] Use __gxx_personality_v0 for TSan
pogo59 Jun 14, 2022
73c273c
[NFC][libcxx] Check def of __LONG_DOUBLE_IEEE128__
daltenty Jun 3, 2022
127780e
[MLIR][Presburger] Add values to PresburgerSpace
Groverkss Jun 14, 2022
93c46e9
[libc++] Use explicit module cache path in tests
abrachet Jun 14, 2022
e7c72d6
[libc++] Find a clang-format everybody is happy with
philnik777 Jun 14, 2022
473d780
[flang] Add team_type to num_images intrinsic call
ktras May 31, 2022
75bfc6f
[mlir][Arith] Implement InferIntRangeInterface for arithmetic ops
krzysz00 Apr 22, 2022
44a0a55
[RISCV] Split out subfields in InsertVSETVLI's demanded fields analys…
preames Jun 14, 2022
87b8b37
[MLIR][Presburger] Fix spellings of attachment
Groverkss Jun 14, 2022
8605b4d
[ValueTracking] recognize sub X, (X -nsw Y) as not overflowing
rotateright Jun 14, 2022
4bf928b
[X86][NFC] Use mnemonic tables in validateInstruction 1/4
aaupov Jun 14, 2022
df16c07
[X86][NFC] Use mnemonic tables in validateInstruction 2/4
aaupov Jun 14, 2022
9d63795
[clang][NFC][AST] rename the ImportError to ASTImportError
phyBrackets Jun 14, 2022
6226e46
[X86][NFC] Use mnemonic tables in validateInstruction 3/4
aaupov Jun 14, 2022
caf2767
[Clang][AST] Fixed BindingDecl AST-dump for tuple like structures
isuckatcs May 26, 2022
6ccc273
Update ASTImportError.h
phyBrackets Jun 14, 2022
10affe7
[PS5] Make library function availability match PS4
pogo59 Jun 14, 2022
c4a2674
[Clang] Simplify unifying target features
jhuber6 Jun 14, 2022
1a19abf
[mlir] add an option to print op stats in JSON
okkwon Jun 13, 2022
7c0089d
[Matrix] Check if iterator is at beginning of BB in optimizeTranspose.
fhahn Jun 14, 2022
d613417
[lld-macho] Group undefined symbol diagnostics by symbol
BertalanD Jun 14, 2022
c67c413
[RISCV] Split out transfer function explicitly in VSETVLI insertion d…
preames Jun 14, 2022
28331c6
Revert "[mlir] add an option to print op stats in JSON"
okkwon Jun 14, 2022
2eeafa2
[flang] Add failed_images to list of intrinsics and add test
ktras May 14, 2022
a6fa12a
Revert "[mlir] Add a generic data-flow analysis framework"
frgossen Jun 14, 2022
657e954
[clang] Add tests for statement expression in initializers
wanders Jun 7, 2022
b0b0043
[mlir][Arith] Pass to switch signed ops for equivalent unsigned ones
krzysz00 Apr 14, 2022
ead75d9
(Reland)[mlir] Add a generic data-flow analysis framework
Mogball Jun 13, 2022
1582bcd
RISCV: handle 64-bit PCREL data relocations
compnerd Jun 10, 2022
8224fb7
[bazel] Port 75bfc6f29579
d0k Jun 14, 2022
55b76fb
[bazel] Port b0b00432093b
d0k Jun 14, 2022
d3b1796
[mlir] Try to work around ambiguity in older clang versions
d0k Jun 14, 2022
340b0ca
[llvm] Add DW_CC_nocall to function debug metadata when either return…
RamNalamothu Jun 6, 2022
22a1f99
FunctionPropertiesAnalysis: handle callsite BBs that lose edges
mtrofin Jun 8, 2022
0ce33c2
[PS5] Default to 'sce' debugger tuning
pogo59 Jun 14, 2022
97d69cd
[clang][dataflow] Rename `getPointeeLoc` to `getReferentLoc` for Refe…
weiyi-t Jun 14, 2022
33b6891
[dsymutil] Automatically generate a reproducer when dsymutil crashes
JDevlieghere Jun 14, 2022
98fe869
[dsymutil] Fix std::unique_ptr to llvm::Expected conversion
JDevlieghere Jun 14, 2022
facb965
[RISCV] Minor code/comment improvement in prepass of InsertVSETVLI [nfc]
preames Jun 14, 2022
b4dff40
[mlir][spirv] Fix math.ctlz for full zero bit cases
antiagainst Jun 14, 2022
435897b
[TableGen][DirectX] Add tableGen backend to generate DXIL operation f…
python3kgae May 11, 2022
1ca2730
[gn build] Port 435897b41d60
llvmgnsyncbot Jun 15, 2022
7fae15f
Revert "[Driver] Improve linking options for target AVR"
zeroomega Jun 15, 2022
6e02e27
Reland "[X86][RFC] Enable `_Float16` type support on X86 following th…
phoebewang Jun 15, 2022
54ec8e2
[X86][AMX] Fix klockwork issue.
LuoYuanke Jun 15, 2022
587573b
[CSKY] Fix the assert in eliminateFrameIndex when the offset is negative
zixuan-wu Jun 15, 2022
af9ee33
[HIP] fix long double size
yxsamliu Jun 14, 2022
d87ca51
[Libomptarget] Use binutils archive executable to address failing tests
jhuber6 Jun 15, 2022
5ae3f65
[RISCV] Replace uses of VLOpFrag in VLMax patterns with srcvalue.
topperc Jun 15, 2022
95bdbb9
[mlir][affine] Make loop tiling default options explicit
Lewuathe Jun 15, 2022
701a282
[mlir][Vector] Fold consecutive bitcast.
Jun 14, 2022
5965878
[X86][NFC] Use mnemonic tables in validateInstruction 4/4
aaupov Jun 15, 2022
753b915
[Driver] Improve linking options for target AVR
benshi001 Jun 15, 2022
8910349
[RISCV][NFC] Set default value for BaseInstr in RISCVVPseudo
pcwang-thead Jun 15, 2022
06c6758
[mlir][spirv] Handle corner cases for math.powf conversion
antiagainst Jun 15, 2022
ab7fcf2
[LLDB] CommandObjectThreadUntil::DoExecute() sets the wrong selected …
RamNalamothu Jun 15, 2022
cb48ed3
[libc++][NFCI] span: replace enable_if with concepts
JoeLoser Jun 15, 2022
a0af049
[RISCV][NFC] Add more tests for instruction selection of 'mul'
Pretty-box Jun 15, 2022
612f0a7
[ORC-RT] Add integration tests for AArch64
housel Jun 14, 2022
94d1692
[MC] Remove unused MCStreamer::SwitchSection
MaskRay Jun 15, 2022
bd9eed3
[AMDGPU] Add isMFMA helper function. NFC
kerbowa May 22, 2022
48ebc1a
[AMDGPU] Add more expressive sched_barrier controls
kerbowa Jun 3, 2022
b5e9241
[gn build] Port 48ebc1af2948
llvmgnsyncbot Jun 15, 2022
07b3446
[clang-format] Never analyze insert/remove braces in the same pass
owenca Jun 13, 2022
2eafb96
[libc][NFC] Use uint32_t to represent futex words.
Jun 15, 2022
c06f77e
[SelectionDAG] fold 'Op0 - (X * MulC)' to 'Op0 + (X << log2(-MulC))'
Pretty-box Jun 15, 2022
9096a52
[RISCV] Teach vsetvli insertion to not insert redundant vsetvli right…
Jun 11, 2022
3ecfeb4
[clangd] Wire up compilation for style blocks
kadircet Jun 14, 2022
a099139
[libc][NFC] Add src.__support.OSUtil targets conditionally.
Jun 15, 2022
04a84e3
[LSR] Add test for LoopStrenghtReduce for Ldp; NFC
bcl5980 Jun 15, 2022
485c18c
[mlir] Add missing newline at end of .clang-format file
owenca Jun 15, 2022
d361ecb
[mlir][SCF][bufferize] Implement `resolveConflicts` for SCF ops
matthias-springer Jun 15, 2022
7524fe9
[libFuzzer] Use the compiler to link the relocatable object
petrhosek Jun 15, 2022
f0e608d
[libc] Add linux threads targets only if __support/OSUtil targets are…
Jun 15, 2022
4bba821
[AMDGPU] Fix buildbot failures after 48ebc1af29
kerbowa Jun 15, 2022
2dac2c4
[SimplifyLibCalls] Drop duplicate check (NFC)
nikic Jun 15, 2022
3151fb5
[flang] Change C889 from error into warning
PeixinQiao Jun 15, 2022
665da18
[Clang] Add the `annotate_type` attribute
martinboehme Jun 15, 2022
ad2e635
[mlir][linalg][bufferize] Remove always-aliasing-with-dest option
matthias-springer Jun 15, 2022
9441003
[flang][OpenMP] Add one semantic check for data-sharing clauses
PeixinQiao Jun 15, 2022
cd80617
[mlir][bufferize][NFC] Make func BufferizableOpInterface impl compati…
matthias-springer Jun 15, 2022
b2f4112
[InstCombine] Improve check for catchswitch BBs (NFC)
aheejin Jun 14, 2022
a3bca11
[mlir][bufferize][NFC] Merge AlwaysCopyAnalysisState into AnalysisState
matthias-springer Jun 15, 2022
0f72a0d
[libc][Obvious] Removed few unused vars.
Jun 15, 2022
a36c801
[mlir][bufferize] Better implementation of AnalysisState::isTensorYie…
matthias-springer Jun 15, 2022
687e566
[RISCV] Fixing undefined physical register issue when subreg liveness…
kito-cheng Jun 9, 2022
0886ea9
[mlir][Arith] Fix a use-after-free after rewriting ops to unsigned
d0k Jun 15, 2022
462b49f
[libcxx] Remove extraneous '---' lines in .clang-format files
owenca Jun 15, 2022
a67beef
[clangd] Enable AKA type printing by default
kadircet Jun 15, 2022
8f9d73f
[NFC][AArch64] Minor refactor of AArch64InstPrinter::printMatrixTileList
david-arm Jun 14, 2022
1784fe7
[Clang] Fix signed-unsigned comparison warning that breaks the ppc64 …
martinboehme Jun 15, 2022
374f938
[libcxx] Fix allocator<void>::pointer in C++20 with removed members
ilya-biryukov Jun 15, 2022
4c2bccf
[Clang] Documentation-only: Add missing closing `>` in AttrDocs.td
martinboehme Jun 15, 2022
5fa2416
[AArch64][SME] Add SME read/write intrinsics that map to the mova ins…
david-arm Jun 9, 2022
4fd5614
[X86] needCarryOrOverflowFlag/onlyZeroFlagUsed - merge identical swit…
RKSimon Jun 15, 2022
7acc88b
[OpenCL] Reword unknown extension pragma diagnostic
svenvh Jun 15, 2022
8c7b64b
[clang] Reject non-declaration C++11 attributes on declarations
martinboehme Jun 15, 2022
8fcdd62
[clang][dataflow] Add support for correlated branches to optional model
sgatev May 18, 2022
f096d59
[DAG] Fix SDLoc mismatch in (shl (srl x, c1), c2) -> and(shift(x,c3))…
RKSimon Jun 15, 2022
db7061e
[NFC] Move tests CodeGen/AArch64/SME/sme-* -> CodeGen/AArch64/sme-*
david-arm Jun 15, 2022
245604a
[X86][SLP] Basic test coverage for llvm.powi
omern1 Jun 15, 2022
170ca11
[Sema] Remove unused function after 8c7b64b5ae2a
d0k Jun 15, 2022
94fac09
[DebugInfo][ARM] Not readonly check for RWPI globals
walkerkd May 24, 2022
43e7ba6
Fix signed/unsigned comparison warning
RKSimon Jun 15, 2022
fb34d53
Promote bf16 to f32 when the target doesn't support it
d0k Jun 3, 2022
8bc0bb9
Add a conversion from double to bf16
d0k Jun 7, 2022
adfcdb0
[AArch64] Add test case from D127354
RKSimon Jun 15, 2022
cf2072b
[X86] X86TargetTransformInfo.cpp - use InstructionCost type to accumu…
RKSimon Jun 15, 2022
7cc4d44
[BitcodeReader] Remove unnecessary argument defaults (NFC)
nikic Jun 15, 2022
37455b1
Revert "Reland "[X86][RFC] Enable `_Float16` type support on X86 foll…
thomasjoerg Jun 15, 2022
650c0b6
[gn build] (semi-automatically) port 8bc0bb956421
nico Jun 15, 2022
794d080
[gn build] (semi-automatically) port fb34d531af95
nico Jun 15, 2022
3605ebc
[analyzer][NFC][test] Add new RUN lint with support-symbolic-integer-…
Jun 13, 2022
412c788
[NFC][Alignment] Use Align in MCAlignFragment
gchatelet Jun 14, 2022
4e1090c
[test][RISCV] Precommit test for SeparateConstOffsetFromGEP (NFC)
el-sc Jun 1, 2022
2f1791c
[mlir] generate documentation for transform dialect extensions
ftynse Jun 15, 2022
9c8fe39
[mlir] check interfaces are attached to the expected object
ftynse Jun 15, 2022
60e3599
[flang] Fix one regression failure related to BIND(C) statement
PeixinQiao Jun 15, 2022
c60c13f
[SLP] Improve reordering in presence of constant only nodes.
alexey-bataev Jun 14, 2022
b209b9e
[COFF] Don't reject executables with data directories pointing outsid…
mstorsjo Jun 8, 2022
aefa111
[LLD] [MinGW] Implement --disable-reloc-section, mapped to /fixed
mstorsjo Jun 10, 2022
462def2
[clang] Use correct visibility parameters when following a Using decl…
furkanusta Jun 15, 2022
87a2dba
[lldb] Fix loading DLL from some ramdisk on Windows
alvinhochun Jun 15, 2022
bce55d0
[clang][NFC] Remove unused parameter from ActOnCXXNestedNameSpecifier
tbaederr Jun 14, 2022
c149fa1
[clang][sema] Provide better diagnostic for missing template arguments
tbaederr Jun 13, 2022
f7a38ee
[analyzer][NFC][test] Add new RUN line with support-symbolic-integer-…
Jun 13, 2022
8f2ba36
Revert "[ARM][Thumb] Command-line option to ensure AAPCS compliant Fr…
krasimirgg Jun 15, 2022
7212977
[clangd] Always desugar type aliases in hover
kadircet Jun 15, 2022
0473530
[clangd][NFC] Use the existing ASTContext from scope
kadircet Jun 15, 2022
e180cc5
[Driver][test] Make RISCV tests robust with PATH=
Jun 15, 2022
9fc0aa4
[JITLink][ELF] Log enum name of unsupported relocation type.
sunho Jun 15, 2022
989d2b5
[mlir][tablegen] Generate default attr values in Python bindings
matthias-springer Jun 15, 2022
575c9d6
[flang][NFC] Fix some formatting
clementval Jun 15, 2022
f1b18a7
[analyzer][NFC] Remove dead code and modernize surroundings
Jun 15, 2022
6c4f999
[analyzer] Fix StreamErrorState hash bug
Jun 15, 2022
481f860
[analyzer][NFC] Remove dead field of UnixAPICheckers
Jun 15, 2022
96ccb69
[analyzer][NFC] Prefer using isa<> instead getAs<> in conditions
Jun 15, 2022
e1c5afa
Reland "Reland "[X86][RFC] Enable `_Float16` type support on X86 foll…
phoebewang Jun 15, 2022
f4fc3f6
[analyzer] Treat system globals as mutable if they are not const
Jun 15, 2022
929e60b
[analyzer] Relax constraints on const qualified regions
Jun 15, 2022
16547f9
[CodeGen] Fix the bug of machine sink
LuoYuanke Jun 15, 2022
654a835
[PS5] Trap after noreturn calls, with special case for stack-check-fail
pogo59 Jun 15, 2022
6834803
[mlir][vector] NFC remove dependency of VectorTransform to GPU dialect
ThomasRaoux Jun 15, 2022
4cd04d1
[libc++] Removes unneeded <iterator> includes.
mordante Jun 13, 2022
0c2edf2
[clang][dataflow] Make `Value` and `StorageLocation` non-copyable
sgatev Jun 15, 2022
601ec17
[Binary] Add iterator to the OffloadBinary string maps
jhuber6 Jun 14, 2022
0557c2d
[llvm] Fix MachO exports trie parsing.
ributzka Jun 13, 2022
ac2ad3b
[PS5] Support sin+cos->sincos optimization
pogo59 Jun 15, 2022
9db61c3
[LLD][COFF] Convert file name to lowercase when inserting it into vis…
pzhengqc Jun 14, 2022
f2ada38
[MLIR][Bufferization] Assume alias if no information is available
chelini Jun 15, 2022
1d45282
[mlir] address post-commit review for D127724
ftynse Jun 15, 2022
b0c51f0
[memprof] Update the test comments to include -Wl,-no-pie
snehasish Jun 14, 2022
ca50cb1
[SelectionDAG] Constant fold FP_TO_BF16 and BF16_TO_FP.
d0k Jun 15, 2022
640973f
[tosa] Lower tosa.slice to tensor.slice for dynamic case
rsuderman Jun 15, 2022
335e8bf
[PowerPC] emit VSX instructions instead of VMX instructions for vecto…
Jun 8, 2022
8010d7e
[mlir] add an option to print op stats in JSON
okkwon Jun 14, 2022
45d88cd
[clang] Add -fsanitize=memtag-globals (no-op).
hctim Jun 15, 2022
4204361
[X86] X86InstrInfo.cpp - fix signed/unsigned promotion warnings in ad…
RKSimon Jun 15, 2022
a6f2c22
[mlir][GPUToNVVM] Fix bug in mma elementwise lowering
ThomasRaoux Jun 15, 2022
103b289
[llvm-profdata][test] Change -Wl,-no-pie to -no-pie after D127808
MaskRay Jun 15, 2022
5ff5b46
[LV] Remove unneeded CustomBuilder arg from setDebugLocFromInst (NFC).
fhahn Jun 15, 2022
aaff3fb
[mlgo] Fix accounting for SCC splits
Northbadge Jun 15, 2022
8c4a07c
[DAGCombiner] Fold fold (fp_to_bf16 (bf16_to_fp op)) -> op
d0k Jun 15, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
3 changes: 3 additions & 0 deletions .git-blame-ignore-revs
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,6 @@ d8f0e6caa91e230a486c948ab643174e40bdf215

# Use C++11 default member initializers in LLDB. NFC.
9494c510af56d9c8593ab69017dcaa232210b235

# [libc++][NFC] clang-format <__config>
ac251726f84d5b7e6533a2e3712920184435b61b
2 changes: 1 addition & 1 deletion .github/workflows/closed-issues.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,4 @@ jobs:
steps:
- uses: andymckay/labeler@1.0.4
with:
remove-labels: "awaiting-review"
remove-labels: 'awaiting-review'
16 changes: 8 additions & 8 deletions .github/workflows/issue-release-workflow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
# /cherry-pick <commit> <...>
#
# This comment will attempt to cherry-pick the given commits to the latest
# release branch (release/Y.x) and if successful push the result to a branch
# release branch (release/Y.x) and if successful, push the result to a branch
# on github.
#
# /branch <owner>/<repo>/<branch>
Expand All @@ -31,9 +31,9 @@ jobs:
name: Backport Commits
runs-on: ubuntu-20.04
if: >-
(github.repository == 'llvm/llvm-project') &&
!startswith(github.event.comment.body, '<!--IGNORE-->') &&
contains(github.event.action == 'opened' && github.event.issue.body || github.event.comment.body, '/cherry-pick')
(github.repository == 'llvm/llvm-project') &&
!startswith(github.event.comment.body, '<!--IGNORE-->') &&
contains(github.event.action == 'opened' && github.event.issue.body || github.event.comment.body, '/cherry-pick')
steps:
- name: Fetch LLVM sources
uses: actions/checkout@v2
Expand Down Expand Up @@ -64,16 +64,16 @@ jobs:
name: Create Pull Request
runs-on: ubuntu-20.04
if: >-
(github.repository == 'llvm/llvm-project') &&
!startswith(github.event.comment.body, '<!--IGNORE-->') &&
contains(github.event.comment.body, '/branch')
(github.repository == 'llvm/llvm-project') &&
!startswith(github.event.comment.body, '<!--IGNORE-->') &&
contains(github.event.comment.body, '/branch')

steps:
- name: Fetch LLVM sources
uses: actions/checkout@v2

- name: Setup Environment
run: |
run: |
pip install -r ./llvm/utils/git/requirements.txt

- name: Create Pull Request
Expand Down
32 changes: 16 additions & 16 deletions .github/workflows/issue-subscriber.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,20 +10,20 @@ jobs:
runs-on: ubuntu-latest
if: github.repository == 'llvm/llvm-project'
steps:
- name: Setup Automation Script
run: |
curl -O -L https://raw.githubusercontent.com/$GITHUB_REPOSITORY/$GITHUB_SHA/llvm/utils/git/github-automation.py
curl -O -L https://raw.githubusercontent.com/$GITHUB_REPOSITORY/$GITHUB_SHA/llvm/utils/git/requirements.txt
chmod a+x github-automation.py
pip install -r requirements.txt
- name: Setup Automation Script
run: |
curl -O -L https://raw.githubusercontent.com/$GITHUB_REPOSITORY/$GITHUB_SHA/llvm/utils/git/github-automation.py
curl -O -L https://raw.githubusercontent.com/$GITHUB_REPOSITORY/$GITHUB_SHA/llvm/utils/git/requirements.txt
chmod a+x github-automation.py
pip install -r requirements.txt

- name: Update watchers
# https://docs.github.com/en/actions/security-guides/security-hardening-for-github-actions#using-an-intermediate-environment-variable
env:
LABEL_NAME: ${{ github.event.label.name }}
run: |
./github-automation.py \
--token '${{ secrets.ISSUE_SUBSCRIBER_TOKEN }}' \
issue-subscriber \
--issue-number '${{ github.event.issue.number }}' \
--label-name "$LABEL_NAME"
- name: Update watchers
# https://docs.github.com/en/actions/security-guides/security-hardening-for-github-actions#using-an-intermediate-environment-variable
env:
LABEL_NAME: ${{ github.event.label.name }}
run: |
./github-automation.py \
--token '${{ secrets.ISSUE_SUBSCRIBER_TOKEN }}' \
issue-subscriber \
--issue-number '${{ github.event.issue.number }}' \
--label-name "$LABEL_NAME"
28 changes: 14 additions & 14 deletions .github/workflows/llvm-bugs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,39 +19,39 @@ jobs:
MAILGUN_API_KEY: ${{ secrets.LLVM_BUGS_KEY }}
with:
script: |
const Mailgun = require("mailgun.js");
const Mailgun = require('mailgun.js');
const formData = require('form-data');
const mailgun = new Mailgun(formData);

const DOMAIN = "email.llvm.org";
const mailgun = new Mailgun(formData);
const DOMAIN = 'email.llvm.org';

const mg = mailgun.client({username: 'api', key: process.env.MAILGUN_API_KEY});
const mg = mailgun.client({ username: 'api', key: process.env.MAILGUN_API_KEY });

github.rest.issues.get({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
repo: context.repo.repo
})
.then(function(issue) {
.then((issue) => {
const payload = {
author : issue.data.user.login,
issue : issue.data.number,
title : issue.data.title,
url : issue.data.html_url,
labels : issue.data.labels.map(label => { return label.name }),
assignee : issue.data.assignees.map(assignee => { return assignee.login }),
labels : issue.data.labels.map((label) => label.name),
assignee : issue.data.assignees.map((assignee) => assignee.login),
body : issue.data.body
};

const data = {
from: "LLVM Bugs <llvm-bugs@email.llvm.org>",
to: "llvm-bugs@lists.llvm.org",
from: 'LLVM Bugs <llvm-bugs@email.llvm.org>',
to: 'llvm-bugs@lists.llvm.org',
subject: `[Bug ${issue.data.number}] ${issue.data.title}`,
template: "new-github-issue",
template: 'new-github-issue',
'o:tracking-clicks': 'no',
'h:X-Mailgun-Variables': JSON.stringify(payload)
};

return mg.messages.create(DOMAIN, data)
return mg.messages.create(DOMAIN, data);
})
.then(msg => console.log(msg));
.then((msg) => console.log(msg));
2 changes: 1 addition & 1 deletion .github/workflows/new-issues.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,5 @@ jobs:
steps:
- uses: andymckay/labeler@1.0.4
with:
add-labels: "new issue"
add-labels: 'new issue'
ignore-if-labeled: true
2 changes: 1 addition & 1 deletion bolt/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -180,7 +180,7 @@ Once you have `perf.fdata` ready, you can use it for optimizations with
BOLT. Assuming your environment is setup to include the right path, execute
`llvm-bolt`:
```
$ llvm-bolt <executable> -o <executable>.bolt -data=perf.fdata -reorder-blocks=cache+ -reorder-functions=hfsort -split-functions=2 -split-all-cold -split-eh -dyno-stats
$ llvm-bolt <executable> -o <executable>.bolt -data=perf.fdata -reorder-blocks=ext-tsp -reorder-functions=hfsort -split-functions=2 -split-all-cold -split-eh -dyno-stats
```

If you do need an updated debug info, then add `-update-debug-sections` option
Expand Down
2 changes: 1 addition & 1 deletion bolt/docs/OptimizingClang.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ Notice that we are passing `clang-7` to `perf2bolt` which is the real binary tha
the generated profile:
```bash
$ llvm-bolt $CPATH/clang-7 -o $CPATH/clang-7.bolt -b clang-7.yaml \
-reorder-blocks=cache+ -reorder-functions=hfsort+ -split-functions=3 \
-reorder-blocks=ext-tsp -reorder-functions=hfsort+ -split-functions=3 \
-split-all-cold -dyno-stats -icf=1 -use-gnu-stack
```
The output will look similar to the one below:
Expand Down
2 changes: 1 addition & 1 deletion bolt/docs/doxygen.cfg.in
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ PROJECT_NAME = "BOLT"
# could be handy for archiving the generated documentation or if some version
# control system is used.

PROJECT_NUMBER =
PROJECT_NUMBER = @PACKAGE_VERSION@

# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a
Expand Down
17 changes: 16 additions & 1 deletion bolt/include/bolt/Core/BinaryContext.h
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,13 @@ inline raw_ostream &operator<<(raw_ostream &OS, const SegmentInfo &SegInfo) {
return OS;
}

// AArch64-specific symbol markers used to delimit code/data in .text.
enum class MarkerSymType : char {
NONE = 0,
CODE,
DATA,
};

enum class MemoryContentsType : char {
UNKNOWN = 0, /// Unknown contents.
POSSIBLE_JUMP_TABLE, /// Possibly a non-PIC jump table.
Expand Down Expand Up @@ -232,7 +239,7 @@ class BinaryContext {
Optional<DWARFUnit *> getDWOCU(uint64_t DWOId);

/// Returns DWOContext if it exists.
DWARFContext *getDWOContext();
DWARFContext *getDWOContext() const;

/// Get Number of DWOCUs in a map.
uint32_t getNumDWOCUs() { return DWOCUs.size(); }
Expand Down Expand Up @@ -549,6 +556,9 @@ class BinaryContext {

std::unique_ptr<MCDisassembler> DisAsm;

/// Symbolic disassembler.
std::unique_ptr<MCDisassembler> SymbolicDisAsm;

std::unique_ptr<MCAsmBackend> MAB;

/// Indicates if relocations are available for usage.
Expand Down Expand Up @@ -662,6 +672,11 @@ class BinaryContext {
TheTriple->getArch() == llvm::Triple::x86_64;
}

// AArch64-specific functions to check if symbol is used to delimit
// code/data in .text. Code is marked by $x, data by $d.
MarkerSymType getMarkerType(const SymbolRef &Symbol) const;
bool isMarker(const SymbolRef &Symbol) const;

/// Iterate over all BinaryData.
iterator_range<binary_data_const_iterator> getBinaryData() const {
return make_range(BinaryDataMap.begin(), BinaryDataMap.end());
Expand Down
41 changes: 34 additions & 7 deletions bolt/include/bolt/Core/BinaryFunction.h
Original file line number Diff line number Diff line change
Expand Up @@ -833,6 +833,29 @@ class BinaryFunction {
return make_range(JumpTables.begin(), JumpTables.end());
}

/// Return relocation associated with a given \p Offset in the function,
/// or nullptr if no such relocation exists.
const Relocation *getRelocationAt(uint64_t Offset) const {
assert(CurrentState == State::Empty &&
"Relocations unavailable in the current function state.");
auto RI = Relocations.find(Offset);
return (RI == Relocations.end()) ? nullptr : &RI->second;
}

/// Return the first relocation in the function that starts at an address in
/// the [StartOffset, EndOffset) range. Return nullptr if no such relocation
/// exists.
const Relocation *getRelocationInRange(uint64_t StartOffset,
uint64_t EndOffset) const {
assert(CurrentState == State::Empty &&
"Relocations unavailable in the current function state.");
auto RI = Relocations.lower_bound(StartOffset);
if (RI != Relocations.end() && RI->first < EndOffset)
return &RI->second;

return nullptr;
}

/// Returns the raw binary encoding of this function.
ErrorOr<ArrayRef<uint8_t>> getData() const;

Expand Down Expand Up @@ -959,6 +982,15 @@ class BinaryFunction {
return const_cast<BinaryFunction *>(this)->getInstructionAtOffset(Offset);
}

/// Return offset for the first instruction. If there is data at the
/// beginning of a function then offset of the first instruction could
/// be different from 0
uint64_t getFirstInstructionOffset() const {
if (Instructions.empty())
return 0;
return Instructions.begin()->first;
}

/// Return jump table that covers a given \p Address in memory.
JumpTable *getJumpTableContainingAddress(uint64_t Address) {
auto JTI = JumpTables.upper_bound(Address);
Expand Down Expand Up @@ -1305,11 +1337,11 @@ class BinaryFunction {
case ELF::R_X86_64_PC8:
case ELF::R_X86_64_PC32:
case ELF::R_X86_64_PC64:
case ELF::R_X86_64_GOTPCRELX:
case ELF::R_X86_64_REX_GOTPCRELX:
Relocations[Offset] = Relocation{Offset, Symbol, RelType, Addend, Value};
return;
case ELF::R_X86_64_PLT32:
case ELF::R_X86_64_GOTPCRELX:
case ELF::R_X86_64_REX_GOTPCRELX:
case ELF::R_X86_64_GOTPCREL:
case ELF::R_X86_64_TPOFF32:
case ELF::R_X86_64_GOTTPOFF:
Expand Down Expand Up @@ -1948,11 +1980,6 @@ class BinaryFunction {
return ColdLSDASymbol;
}

/// True if the symbol is a mapping symbol used in AArch64 to delimit
/// data inside code section.
bool isDataMarker(const SymbolRef &Symbol, uint64_t SymbolSize) const;
bool isCodeMarker(const SymbolRef &Symbol, uint64_t SymbolSize) const;

void setOutputDataAddress(uint64_t Address) { OutputDataOffset = Address; }

uint64_t getOutputDataAddress() const { return OutputDataOffset; }
Expand Down
Loading