Skip to content
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

[AutoBump] Merge with 972f65a8 (3) #260

Merged
merged 32 commits into from
Aug 16, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
7ccb31a
[X86] splitVectorOp - share the same SDLoc argument instead of recrea…
RKSimon Mar 20, 2024
f24d68a
[AMDGPU] Remove FLAT_Real_AllAddr_gfx11 in favor of GLOBAL_Real_AllAd…
jayfoad Mar 20, 2024
e66cfeb
[ValueTracking] Handle range attributes (#85143)
andjo403 Mar 20, 2024
4b369ff
[analyzer][NFC] Fix unused variable warning
frasercrmck Mar 20, 2024
e52a687
[AMDGPU][NFC] Test clean up (#85922)
pravinjagtap Mar 20, 2024
3a90cb4
Revert "[SLP]Do extra analysis int minbitwidth if some checks return …
alexey-bataev Mar 20, 2024
81ec95f
Silence -Wswitch warnings
d0k Mar 20, 2024
357f00d
[HIP] Correctly omit bundling with the new driver (#85842)
jhuber6 Mar 20, 2024
da2c98b
[MLIR] Remove UtilsDialect dep on ArithUtils (#85919)
RoboTux Mar 20, 2024
679e594
[clang] Add `__has_extension(swiftcc)` support (#85347)
kateinoigakukun Mar 20, 2024
1de7e6c
[clang] move -Wcast-function-type under -Wextra (#77178)
Abhinkop Mar 20, 2024
254bfe9
[llvm-ar][Object][COFF] Add support for EC symbols to llvm-ar. (#85230)
cjacek Mar 20, 2024
fb5fd2d
[flang][OpenMP] Compile proper `omp_lib.mod` from the `openmp/src/inc…
mjklemm Mar 20, 2024
81d9ed6
[SLP]Do extra analysis int minbitwidth if some checks return false.
alexey-bataev Mar 14, 2024
6c1d445
[SLP]Improve minbitwidth analysis for shifts.
alexey-bataev Mar 20, 2024
bdc77d1
[RemoveDIs][NFC] Rename DPLabel->DbgLabelRecord (#85918)
SLTozer Mar 20, 2024
2ac85d8
[VectorCombine] foldBitcastShuf - add support for binary shuffles
RKSimon Mar 20, 2024
3eb8063
[CodeGen] Fix test on 32-bit targets (NFC)
nikic Mar 20, 2024
98c6bc5
[MLIR][SROA][Mem2Reg] Add data layout to interface methods (#85644)
Dinistro Mar 20, 2024
ada24ae
Revert 2ac85d8d200a9e1e0ced501c2d2f04404c400bd9 "[VectorCombine] fold…
RKSimon Mar 20, 2024
9d1cb18
[Coroutines] Ignore instructions more aggressively in addMustTailToCo…
zmodem Mar 20, 2024
abed4b7
[AMDGPU] Simplify definition of GLOBAL_LOAD_TR Real instructions
jayfoad Mar 20, 2024
3fbac79
[AArch64] Don't write to source directory in test
d0k Mar 20, 2024
1232964
[lldb] Omit --show-globals in `help target var` (#85855)
felipepiovezan Mar 20, 2024
5f5a641
Revert "[DAGCombiner] Simplifying `{si|ui}tofp` when only signbit is …
d0k Mar 20, 2024
2137894
[libc][NFC] Move `Sign` type to separate header (#85930)
gchatelet Mar 20, 2024
f872043
Revert "[VPlan] Replace disjoint or with add instead of dropping disj…
d0k Mar 20, 2024
9f16859
[InstallAPI] Simplify & improve symbol printing for diagnostics (#85894)
cyndyishida Mar 20, 2024
05bde30
Move assertion for AdjustsStack from PEI to MachineVerifier. (#85698)
JonPsson1 Mar 20, 2024
5fb2797
[GOFF][z/OS] Change PrivateGlobalPrefix and PrivateLabelPrefix to be …
Everybody0523 Mar 20, 2024
972f65a
[clang][NFC] Add documentation for `CastExpr::path()`. (#85623)
martinboehme Mar 20, 2024
4291ba3
[AutoBump] Merge with 972f65a8
mgehre-amd Aug 15, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions clang/docs/ReleaseNotes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -193,6 +193,8 @@ Modified Compiler Flags
``-Wreturn-type``, and moved some of the diagnostics previously controlled by
``-Wreturn-type`` under this new flag. Fixes #GH72116.

- Added ``-Wcast-function-type`` as a warning enabled by ``-Wextra``. #GH76872

Removed Compiler Flags
-------------------------

Expand All @@ -210,6 +212,13 @@ Attribute Changes in Clang
and each must be a positive integer when provided. The parameter ``x`` is required, while ``y`` and
``z`` are optional with default value of 1.

- The ``swiftasynccc`` attribute is now considered to be a Clang extension
rather than a language standard feature. Please use
``__has_extension(swiftasynccc)`` to check the availability of this attribute
for the target platform instead of ``__has_feature(swiftasynccc)``. Also,
added a new extension query ``__has_extension(swiftcc)`` corresponding to the
``__attribute__((swiftcc))`` attribute.

Improvements to Clang's diagnostics
-----------------------------------
- Clang now applies syntax highlighting to the code snippets it
Expand Down
12 changes: 12 additions & 0 deletions clang/include/clang/AST/Expr.h
Original file line number Diff line number Diff line change
Expand Up @@ -3562,6 +3562,18 @@ class CastExpr : public Expr {
path_const_iterator path_begin() const { return path_buffer(); }
path_const_iterator path_end() const { return path_buffer() + path_size(); }

/// Path through the class hierarchy taken by casts between base and derived
/// classes (see implementation of `CastConsistency()` for a full list of
/// cast kinds that have a path).
///
/// For each derived-to-base edge in the path, the path contains a
/// `CXXBaseSpecifier` for the base class of that edge; the entries are
/// ordered from derived class to base class.
///
/// For example, given classes `Base`, `Intermediate : public Base` and
/// `Derived : public Intermediate`, the path for a cast from `Derived *` to
/// `Base *` contains two entries: One for `Intermediate`, and one for `Base`,
/// in that order.
llvm::iterator_range<path_iterator> path() {
return llvm::make_range(path_begin(), path_end());
}
Expand Down
13 changes: 9 additions & 4 deletions clang/include/clang/Basic/AttrDocs.td
Original file line number Diff line number Diff line change
Expand Up @@ -5137,10 +5137,11 @@ that does not. A single parameter may not have multiple ABI treatment
attributes.

Support for this feature is target-dependent, although it should be
supported on every target that Swift supports. Query for this support
with ``__has_attribute(swiftcall)``. This implies support for the
``swift_context``, ``swift_error_result``, and ``swift_indirect_result``
attributes.
supported on every target that Swift supports. Query for this attribute
with ``__has_attribute(swiftcall)``. Query if the target supports the
calling convention with ``__has_extension(swiftcc)``. This implies
support for the ``swift_context``, ``swift_error_result``, and
``swift_indirect_result`` attributes.
}];
}

Expand Down Expand Up @@ -5187,6 +5188,10 @@ the following:
semantically be performed after a guaranteed tail call, such as the
non-trivial destruction of a local variable or temporary,
then the program is ill-formed.

Query for this attribute with ``__has_attribute(swiftasynccall)``. Query if
the target supports the calling convention with
``__has_extension(swiftasynccc)``.
}];
}

Expand Down
1 change: 1 addition & 0 deletions clang/include/clang/Basic/DiagnosticGroups.td
Original file line number Diff line number Diff line change
Expand Up @@ -1038,6 +1038,7 @@ def Extra : DiagGroup<"extra", [
EmptyInitStatement,
StringConcatation,
FUseLdPath,
CastFunctionType,
]>;

def Most : DiagGroup<"most", [
Expand Down
5 changes: 4 additions & 1 deletion clang/include/clang/Basic/Features.def
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,10 @@ FEATURE(thread_sanitizer, LangOpts.Sanitize.has(SanitizerKind::Thread))
FEATURE(dataflow_sanitizer, LangOpts.Sanitize.has(SanitizerKind::DataFlow))
FEATURE(scudo, LangOpts.Sanitize.hasOneOf(SanitizerKind::Scudo))
FEATURE(ptrauth_intrinsics, LangOpts.PointerAuthIntrinsics)
FEATURE(swiftasynccc,
EXTENSION(swiftcc,
PP.getTargetInfo().checkCallingConvention(CC_Swift) ==
clang::TargetInfo::CCCR_OK)
EXTENSION(swiftasynccc,
PP.getTargetInfo().checkCallingConvention(CC_SwiftAsync) ==
clang::TargetInfo::CCCR_OK)
FEATURE(pragma_stdc_cx_limited_range, true)
Expand Down
4 changes: 4 additions & 0 deletions clang/include/clang/InstallAPI/DylibVerifier.h
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,10 @@ class DylibVerifier {
/// Find matching dylib slice for target triple that is being parsed.
void assignSlice(const Target &T);

/// Gather annotations for symbol for error reporting.
std::string getAnnotatedName(const Record *R, SymbolContext &SymCtx,
bool ValidSourceLoc = true);

// Symbols in dylib.
llvm::MachO::Records Dylib;

Expand Down
2 changes: 2 additions & 0 deletions clang/include/clang/InstallAPI/MachO.h
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,13 @@
using SymbolFlags = llvm::MachO::SymbolFlags;
using RecordLinkage = llvm::MachO::RecordLinkage;
using Record = llvm::MachO::Record;
using EncodeKind = llvm::MachO::EncodeKind;
using GlobalRecord = llvm::MachO::GlobalRecord;
using ObjCContainerRecord = llvm::MachO::ObjCContainerRecord;
using ObjCInterfaceRecord = llvm::MachO::ObjCInterfaceRecord;
using ObjCCategoryRecord = llvm::MachO::ObjCCategoryRecord;
using ObjCIVarRecord = llvm::MachO::ObjCIVarRecord;
using ObjCIFSymbolKind = llvm::MachO::ObjCIFSymbolKind;
using Records = llvm::MachO::Records;
using RecordsSlice = llvm::MachO::RecordsSlice;
using BinaryAttrs = llvm::MachO::RecordsSlice::BinaryAttrs;
Expand Down
16 changes: 10 additions & 6 deletions clang/lib/Driver/Driver.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4645,13 +4645,17 @@ Action *Driver::BuildOffloadingActions(Compilation &C,
}
}

// HIP code in non-RDC mode will bundle the output if it invoked the linker.
bool ShouldBundleHIP =
C.isOffloadingHostKind(Action::OFK_HIP) &&
Args.hasFlag(options::OPT_gpu_bundle_output,
options::OPT_no_gpu_bundle_output, true) &&
!Args.hasFlag(options::OPT_fgpu_rdc, options::OPT_fno_gpu_rdc, false) &&
!llvm::any_of(OffloadActions,
[](Action *A) { return A->getType() != types::TY_Image; });

// All kinds exit now in device-only mode except for non-RDC mode HIP.
if (offloadDeviceOnly() &&
(getFinalPhase(Args) == phases::Preprocess ||
!C.isOffloadingHostKind(Action::OFK_HIP) ||
!Args.hasFlag(options::OPT_gpu_bundle_output,
options::OPT_no_gpu_bundle_output, true) ||
Args.hasFlag(options::OPT_fgpu_rdc, options::OPT_fno_gpu_rdc, false)))
if (offloadDeviceOnly() && !ShouldBundleHIP)
return C.MakeAction<OffloadAction>(DDeps, types::TY_Nothing);

if (OffloadActions.empty())
Expand Down
Loading