SuccessChanges

Summary

  1. Improve the representation of <compare>'s zero-only type. (details)
  2. Recognize setjmp and friends as builtins even if jmp_buf is not declared yet. (details)
  3. [AMDGPU] Remove SIEncodingFamily.GFX10_B (details)
  4. Fix use of wrong printf format specifier for size_t argument. (details)
  5. [CodeExtractor] Don't create bitcasts when inserting lifetime markers (NFCI) (details)
  6. [mlir] Remove more OpBuilder args which are now injected (details)
  7. Fix a variety of minor issues with ObjC method mangling: (details)
  8. [DebugInfo] Add types from constructor homing to the retained types list. (details)
Commit bf434a5f173eed4112a10e28e8a6236d48f9da07 by richard
Improve the representation of <compare>'s zero-only type.

* Use an empty struct instead of a member pointer to represent this
  type, so that we don't actually pass a zero member pointer at runtime.

* Mark the constructor as consteval to ensure that no code is emitted
  for it whenever possible.

* Add a honeypot constructor to reject all non-int arguments, so that
  the only argument that can arrive at the real constructor is the
  literal 0.

This results in better generated code, and rejecting invalid comparisons
against nullptr, 0L, and so on, while also rejecting invalid comparisons
against (1-1) and similar that would be allowed if we required an
integer constant expression with value 0.

Differential Revision: https://reviews.llvm.org/D85051
The file was modifiedlibcxx/include/compare (diff)
The file was addedlibcxx/test/std/language.support/cmp/cmp.categories.pre/zero_type.verify.cpp
The file was modifiedlibcxx/include/__config (diff)
Commit 1c604a9f5fd65c91f097c856fa6643373fc869e1 by richard
Recognize setjmp and friends as builtins even if jmp_buf is not declared yet.

This happens in glibc's headers. It's important that we recognize these
functions so that we can mark them as returns_twice.

Differential Revision: https://reviews.llvm.org/D88518
The file was modifiedclang/test/Sema/builtin-setjmp.c (diff)
The file was addedclang/test/CodeGen/setjmp.c
The file was modifiedclang/include/clang/Basic/Builtins.h (diff)
The file was modifiedclang/include/clang/Basic/Builtins.def (diff)
The file was modifiedclang/lib/Sema/SemaDecl.cpp (diff)
The file was modifiedclang/test/Sema/implicit-builtin-decl.c (diff)
Commit 61b3106965d7c4c696d8e4cd272273011bb50bc0 by Stanislav.Mekhanoshin
[AMDGPU] Remove SIEncodingFamily.GFX10_B

It turns to be not needed anymore.

Differential Revision: https://reviews.llvm.org/D88520
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.td (diff)
Commit 2f95c50a8b713970c5134dabc246270111a48c6d by richard
Fix use of wrong printf format specifier for size_t argument.

This causes a build break under -Werror=format.
The file was modifiedlldb/bindings/python/python-wrapper.swig (diff)
Commit 26ee8aff2b85ee28a2b2d0b1860d878b512fbdef by Vedant Kumar
[CodeExtractor] Don't create bitcasts when inserting lifetime markers (NFCI)

Lifetime marker intrinsics support any pointer type, so CodeExtractor
does not need to bitcast to `i8*` in order to use these markers.
The file was modifiedllvm/lib/Transforms/Utils/CodeExtractor.cpp (diff)
The file was modifiedllvm/test/Transforms/HotColdSplit/lifetime-markers-on-inputs-1.ll (diff)
The file was modifiedllvm/test/Transforms/HotColdSplit/split-phis-in-exit-blocks.ll (diff)
The file was modifiedllvm/test/Transforms/HotColdSplit/lifetime-markers-on-inputs-2.ll (diff)
The file was modifiedllvm/test/Transforms/CodeExtractor/PartialInlineInvokeProducesOutVal.ll (diff)
Commit 4f0e0d92178d57137e26b1ac1be5f0409791912a by jpienaar
[mlir] Remove more OpBuilder args which are now injected

NFC. Some small changes to make things more consistent but primarily
avoiding old behavior without any further change.
The file was modifiedmlir/include/mlir/Dialect/GPU/GPUOps.td (diff)
The file was modifiedmlir/include/mlir/Dialect/Vector/VectorOps.td (diff)
The file was modifiedmlir/docs/Tutorials/Toy/Ch-2.md (diff)
The file was modifiedmlir/test/lib/Dialect/Test/TestOps.td (diff)
The file was modifiedmlir/include/mlir/Dialect/Affine/IR/AffineOps.td (diff)
The file was modifiedmlir/include/mlir/Dialect/Shape/IR/ShapeOps.td (diff)
The file was modifiedmlir/include/mlir/Dialect/LLVMIR/LLVMOps.td (diff)
The file was modifiedmlir/include/mlir/Dialect/SCF/SCFOps.td (diff)
The file was modifiedmlir/include/mlir/Dialect/StandardOps/IR/Ops.td (diff)
Commit 984744a1314ce165378e7945bc45995302a8cb80 by rjmccall
Fix a variety of minor issues with ObjC method mangling:

- Fix a memory leak accidentally introduced yesterday by using CodeGen's
  existing mangling context instead of creating a new context afresh.

- Move GNU-runtime ObjC method mangling into the AST mangler; this will
  eventually be necessary to support direct methods there, but is also
  just the right architecture.

- Make the Apple-runtime method mangling work properly when given an
  interface declaration, fixing a bug (which had solidified into a test)
  where mangling a category method from the interface could cause it to
  be mangled as if the category name was a class name.  (Category names
  are namespaced within their class and have no global meaning.)

- Fix a code cross-reference in dsymutil.

Based on a patch by Ellis Hoag.
The file was modifiedclang/lib/AST/Mangle.cpp (diff)
The file was modifiedclang/lib/CodeGen/CGObjCRuntime.h (diff)
The file was modifiedclang/lib/AST/DeclObjC.cpp (diff)
The file was modifiedclang/lib/CodeGen/CGObjCRuntime.cpp (diff)
The file was modifiedclang/lib/CodeGen/CGObjCGNU.cpp (diff)
The file was modifiedclang/test/AST/ast-dump-decl-json.m (diff)
The file was modifiedclang/include/clang/AST/DeclObjC.h (diff)
The file was modifiedclang/lib/CodeGen/CGObjCMac.cpp (diff)
The file was modifiedllvm/tools/dsymutil/SymbolMap.cpp (diff)
Commit 5c4fc581d5fe8427f03ec90b0d745453398aa3ad by akhuang
[DebugInfo] Add types from constructor homing to the retained types list.

Add class types to the retained types list to make sure they
don't get dropped if the constructor is optimized out later.

Differential Revision: https://reviews.llvm.org/D88522
The file was modifiedclang/lib/CodeGen/CGDebugInfo.cpp (diff)
The file was modifiedclang/test/CodeGenCXX/debug-info-limited-ctor.cpp (diff)

Summary

  1. [zorg] [PowerPC] Limit number of threads to 64 on clang-ppc64le-rhel buildbot (details)
Commit c2cc01b14ef84bee845318bde3ae623091934b96 by saghir
[zorg] [PowerPC] Limit number of threads to 64 on clang-ppc64le-rhel buildbot

This patch reduces the number of threads from 256 to 64 on the
clang-ppc64le-rhel buildbot.

Reviewed By: stefanp

Differential Revision: https://reviews.llvm.org/D88586
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)