Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
188 commits
Select commit Hold shift + click to select a range
125bd06
[mlir][emitc] Support conversion of arith.divsi and arith.remsi to Em…
josel-amd May 28, 2024
fe5d791
AMDGPU: Add some multi-use negative tests for minimum3/maximum3
arsenm May 23, 2024
1da52ca
[flang] Fix typos PPC intrinsics tests (NFC) (#92943)
kkwli May 28, 2024
01fbc56
[mlir][vector] Add support for linearizing Insert VectorOp in VectorL…
akroviakov May 28, 2024
bdd4e8b
[bazel] Port 17ecd23f6932c87fcc8b2b8675762d50f3d53056
d0k May 28, 2024
5988c79
[X86][tablgen] Add assertions when emitting NF transform table
KanRobert May 28, 2024
2c7c9df
[gn] port 17ecd23f6932 (-gen-x86-instr-mapping)
nico May 28, 2024
de32786
[flang][HLFIR][NFC] Reduce HLFIR to FIR conversion boilerplate (#93539)
tblah May 28, 2024
44861c7
[mlir] [linalg] Check for dim shape to decide unit dim for each opera…
sahas3 May 28, 2024
24a12a9
[clang] Diagnose problematic diagnostic messages (#93229)
AaronBallman May 28, 2024
6e1a042
Fix failure after d46e37348ec3f8054b10bcbbe7c11149d7f61031
Ralender May 28, 2024
8995ccc
[Clang] Add support for [[msvc::noinline]] attribute. (#91720)
simonzgx May 28, 2024
2ace7bd
[Clang] allow `` `@$ `` in raw string delimiters in C++26 (#93216)
cor3ntin May 28, 2024
57790db
[gn build] Port 23e1ed65c2c3
llvmgnsyncbot May 28, 2024
46a30df
Reland "[AArch64] NFC: Add RUN lines for streaming-compatible code." …
sdesmalen-arm May 23, 2024
3864bfd
[IR] Fix ignoring `non-global-value-max-name-size` in `ValueSymbolTab…
dfukalov May 28, 2024
d2a103e
[memprof] Remove const from the return type of toMemProfRecord (#93415)
kazutakahirata May 28, 2024
74ed79f
[mlir][linalg] Add linalg.transpose constant folding (#92589)
ryanpholt May 28, 2024
cde1ae4
[lldb][NativePDB] Fix uninitialized values found by msan.
ZequanWu May 28, 2024
94be801
[mlir][ROCDL] Update the LLVM data layout for ROCDL lowering. (#92127)
stefankoncarevic May 28, 2024
26e0ce0
[flang] update fir.box_rank and fir.is_array codegen (#93541)
jeanPerier May 28, 2024
8890214
[Frontend][OpenMP] Rename some variables, NFC
kparzysz May 28, 2024
51dd4ea
Reapply [lldb][DWARF] Delay struct/class/union definition DIE search…
ZequanWu May 28, 2024
d490ce2
[RISCV] Use mask undisturbed policy when silencing sNans for strict r…
topperc May 28, 2024
f284af4
[Offload][Fix] Fix lazy initialization with multiple images
jhuber6 May 28, 2024
af22e27
TosaToTensor: Support reshape on tensors of unsigned integer (#91734)
mgehre-amd May 28, 2024
fea7399
[clang] Fix a warning
kazutakahirata May 28, 2024
273777e
clang:: to llvm::; NFC
AaronBallman May 28, 2024
259caad
[Clang] Fix an assertion failure when checking invalid `this` (#93490)
a-tarasyuk May 28, 2024
234cc40
[LAA] Limit no-overlap check to at least one loop-invariant accesses.
fhahn May 28, 2024
d582958
Revert "[Legalizer] Check full condition for UMIN and UMAX just like …
AZero13 May 28, 2024
42944e4
Add SBAddressRange and SBAddressRangeList to SB API (#92014)
May 28, 2024
79c7342
[gn build] Port 42944e460082
llvmgnsyncbot May 28, 2024
7bea41e
LoopIdiomRecognize: strip bad TODO (NFC) (#92890)
artagnon May 28, 2024
16a5fd3
DAG: Use flags in isLegalToCombineMinNumMaxNum (#93555)
arsenm May 28, 2024
b963931
[lld-macho][ObjC] Implement category merging into base class (#92448)
alx32 May 28, 2024
d1d863c
[lldb] Remove lldbassert in AppleObjCTypeEncodingParser (#93332)
JDevlieghere May 28, 2024
f69b6d2
[lldb] Add missing semicolon (NFC)
JDevlieghere May 28, 2024
c09787b
[OMPT] Set default values for tsan function pointers (#93568)
FLZ101 May 28, 2024
ef67f31
[SCEV] Compute symbolic max backedge taken count in BTI directly. (NFC)
fhahn May 28, 2024
0b2094c
[Clang] [NFC] Remove debug printing
Sirraide May 28, 2024
f089996
[clang][Sema] Don't emit 'declared here' note for builtin functions w…
JOE1994 May 28, 2024
73e22ff
[Reassociate] Preserve NSW flags after expr tree rewriting (#93105)
akshayrdeodhar May 28, 2024
9983592
[mlir][sparse] remove sparse encoding propagation pass. (#93593)
May 28, 2024
196a080
DAG: Handle fminnum_ieee/fmaxnum_ieee in basic legalization
arsenm May 28, 2024
08de0b3
[WebAssembly] Add tests for EH/SjLj option errors (#93583)
aheejin May 28, 2024
d33864d
[polly] Fix cppcheck SA comment reported in #91235 (#93505)
kartcq May 28, 2024
5901d40
[C] Disallow declarations where a statement is required (#92908)
AaronBallman May 28, 2024
debdbed
[mlir] Remove dialect specific bufferization passes (Reland) (#93535)
Groverkss May 28, 2024
a4bef0c
[libc++] Mark P2845R8 `__cpp_lib_format_path` and P2587R3 `__cpp_lib_…
StephanTLavavej May 28, 2024
51752ed
[mlir][nvgpu] verify the module
grypp May 28, 2024
266fac8
[libc++] [test] Fix MSVC warnings (#93257)
StephanTLavavej May 28, 2024
2ba0838
[libc++] [test] Fix portability issues for MSVC (#93259)
StephanTLavavej May 28, 2024
bc247ba
[memprof] Rename memprof-merge-v0.test to memprof-merge-versions.test…
kazutakahirata May 28, 2024
1c3a3f0
[LegalizeTypes] Use VP_AND and VP_SHL/VP_SRA to promote operands fo V…
topperc May 28, 2024
0e96eeb
[msan] Reland: Increase k num stack origin descrs (limited to non-Pow…
thurstond May 28, 2024
d9dec10
[ci] limit parallel windows compile jobs to 24 (#93329)
lnihlen May 28, 2024
c96860a
[clang-tidy] Optimize realpath in readability-identifier-naming (#92659)
PiotrZSL May 28, 2024
0aacef3
[clang-tidy][NFC] Update identifier-length.rst (#93467)
mattanelkaim May 28, 2024
c108c1e
[WebAssembly] Rename old EH tests to *-legacy (#93585)
aheejin May 28, 2024
9e89d10
[memprof] Add MemProf format Version 3 (#93608)
kazutakahirata May 28, 2024
193e900
[OpenACC][NFC] Fix begin loc and split it from the directive location
erichkeane May 28, 2024
5a23d31
[Sample Profile] Check hot callsite threshold when inlining a functio…
huangjd May 28, 2024
6a47315
[clang-repl] Even more tests create the Interpreter and must check ho…
weliveindetail May 28, 2024
98fa0f6
DAG: Handle vector splitting for fminnum_ieee/fmaxnum_ieee
arsenm May 28, 2024
bbca20f
[Clang][NFC] remove CHAR_PUNCT duplication introduced by #93216 (#93605)
cor3ntin May 28, 2024
df542e1
Fix build: [clang-repl] Even more tests create the Interpreter and mu…
weliveindetail May 28, 2024
ed4227a
[SCEV] Add tests for symbolic max BTC requiring predicates.
fhahn May 28, 2024
e3f74d4
[OpenACC] Correct serialization of certain clause sub-expressions
erichkeane May 28, 2024
060b302
[RISCV] Move TRUNCATE_VECTOR_VL combine into a helper function. NFC (…
topperc May 28, 2024
00bd2fa
[flang][cuda] Add bind c to cudadevice procedures (#92822)
clementval May 28, 2024
2d00c6f
[RISCV] Add a rematerializable pseudo instruction for LUI+ADDI for gl…
topperc May 28, 2024
765206e
[CodeGen] Hidden visibility for prof version var (#93496)
gulfemsavrun May 28, 2024
067b4cc
Upstream libc++ buildbot restarter. (#93582)
EricWF May 28, 2024
b9cdea6
Attempt to fix issue with plus sign in libc++ workflow name
EricWF May 28, 2024
6aeea70
[mlir][dataflow] Fix for integer range analysis propagation bug (#93199)
sabauma May 28, 2024
20d497c
[Driver] Remove unneeded *-linux-gnu after D158183
MaskRay May 28, 2024
760c2aa
[lld] Support thumb PLTs (#86223)
PiJoules May 28, 2024
f7c8a03
[RISCV] Combine vXi32 (mul (and (lshr X, 15), 0x10001), 0xffff) -> (b…
topperc May 28, 2024
0694552
[libc] clean up MutexLock (#93619)
SchrodingerZhu May 28, 2024
c179d50
[WebAssembly] Add exnref type (#93586)
aheejin May 28, 2024
4486fcb
[libc] Add proxy header for float.h. (#93504)
lntue May 28, 2024
39e5036
[SCEV] Add predicated version of getSymbolicMaxBackedgeTakenCount. (#…
fhahn May 28, 2024
722a5fc
[WebAssembly] Add -wasm-enable-exnref option (#93597)
aheejin May 28, 2024
60bce6e
[WebAssembly] Implement all f16x8 binary instructions. (#93360)
brendandahl May 28, 2024
0edc97f
[IR][AArch64][PAC] Add "ptrauth(...)" Constant to represent signed po…
ahmedbougacha May 28, 2024
6f529aa
[WebAssembly] Remove IIT_EXNREF
aheejin May 28, 2024
bd5cd4b
Fix trigger for libc++ job rerunner.
EricWF May 29, 2024
5bfe4b9
[mlir][arith] Disallow casting tensor dimensions (#93349)
kuhar May 29, 2024
1c108c8
Mark operator== const to avoid errors when asserts are enabled
Sterling-Augustine May 29, 2024
44d4b3b
[libc++][test] Close LWG3382 and add tests (#93039)
huixie90 May 29, 2024
d868f09
[libc++] LWG3223 Broken requirements for shared_ptr converting constr…
huixie90 May 29, 2024
2ae3f7c
[libc++][test] Close LWG3238 and add tests (#93043)
huixie90 May 29, 2024
0380044
Fix the EditLine unittest build on Darwin after PR 92865
jimingham May 29, 2024
d11922e
Remove unneeded debug logging
EricWF May 29, 2024
f0b57b6
[Coroutines] Remove one construction of DominatorTree (#93507)
ruiling May 29, 2024
e492aa5
Remove one more unneeded debug log line
EricWF May 29, 2024
f9672cb
[NFC][libc++] Mark LWG3951 as implemented (#93191)
yronglin May 29, 2024
6abc387
Revert "Fix the EditLine unittest build on Darwin after PR 92865"
jimingham May 29, 2024
04f01a2
[libc++] Make the __availability header a sub-header of __config (#93…
ldionne May 29, 2024
633ea41
[runtimes] Reintroduce a way to select the compiler used for the test…
ldionne May 29, 2024
bd135c3
[runtimes][CMake] Simplify the propagation of test dependencies (#93558)
ldionne May 29, 2024
7832769
Revert "[lld] Support thumb PLTs" (#93631)
joker-eph May 29, 2024
c250aeb
[AMDGPU] Fix typo in VIMAGE no sampler opcode usage (NFCI)
perlfu May 27, 2024
cbf6e93
[clang codegen] Delete unnecessary GEP cleanup code. (#90303)
efriedma-quic May 29, 2024
bb42511
[Clang][Sema] Use StructuralValues to model dependent NTTP arguments …
zyn0217 May 29, 2024
465bc5e
AArch64/ARM/PPC/X86: Add some atomic tests (#92933)
arsenm May 29, 2024
3613b26
Constant Fold logf128 calls (#90611)
MDevereau May 29, 2024
b0f10a1
[C++20] [Modules] Don't generate the defintition for non-const availa…
ChuanqiXu9 May 29, 2024
70d6b8a
MCAsmParser: Amend \+ expansion
MaskRay May 29, 2024
5162027
[RISCV] Add test for #93578. NFC
topperc May 29, 2024
4e0bd3f
[MachineLICM] Hoist copies of constant physical register (#93285)
wangpc-pp May 29, 2024
476a6d8
[NFC] Construct Twines before concatenation (#90728)
MagentaTreehouse May 29, 2024
7f58ffd
[mlir][python] Yield results of `scf.for_` (#93610)
grypp May 29, 2024
c2a9a97
[LICM] Introduce test for PR92655 (NFC)
antoniofrighetto May 18, 2024
70091dc
[LICM] Invalidate cached SCEV results in `hoistMulAddAssociation`
antoniofrighetto May 18, 2024
53d79fe
[lldb/DWARF] Bypass the compres^Wconstruction of DIERefs in debug_nam…
labath May 29, 2024
2cfea14
[lldb-dap] Add timestamps to protocol logs (#93540)
labath May 29, 2024
9871486
[InstCombine] Add multiuse tests for canonicalizing (icmp eq/ne (and …
goldsteinn Mar 22, 2024
5532ab1
[InstCombine] Make the `(icmp eq/ne (and X, Y), X)` canonicalization …
goldsteinn Sep 13, 2023
a9e8a3a
[X86][CodeGen] Extend X86CompressEVEX for NF transform
KanRobert May 29, 2024
76e1a53
[llvm][bazel] Fix llvm-config after 3613b2683107bd60fda6d9348623be068…
chsigg May 29, 2024
1c6746e
[VectorCombine] Add support for zext/sext/trunc to shuffleToIdentity …
davemgreen May 29, 2024
850f30c
[ARM][MVE] Don't allow tail-predication with else predicates
davemgreen May 29, 2024
5aba0de
[flang] lower assumed-rank variables specification expressions (#93477)
jeanPerier May 29, 2024
326f58d
[flang][HLFIR] lower hlfir.declare of assumed-ranks (#93468)
jeanPerier May 29, 2024
6957c00
[RuntimeDyld][ELF][AArch64] Fix resolveAArch64ShortBranch. (#92245)
al45tair May 29, 2024
4ad2f41
[Exegesis] Changing non-standard CHECK in tests to more compliant way…
AnastasiyaChernikova May 29, 2024
93d8d74
[VectorCombine] Remove requirement for Instructions in shuffleToIdent…
davemgreen May 29, 2024
fa649df
[clang][ExtractAPI] Flatten all enum cases from anonymous enums at to…
daniel-grumberg May 29, 2024
f6ace2b
[AArch64] Expand vector ops when NEON and SVE are unavailable. (#90833)
sdesmalen-arm May 29, 2024
a72a906
[Nomination] Add an extra Red Hat representative to the security grou…
tuliom May 29, 2024
0f7b4b0
[X86][Driver] Enable feature ccmp,nf for -mapxf
KanRobert May 29, 2024
f3fb7f5
[X86] x86-atomic-float.c - cleanup unused check prefixes
RKSimon May 29, 2024
4bb6974
[X86] x86-atomic-long_double.c - cleanup check prefixes
RKSimon May 29, 2024
9c42ed1
[X86] Add x86-atomic-double.c double test coverage
RKSimon May 29, 2024
f42de69
[X86] vector-shuffle-512-v16.ll - add fast shuffle test coverage
RKSimon May 29, 2024
74014b5
Fix typo in AMDGPUUsage. NFC (#93652)
SixWeining May 29, 2024
dc8da7d
[AMDGPU] Reserved private memory register during PEI (#93536)
PankajDwivedi-25 May 29, 2024
1594ceb
[mlir][EmitC] Fix evaluation order of expressions (#93549)
May 29, 2024
5553f27
[AMDGPU][test] Fix the wrong triples in lower-work-group-id-intrinsic…
SixWeining May 29, 2024
78cc9cb
[AArch64][SME] Add intrinsics for multi-vector BFCLAMP (#93532)
Lukacma May 29, 2024
e1aa8ad
[flang][OpenMP] Fix bug in emitting `dealloc` logic (#93641)
ergawy May 29, 2024
5c214eb
[Inline] Clone return range attribute on the callsite into inlined ca…
andjo403 May 29, 2024
971f1aa
[lldb][Test][Windows] Fix flaky address range API tests
DavidSpickett May 29, 2024
3bcccb6
[Reassociate] Drop weight reduction to fix issue 91417 (#91469)
dtcxzyw May 29, 2024
718ba5a
Reapply [InstCombine] lshr (mul (X, 2^N + 1)), N -> add (X, lshr(X, N…
AZero13 May 26, 2024
6543453
[AArch64][NFC] Pre-commit test update for Select TBL/TBX instructions…
ChuongGoh-arm May 29, 2024
aef0bdd
DAG: Preserve flags when expanding fminimum/fmaximum (#93550)
arsenm May 29, 2024
9e8ecce
[DAGCombine] Transform `shl X, cttz(Y)` to `mul (Y & -Y), X` if cttz …
dtcxzyw May 29, 2024
23a09b9
[lldb][Test] Remove some xfails for AArch64 Linux
DavidSpickett May 29, 2024
e93799f
[SME] Add intrinsics for FCVT(wid.) and FCVTL (#93202)
Lukacma May 29, 2024
1e44a96
[AArch64][SME] Add intrinsics for vector groups ZERO (#93201)
Lukacma May 29, 2024
7fa45af
[SPIR-V] Ensure that internal intrinsic functions are inserted at the…
VyacheslavLevytskyy May 29, 2024
f63adf3
[SPIR-V] Introduce support of llvm.ptr.annotation to SPIR-V Backend a…
VyacheslavLevytskyy May 29, 2024
7c917e8
[SPIR-V] Implement correct zeroinitializer for extension types in SPI…
VyacheslavLevytskyy May 29, 2024
42a0fb2
[mlir][linalg] Add linalg.conv_2d_ngchw_gfchw_q to named ops (#92136)
zjgarvey May 29, 2024
a860e89
[RISCV] Don't recompute getDemanded in RISCVInsertVSETVLI::needVSETVL…
lukel97 May 29, 2024
7ee5112
[gn build] Port 04f01a2b9ced
nico May 29, 2024
9c4bae7
[X86][CodeGen] Disable NDD2NonNDD compression for CFCMOV
KanRobert May 29, 2024
35f2caf
[AArch64][GlobalISel] Select TBL/TBX Intrinsics (#92914)
ChuongGoh-arm May 29, 2024
8e12904
[lldb/DWARF] Refactor DWARFDIE::Get{Decl,TypeLookup}Context (#93291)
labath May 29, 2024
3ce9b86
[AArch64][NFC] Pre-commit Test for Combine MUL(AND(LSHR)) to CMLTz (#…
ChuongGoh-arm May 29, 2024
3082258
[CodeGen][X86] Use TargetLowering for TypeInfo of PointerTy (#93469)
jplehr May 29, 2024
103f6a7
Reland "[gn] port 088aa81a5454 (LLVM_HAS_LOGF128)""
nico May 29, 2024
9a28272
[Reassociate] Update test after recent change
nikic May 29, 2024
23366d4
[AArch64][GlobalISel] Combine MUL(AND(LSHR(X, 15), 0x10001), 0xffff)…
ChuongGoh-arm May 29, 2024
4ffe263
[InstSimplify] Generate test checks (NFC)
nikic May 29, 2024
a49b5ca
[InferAddressSpaces] Generate test checks (NFC)
nikic May 29, 2024
9377412
[clang][OpenMP] Remove unused include of UniqueVector.h, NFC
kparzysz May 29, 2024
1ea8cae
[AArch64] Add patterns for conversions using fixed-point scvtf (#92922)
momchil-velikov May 29, 2024
0dfd2bf
[LTT] Directly create inbounds gep (NFCI)
nikic May 29, 2024
180448b
[AMDGPU] Reduce use of continue in SIWholeQuadMode. NFC. (#93659)
jayfoad May 29, 2024
24ddce6
[GISel] Legalize bitreverse with types smaller than 8 bits (#92998)
dtcxzyw May 29, 2024
fba84ec
[WPD] Directly create geteleementptr inbounds (NFCI)
nikic May 29, 2024
886d316
[AArch64][NFC] Pre-commit test for Push ADD/SUB through {S|Z}EXT (#90…
ChuongGoh-arm May 29, 2024
753ac47
[RISCV][test] Add missing check-prefix to a test (NFC) (#93683)
s-barannikov May 29, 2024
df9701b
[OpenMP] Fix multiply installing `libomp.so` (#93685)
jhuber6 May 29, 2024
7af5b68
[DFSan] Directly create gep inbounds for arg origin tls (NFCI)
nikic May 29, 2024
fbe98da
[AMDGPU] Fix filecheck annotation typos
jayfoad May 29, 2024
e8e5ba0
[AArch64][TargetParser] Move ExtensionDependencies into tablegen [NFC…
labrinea May 29, 2024
e20f0fe
[WasmEHPrepare] Explicitly create inbounds GEP (NFCI)
nikic May 29, 2024
14dc97d
[AArch64][GlobalISel] Push ADD/SUB through Extend Instructions (#90964)
ChuongGoh-arm May 29, 2024
0981dca
[mlir][arith] Add neutral element support to arith.maxnumf/arith.minn…
cxy-1993 May 29, 2024
799316f
[lldb][NFC] Pass Stream& to ToXML methods in RegisterFlags
DavidSpickett May 29, 2024
975477e
[CGBuiltin] Explicitly use inbounds GEP (NFCI)
nikic May 29, 2024
6127f15
[PowerPC] option `-msoft-float` should not block the PC-relative addr…
diggerlin May 29, 2024
8fefca1
[mlir][llvm] Implement ConstantLike for ZeroOp, UndefOp, PoisonOp
May 28, 2024
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
  •  
  •  
  •  
6 changes: 5 additions & 1 deletion .ci/monolithic-windows.sh
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,8 @@ pip install -q -r "${MONOREPO_ROOT}"/mlir/python/requirements.txt
# see https://github.com/llvm/llvm-project/pull/82393 and
# https://discourse.llvm.org/t/rfc-future-of-windows-pre-commit-ci/76840/40
# for further information.
# We limit the number of parallel compile jobs to 24 control memory
# consumption and improve build reliability.
cmake -S "${MONOREPO_ROOT}"/llvm -B "${BUILD_DIR}" \
-D LLVM_ENABLE_PROJECTS="${projects}" \
-G Ninja \
Expand All @@ -58,7 +60,9 @@ cmake -S "${MONOREPO_ROOT}"/llvm -B "${BUILD_DIR}" \
-D MLIR_ENABLE_BINDINGS_PYTHON=ON \
-D CMAKE_EXE_LINKER_FLAGS="/MANIFEST:NO" \
-D CMAKE_MODULE_LINKER_FLAGS="/MANIFEST:NO" \
-D CMAKE_SHARED_LINKER_FLAGS="/MANIFEST:NO"
-D CMAKE_SHARED_LINKER_FLAGS="/MANIFEST:NO" \
-D LLVM_PARALLEL_COMPILE_JOBS=16 \
-D LLVM_PARALLEL_LINK_JOBS=4

echo "--- ninja"
# Targets are not escaped as they are passed as separate arguments.
Expand Down
105 changes: 105 additions & 0 deletions .github/workflows/restart-preempted-libcxx-jobs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
name: Restart Preempted Libc++ Workflow

# The libc++ builders run on preemptable VMs, which can be shutdown at any time.
# This workflow identifies when a workflow run was canceled due to the VM being preempted,
# and restarts the workflow run.

# We identify a canceled workflow run by checking the annotations of the check runs in the check suite,
# which should contain the message "The runner has received a shutdown signal."

# Note: If a job is both preempted and also contains a non-preemption failure, we do not restart the workflow.

on:
workflow_run:
workflows: [Build and Test libc\+\+]
types:
- completed

permissions:
contents: read

jobs:
restart:
if: github.repository_owner == 'llvm' && (github.event.workflow_run.conclusion == 'failure' || github.event.workflow_run.conclusion == 'cancelled')
name: "Restart Job"
permissions:
statuses: read
checks: read
actions: write
runs-on: ubuntu-latest
steps:
- name: "Restart Job"
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea #v7.0.1
with:
script: |
const failure_regex = /Process completed with exit code 1./
const preemption_regex = /The runner has received a shutdown signal/

console.log('Listing check runs for suite')
const check_suites = await github.rest.checks.listForSuite({
owner: context.repo.owner,
repo: context.repo.repo,
check_suite_id: context.payload.workflow_run.check_suite_id
})

check_run_ids = [];
for (check_run of check_suites.data.check_runs) {
console.log('Checking check run: ' + check_run.id);
if (check_run.status != 'completed') {
console.log('Check run was not completed. Skipping.');
continue;
}
if (check_run.conclusion != 'failure' && check_run.conclusion != 'cancelled') {
console.log('Check run had conclusion: ' + check_run.conclusion + '. Skipping.');
continue;
}
check_run_ids.push(check_run.id);
}

has_preempted_job = false;

for (check_run_id of check_run_ids) {
console.log('Listing annotations for check run: ' + check_run_id);

annotations = await github.rest.checks.listAnnotations({
owner: context.repo.owner,
repo: context.repo.repo,
check_run_id: check_run_id
})

for (annotation of annotations.data) {
if (annotation.annotation_level != 'failure') {
continue;
}

const preemption_match = annotation.message.match(preemption_regex);

if (preemption_match != null) {
console.log('Found preemption message: ' + annotation.message);
has_preempted_job = true;
}

const failure_match = annotation.message.match(failure_regex);
if (failure_match != null) {
// We only want to restart the workflow if all of the failures were due to preemption.
// We don't want to restart the workflow if there were other failures.
console.log('Choosing not to rerun workflow because we found a non-preemption failure');
console.log('Failure message: ' + annotation.message);
return;
}
}
}

if (!has_preempted_job) {
console.log('No preempted jobs found. Not restarting workflow.');
return;
}

console.log("Restarted workflow: " + context.payload.workflow_run.id);
await github.rest.actions.reRunWorkflowFailedJobs({
owner: context.repo.owner,
repo: context.repo.repo,
run_id: context.payload.workflow_run.id
})


12 changes: 10 additions & 2 deletions clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1414,13 +1414,21 @@ IdentifierNamingCheck::getDiagInfo(const NamingCheckId &ID,
}};
}

StringRef IdentifierNamingCheck::getRealFileName(StringRef FileName) const {
auto Iter = RealFileNameCache.try_emplace(FileName);
SmallString<256U> &RealFileName = Iter.first->getValue();
if (!Iter.second)
return RealFileName;
llvm::sys::fs::real_path(FileName, RealFileName);
return RealFileName;
}

const IdentifierNamingCheck::FileStyle &
IdentifierNamingCheck::getStyleForFile(StringRef FileName) const {
if (!GetConfigPerFile)
return *MainFileStyle;

SmallString<128> RealFileName;
llvm::sys::fs::real_path(FileName, RealFileName);
StringRef RealFileName = getRealFileName(FileName);
StringRef Parent = llvm::sys::path::parent_path(RealFileName);
auto Iter = NamingStylesCache.find(Parent);
if (Iter != NamingStylesCache.end())
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -205,6 +205,7 @@ class IdentifierNamingCheck final : public RenamerClangTidyCheck {
const NamingCheckFailure &Failure) const override;

const FileStyle &getStyleForFile(StringRef FileName) const;
StringRef getRealFileName(StringRef FileName) const;

/// Find the style kind of a field in an anonymous record.
StyleKind findStyleKindForAnonField(
Expand All @@ -222,6 +223,7 @@ class IdentifierNamingCheck final : public RenamerClangTidyCheck {
/// Stores the style options as a vector, indexed by the specified \ref
/// StyleKind, for a given directory.
mutable llvm::StringMap<FileStyle> NamingStylesCache;
mutable llvm::StringMap<SmallString<256U>> RealFileNameCache;
FileStyle *MainFileStyle;
ClangTidyContext *Context;
const bool GetConfigPerFile;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,7 @@ The following options are described below:

.. code-block:: c++

int doubler(int x) // warns that x is too short
{
return 2 * x;
}
int i = 42; // warns that 'i' is too short

This check does not have any fix suggestions in the general case since
variable names have semantic value.
Expand All @@ -50,7 +47,10 @@ The following options are described below:

.. code-block:: c++

int i = 42; // warns that 'i' is too short
int doubler(int x) // warns that x is too short
{
return 2 * x;
}

This check does not have any fix suggestions in the general case since
variable names have semantic value.
Expand Down
38 changes: 38 additions & 0 deletions clang/docs/InternalsManual.rst
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,44 @@ severe that error recovery won't be able to recover sensibly from them (thus
spewing a ton of bogus errors). One example of this class of error are failure
to ``#include`` a file.

Diagnostic Wording
^^^^^^^^^^^^^^^^^^
The wording used for a diagnostic is critical because it is the only way for a
user to know how to correct their code. Use the following suggestions when
wording a diagnostic.

* Diagnostics in Clang do not start with a capital letter and do not end with
punctuation.

* This does not apply to proper nouns like ``Clang`` or ``OpenMP``, to
acronyms like ``GCC`` or ``ARC``, or to language standards like ``C23``
or ``C++17``.
* A trailing question mark is allowed. e.g., ``unknown identifier %0; did
you mean %1?``.

* Appropriately capitalize proper nouns like ``Clang``, ``OpenCL``, ``GCC``,
``Objective-C``, etc and language standard versions like ``C11`` or ``C++11``.
* The wording should be succinct. If necessary, use a semicolon to combine
sentence fragments instead of using complete sentences. e.g., prefer wording
like ``'%0' is deprecated; it will be removed in a future release of Clang``
over wording like ``'%0' is deprecated. It will be removed in a future release
of Clang``.
* The wording should be actionable and avoid using standards terms or grammar
productions that a new user would not be familiar with. e.g., prefer wording
like ``missing semicolon`` over wording like ``syntax error`` (which is not
actionable) or ``expected unqualified-id`` (which uses standards terminology).
* The wording should clearly explain what is wrong with the code rather than
restating what the code does. e.g., prefer wording like ``type %0 requires a
value in the range %1 to %2`` over wording like ``%0 is invalid``.
* The wording should have enough contextual information to help the user
identify the issue in a complex expression. e.g., prefer wording like
``both sides of the %0 binary operator are identical`` over wording like
``identical operands to binary operator``.
* Use single quotes to denote syntactic constructs or command line arguments
named in a diagnostic message. e.g., prefer wording like ``'this' pointer
cannot be null in well-defined C++ code`` over wording like ``this pointer
cannot be null in well-defined C++ code``.

The Format String
^^^^^^^^^^^^^^^^^

Expand Down
9 changes: 9 additions & 0 deletions clang/docs/ReleaseNotes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -541,6 +541,9 @@ Improvements to Clang's diagnostics
- Clang emits a ``-Wparentheses`` warning for expressions with consecutive comparisons like ``x < y < z``.
Fixes #GH20456.

- Clang no longer emits a "declared here" note for a builtin function that has no declaration in source.
Fixes #GH93369.

Improvements to Clang's time-trace
----------------------------------

Expand Down Expand Up @@ -629,6 +632,9 @@ Bug Fixes in This Version
- ``__is_array`` and ``__is_bounded_array`` no longer return ``true`` for
zero-sized arrays. Fixes (#GH54705).

- Correctly reject declarations where a statement is required in C.
Fixes #GH92775

Bug Fixes to Compiler Builtins
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Expand Down Expand Up @@ -802,6 +808,9 @@ Bug Fixes to C++ Support
- Fixed a regression introduced in Clang 18 causing a static function overloading a non-static function
with the same parameters not to be diagnosed. (Fixes #GH93456).
- Clang now diagnoses unexpanded parameter packs in attributes. (Fixes #GH93269).
- Clang now allows ``@$``` in raw string literals. Fixes (#GH93130).
- Fix an assertion failure when checking invalid ``this`` usage in the wrong context. (Fixes #GH91536).
- Clang no longer models dependent NTTP arguments as ``TemplateParamObjectDecl`` s. Fixes (#GH84052).

Bug Fixes to AST Handling
^^^^^^^^^^^^^^^^^^^^^^^^^
Expand Down
32 changes: 19 additions & 13 deletions clang/include/clang/AST/StmtOpenACC.h
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@ class OpenACCConstructStmt : public Stmt {
/// The location of the directive statement, from the '#' to the last token of
/// the directive.
SourceRange Range;
/// The location of the directive name.
SourceLocation DirectiveLoc;

/// The list of clauses. This is stored here as an ArrayRef, as this is the
/// most convienient place to access the list, however the list itself should
Expand All @@ -39,8 +41,9 @@ class OpenACCConstructStmt : public Stmt {

protected:
OpenACCConstructStmt(StmtClass SC, OpenACCDirectiveKind K,
SourceLocation Start, SourceLocation End)
: Stmt(SC), Kind(K), Range(Start, End) {}
SourceLocation Start, SourceLocation DirectiveLoc,
SourceLocation End)
: Stmt(SC), Kind(K), Range(Start, End), DirectiveLoc(DirectiveLoc) {}

// Used only for initialization, the leaf class can initialize this to
// trailing storage.
Expand All @@ -59,6 +62,7 @@ class OpenACCConstructStmt : public Stmt {

SourceLocation getBeginLoc() const { return Range.getBegin(); }
SourceLocation getEndLoc() const { return Range.getEnd(); }
SourceLocation getDirectiveLoc() const { return DirectiveLoc; }
ArrayRef<const OpenACCClause *> clauses() const { return Clauses; }

child_range children() {
Expand All @@ -81,9 +85,11 @@ class OpenACCAssociatedStmtConstruct : public OpenACCConstructStmt {

protected:
OpenACCAssociatedStmtConstruct(StmtClass SC, OpenACCDirectiveKind K,
SourceLocation Start, SourceLocation End,
Stmt *AssocStmt)
: OpenACCConstructStmt(SC, K, Start, End), AssociatedStmt(AssocStmt) {}
SourceLocation Start,
SourceLocation DirectiveLoc,
SourceLocation End, Stmt *AssocStmt)
: OpenACCConstructStmt(SC, K, Start, DirectiveLoc, End),
AssociatedStmt(AssocStmt) {}

void setAssociatedStmt(Stmt *S) { AssociatedStmt = S; }
Stmt *getAssociatedStmt() { return AssociatedStmt; }
Expand Down Expand Up @@ -126,10 +132,10 @@ class OpenACCComputeConstruct final
friend class ASTStmtReader;
friend class ASTContext;
OpenACCComputeConstruct(unsigned NumClauses)
: OpenACCAssociatedStmtConstruct(OpenACCComputeConstructClass,
OpenACCDirectiveKind::Invalid,
SourceLocation{}, SourceLocation{},
/*AssociatedStmt=*/nullptr) {
: OpenACCAssociatedStmtConstruct(
OpenACCComputeConstructClass, OpenACCDirectiveKind::Invalid,
SourceLocation{}, SourceLocation{}, SourceLocation{},
/*AssociatedStmt=*/nullptr) {
// We cannot send the TrailingObjects storage to the base class (which holds
// a reference to the data) until it is constructed, so we have to set it
// separately here.
Expand All @@ -141,11 +147,11 @@ class OpenACCComputeConstruct final
}

OpenACCComputeConstruct(OpenACCDirectiveKind K, SourceLocation Start,
SourceLocation End,
SourceLocation DirectiveLoc, SourceLocation End,
ArrayRef<const OpenACCClause *> Clauses,
Stmt *StructuredBlock)
: OpenACCAssociatedStmtConstruct(OpenACCComputeConstructClass, K, Start,
End, StructuredBlock) {
DirectiveLoc, End, StructuredBlock) {
assert(isOpenACCComputeDirectiveKind(K) &&
"Only parallel, serial, and kernels constructs should be "
"represented by this type");
Expand All @@ -169,8 +175,8 @@ class OpenACCComputeConstruct final
unsigned NumClauses);
static OpenACCComputeConstruct *
Create(const ASTContext &C, OpenACCDirectiveKind K, SourceLocation BeginLoc,
SourceLocation EndLoc, ArrayRef<const OpenACCClause *> Clauses,
Stmt *StructuredBlock);
SourceLocation DirectiveLoc, SourceLocation EndLoc,
ArrayRef<const OpenACCClause *> Clauses, Stmt *StructuredBlock);

Stmt *getStructuredBlock() { return getAssociatedStmt(); }
const Stmt *getStructuredBlock() const {
Expand Down
7 changes: 5 additions & 2 deletions clang/include/clang/Basic/Attr.td
Original file line number Diff line number Diff line change
Expand Up @@ -2025,9 +2025,12 @@ def Convergent : InheritableAttr {
def NoInline : DeclOrStmtAttr {
let Spellings = [CustomKeyword<"__noinline__">, GCC<"noinline">,
CXX11<"clang", "noinline">, C23<"clang", "noinline">,
CXX11<"msvc", "noinline">, C23<"msvc", "noinline">,
Declspec<"noinline">];
let Accessors = [Accessor<"isClangNoInline", [CXX11<"clang", "noinline">,
C23<"clang", "noinline">]>];
let Accessors = [Accessor<"isStmtNoInline", [CXX11<"clang", "noinline">,
C23<"clang", "noinline">,
CXX11<"msvc", "noinline">,
C23<"msvc", "noinline">]>];
let Documentation = [NoInlineDocs];
let Subjects = SubjectList<[Function, Stmt], WarnDiag,
"functions and statements">;
Expand Down
4 changes: 4 additions & 0 deletions clang/include/clang/Basic/BuiltinsWebAssembly.def
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,10 @@ TARGET_BUILTIN(__builtin_wasm_min_f64x2, "V2dV2dV2d", "nc", "simd128")
TARGET_BUILTIN(__builtin_wasm_max_f64x2, "V2dV2dV2d", "nc", "simd128")
TARGET_BUILTIN(__builtin_wasm_pmin_f64x2, "V2dV2dV2d", "nc", "simd128")
TARGET_BUILTIN(__builtin_wasm_pmax_f64x2, "V2dV2dV2d", "nc", "simd128")
TARGET_BUILTIN(__builtin_wasm_min_f16x8, "V8hV8hV8h", "nc", "half-precision")
TARGET_BUILTIN(__builtin_wasm_max_f16x8, "V8hV8hV8h", "nc", "half-precision")
TARGET_BUILTIN(__builtin_wasm_pmin_f16x8, "V8hV8hV8h", "nc", "half-precision")
TARGET_BUILTIN(__builtin_wasm_pmax_f16x8, "V8hV8hV8h", "nc", "half-precision")

TARGET_BUILTIN(__builtin_wasm_ceil_f32x4, "V4fV4f", "nc", "simd128")
TARGET_BUILTIN(__builtin_wasm_floor_f32x4, "V4fV4f", "nc", "simd128")
Expand Down
Loading