mirror of
https://github.com/freebsd/freebsd-src.git
synced 2024-11-27 13:32:45 +00:00
Merge llvm-project release/15.x llvmorg-15.0.2-10-gf3c5289e7846
This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to llvmorg-15.0.2-10-gf3c5289e7846. PR: 265425 MFC after: 2 weeks
This commit is contained in:
commit
6246ae0b85
@ -52,7 +52,7 @@
|
||||
# xargs -n1 | sort | uniq -d;
|
||||
# done
|
||||
|
||||
# 20230208: new clang import which bumps version from 14.0.5 to 15.0.0
|
||||
# 20230208: new clang import which bumps version from 14.0.5 to 15.0.3
|
||||
OLD_FILES+=usr/lib/clang/14.0.5/include/cuda_wrappers/algorithm
|
||||
OLD_FILES+=usr/lib/clang/14.0.5/include/cuda_wrappers/complex
|
||||
OLD_FILES+=usr/lib/clang/14.0.5/include/cuda_wrappers/new
|
||||
@ -363,7 +363,7 @@ OLD_FILES+=usr/lib/clang/14.0.5/share/msan_ignorelist.txt
|
||||
OLD_DIRS+=usr/lib/clang/14.0.5/share
|
||||
OLD_DIRS+=usr/lib/clang/14.0.5
|
||||
|
||||
# 20230208: new libc++ import which bumps version from 14.0.5 to 15.0.0
|
||||
# 20230208: new libc++ import which bumps version from 14.0.5 to 15.0.3
|
||||
OLD_FILES+=usr/include/c++/v1/__functional_base
|
||||
OLD_FILES+=usr/include/c++/v1/__libcpp_version
|
||||
OLD_FILES+=usr/include/c++/v1/__nullptr
|
||||
|
@ -419,7 +419,7 @@ def warn_implicit_function_decl : Warning<
|
||||
InGroup<ImplicitFunctionDeclare>, DefaultIgnore;
|
||||
def ext_implicit_function_decl_c99 : ExtWarn<
|
||||
"call to undeclared function %0; ISO C99 and later do not support implicit "
|
||||
"function declarations">, InGroup<ImplicitFunctionDeclare>, DefaultError;
|
||||
"function declarations">, InGroup<ImplicitFunctionDeclare>;
|
||||
def note_function_suggestion : Note<"did you mean %0?">;
|
||||
|
||||
def err_ellipsis_first_param : Error<
|
||||
@ -705,7 +705,7 @@ def ext_implicit_lib_function_decl : ExtWarn<
|
||||
def ext_implicit_lib_function_decl_c99 : ExtWarn<
|
||||
"call to undeclared library function '%0' with type %1; ISO C99 and later "
|
||||
"do not support implicit function declarations">,
|
||||
InGroup<ImplicitFunctionDeclare>, DefaultError;
|
||||
InGroup<ImplicitFunctionDeclare>;
|
||||
def note_include_header_or_declare : Note<
|
||||
"include the header <%0> or explicitly provide a declaration for '%1'">;
|
||||
def note_previous_builtin_declaration : Note<"%0 is a builtin with type %1">;
|
||||
@ -4359,7 +4359,7 @@ def err_ident_list_in_fn_declaration : Error<
|
||||
"a parameter list without types is only allowed in a function definition">;
|
||||
def ext_param_not_declared : ExtWarn<
|
||||
"parameter %0 was not declared, defaults to 'int'; ISO C99 and later do not "
|
||||
"support implicit int">, InGroup<ImplicitInt>, DefaultError;
|
||||
"support implicit int">, InGroup<ImplicitInt>;
|
||||
def err_param_default_argument : Error<
|
||||
"C does not support default arguments">;
|
||||
def err_param_default_argument_redefinition : Error<
|
||||
@ -10029,7 +10029,7 @@ def warn_receiver_forward_class : Warning<
|
||||
def note_method_sent_forward_class : Note<"method %0 is used for the forward class">;
|
||||
def ext_missing_type_specifier : ExtWarn<
|
||||
"type specifier missing, defaults to 'int'; ISO C99 and later do not support "
|
||||
"implicit int">, InGroup<ImplicitInt>, DefaultError;
|
||||
"implicit int">, InGroup<ImplicitInt>;
|
||||
def err_missing_type_specifier : Error<
|
||||
"a type specifier is required for all declarations">;
|
||||
def err_decimal_unsupported : Error<
|
||||
|
@ -1993,7 +1993,7 @@ void StmtPrinter::VisitUserDefinedLiteral(UserDefinedLiteral *Node) {
|
||||
cast<FunctionDecl>(DRE->getDecl())->getTemplateSpecializationArgs();
|
||||
assert(Args);
|
||||
|
||||
if (Args->size() != 1) {
|
||||
if (Args->size() != 1 || Args->get(0).getKind() != TemplateArgument::Pack) {
|
||||
const TemplateParameterList *TPL = nullptr;
|
||||
if (!DRE->hadMultipleCandidates())
|
||||
if (const auto *TD = dyn_cast<TemplateDecl>(DRE->getDecl()))
|
||||
|
@ -1509,6 +1509,21 @@ void CodeGenFunction::EmitCaseStmt(const CaseStmt &S,
|
||||
|
||||
llvm::ConstantInt *CaseVal =
|
||||
Builder.getInt(S.getLHS()->EvaluateKnownConstInt(getContext()));
|
||||
|
||||
// Emit debuginfo for the case value if it is an enum value.
|
||||
const ConstantExpr *CE;
|
||||
if (auto ICE = dyn_cast<ImplicitCastExpr>(S.getLHS()))
|
||||
CE = dyn_cast<ConstantExpr>(ICE->getSubExpr());
|
||||
else
|
||||
CE = dyn_cast<ConstantExpr>(S.getLHS());
|
||||
if (CE) {
|
||||
if (auto DE = dyn_cast<DeclRefExpr>(CE->getSubExpr()))
|
||||
if (CGDebugInfo *Dbg = getDebugInfo())
|
||||
if (CGM.getCodeGenOpts().hasReducedDebugInfo())
|
||||
Dbg->EmitGlobalVariable(DE->getDecl(),
|
||||
APValue(llvm::APSInt(CaseVal->getValue())));
|
||||
}
|
||||
|
||||
if (SwitchLikelihood)
|
||||
SwitchLikelihood->push_back(Stmt::getLikelihood(Attrs));
|
||||
|
||||
|
@ -1377,19 +1377,23 @@ struct CounterCoverageMappingBuilder
|
||||
|
||||
// Extend into the condition before we propagate through it below - this is
|
||||
// needed to handle macros that generate the "if" but not the condition.
|
||||
extendRegion(S->getCond());
|
||||
if (!S->isConsteval())
|
||||
extendRegion(S->getCond());
|
||||
|
||||
Counter ParentCount = getRegion().getCounter();
|
||||
Counter ThenCount = getRegionCounter(S);
|
||||
|
||||
// Emitting a counter for the condition makes it easier to interpret the
|
||||
// counter for the body when looking at the coverage.
|
||||
propagateCounts(ParentCount, S->getCond());
|
||||
if (!S->isConsteval()) {
|
||||
// Emitting a counter for the condition makes it easier to interpret the
|
||||
// counter for the body when looking at the coverage.
|
||||
propagateCounts(ParentCount, S->getCond());
|
||||
|
||||
// The 'then' count applies to the area immediately after the condition.
|
||||
auto Gap = findGapAreaBetween(S->getRParenLoc(), getStart(S->getThen()));
|
||||
if (Gap)
|
||||
fillGapAreaWithCount(Gap->getBegin(), Gap->getEnd(), ThenCount);
|
||||
// The 'then' count applies to the area immediately after the condition.
|
||||
Optional<SourceRange> Gap =
|
||||
findGapAreaBetween(S->getRParenLoc(), getStart(S->getThen()));
|
||||
if (Gap)
|
||||
fillGapAreaWithCount(Gap->getBegin(), Gap->getEnd(), ThenCount);
|
||||
}
|
||||
|
||||
extendRegion(S->getThen());
|
||||
Counter OutCount = propagateCounts(ThenCount, S->getThen());
|
||||
@ -1398,9 +1402,9 @@ struct CounterCoverageMappingBuilder
|
||||
if (const Stmt *Else = S->getElse()) {
|
||||
bool ThenHasTerminateStmt = HasTerminateStmt;
|
||||
HasTerminateStmt = false;
|
||||
|
||||
// The 'else' count applies to the area immediately after the 'then'.
|
||||
Gap = findGapAreaBetween(getEnd(S->getThen()), getStart(Else));
|
||||
Optional<SourceRange> Gap =
|
||||
findGapAreaBetween(getEnd(S->getThen()), getStart(Else));
|
||||
if (Gap)
|
||||
fillGapAreaWithCount(Gap->getBegin(), Gap->getEnd(), ElseCount);
|
||||
extendRegion(Else);
|
||||
@ -1416,9 +1420,11 @@ struct CounterCoverageMappingBuilder
|
||||
GapRegionCounter = OutCount;
|
||||
}
|
||||
|
||||
// Create Branch Region around condition.
|
||||
createBranchRegion(S->getCond(), ThenCount,
|
||||
subtractCounters(ParentCount, ThenCount));
|
||||
if (!S->isConsteval()) {
|
||||
// Create Branch Region around condition.
|
||||
createBranchRegion(S->getCond(), ThenCount,
|
||||
subtractCounters(ParentCount, ThenCount));
|
||||
}
|
||||
}
|
||||
|
||||
void VisitCXXTryStmt(const CXXTryStmt *S) {
|
||||
|
@ -695,10 +695,10 @@ void InitListChecker::FillInEmptyInitForField(unsigned Init, FieldDecl *Field,
|
||||
// member of reference type uninitialized, the program is
|
||||
// ill-formed.
|
||||
SemaRef.Diag(Loc, diag::err_init_reference_member_uninitialized)
|
||||
<< Field->getType()
|
||||
<< ILE->getSyntacticForm()->getSourceRange();
|
||||
SemaRef.Diag(Field->getLocation(),
|
||||
diag::note_uninit_reference_member);
|
||||
<< Field->getType()
|
||||
<< (ILE->isSyntacticForm() ? ILE : ILE->getSyntacticForm())
|
||||
->getSourceRange();
|
||||
SemaRef.Diag(Field->getLocation(), diag::note_uninit_reference_member);
|
||||
}
|
||||
hadError = true;
|
||||
return;
|
||||
|
@ -165,8 +165,8 @@ struct TransferableCommand {
|
||||
const unsigned OldPos = Pos;
|
||||
std::unique_ptr<llvm::opt::Arg> Arg(OptTable.ParseOneArg(
|
||||
ArgList, Pos,
|
||||
/* Include */ ClangCLMode ? CoreOption | CLOption : 0,
|
||||
/* Exclude */ ClangCLMode ? 0 : CLOption));
|
||||
/* Include */ ClangCLMode ? CoreOption | CLOption | CLDXCOption : 0,
|
||||
/* Exclude */ ClangCLMode ? 0 : CLOption | CLDXCOption));
|
||||
|
||||
if (!Arg)
|
||||
continue;
|
||||
|
@ -55,45 +55,140 @@ getTokensCovering(llvm::ArrayRef<syntax::Token> Toks, SourceRange R,
|
||||
return {Begin, End};
|
||||
}
|
||||
|
||||
// Finds the smallest expansion range that contains expanded tokens First and
|
||||
// Last, e.g.:
|
||||
// Finds the range within FID corresponding to expanded tokens [First, Last].
|
||||
// Prev precedes First and Next follows Last, these must *not* be included.
|
||||
// If no range satisfies the criteria, returns an invalid range.
|
||||
//
|
||||
// #define ID(x) x
|
||||
// ID(ID(ID(a1) a2))
|
||||
// ~~ -> a1
|
||||
// ~~ -> a2
|
||||
// ~~~~~~~~~ -> a1 a2
|
||||
SourceRange findCommonRangeForMacroArgs(const syntax::Token &First,
|
||||
const syntax::Token &Last,
|
||||
const SourceManager &SM) {
|
||||
SourceRange Res;
|
||||
auto FirstLoc = First.location(), LastLoc = Last.location();
|
||||
// Keep traversing up the spelling chain as longs as tokens are part of the
|
||||
// same expansion.
|
||||
while (!FirstLoc.isFileID() && !LastLoc.isFileID()) {
|
||||
auto ExpInfoFirst = SM.getSLocEntry(SM.getFileID(FirstLoc)).getExpansion();
|
||||
auto ExpInfoLast = SM.getSLocEntry(SM.getFileID(LastLoc)).getExpansion();
|
||||
// Stop if expansions have diverged.
|
||||
if (ExpInfoFirst.getExpansionLocStart() !=
|
||||
ExpInfoLast.getExpansionLocStart())
|
||||
SourceRange spelledForExpandedSlow(SourceLocation First, SourceLocation Last,
|
||||
SourceLocation Prev, SourceLocation Next,
|
||||
FileID TargetFile,
|
||||
const SourceManager &SM) {
|
||||
// There are two main parts to this algorithm:
|
||||
// - identifying which spelled range covers the expanded tokens
|
||||
// - validating that this range doesn't cover any extra tokens (First/Last)
|
||||
//
|
||||
// We do these in order. However as we transform the expanded range into the
|
||||
// spelled one, we adjust First/Last so the validation remains simple.
|
||||
|
||||
assert(SM.getSLocEntry(TargetFile).isFile());
|
||||
// In most cases, to select First and Last we must return their expansion
|
||||
// range, i.e. the whole of any macros they are included in.
|
||||
//
|
||||
// When First and Last are part of the *same macro arg* of a macro written
|
||||
// in TargetFile, we that slice of the arg, i.e. their spelling range.
|
||||
//
|
||||
// Unwrap such macro calls. If the target file has A(B(C)), the
|
||||
// SourceLocation stack of a token inside C shows us the expansion of A first,
|
||||
// then B, then any macros inside C's body, then C itself.
|
||||
// (This is the reverse of the order the PP applies the expansions in).
|
||||
while (First.isMacroID() && Last.isMacroID()) {
|
||||
auto DecFirst = SM.getDecomposedLoc(First);
|
||||
auto DecLast = SM.getDecomposedLoc(Last);
|
||||
auto &ExpFirst = SM.getSLocEntry(DecFirst.first).getExpansion();
|
||||
auto &ExpLast = SM.getSLocEntry(DecLast.first).getExpansion();
|
||||
|
||||
if (!ExpFirst.isMacroArgExpansion() || !ExpLast.isMacroArgExpansion())
|
||||
break;
|
||||
// Do not continue into macro bodies.
|
||||
if (!ExpInfoFirst.isMacroArgExpansion() ||
|
||||
!ExpInfoLast.isMacroArgExpansion())
|
||||
// Locations are in the same macro arg if they expand to the same place.
|
||||
// (They may still have different FileIDs - an arg can have >1 chunks!)
|
||||
if (ExpFirst.getExpansionLocStart() != ExpLast.getExpansionLocStart())
|
||||
break;
|
||||
FirstLoc = SM.getImmediateSpellingLoc(FirstLoc);
|
||||
LastLoc = SM.getImmediateSpellingLoc(LastLoc);
|
||||
// Update the result afterwards, as we want the tokens that triggered the
|
||||
// expansion.
|
||||
Res = {FirstLoc, LastLoc};
|
||||
// Careful, given:
|
||||
// #define HIDE ID(ID(a))
|
||||
// ID(ID(HIDE))
|
||||
// The token `a` is wrapped in 4 arg-expansions, we only want to unwrap 2.
|
||||
// We distinguish them by whether the macro expands into the target file.
|
||||
// Fortunately, the target file ones will always appear first.
|
||||
auto &ExpMacro =
|
||||
SM.getSLocEntry(SM.getFileID(ExpFirst.getExpansionLocStart()))
|
||||
.getExpansion();
|
||||
if (ExpMacro.getExpansionLocStart().isMacroID())
|
||||
break;
|
||||
// Replace each endpoint with its spelling inside the macro arg.
|
||||
// (This is getImmediateSpellingLoc without repeating lookups).
|
||||
First = ExpFirst.getSpellingLoc().getLocWithOffset(DecFirst.second);
|
||||
Last = ExpLast.getSpellingLoc().getLocWithOffset(DecLast.second);
|
||||
|
||||
// Now: how do we adjust the previous/next bounds? Three cases:
|
||||
// A) If they are also part of the same macro arg, we translate them too.
|
||||
// This will ensure that we don't select any macros nested within the
|
||||
// macro arg that cover extra tokens. Critical case:
|
||||
// #define ID(X) X
|
||||
// ID(prev target) // selecting 'target' succeeds
|
||||
// #define LARGE ID(prev target)
|
||||
// LARGE // selecting 'target' fails.
|
||||
// B) They are not in the macro at all, then their expansion range is a
|
||||
// sibling to it, and we can safely substitute that.
|
||||
// #define PREV prev
|
||||
// #define ID(X) X
|
||||
// PREV ID(target) // selecting 'target' succeeds.
|
||||
// #define LARGE PREV ID(target)
|
||||
// LARGE // selecting 'target' fails.
|
||||
// C) They are in a different arg of this macro, or the macro body.
|
||||
// Now selecting the whole macro arg is fine, but the whole macro is not.
|
||||
// Model this by setting using the edge of the macro call as the bound.
|
||||
// #define ID2(X, Y) X Y
|
||||
// ID2(prev, target) // selecting 'target' succeeds
|
||||
// #define LARGE ID2(prev, target)
|
||||
// LARGE // selecting 'target' fails
|
||||
auto AdjustBound = [&](SourceLocation &Bound) {
|
||||
if (Bound.isInvalid() || !Bound.isMacroID()) // Non-macro must be case B.
|
||||
return;
|
||||
auto DecBound = SM.getDecomposedLoc(Bound);
|
||||
auto &ExpBound = SM.getSLocEntry(DecBound.first).getExpansion();
|
||||
if (ExpBound.isMacroArgExpansion() &&
|
||||
ExpBound.getExpansionLocStart() == ExpFirst.getExpansionLocStart()) {
|
||||
// Case A: translate to (spelling) loc within the macro arg.
|
||||
Bound = ExpBound.getSpellingLoc().getLocWithOffset(DecBound.second);
|
||||
return;
|
||||
}
|
||||
while (Bound.isMacroID()) {
|
||||
SourceRange Exp = SM.getImmediateExpansionRange(Bound).getAsRange();
|
||||
if (Exp.getBegin() == ExpMacro.getExpansionLocStart()) {
|
||||
// Case B: bounds become the macro call itself.
|
||||
Bound = (&Bound == &Prev) ? Exp.getBegin() : Exp.getEnd();
|
||||
return;
|
||||
}
|
||||
// Either case C, or expansion location will later find case B.
|
||||
// We choose the upper bound for Prev and the lower one for Next:
|
||||
// ID(prev) target ID(next)
|
||||
// ^ ^
|
||||
// new-prev new-next
|
||||
Bound = (&Bound == &Prev) ? Exp.getEnd() : Exp.getBegin();
|
||||
}
|
||||
};
|
||||
AdjustBound(Prev);
|
||||
AdjustBound(Next);
|
||||
}
|
||||
// Normally mapping back to expansion location here only changes FileID, as
|
||||
// we've already found some tokens expanded from the same macro argument, and
|
||||
// they should map to a consecutive subset of spelled tokens. Unfortunately
|
||||
// SourceManager::isBeforeInTranslationUnit discriminates sourcelocations
|
||||
// based on their FileID in addition to offsets. So even though we are
|
||||
// referring to same tokens, SourceManager might tell us that one is before
|
||||
// the other if they've got different FileIDs.
|
||||
return SM.getExpansionRange(CharSourceRange(Res, true)).getAsRange();
|
||||
|
||||
// In all remaining cases we need the full containing macros.
|
||||
// If this overlaps Prev or Next, then no range is possible.
|
||||
SourceRange Candidate =
|
||||
SM.getExpansionRange(SourceRange(First, Last)).getAsRange();
|
||||
auto DecFirst = SM.getDecomposedExpansionLoc(Candidate.getBegin());
|
||||
auto DecLast = SM.getDecomposedLoc(Candidate.getEnd());
|
||||
// Can end up in the wrong file due to bad input or token-pasting shenanigans.
|
||||
if (Candidate.isInvalid() || DecFirst.first != TargetFile || DecLast.first != TargetFile)
|
||||
return SourceRange();
|
||||
// Check bounds, which may still be inside macros.
|
||||
if (Prev.isValid()) {
|
||||
auto Dec = SM.getDecomposedLoc(SM.getExpansionRange(Prev).getBegin());
|
||||
if (Dec.first != DecFirst.first || Dec.second >= DecFirst.second)
|
||||
return SourceRange();
|
||||
}
|
||||
if (Next.isValid()) {
|
||||
auto Dec = SM.getDecomposedLoc(SM.getExpansionRange(Next).getEnd());
|
||||
if (Dec.first != DecLast.first || Dec.second <= DecLast.second)
|
||||
return SourceRange();
|
||||
}
|
||||
// Now we know that Candidate is a file range that covers [First, Last]
|
||||
// without encroaching on {Prev, Next}. Ship it!
|
||||
return Candidate;
|
||||
}
|
||||
|
||||
} // namespace
|
||||
@ -363,51 +458,50 @@ TokenBuffer::spelledForExpanded(llvm::ArrayRef<syntax::Token> Expanded) const {
|
||||
// of the range, bail out in that case.
|
||||
if (Expanded.empty())
|
||||
return llvm::None;
|
||||
const syntax::Token *First = &Expanded.front();
|
||||
const syntax::Token *Last = &Expanded.back();
|
||||
const syntax::Token *FirstSpelled, *LastSpelled;
|
||||
const TokenBuffer::Mapping *FirstMapping, *LastMapping;
|
||||
std::tie(FirstSpelled, FirstMapping) = spelledForExpandedToken(First);
|
||||
std::tie(LastSpelled, LastMapping) = spelledForExpandedToken(Last);
|
||||
|
||||
const syntax::Token *BeginSpelled;
|
||||
const Mapping *BeginMapping;
|
||||
std::tie(BeginSpelled, BeginMapping) =
|
||||
spelledForExpandedToken(&Expanded.front());
|
||||
|
||||
const syntax::Token *LastSpelled;
|
||||
const Mapping *LastMapping;
|
||||
std::tie(LastSpelled, LastMapping) =
|
||||
spelledForExpandedToken(&Expanded.back());
|
||||
|
||||
FileID FID = SourceMgr->getFileID(BeginSpelled->location());
|
||||
FileID FID = SourceMgr->getFileID(FirstSpelled->location());
|
||||
// FIXME: Handle multi-file changes by trying to map onto a common root.
|
||||
if (FID != SourceMgr->getFileID(LastSpelled->location()))
|
||||
return llvm::None;
|
||||
|
||||
const MarkedFile &File = Files.find(FID)->second;
|
||||
|
||||
// If both tokens are coming from a macro argument expansion, try and map to
|
||||
// smallest part of the macro argument. BeginMapping && LastMapping check is
|
||||
// only for performance, they are a prerequisite for Expanded.front() and
|
||||
// Expanded.back() being part of a macro arg expansion.
|
||||
if (BeginMapping && LastMapping &&
|
||||
SourceMgr->isMacroArgExpansion(Expanded.front().location()) &&
|
||||
SourceMgr->isMacroArgExpansion(Expanded.back().location())) {
|
||||
auto CommonRange = findCommonRangeForMacroArgs(Expanded.front(),
|
||||
Expanded.back(), *SourceMgr);
|
||||
// It might be the case that tokens are arguments of different macro calls,
|
||||
// in that case we should continue with the logic below instead of returning
|
||||
// an empty range.
|
||||
if (CommonRange.isValid())
|
||||
return getTokensCovering(File.SpelledTokens, CommonRange, *SourceMgr);
|
||||
// If the range is within one macro argument, the result may be only part of a
|
||||
// Mapping. We must use the general (SourceManager-based) algorithm.
|
||||
if (FirstMapping && FirstMapping == LastMapping &&
|
||||
SourceMgr->isMacroArgExpansion(First->location()) &&
|
||||
SourceMgr->isMacroArgExpansion(Last->location())) {
|
||||
// We use excluded Prev/Next token for bounds checking.
|
||||
SourceLocation Prev = (First == &ExpandedTokens.front())
|
||||
? SourceLocation()
|
||||
: (First - 1)->location();
|
||||
SourceLocation Next = (Last == &ExpandedTokens.back())
|
||||
? SourceLocation()
|
||||
: (Last + 1)->location();
|
||||
SourceRange Range = spelledForExpandedSlow(
|
||||
First->location(), Last->location(), Prev, Next, FID, *SourceMgr);
|
||||
if (Range.isInvalid())
|
||||
return llvm::None;
|
||||
return getTokensCovering(File.SpelledTokens, Range, *SourceMgr);
|
||||
}
|
||||
|
||||
// Otherwise, use the fast version based on Mappings.
|
||||
// Do not allow changes that doesn't cover full expansion.
|
||||
unsigned BeginExpanded = Expanded.begin() - ExpandedTokens.data();
|
||||
unsigned EndExpanded = Expanded.end() - ExpandedTokens.data();
|
||||
if (BeginMapping && BeginExpanded != BeginMapping->BeginExpanded)
|
||||
unsigned FirstExpanded = Expanded.begin() - ExpandedTokens.data();
|
||||
unsigned LastExpanded = Expanded.end() - ExpandedTokens.data();
|
||||
if (FirstMapping && FirstExpanded != FirstMapping->BeginExpanded)
|
||||
return llvm::None;
|
||||
if (LastMapping && LastMapping->EndExpanded != EndExpanded)
|
||||
if (LastMapping && LastMapping->EndExpanded != LastExpanded)
|
||||
return llvm::None;
|
||||
// All is good, return the result.
|
||||
return llvm::makeArrayRef(
|
||||
BeginMapping ? File.SpelledTokens.data() + BeginMapping->BeginSpelled
|
||||
: BeginSpelled,
|
||||
FirstMapping ? File.SpelledTokens.data() + FirstMapping->BeginSpelled
|
||||
: FirstSpelled,
|
||||
LastMapping ? File.SpelledTokens.data() + LastMapping->EndSpelled
|
||||
: LastSpelled + 1);
|
||||
}
|
||||
|
@ -22,9 +22,21 @@
|
||||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#if defined(__apple_build_version__)
|
||||
# define _LIBCPP_COMPILER_CLANG_BASED
|
||||
# define _LIBCPP_APPLE_CLANG_VER (__apple_build_version__ / 10000)
|
||||
#elif defined(__clang__)
|
||||
# define _LIBCPP_COMPILER_CLANG_BASED
|
||||
# define _LIBCPP_CLANG_VER (__clang_major__ * 100 + __clang_minor__)
|
||||
#elif defined(__GNUC__)
|
||||
# define _LIBCPP_COMPILER_GCC
|
||||
#elif defined(_MSC_VER)
|
||||
# define _LIBCPP_COMPILER_MSVC
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
# define _LIBCPP_VERSION 15000
|
||||
# define _LIBCPP_VERSION 15003
|
||||
|
||||
# define _LIBCPP_CONCAT_IMPL(_X, _Y) _X##_Y
|
||||
# define _LIBCPP_CONCAT(_X, _Y) _LIBCPP_CONCAT_IMPL(_X, _Y)
|
||||
@ -198,18 +210,6 @@
|
||||
# define __has_include(...) 0
|
||||
# endif
|
||||
|
||||
# if defined(__apple_build_version__)
|
||||
# define _LIBCPP_COMPILER_CLANG_BASED
|
||||
# define _LIBCPP_APPLE_CLANG_VER (__apple_build_version__ / 10000)
|
||||
# elif defined(__clang__)
|
||||
# define _LIBCPP_COMPILER_CLANG_BASED
|
||||
# define _LIBCPP_CLANG_VER (__clang_major__ * 100 + __clang_minor__)
|
||||
# elif defined(__GNUC__)
|
||||
# define _LIBCPP_COMPILER_GCC
|
||||
# elif defined(_MSC_VER)
|
||||
# define _LIBCPP_COMPILER_MSVC
|
||||
# endif
|
||||
|
||||
# if !defined(_LIBCPP_COMPILER_CLANG_BASED) && __cplusplus < 201103L
|
||||
# error "libc++ only supports C++03 with Clang-based compilers. Please enable C++11"
|
||||
# endif
|
||||
@ -1101,6 +1101,13 @@ _LIBCPP_BEGIN_NAMESPACE_STD _LIBCPP_END_NAMESPACE_STD
|
||||
# define _LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION
|
||||
# endif // _LIBCPP_ENABLE_CXX17_REMOVED_FEATURES
|
||||
|
||||
// Leave the deprecation notices in by default, but don't remove unary_function and
|
||||
// binary_function entirely just yet. That way, folks will have one release to act
|
||||
// on the deprecation warnings.
|
||||
# ifndef _LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION
|
||||
# define _LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION
|
||||
# endif
|
||||
|
||||
# if defined(_LIBCPP_ENABLE_CXX20_REMOVED_FEATURES)
|
||||
# define _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS
|
||||
# define _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_VOID_SPECIALIZATION
|
||||
|
@ -1113,6 +1113,12 @@ _Tp kill_dependency(_Tp __y) _NOEXCEPT
|
||||
# define ATOMIC_POINTER_LOCK_FREE __GCC_ATOMIC_POINTER_LOCK_FREE
|
||||
#endif
|
||||
|
||||
template <class _Tp>
|
||||
struct __libcpp_is_always_lock_free {
|
||||
// __atomic_always_lock_free is available in all Standard modes
|
||||
static const bool __value = __atomic_always_lock_free(sizeof(_Tp), 0);
|
||||
};
|
||||
|
||||
#ifdef _LIBCPP_ATOMIC_ONLY_USE_BUILTINS
|
||||
|
||||
template<typename _Tp>
|
||||
@ -1404,42 +1410,8 @@ _Tp __cxx_atomic_fetch_xor(__cxx_atomic_lock_impl<_Tp>* __a,
|
||||
return __old;
|
||||
}
|
||||
|
||||
#ifdef __cpp_lib_atomic_is_always_lock_free
|
||||
|
||||
template<typename _Tp> struct __cxx_is_always_lock_free {
|
||||
enum { __value = __atomic_always_lock_free(sizeof(_Tp), 0) }; };
|
||||
|
||||
#else
|
||||
|
||||
template<typename _Tp> struct __cxx_is_always_lock_free { enum { __value = false }; };
|
||||
// Implementations must match the C ATOMIC_*_LOCK_FREE macro values.
|
||||
template<> struct __cxx_is_always_lock_free<bool> { enum { __value = 2 == ATOMIC_BOOL_LOCK_FREE }; };
|
||||
template<> struct __cxx_is_always_lock_free<char> { enum { __value = 2 == ATOMIC_CHAR_LOCK_FREE }; };
|
||||
template<> struct __cxx_is_always_lock_free<signed char> { enum { __value = 2 == ATOMIC_CHAR_LOCK_FREE }; };
|
||||
template<> struct __cxx_is_always_lock_free<unsigned char> { enum { __value = 2 == ATOMIC_CHAR_LOCK_FREE }; };
|
||||
#ifndef _LIBCPP_HAS_NO_CHAR8_T
|
||||
template<> struct __cxx_is_always_lock_free<char8_t> { enum { __value = 2 == ATOMIC_CHAR8_T_LOCK_FREE }; };
|
||||
#endif
|
||||
template<> struct __cxx_is_always_lock_free<char16_t> { enum { __value = 2 == ATOMIC_CHAR16_T_LOCK_FREE }; };
|
||||
template<> struct __cxx_is_always_lock_free<char32_t> { enum { __value = 2 == ATOMIC_CHAR32_T_LOCK_FREE }; };
|
||||
#ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
|
||||
template<> struct __cxx_is_always_lock_free<wchar_t> { enum { __value = 2 == ATOMIC_WCHAR_T_LOCK_FREE }; };
|
||||
#endif
|
||||
template<> struct __cxx_is_always_lock_free<short> { enum { __value = 2 == ATOMIC_SHORT_LOCK_FREE }; };
|
||||
template<> struct __cxx_is_always_lock_free<unsigned short> { enum { __value = 2 == ATOMIC_SHORT_LOCK_FREE }; };
|
||||
template<> struct __cxx_is_always_lock_free<int> { enum { __value = 2 == ATOMIC_INT_LOCK_FREE }; };
|
||||
template<> struct __cxx_is_always_lock_free<unsigned int> { enum { __value = 2 == ATOMIC_INT_LOCK_FREE }; };
|
||||
template<> struct __cxx_is_always_lock_free<long> { enum { __value = 2 == ATOMIC_LONG_LOCK_FREE }; };
|
||||
template<> struct __cxx_is_always_lock_free<unsigned long> { enum { __value = 2 == ATOMIC_LONG_LOCK_FREE }; };
|
||||
template<> struct __cxx_is_always_lock_free<long long> { enum { __value = 2 == ATOMIC_LLONG_LOCK_FREE }; };
|
||||
template<> struct __cxx_is_always_lock_free<unsigned long long> { enum { __value = 2 == ATOMIC_LLONG_LOCK_FREE }; };
|
||||
template<typename _Tp> struct __cxx_is_always_lock_free<_Tp*> { enum { __value = 2 == ATOMIC_POINTER_LOCK_FREE }; };
|
||||
template<> struct __cxx_is_always_lock_free<std::nullptr_t> { enum { __value = 2 == ATOMIC_POINTER_LOCK_FREE }; };
|
||||
|
||||
#endif //__cpp_lib_atomic_is_always_lock_free
|
||||
|
||||
template <typename _Tp,
|
||||
typename _Base = typename conditional<__cxx_is_always_lock_free<_Tp>::__value,
|
||||
typename _Base = typename conditional<__libcpp_is_always_lock_free<_Tp>::__value,
|
||||
__cxx_atomic_base_impl<_Tp>,
|
||||
__cxx_atomic_lock_impl<_Tp> >::type>
|
||||
#else
|
||||
@ -1562,7 +1534,7 @@ struct __atomic_base // false
|
||||
mutable __cxx_atomic_impl<_Tp> __a_;
|
||||
|
||||
#if defined(__cpp_lib_atomic_is_always_lock_free)
|
||||
static _LIBCPP_CONSTEXPR bool is_always_lock_free = __atomic_always_lock_free(sizeof(__a_), 0);
|
||||
static _LIBCPP_CONSTEXPR bool is_always_lock_free = __libcpp_is_always_lock_free<__cxx_atomic_impl<_Tp> >::__value;
|
||||
#endif
|
||||
|
||||
_LIBCPP_INLINE_VISIBILITY
|
||||
@ -2665,7 +2637,7 @@ typedef atomic<uintmax_t> atomic_uintmax_t;
|
||||
// atomic_*_lock_free : prefer the contention type most highly, then the largest lock-free type
|
||||
|
||||
#ifdef __cpp_lib_atomic_is_always_lock_free
|
||||
# define _LIBCPP_CONTENTION_LOCK_FREE __atomic_always_lock_free(sizeof(__cxx_contention_t), 0)
|
||||
# define _LIBCPP_CONTENTION_LOCK_FREE ::std::__libcpp_is_always_lock_free<__cxx_contention_t>::__value
|
||||
#else
|
||||
# define _LIBCPP_CONTENTION_LOCK_FREE false
|
||||
#endif
|
||||
|
@ -121,7 +121,7 @@ using std::atomic_signal_fence // see below
|
||||
# pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#if _LIBCPP_STD_VER > 20
|
||||
#if defined(__cplusplus) && _LIBCPP_STD_VER > 20
|
||||
|
||||
#include <atomic>
|
||||
#include <version>
|
||||
@ -230,6 +230,6 @@ using std::atomic_thread_fence _LIBCPP_USING_IF_EXISTS;
|
||||
# include_next <stdatomic.h>
|
||||
# endif
|
||||
|
||||
#endif // _LIBCPP_STD_VER > 20
|
||||
#endif // defined(__cplusplus) && _LIBCPP_STD_VER > 20
|
||||
|
||||
#endif // _LIBCPP_STDATOMIC_H
|
||||
|
@ -332,7 +332,7 @@ __cpp_lib_void_t 201411L <type_traits>
|
||||
# undef __cpp_lib_execution
|
||||
// # define __cpp_lib_execution 201902L
|
||||
# if !defined(_LIBCPP_AVAILABILITY_DISABLE_FTM___cpp_lib_format) && !defined(_LIBCPP_HAS_NO_INCOMPLETE_FORMAT)
|
||||
# define __cpp_lib_format 202106L
|
||||
// # define __cpp_lib_format 202106L
|
||||
# endif
|
||||
# define __cpp_lib_generic_unordered_lookup 201811L
|
||||
# define __cpp_lib_int_pow2 202002L
|
||||
|
@ -106,7 +106,10 @@ protected:
|
||||
: symbolKind(k), isExternal(true), isCOMDAT(false),
|
||||
writtenToSymtab(false), pendingArchiveLoad(false), isGCRoot(false),
|
||||
isRuntimePseudoReloc(false), deferUndefined(false), canInline(true),
|
||||
nameSize(n.size()), nameData(n.empty() ? nullptr : n.data()) {}
|
||||
nameSize(n.size()), nameData(n.empty() ? nullptr : n.data()) {
|
||||
assert((!n.empty() || k <= LastDefinedCOFFKind) &&
|
||||
"If the name is empty, the Symbol must be a DefinedCOFF.");
|
||||
}
|
||||
|
||||
const unsigned symbolKind : 8;
|
||||
unsigned isExternal : 1;
|
||||
|
@ -395,7 +395,7 @@ getThunk(DenseMap<uint64_t, Defined *> &lastThunks, Defined *target, uint64_t p,
|
||||
default:
|
||||
llvm_unreachable("Unexpected architecture");
|
||||
}
|
||||
Defined *d = make<DefinedSynthetic>("", c);
|
||||
Defined *d = make<DefinedSynthetic>("range_extension_thunk", c);
|
||||
lastThunk = d;
|
||||
return {d, true};
|
||||
}
|
||||
|
@ -750,12 +750,13 @@ void elf::riscvFinalizeRelax(int passes) {
|
||||
p += size;
|
||||
|
||||
// For R_RISCV_ALIGN, we will place `offset` in a location (among NOPs)
|
||||
// to satisfy the alignment requirement. If `remove` is a multiple of 4,
|
||||
// it is as if we have skipped some NOPs. Otherwise we are in the middle
|
||||
// of a 4-byte NOP, and we need to rewrite the NOP sequence.
|
||||
// to satisfy the alignment requirement. If both `remove` and r.addend
|
||||
// are multiples of 4, it is as if we have skipped some NOPs. Otherwise
|
||||
// we are in the middle of a 4-byte NOP, and we need to rewrite the NOP
|
||||
// sequence.
|
||||
int64_t skip = 0;
|
||||
if (r.type == R_RISCV_ALIGN) {
|
||||
if (remove % 4 != 0) {
|
||||
if (remove % 4 || r.addend % 4) {
|
||||
skip = r.addend - remove;
|
||||
int64_t j = 0;
|
||||
for (; j + 4 <= skip; j += 4)
|
||||
|
@ -1587,6 +1587,15 @@ void ObjFile::registerEhFrames(Section &ehFrameSection) {
|
||||
funcSym->unwindEntry = isec;
|
||||
ehRelocator.commit();
|
||||
}
|
||||
|
||||
// __eh_frame is marked as S_ATTR_LIVE_SUPPORT in input files, because FDEs
|
||||
// are normally required to be kept alive if they reference a live symbol.
|
||||
// However, we've explicitly created a dependency from a symbol to its FDE, so
|
||||
// dead-stripping will just work as usual, and S_ATTR_LIVE_SUPPORT will only
|
||||
// serve to incorrectly prevent us from dead-stripping duplicate FDEs for a
|
||||
// live symbol (e.g. if there were multiple weak copies). Remove this flag to
|
||||
// let dead-stripping proceed correctly.
|
||||
ehFrameSection.flags &= ~S_ATTR_LIVE_SUPPORT;
|
||||
}
|
||||
|
||||
std::string ObjFile::sourceFile() const {
|
||||
|
@ -196,13 +196,13 @@ UnwindInfoSection::UnwindInfoSection()
|
||||
// Record function symbols that may need entries emitted in __unwind_info, which
|
||||
// stores unwind data for address ranges.
|
||||
//
|
||||
// Note that if several adjacent functions have the same unwind encoding, LSDA,
|
||||
// and personality function, they share one unwind entry. For this to work,
|
||||
// functions without unwind info need explicit "no unwind info" unwind entries
|
||||
// -- else the unwinder would think they have the unwind info of the closest
|
||||
// function with unwind info right before in the image. Thus, we add function
|
||||
// symbols for each unique address regardless of whether they have associated
|
||||
// unwind info.
|
||||
// Note that if several adjacent functions have the same unwind encoding and
|
||||
// personality function and no LSDA, they share one unwind entry. For this to
|
||||
// work, functions without unwind info need explicit "no unwind info" unwind
|
||||
// entries -- else the unwinder would think they have the unwind info of the
|
||||
// closest function with unwind info right before in the image. Thus, we add
|
||||
// function symbols for each unique address regardless of whether they have
|
||||
// associated unwind info.
|
||||
void UnwindInfoSection::addSymbol(const Defined *d) {
|
||||
if (d->unwindEntry)
|
||||
allEntriesAreOmitted = false;
|
||||
@ -427,9 +427,9 @@ void UnwindInfoSectionImpl::finalize() {
|
||||
// assigned, so we can relocate the __LD,__compact_unwind entries
|
||||
// into a temporary buffer. Relocation is necessary in order to sort
|
||||
// the CU entries by function address. Sorting is necessary so that
|
||||
// we can fold adjacent CU entries with identical
|
||||
// encoding+personality+lsda. Folding is necessary because it reduces
|
||||
// the number of CU entries by as much as 3 orders of magnitude!
|
||||
// we can fold adjacent CU entries with identical encoding+personality
|
||||
// and without any LSDA. Folding is necessary because it reduces the
|
||||
// number of CU entries by as much as 3 orders of magnitude!
|
||||
cuEntries.resize(symbols.size());
|
||||
// The "map" part of the symbols MapVector was only needed for deduplication
|
||||
// in addSymbol(). Now that we are done adding, move the contents to a plain
|
||||
@ -445,7 +445,7 @@ void UnwindInfoSectionImpl::finalize() {
|
||||
return cuEntries[a].functionAddress < cuEntries[b].functionAddress;
|
||||
});
|
||||
|
||||
// Fold adjacent entries with matching encoding+personality+lsda
|
||||
// Fold adjacent entries with matching encoding+personality and without LSDA
|
||||
// We use three iterators on the same cuIndices to fold in-situ:
|
||||
// (1) `foldBegin` is the first of a potential sequence of matching entries
|
||||
// (2) `foldEnd` is the first non-matching entry after `foldBegin`.
|
||||
@ -455,11 +455,32 @@ void UnwindInfoSectionImpl::finalize() {
|
||||
auto foldWrite = cuIndices.begin();
|
||||
for (auto foldBegin = cuIndices.begin(); foldBegin < cuIndices.end();) {
|
||||
auto foldEnd = foldBegin;
|
||||
// Common LSDA encodings (e.g. for C++ and Objective-C) contain offsets from
|
||||
// a base address. The base address is normally not contained directly in
|
||||
// the LSDA, and in that case, the personality function treats the starting
|
||||
// address of the function (which is computed by the unwinder) as the base
|
||||
// address and interprets the LSDA accordingly. The unwinder computes the
|
||||
// starting address of a function as the address associated with its CU
|
||||
// entry. For this reason, we cannot fold adjacent entries if they have an
|
||||
// LSDA, because folding would make the unwinder compute the wrong starting
|
||||
// address for the functions with the folded entries, which in turn would
|
||||
// cause the personality function to misinterpret the LSDA for those
|
||||
// functions. In the very rare case where the base address is encoded
|
||||
// directly in the LSDA, two functions at different addresses would
|
||||
// necessarily have different LSDAs, so their CU entries would not have been
|
||||
// folded anyway.
|
||||
while (++foldEnd < cuIndices.end() &&
|
||||
cuEntries[*foldBegin].encoding == cuEntries[*foldEnd].encoding &&
|
||||
!cuEntries[*foldBegin].lsda && !cuEntries[*foldEnd].lsda &&
|
||||
// If we've gotten to this point, we don't have an LSDA, which should
|
||||
// also imply that we don't have a personality function, since in all
|
||||
// likelihood a personality function needs the LSDA to do anything
|
||||
// useful. It can be technically valid to have a personality function
|
||||
// and no LSDA though (e.g. the C++ personality __gxx_personality_v0
|
||||
// is just a no-op without LSDA), so we still check for personality
|
||||
// function equivalence to handle that case.
|
||||
cuEntries[*foldBegin].personality ==
|
||||
cuEntries[*foldEnd].personality &&
|
||||
cuEntries[*foldBegin].lsda == cuEntries[*foldEnd].lsda &&
|
||||
canFoldEncoding(cuEntries[*foldEnd].encoding))
|
||||
;
|
||||
*foldWrite++ = *foldBegin;
|
||||
|
@ -144,8 +144,12 @@ private:
|
||||
};
|
||||
|
||||
template <typename ContextT>
|
||||
auto GenericCycleInfo<ContextT>::getTopLevelParentCycle(
|
||||
const BlockT *Block) const -> CycleT * {
|
||||
auto GenericCycleInfo<ContextT>::getTopLevelParentCycle(BlockT *Block)
|
||||
-> CycleT * {
|
||||
auto Cycle = BlockMapTopLevel.find(Block);
|
||||
if (Cycle != BlockMapTopLevel.end())
|
||||
return Cycle->second;
|
||||
|
||||
auto MapIt = BlockMap.find(Block);
|
||||
if (MapIt == BlockMap.end())
|
||||
return nullptr;
|
||||
@ -153,12 +157,15 @@ auto GenericCycleInfo<ContextT>::getTopLevelParentCycle(
|
||||
auto *C = MapIt->second;
|
||||
while (C->ParentCycle)
|
||||
C = C->ParentCycle;
|
||||
BlockMapTopLevel.try_emplace(Block, C);
|
||||
return C;
|
||||
}
|
||||
|
||||
template <typename ContextT>
|
||||
void GenericCycleInfo<ContextT>::moveToNewParent(CycleT *NewParent,
|
||||
CycleT *Child) {
|
||||
void GenericCycleInfo<ContextT>::moveTopLevelCycleToNewParent(CycleT *NewParent,
|
||||
CycleT *Child) {
|
||||
assert((!Child->ParentCycle && !NewParent->ParentCycle) &&
|
||||
"NewParent and Child must be both top level cycle!\n");
|
||||
auto &CurrentContainer =
|
||||
Child->ParentCycle ? Child->ParentCycle->Children : TopLevelCycles;
|
||||
auto Pos = llvm::find_if(CurrentContainer, [=](const auto &Ptr) -> bool {
|
||||
@ -169,6 +176,13 @@ void GenericCycleInfo<ContextT>::moveToNewParent(CycleT *NewParent,
|
||||
*Pos = std::move(CurrentContainer.back());
|
||||
CurrentContainer.pop_back();
|
||||
Child->ParentCycle = NewParent;
|
||||
|
||||
NewParent->Blocks.insert(NewParent->Blocks.end(), Child->block_begin(),
|
||||
Child->block_end());
|
||||
|
||||
for (auto &It : BlockMapTopLevel)
|
||||
if (It.second == Child)
|
||||
It.second = NewParent;
|
||||
}
|
||||
|
||||
/// \brief Main function of the cycle info computations.
|
||||
@ -240,10 +254,7 @@ void GenericCycleInfoCompute<ContextT>::run(BlockT *EntryBlock) {
|
||||
<< "discovered child cycle "
|
||||
<< Info.Context.print(BlockParent->getHeader()) << "\n");
|
||||
// Make BlockParent the child of NewCycle.
|
||||
Info.moveToNewParent(NewCycle.get(), BlockParent);
|
||||
NewCycle->Blocks.insert(NewCycle->Blocks.end(),
|
||||
BlockParent->block_begin(),
|
||||
BlockParent->block_end());
|
||||
Info.moveTopLevelCycleToNewParent(NewCycle.get(), BlockParent);
|
||||
|
||||
for (auto *ChildEntry : BlockParent->entries())
|
||||
ProcessPredecessors(ChildEntry);
|
||||
@ -257,6 +268,7 @@ void GenericCycleInfoCompute<ContextT>::run(BlockT *EntryBlock) {
|
||||
assert(!is_contained(NewCycle->Blocks, Block));
|
||||
NewCycle->Blocks.push_back(Block);
|
||||
ProcessPredecessors(Block);
|
||||
Info.BlockMapTopLevel.try_emplace(Block, NewCycle.get());
|
||||
}
|
||||
} while (!Worklist.empty());
|
||||
|
||||
@ -336,6 +348,7 @@ void GenericCycleInfoCompute<ContextT>::dfs(BlockT *EntryBlock) {
|
||||
template <typename ContextT> void GenericCycleInfo<ContextT>::clear() {
|
||||
TopLevelCycles.clear();
|
||||
BlockMap.clear();
|
||||
BlockMapTopLevel.clear();
|
||||
}
|
||||
|
||||
/// \brief Compute the cycle info for a function.
|
||||
|
@ -232,15 +232,24 @@ public:
|
||||
private:
|
||||
ContextT Context;
|
||||
|
||||
/// Map basic blocks to their inner-most containing loop.
|
||||
/// Map basic blocks to their inner-most containing cycle.
|
||||
DenseMap<BlockT *, CycleT *> BlockMap;
|
||||
|
||||
/// Map basic blocks to their top level containing cycle.
|
||||
DenseMap<BlockT *, CycleT *> BlockMapTopLevel;
|
||||
|
||||
/// Outermost cycles discovered by any DFS.
|
||||
///
|
||||
/// Note: The implementation treats the nullptr as the parent of
|
||||
/// every top-level cycle. See \ref contains for an example.
|
||||
std::vector<std::unique_ptr<CycleT>> TopLevelCycles;
|
||||
|
||||
/// Move \p Child to \p NewParent by manipulating Children vectors.
|
||||
///
|
||||
/// Note: This is an incomplete operation that does not update the depth of
|
||||
/// the subtree.
|
||||
void moveTopLevelCycleToNewParent(CycleT *NewParent, CycleT *Child);
|
||||
|
||||
public:
|
||||
GenericCycleInfo() = default;
|
||||
GenericCycleInfo(GenericCycleInfo &&) = default;
|
||||
@ -254,13 +263,7 @@ public:
|
||||
|
||||
CycleT *getCycle(const BlockT *Block) const;
|
||||
unsigned getCycleDepth(const BlockT *Block) const;
|
||||
CycleT *getTopLevelParentCycle(const BlockT *Block) const;
|
||||
|
||||
/// Move \p Child to \p NewParent by manipulating Children vectors.
|
||||
///
|
||||
/// Note: This is an incomplete operation that does not update the
|
||||
/// list of blocks in the new parent or the depth of the subtree.
|
||||
void moveToNewParent(CycleT *NewParent, CycleT *Child);
|
||||
CycleT *getTopLevelParentCycle(BlockT *Block);
|
||||
|
||||
/// Methods for debug and self-test.
|
||||
//@{
|
||||
|
@ -1028,7 +1028,7 @@ ELFFile<ELFT>::getVersionDependencies(const Elf_Shdr &Sec,
|
||||
VN.Offset = VerneedBuf - Start;
|
||||
|
||||
if (Verneed->vn_file < StrTab.size())
|
||||
VN.File = std::string(StrTab.drop_front(Verneed->vn_file));
|
||||
VN.File = std::string(StrTab.data() + Verneed->vn_file);
|
||||
else
|
||||
VN.File = ("<corrupt vn_file: " + Twine(Verneed->vn_file) + ">").str();
|
||||
|
||||
|
@ -5917,8 +5917,13 @@ const SCEV *ScalarEvolution::createNodeForPHI(PHINode *PN) {
|
||||
if (const SCEV *S = createNodeFromSelectLikePHI(PN))
|
||||
return S;
|
||||
|
||||
// If the PHI has a single incoming value, follow that value, unless the
|
||||
// PHI's incoming blocks are in a different loop, in which case doing so
|
||||
// risks breaking LCSSA form. Instcombine would normally zap these, but
|
||||
// it doesn't have DominatorTree information, so it may miss cases.
|
||||
if (Value *V = simplifyInstruction(PN, {getDataLayout(), &TLI, &DT, &AC}))
|
||||
return getSCEV(V);
|
||||
if (LI.replacementPreservesLCSSAForm(PN, V))
|
||||
return getSCEV(V);
|
||||
|
||||
// If it's not a loop phi, we can't handle it yet.
|
||||
return getUnknown(PN);
|
||||
|
@ -3593,14 +3593,23 @@ static bool cannotBeOrderedLessThanZeroImpl(const Value *V,
|
||||
// Unsigned integers are always nonnegative.
|
||||
case Instruction::UIToFP:
|
||||
return true;
|
||||
case Instruction::FMul:
|
||||
case Instruction::FDiv:
|
||||
// X * X is always non-negative or a NaN.
|
||||
// X / X is always exactly 1.0 or a NaN.
|
||||
if (I->getOperand(0) == I->getOperand(1) &&
|
||||
(!SignBitOnly || cast<FPMathOperator>(I)->hasNoNaNs()))
|
||||
return true;
|
||||
|
||||
// Set SignBitOnly for RHS, because X / -0.0 is -Inf (or NaN).
|
||||
return cannotBeOrderedLessThanZeroImpl(I->getOperand(0), TLI, SignBitOnly,
|
||||
Depth + 1) &&
|
||||
cannotBeOrderedLessThanZeroImpl(I->getOperand(1), TLI,
|
||||
/*SignBitOnly*/ true, Depth + 1);
|
||||
case Instruction::FMul:
|
||||
// X * X is always non-negative or a NaN.
|
||||
if (I->getOperand(0) == I->getOperand(1) &&
|
||||
(!SignBitOnly || cast<FPMathOperator>(I)->hasNoNaNs()))
|
||||
return true;
|
||||
|
||||
LLVM_FALLTHROUGH;
|
||||
case Instruction::FAdd:
|
||||
case Instruction::FRem:
|
||||
|
@ -25,6 +25,7 @@
|
||||
#include "llvm/CodeGen/TargetSubtargetInfo.h"
|
||||
#include "llvm/IR/BasicBlock.h"
|
||||
#include "llvm/IR/Constants.h"
|
||||
#include "llvm/IR/DebugInfoMetadata.h"
|
||||
#include "llvm/IR/DerivedTypes.h"
|
||||
#include "llvm/IR/Dominators.h"
|
||||
#include "llvm/IR/Function.h"
|
||||
@ -247,6 +248,13 @@ bool DwarfEHPrepare::InsertUnwindResumeCalls() {
|
||||
// Call the rewind function.
|
||||
CallInst *CI =
|
||||
CallInst::Create(RewindFunction, RewindFunctionArgs, "", UnwindBB);
|
||||
// The verifier requires that all calls of debug-info-bearing functions
|
||||
// from debug-info-bearing functions have a debug location (for inlining
|
||||
// purposes). Assign a dummy location to satisfy the constraint.
|
||||
Function *RewindFn = dyn_cast<Function>(RewindFunction.getCallee());
|
||||
if (RewindFn && RewindFn->getSubprogram())
|
||||
if (DISubprogram *SP = F.getSubprogram())
|
||||
CI->setDebugLoc(DILocation::get(SP->getContext(), 0, 0, SP));
|
||||
CI->setCallingConv(RewindFunctionCallingConv);
|
||||
|
||||
// We never expect _Unwind_Resume to return.
|
||||
|
@ -1262,9 +1262,10 @@ void PEI::insertZeroCallUsedRegs(MachineFunction &MF) {
|
||||
}
|
||||
}
|
||||
|
||||
// Don't clear registers that are reset before exiting.
|
||||
for (const CalleeSavedInfo &CSI : MF.getFrameInfo().getCalleeSavedInfo())
|
||||
for (MCRegister Reg : TRI.sub_and_superregs_inclusive(CSI.getReg()))
|
||||
// Don't clear registers that must be preserved.
|
||||
for (const MCPhysReg *CSRegs = TRI.getCalleeSavedRegs(&MF);
|
||||
MCPhysReg CSReg = *CSRegs; ++CSRegs)
|
||||
for (MCRegister Reg : TRI.sub_and_superregs_inclusive(CSReg))
|
||||
RegsToZero.reset(Reg);
|
||||
|
||||
const TargetFrameLowering &TFI = *MF.getSubtarget().getFrameLowering();
|
||||
|
@ -203,10 +203,10 @@ constexpr FeatureBitset FeaturesTigerlake =
|
||||
FeatureCLWB | FeatureMOVDIRI | FeatureSHSTK | FeatureKL | FeatureWIDEKL;
|
||||
constexpr FeatureBitset FeaturesSapphireRapids =
|
||||
FeaturesICLServer | FeatureAMX_BF16 | FeatureAMX_INT8 | FeatureAMX_TILE |
|
||||
FeatureAVX512BF16 | FeatureAVX512FP16 | FeatureAVX512VP2INTERSECT |
|
||||
FeatureAVXVNNI | FeatureCLDEMOTE | FeatureENQCMD | FeatureMOVDIR64B |
|
||||
FeatureMOVDIRI | FeaturePTWRITE | FeatureSERIALIZE | FeatureSHSTK |
|
||||
FeatureTSXLDTRK | FeatureUINTR | FeatureWAITPKG;
|
||||
FeatureAVX512BF16 | FeatureAVX512FP16 | FeatureAVXVNNI | FeatureCLDEMOTE |
|
||||
FeatureENQCMD | FeatureMOVDIR64B | FeatureMOVDIRI | FeaturePTWRITE |
|
||||
FeatureSERIALIZE | FeatureSHSTK | FeatureTSXLDTRK | FeatureUINTR |
|
||||
FeatureWAITPKG;
|
||||
|
||||
// Intel Atom processors.
|
||||
// Bonnell has feature parity with Core2 and adds MOVBE.
|
||||
@ -367,7 +367,7 @@ constexpr ProcInfo Processors[] = {
|
||||
// Tigerlake microarchitecture based processors.
|
||||
{ {"tigerlake"}, CK_Tigerlake, FEATURE_AVX512VP2INTERSECT, FeaturesTigerlake },
|
||||
// Sapphire Rapids microarchitecture based processors.
|
||||
{ {"sapphirerapids"}, CK_SapphireRapids, FEATURE_AVX512VP2INTERSECT, FeaturesSapphireRapids },
|
||||
{ {"sapphirerapids"}, CK_SapphireRapids, FEATURE_AVX512BF16, FeaturesSapphireRapids },
|
||||
// Alderlake microarchitecture based processors.
|
||||
{ {"alderlake"}, CK_Alderlake, FEATURE_AVX2, FeaturesAlderlake },
|
||||
// Knights Landing processor.
|
||||
|
@ -149,6 +149,7 @@ private:
|
||||
Align H)
|
||||
: Inst(I), Addr(A), ValTy(T), HaveAlign(H),
|
||||
NeedAlign(HVC.getTypeAlignment(ValTy)) {}
|
||||
AddrInfo &operator=(const AddrInfo &) = default;
|
||||
|
||||
// XXX: add Size member?
|
||||
Instruction *Inst;
|
||||
@ -185,6 +186,7 @@ private:
|
||||
Segment(Value *Val, int Begin, int Len)
|
||||
: Val(Val), Start(Begin), Size(Len) {}
|
||||
Segment(const Segment &Seg) = default;
|
||||
Segment &operator=(const Segment &Seg) = default;
|
||||
Value *Val; // Value representable as a sequence of bytes.
|
||||
int Start; // First byte of the value that belongs to the segment.
|
||||
int Size; // Number of bytes in the segment.
|
||||
@ -195,6 +197,7 @@ private:
|
||||
Block(Value *Val, int Off, int Len, int Pos)
|
||||
: Seg(Val, Off, Len), Pos(Pos) {}
|
||||
Block(const Block &Blk) = default;
|
||||
Block &operator=(const Block &Blk) = default;
|
||||
Segment Seg; // Value segment.
|
||||
int Pos; // Position (offset) of the segment in the Block.
|
||||
};
|
||||
|
@ -70,6 +70,7 @@ void SPIRVGeneralDuplicatesTracker::buildDepsGraph(
|
||||
}
|
||||
}
|
||||
|
||||
#if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP)
|
||||
if (MMI) {
|
||||
const Module *M = MMI->getModule();
|
||||
for (auto F = M->begin(), E = M->end(); F != E; ++F) {
|
||||
@ -92,4 +93,5 @@ void SPIRVGeneralDuplicatesTracker::buildDepsGraph(
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
@ -909,7 +909,6 @@ def ProcessorFeatures {
|
||||
FeatureTSXLDTRK,
|
||||
FeatureENQCMD,
|
||||
FeatureSHSTK,
|
||||
FeatureVP2INTERSECT,
|
||||
FeatureMOVDIRI,
|
||||
FeatureMOVDIR64B,
|
||||
FeatureUINTR];
|
||||
|
@ -137,8 +137,10 @@ void LoopVersioning::addPHINodes(
|
||||
// See if we have a single-operand PHI with the value defined by the
|
||||
// original loop.
|
||||
for (auto I = PHIBlock->begin(); (PN = dyn_cast<PHINode>(I)); ++I) {
|
||||
if (PN->getIncomingValue(0) == Inst)
|
||||
if (PN->getIncomingValue(0) == Inst) {
|
||||
SE->forgetValue(PN);
|
||||
break;
|
||||
}
|
||||
}
|
||||
// If not create it.
|
||||
if (!PN) {
|
||||
|
@ -8149,9 +8149,15 @@ VPRecipeBase *VPRecipeBuilder::tryToOptimizeInductionPHI(
|
||||
*PSE.getSE(), *OrigLoop, Range);
|
||||
|
||||
// Check if this is pointer induction. If so, build the recipe for it.
|
||||
if (auto *II = Legal->getPointerInductionDescriptor(Phi))
|
||||
return new VPWidenPointerInductionRecipe(Phi, Operands[0], *II,
|
||||
*PSE.getSE());
|
||||
if (auto *II = Legal->getPointerInductionDescriptor(Phi)) {
|
||||
return new VPWidenPointerInductionRecipe(
|
||||
Phi, Operands[0], *II, *PSE.getSE(),
|
||||
LoopVectorizationPlanner::getDecisionAndClampRange(
|
||||
[&](ElementCount VF) {
|
||||
return CM.isScalarAfterVectorization(Phi, VF);
|
||||
},
|
||||
Range));
|
||||
}
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
|
@ -1187,15 +1187,19 @@ class VPWidenPointerInductionRecipe : public VPHeaderPHIRecipe {
|
||||
/// explicitly.
|
||||
ScalarEvolution &SE;
|
||||
|
||||
bool IsScalarAfterVectorization;
|
||||
|
||||
public:
|
||||
/// Create a new VPWidenPointerInductionRecipe for \p Phi with start value \p
|
||||
/// Start.
|
||||
VPWidenPointerInductionRecipe(PHINode *Phi, VPValue *Start,
|
||||
const InductionDescriptor &IndDesc,
|
||||
ScalarEvolution &SE)
|
||||
ScalarEvolution &SE,
|
||||
bool IsScalarAfterVectorization)
|
||||
: VPHeaderPHIRecipe(VPVWidenPointerInductionSC, VPWidenPointerInductionSC,
|
||||
Phi),
|
||||
IndDesc(IndDesc), SE(SE) {
|
||||
IndDesc(IndDesc), SE(SE),
|
||||
IsScalarAfterVectorization(IsScalarAfterVectorization) {
|
||||
addOperand(Start);
|
||||
}
|
||||
|
||||
|
@ -983,10 +983,8 @@ void VPCanonicalIVPHIRecipe::print(raw_ostream &O, const Twine &Indent,
|
||||
#endif
|
||||
|
||||
bool VPWidenPointerInductionRecipe::onlyScalarsGenerated(ElementCount VF) {
|
||||
bool IsUniform = vputils::onlyFirstLaneUsed(this);
|
||||
return all_of(users(),
|
||||
[&](const VPUser *U) { return U->usesScalars(this); }) &&
|
||||
(IsUniform || !VF.isScalable());
|
||||
return IsScalarAfterVectorization &&
|
||||
(!VF.isScalable() || vputils::onlyFirstLaneUsed(this));
|
||||
}
|
||||
|
||||
#if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP)
|
||||
|
@ -282,27 +282,28 @@ static void printProgramHeaders(const ELFFile<ELFT> &Obj, StringRef FileName) {
|
||||
}
|
||||
|
||||
template <class ELFT>
|
||||
static void printSymbolVersionDependency(ArrayRef<uint8_t> Contents,
|
||||
StringRef StrTab) {
|
||||
static void printSymbolVersionDependency(StringRef FileName,
|
||||
const ELFFile<ELFT> &Obj,
|
||||
const typename ELFT::Shdr &Sec) {
|
||||
outs() << "\nVersion References:\n";
|
||||
|
||||
const uint8_t *Buf = Contents.data();
|
||||
while (Buf) {
|
||||
auto *Verneed = reinterpret_cast<const typename ELFT::Verneed *>(Buf);
|
||||
outs() << " required from "
|
||||
<< StringRef(StrTab.drop_front(Verneed->vn_file).data()) << ":\n";
|
||||
auto WarningHandler = [&](const Twine &Msg) {
|
||||
reportWarning(Msg, FileName);
|
||||
return Error::success();
|
||||
};
|
||||
Expected<std::vector<VerNeed>> V =
|
||||
Obj.getVersionDependencies(Sec, WarningHandler);
|
||||
if (!V) {
|
||||
reportWarning(toString(V.takeError()), FileName);
|
||||
return;
|
||||
}
|
||||
|
||||
const uint8_t *BufAux = Buf + Verneed->vn_aux;
|
||||
while (BufAux) {
|
||||
auto *Vernaux = reinterpret_cast<const typename ELFT::Vernaux *>(BufAux);
|
||||
outs() << " "
|
||||
<< format("0x%08" PRIx32 " ", (uint32_t)Vernaux->vna_hash)
|
||||
<< format("0x%02" PRIx16 " ", (uint16_t)Vernaux->vna_flags)
|
||||
<< format("%02" PRIu16 " ", (uint16_t)Vernaux->vna_other)
|
||||
<< StringRef(StrTab.drop_front(Vernaux->vna_name).data()) << '\n';
|
||||
BufAux = Vernaux->vna_next ? BufAux + Vernaux->vna_next : nullptr;
|
||||
}
|
||||
Buf = Verneed->vn_next ? Buf + Verneed->vn_next : nullptr;
|
||||
raw_fd_ostream &OS = outs();
|
||||
for (const VerNeed &VN : *V) {
|
||||
OS << " required from " << VN.File << ":\n";
|
||||
for (const VernAux &Aux : VN.AuxV)
|
||||
OS << format(" 0x%08x 0x%02x %02u %s\n", Aux.Hash, Aux.Flags,
|
||||
Aux.Other, Aux.Name.c_str());
|
||||
}
|
||||
}
|
||||
|
||||
@ -355,7 +356,7 @@ static void printSymbolVersionInfo(const ELFFile<ELFT> &Elf,
|
||||
StringRef StrTab = unwrapOrError(Elf.getStringTable(*StrTabSec), FileName);
|
||||
|
||||
if (Shdr.sh_type == ELF::SHT_GNU_verneed)
|
||||
printSymbolVersionDependency<ELFT>(Contents, StrTab);
|
||||
printSymbolVersionDependency<ELFT>(FileName, Elf, Shdr);
|
||||
else
|
||||
printSymbolVersionDefinition<ELFT>(Shdr, Contents, StrTab);
|
||||
}
|
||||
|
@ -31,7 +31,7 @@
|
||||
..
|
||||
lib
|
||||
clang
|
||||
15.0.0
|
||||
15.0.3
|
||||
lib
|
||||
freebsd
|
||||
..
|
||||
|
@ -37,7 +37,7 @@
|
||||
..
|
||||
lib
|
||||
clang
|
||||
15.0.0
|
||||
15.0.3
|
||||
include
|
||||
cuda_wrappers
|
||||
..
|
||||
|
@ -5,7 +5,7 @@
|
||||
.PATH: ${CLANG_SRCS}/lib/Headers
|
||||
|
||||
INCSGROUPS= INCS CUDA HLSL OMP PPC
|
||||
INCSDIR= ${LIBDIR}/clang/15.0.0/include
|
||||
INCSDIR= ${LIBDIR}/clang/15.0.3/include
|
||||
CUDADIR= ${INCSDIR}/cuda_wrappers
|
||||
HLSLDIR= ${INCSDIR}/hlsl
|
||||
OMPDIR= ${INCSDIR}/openmp_wrappers
|
||||
|
@ -1,10 +1,10 @@
|
||||
// $FreeBSD$
|
||||
|
||||
#define LLVM_REVISION "llvmorg-15.0.0-9-g1c73596d3454"
|
||||
#define LLVM_REVISION "llvmorg-15.0.2-10-gf3c5289e7846"
|
||||
#define LLVM_REPOSITORY "https://github.com/llvm/llvm-project.git"
|
||||
|
||||
#define CLANG_REVISION "llvmorg-15.0.0-9-g1c73596d3454"
|
||||
#define CLANG_REVISION "llvmorg-15.0.2-10-gf3c5289e7846"
|
||||
#define CLANG_REPOSITORY "https://github.com/llvm/llvm-project.git"
|
||||
|
||||
#define LLDB_REVISION "llvmorg-15.0.0-9-g1c73596d3454"
|
||||
#define LLDB_REVISION "llvmorg-15.0.2-10-gf3c5289e7846"
|
||||
#define LLDB_REPOSITORY "https://github.com/llvm/llvm-project.git"
|
||||
|
@ -1,9 +1,9 @@
|
||||
/* $FreeBSD$ */
|
||||
|
||||
#define CLANG_VERSION 15.0.0
|
||||
#define CLANG_VERSION_STRING "15.0.0"
|
||||
#define CLANG_VERSION 15.0.3
|
||||
#define CLANG_VERSION_STRING "15.0.3"
|
||||
#define CLANG_VERSION_MAJOR 15
|
||||
#define CLANG_VERSION_MINOR 0
|
||||
#define CLANG_VERSION_PATCHLEVEL 0
|
||||
#define CLANG_VERSION_PATCHLEVEL 3
|
||||
|
||||
#define CLANG_VENDOR "FreeBSD "
|
||||
|
@ -80,7 +80,7 @@
|
||||
#define CLANG_HAVE_RLIMITS 1
|
||||
|
||||
/* The LLVM product name and version */
|
||||
#define BACKEND_PACKAGE_STRING "LLVM 15.0.0"
|
||||
#define BACKEND_PACKAGE_STRING "LLVM 15.0.3"
|
||||
|
||||
/* Linker version detected at compile time. */
|
||||
/* #undef HOST_LINK_VERSION */
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Local identifier in __FreeBSD_version style
|
||||
#define LLD_FREEBSD_VERSION 1400005
|
||||
|
||||
#define LLD_VERSION_STRING "15.0.0 (FreeBSD llvmorg-15.0.0-9-g1c73596d3454-" __XSTRING(LLD_FREEBSD_VERSION) ")"
|
||||
#define LLD_VERSION_STRING "15.0.3 (FreeBSD llvmorg-15.0.2-10-gf3c5289e7846-" __XSTRING(LLD_FREEBSD_VERSION) ")"
|
||||
|
@ -1,6 +1,6 @@
|
||||
#define LLDB_VERSION 15.0.0
|
||||
#define LLDB_VERSION_STRING "15.0.0"
|
||||
#define LLDB_VERSION 15.0.3
|
||||
#define LLDB_VERSION_STRING "15.0.3"
|
||||
#define LLDB_VERSION_MAJOR 15
|
||||
#define LLDB_VERSION_MINOR 0
|
||||
#define LLDB_VERSION_PATCH 0
|
||||
#define LLDB_VERSION_PATCH 3
|
||||
/* #undef LLDB_FULL_VERSION_STRING */
|
||||
|
@ -353,10 +353,10 @@
|
||||
#define PACKAGE_NAME "LLVM"
|
||||
|
||||
/* Define to the full name and version of this package. */
|
||||
#define PACKAGE_STRING "LLVM 15.0.0"
|
||||
#define PACKAGE_STRING "LLVM 15.0.3"
|
||||
|
||||
/* Define to the version of this package. */
|
||||
#define PACKAGE_VERSION "15.0.0"
|
||||
#define PACKAGE_VERSION "15.0.3"
|
||||
|
||||
/* Define to the vendor of this package. */
|
||||
/* #undef PACKAGE_VENDOR */
|
||||
|
@ -74,10 +74,10 @@
|
||||
#define LLVM_VERSION_MINOR 0
|
||||
|
||||
/* Patch version of the LLVM API */
|
||||
#define LLVM_VERSION_PATCH 0
|
||||
#define LLVM_VERSION_PATCH 3
|
||||
|
||||
/* LLVM version string */
|
||||
#define LLVM_VERSION_STRING "15.0.0"
|
||||
#define LLVM_VERSION_STRING "15.0.3"
|
||||
|
||||
/* Whether LLVM records statistics for use with GetStatistics(),
|
||||
* PrintStatistics() or PrintStatisticsJSON()
|
||||
|
@ -1,3 +1,3 @@
|
||||
/* $FreeBSD$ */
|
||||
#define LLVM_REVISION "llvmorg-15.0.0-9-g1c73596d3454"
|
||||
#define LLVM_REVISION "llvmorg-15.0.2-10-gf3c5289e7846"
|
||||
#define LLVM_REPOSITORY "https://github.com/llvm/llvm-project.git"
|
||||
|
@ -59,7 +59,10 @@ module std [system] {
|
||||
// FIXME: <stdalign.h> is missing.
|
||||
// <signal.h> provided by C library.
|
||||
// <stdarg.h> provided by compiler.
|
||||
// <stdbool.h> provided by compiler.
|
||||
module stdbool_h {
|
||||
// <stdbool.h>'s __bool_true_false_are_defined macro requires textual inclusion.
|
||||
textual header "stdbool.h"
|
||||
}
|
||||
module stddef_h {
|
||||
// <stddef.h>'s __need_* macros require textual inclusion.
|
||||
textual header "stddef.h"
|
||||
@ -311,6 +314,7 @@ module std [system] {
|
||||
module ranges_all_of { private header "__algorithm/ranges_all_of.h" }
|
||||
module ranges_any_of { private header "__algorithm/ranges_any_of.h" }
|
||||
module ranges_binary_search { private header "__algorithm/ranges_binary_search.h" }
|
||||
module ranges_clamp { private header "__algorithm/ranges_clamp.h" }
|
||||
module ranges_copy { private header "__algorithm/ranges_copy.h" }
|
||||
module ranges_copy_backward { private header "__algorithm/ranges_copy_backward.h" }
|
||||
module ranges_copy_if { private header "__algorithm/ranges_copy_if.h" }
|
||||
@ -335,6 +339,7 @@ module std [system] {
|
||||
module ranges_is_heap { private header "__algorithm/ranges_is_heap.h" }
|
||||
module ranges_is_heap_until { private header "__algorithm/ranges_is_heap_until.h" }
|
||||
module ranges_is_partitioned { private header "__algorithm/ranges_is_partitioned.h" }
|
||||
module ranges_is_permutation { private header "__algorithm/ranges_is_permutation.h" }
|
||||
module ranges_is_sorted { private header "__algorithm/ranges_is_sorted.h" }
|
||||
module ranges_is_sorted_until { private header "__algorithm/ranges_is_sorted_until.h" }
|
||||
module ranges_iterator_concept { private header "__algorithm/ranges_iterator_concept.h" }
|
||||
@ -351,6 +356,7 @@ module std [system] {
|
||||
module ranges_mismatch { private header "__algorithm/ranges_mismatch.h" }
|
||||
module ranges_move { private header "__algorithm/ranges_move.h" }
|
||||
module ranges_move_backward { private header "__algorithm/ranges_move_backward.h" }
|
||||
module ranges_next_permutation { private header "__algorithm/ranges_next_permutation.h" }
|
||||
module ranges_none_of { private header "__algorithm/ranges_none_of.h" }
|
||||
module ranges_nth_element { private header "__algorithm/ranges_nth_element.h" }
|
||||
module ranges_partial_sort { private header "__algorithm/ranges_partial_sort.h" }
|
||||
@ -359,6 +365,7 @@ module std [system] {
|
||||
module ranges_partition_copy { private header "__algorithm/ranges_partition_copy.h" }
|
||||
module ranges_partition_point { private header "__algorithm/ranges_partition_point.h" }
|
||||
module ranges_pop_heap { private header "__algorithm/ranges_pop_heap.h" }
|
||||
module ranges_prev_permutation { private header "__algorithm/ranges_prev_permutation.h" }
|
||||
module ranges_push_heap { private header "__algorithm/ranges_push_heap.h" }
|
||||
module ranges_remove { private header "__algorithm/ranges_remove.h" }
|
||||
module ranges_remove_copy { private header "__algorithm/ranges_remove_copy.h" }
|
||||
@ -370,7 +377,9 @@ module std [system] {
|
||||
module ranges_replace_if { private header "__algorithm/ranges_replace_if.h" }
|
||||
module ranges_reverse { private header "__algorithm/ranges_reverse.h" }
|
||||
module ranges_reverse_copy { private header "__algorithm/ranges_reverse_copy.h" }
|
||||
module ranges_rotate { private header "__algorithm/ranges_rotate.h" }
|
||||
module ranges_rotate_copy { private header "__algorithm/ranges_rotate_copy.h" }
|
||||
module ranges_sample { private header "__algorithm/ranges_sample.h" }
|
||||
module ranges_search { private header "__algorithm/ranges_search.h" }
|
||||
module ranges_search_n { private header "__algorithm/ranges_search_n.h" }
|
||||
module ranges_set_difference { private header "__algorithm/ranges_set_difference.h" }
|
||||
@ -384,6 +393,9 @@ module std [system] {
|
||||
module ranges_stable_sort { private header "__algorithm/ranges_stable_sort.h" }
|
||||
module ranges_swap_ranges { private header "__algorithm/ranges_swap_ranges.h" }
|
||||
module ranges_transform { private header "__algorithm/ranges_transform.h" }
|
||||
module uniform_random_bit_generator_adaptor {
|
||||
private header "__algorithm/uniform_random_bit_generator_adaptor.h"
|
||||
}
|
||||
module ranges_unique { private header "__algorithm/ranges_unique.h" }
|
||||
module ranges_unique_copy { private header "__algorithm/ranges_unique_copy.h" }
|
||||
module ranges_upper_bound { private header "__algorithm/ranges_upper_bound.h" }
|
||||
@ -419,6 +431,7 @@ module std [system] {
|
||||
module unique { private header "__algorithm/unique.h" }
|
||||
module unique_copy { private header "__algorithm/unique_copy.h" }
|
||||
module unwrap_iter { private header "__algorithm/unwrap_iter.h" }
|
||||
module unwrap_range { private header "__algorithm/unwrap_range.h" }
|
||||
module upper_bound { private header "__algorithm/upper_bound.h" }
|
||||
}
|
||||
}
|
||||
@ -832,6 +845,7 @@ module std [system] {
|
||||
module ranges_uninitialized_algorithms { private header "__memory/ranges_uninitialized_algorithms.h" }
|
||||
module raw_storage_iterator { private header "__memory/raw_storage_iterator.h" }
|
||||
module shared_ptr { private header "__memory/shared_ptr.h" }
|
||||
module swap_allocator { private header "__memory/swap_allocator.h" }
|
||||
module temporary_buffer { private header "__memory/temporary_buffer.h" }
|
||||
module uninitialized_algorithms { private header "__memory/uninitialized_algorithms.h" }
|
||||
module unique_ptr { private header "__memory/unique_ptr.h" }
|
||||
@ -1090,10 +1104,16 @@ module std [system] {
|
||||
module add_pointer { private header "__type_traits/add_pointer.h" }
|
||||
module add_rvalue_reference { private header "__type_traits/add_rvalue_reference.h" }
|
||||
module add_volatile { private header "__type_traits/add_volatile.h" }
|
||||
module aligned_storage { private header "__type_traits/aligned_storage.h" }
|
||||
module aligned_union { private header "__type_traits/aligned_union.h" }
|
||||
module alignment_of { private header "__type_traits/alignment_of.h" }
|
||||
module apply_cv { private header "__type_traits/apply_cv.h" }
|
||||
module common_reference { private header "__type_traits/common_reference.h" }
|
||||
module common_type { private header "__type_traits/common_type.h" }
|
||||
module conditional { private header "__type_traits/conditional.h" }
|
||||
module conjunction { private header "__type_traits/conjunction.h" }
|
||||
module copy_cv { private header "__type_traits/copy_cv.h" }
|
||||
module copy_cvref { private header "__type_traits/copy_cvref.h" }
|
||||
module decay { private header "__type_traits/decay.h" }
|
||||
module disjunction { private header "__type_traits/disjunction.h" }
|
||||
module enable_if { private header "__type_traits/enable_if.h" }
|
||||
@ -1135,6 +1155,7 @@ module std [system] {
|
||||
module is_move_constructible { private header "__type_traits/is_move_constructible.h" }
|
||||
module is_nothrow_assignable { private header "__type_traits/is_nothrow_assignable.h" }
|
||||
module is_nothrow_constructible { private header "__type_traits/is_nothrow_constructible.h" }
|
||||
module is_nothrow_convertible { private header "__type_traits/is_nothrow_convertible.h" }
|
||||
module is_nothrow_copy_assignable { private header "__type_traits/is_nothrow_copy_assignable.h" }
|
||||
module is_nothrow_copy_constructible { private header "__type_traits/is_nothrow_copy_constructible.h" }
|
||||
module is_nothrow_default_constructible { private header "__type_traits/is_nothrow_default_constructible.h" }
|
||||
@ -1146,6 +1167,7 @@ module std [system] {
|
||||
module is_pod { private header "__type_traits/is_pod.h" }
|
||||
module is_pointer { private header "__type_traits/is_pointer.h" }
|
||||
module is_polymorphic { private header "__type_traits/is_polymorphic.h" }
|
||||
module is_primary_template { private header "__type_traits/is_primary_template.h" }
|
||||
module is_reference { private header "__type_traits/is_reference.h" }
|
||||
module is_reference_wrapper { private header "__type_traits/is_reference_wrapper.h" }
|
||||
module is_referenceable { private header "__type_traits/is_referenceable.h" }
|
||||
@ -1153,6 +1175,7 @@ module std [system] {
|
||||
module is_scalar { private header "__type_traits/is_scalar.h" }
|
||||
module is_scoped_enum { private header "__type_traits/is_scoped_enum.h" }
|
||||
module is_signed { private header "__type_traits/is_signed.h" }
|
||||
module is_signed_integer { private header "__type_traits/is_signed_integer.h" }
|
||||
module is_standard_layout { private header "__type_traits/is_standard_layout.h" }
|
||||
module is_trivial { private header "__type_traits/is_trivial.h" }
|
||||
module is_trivially_assignable { private header "__type_traits/is_trivially_assignable.h" }
|
||||
@ -1167,18 +1190,28 @@ module std [system] {
|
||||
module is_unbounded_array { private header "__type_traits/is_unbounded_array.h" }
|
||||
module is_union { private header "__type_traits/is_union.h" }
|
||||
module is_unsigned { private header "__type_traits/is_unsigned.h" }
|
||||
module is_unsigned_integer { private header "__type_traits/is_unsigned_integer.h" }
|
||||
module is_valid_expansion { private header "__type_traits/is_valid_expansion.h" }
|
||||
module is_void { private header "__type_traits/is_void.h" }
|
||||
module is_volatile { private header "__type_traits/is_volatile.h" }
|
||||
module lazy { private header "__type_traits/lazy.h" }
|
||||
module make_32_64_or_128_bit { private header "__type_traits/make_32_64_or_128_bit.h" }
|
||||
module make_signed { private header "__type_traits/make_signed.h" }
|
||||
module make_unsigned { private header "__type_traits/make_unsigned.h" }
|
||||
module nat { private header "__type_traits/nat.h" }
|
||||
module negation { private header "__type_traits/negation.h" }
|
||||
module promote { private header "__type_traits/promote.h" }
|
||||
module rank { private header "__type_traits/rank.h" }
|
||||
module remove_all_extents { private header "__type_traits/remove_all_extents.h" }
|
||||
module remove_const { private header "__type_traits/remove_const.h" }
|
||||
module remove_cv { private header "__type_traits/remove_cv.h" }
|
||||
module remove_cvref { private header "__type_traits/remove_cvref.h" }
|
||||
module remove_extent { private header "__type_traits/remove_extent.h" }
|
||||
module remove_pointer { private header "__type_traits/remove_pointer.h" }
|
||||
module remove_reference { private header "__type_traits/remove_reference.h" }
|
||||
module remove_volatile { private header "__type_traits/remove_volatile.h" }
|
||||
module type_identity { private header "__type_traits/type_identity.h" }
|
||||
module type_list { private header "__type_traits/type_list.h" }
|
||||
module underlying_type { private header "__type_traits/underlying_type.h" }
|
||||
module void_t { private header "__type_traits/void_t.h" }
|
||||
}
|
||||
@ -1272,6 +1305,7 @@ module std [system] {
|
||||
module __tree { header "__tree" export * }
|
||||
module __tuple { private header "__tuple" export * }
|
||||
module __undef_macros { header "__undef_macros" export * }
|
||||
module __verbose_abort { header "__verbose_abort" export * }
|
||||
|
||||
module experimental {
|
||||
requires cplusplus11
|
||||
|
@ -1,4 +1,4 @@
|
||||
CLANG_SUBDIR=clang/15.0.0
|
||||
CLANG_SUBDIR=clang/15.0.3
|
||||
CLANGDIR= /usr/lib/${CLANG_SUBDIR}
|
||||
SANITIZER_LIBDIR= ${CLANGDIR}/lib/freebsd
|
||||
SANITIZER_SHAREDIR= ${CLANGDIR}/share
|
||||
|
@ -1200,328 +1200,328 @@ OLD_FILES+=usr/share/man/man1/objdump.1.gz
|
||||
OLD_FILES+=usr/bin/clang
|
||||
OLD_FILES+=usr/bin/clang++
|
||||
OLD_FILES+=usr/bin/clang-cpp
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/cuda_wrappers/algorithm
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/cuda_wrappers/complex
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/cuda_wrappers/new
|
||||
OLD_DIRS+=usr/lib/clang/15.0.0/include/cuda_wrappers
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/fuzzer/FuzzedDataProvider.h
|
||||
OLD_DIRS+=usr/lib/clang/15.0.0/include/fuzzer
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/hlsl/hlsl_basic_types.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/hlsl/hlsl_intrinsics.h
|
||||
OLD_DIRS+=usr/lib/clang/15.0.0/include/hlsl
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/openmp_wrappers/__clang_openmp_device_functions.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/openmp_wrappers/cmath
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/openmp_wrappers/complex
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/openmp_wrappers/complex.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/openmp_wrappers/complex_cmath.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/openmp_wrappers/math.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/openmp_wrappers/new
|
||||
OLD_DIRS+=usr/lib/clang/15.0.0/include/openmp_wrappers
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/ppc_wrappers/bmi2intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/ppc_wrappers/bmiintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/ppc_wrappers/emmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/ppc_wrappers/immintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/ppc_wrappers/mm_malloc.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/ppc_wrappers/mmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/ppc_wrappers/pmmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/ppc_wrappers/smmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/ppc_wrappers/tmmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/ppc_wrappers/x86gprintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/ppc_wrappers/x86intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/ppc_wrappers/xmmintrin.h
|
||||
OLD_DIRS+=usr/lib/clang/15.0.0/include/ppc_wrappers
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/profile/InstrProfData.inc
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/profile/MemProfData.inc
|
||||
OLD_DIRS+=usr/lib/clang/15.0.0/include/profile
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/sanitizer/allocator_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/sanitizer/asan_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/sanitizer/common_interface_defs.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/sanitizer/coverage_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/sanitizer/dfsan_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/sanitizer/hwasan_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/sanitizer/linux_syscall_hooks.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/sanitizer/lsan_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/sanitizer/memprof_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/sanitizer/msan_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/sanitizer/netbsd_syscall_hooks.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/sanitizer/scudo_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/sanitizer/tsan_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/sanitizer/tsan_interface_atomic.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/sanitizer/ubsan_interface.h
|
||||
OLD_DIRS+=usr/lib/clang/15.0.0/include/sanitizer
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/xray/xray_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/xray/xray_log_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/xray/xray_records.h
|
||||
OLD_DIRS+=usr/lib/clang/15.0.0/include/xray
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/__clang_cuda_builtin_vars.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/__clang_cuda_cmath.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/__clang_cuda_complex_builtins.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/__clang_cuda_device_functions.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/__clang_cuda_intrinsics.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/__clang_cuda_libdevice_declares.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/__clang_cuda_math.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/__clang_cuda_math_forward_declares.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/__clang_cuda_runtime_wrapper.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/__clang_cuda_texture_intrinsics.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/__clang_hip_cmath.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/__clang_hip_libdevice_declares.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/__clang_hip_math.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/__clang_hip_runtime_wrapper.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/__stddef_max_align_t.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/__wmmintrin_aes.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/__wmmintrin_pclmul.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/adxintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/altivec.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/ammintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/amxintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/arm64intr.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/arm_acle.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/arm_bf16.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/arm_cde.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/arm_cmse.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/arm_fp16.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/arm_mve.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/arm_neon.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/arm_neon_sve_bridge.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/arm_sve.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/armintr.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx2intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512bf16intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512bitalgintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512bwintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512cdintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512dqintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512erintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512fintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512fp16intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512ifmaintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512ifmavlintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512pfintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512vbmi2intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512vbmiintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512vbmivlintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512vlbf16intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512vlbitalgintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512vlbwintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512vlcdintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512vldqintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512vlfp16intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512vlintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512vlvbmi2intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512vlvnniintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512vlvp2intersectintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512vnniintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512vp2intersectintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512vpopcntdqintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avx512vpopcntdqvlintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avxintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/avxvnniintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/bmi2intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/bmiintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/builtins.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/cet.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/cetintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/cldemoteintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/clflushoptintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/clwbintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/clzerointrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/cpuid.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/crc32intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/emmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/enqcmdintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/f16cintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/float.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/fma4intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/fmaintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/fxsrintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/gfniintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/hexagon_circ_brev_intrinsics.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/hexagon_protos.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/hexagon_types.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/hlsl.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/hresetintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/htmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/htmxlintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/hvx_hexagon_protos.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/ia32intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/immintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/inttypes.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/invpcidintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/iso646.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/keylockerintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/limits.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/lwpintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/lzcntintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/mm3dnow.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/mm_malloc.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/mmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/module.modulemap
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/movdirintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/msa.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/mwaitxintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/nmmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/omp-tools.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/omp.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/ompt.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/opencl-c-base.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/opencl-c.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/pconfigintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/pkuintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/pmmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/popcntintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/prfchwintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/ptwriteintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/rdpruintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/rdseedintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/riscv_vector.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/rtmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/s390intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/serializeintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/sgxintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/shaintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/smmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/stdalign.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/stdarg.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/stdatomic.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/stdbool.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/stddef.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/stdint.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/stdnoreturn.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/tbmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/tgmath.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/tmmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/tsxldtrkintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/uintrintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/unwind.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/vadefs.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/vaesintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/varargs.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/vecintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/velintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/velintrin_approx.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/velintrin_gen.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/vpclmulqdqintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/waitpkgintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/wasm_simd128.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/wbnoinvdintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/wmmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/x86gprintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/x86intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/xmmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/xopintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/xsavecintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/xsaveintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/xsaveoptintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/xsavesintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/include/xtestintrin.h
|
||||
OLD_DIRS+=usr/lib/clang/15.0.0/include
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.asan-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.asan-aarch64.so
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.asan-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.asan-arm.so
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.asan-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.asan-armhf.so
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.asan-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.asan-i386.so
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.asan-preinit-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.asan-preinit-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.asan-preinit-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.asan-preinit-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.asan-preinit-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.asan-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.asan-x86_64.so
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.asan_cxx-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.asan_cxx-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.asan_cxx-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.asan_cxx-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.asan_cxx-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.asan_static-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.asan_static-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.cfi-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.cfi-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.cfi-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.cfi-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.cfi-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.cfi_diag-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.cfi_diag-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.cfi_diag-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.cfi_diag-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.cfi_diag-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.dd-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.dd-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.fuzzer-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.fuzzer-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.fuzzer_interceptors-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.fuzzer_no_main-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.fuzzer_no_main-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.msan-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.msan-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.msan_cxx-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.msan_cxx-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.profile-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.profile-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.profile-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.profile-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.profile-powerpc.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.profile-powerpc64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.profile-powerpc64le.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.profile-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.safestack-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.safestack-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.safestack-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.stats-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.stats-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.stats-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.stats-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.stats-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.stats_client-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.stats_client-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.stats_client-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.stats_client-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.stats_client-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.tsan-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.tsan-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.tsan_cxx-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.tsan_cxx-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.ubsan_minimal-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.ubsan_minimal-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.ubsan_minimal-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.ubsan_minimal-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.ubsan_minimal-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.ubsan_standalone-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.ubsan_standalone-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.ubsan_standalone-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.ubsan_standalone-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.ubsan_standalone-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.ubsan_standalone_cxx-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.ubsan_standalone_cxx-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.ubsan_standalone_cxx-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.ubsan_standalone_cxx-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.ubsan_standalone_cxx-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.xray-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.xray-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.xray-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.xray-basic-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.xray-basic-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.xray-basic-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.xray-basic-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.xray-fdr-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.xray-fdr-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.xray-fdr-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.xray-fdr-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.xray-profiling-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.xray-profiling-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.xray-profiling-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.xray-profiling-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/lib/freebsd/libclang_rt.xray-x86_64.a
|
||||
OLD_DIRS+=usr/lib/clang/15.0.0/lib/freebsd
|
||||
OLD_DIRS+=usr/lib/clang/15.0.0/lib
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/share/asan_ignorelist.txt
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/share/cfi_ignorelist.txt
|
||||
OLD_FILES+=usr/lib/clang/15.0.0/share/msan_ignorelist.txt
|
||||
OLD_DIRS+=usr/lib/clang/15.0.0/share
|
||||
OLD_DIRS+=usr/lib/clang/15.0.0
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/cuda_wrappers/algorithm
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/cuda_wrappers/complex
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/cuda_wrappers/new
|
||||
OLD_DIRS+=usr/lib/clang/15.0.3/include/cuda_wrappers
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/fuzzer/FuzzedDataProvider.h
|
||||
OLD_DIRS+=usr/lib/clang/15.0.3/include/fuzzer
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/hlsl/hlsl_basic_types.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/hlsl/hlsl_intrinsics.h
|
||||
OLD_DIRS+=usr/lib/clang/15.0.3/include/hlsl
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/openmp_wrappers/__clang_openmp_device_functions.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/openmp_wrappers/cmath
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/openmp_wrappers/complex
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/openmp_wrappers/complex.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/openmp_wrappers/complex_cmath.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/openmp_wrappers/math.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/openmp_wrappers/new
|
||||
OLD_DIRS+=usr/lib/clang/15.0.3/include/openmp_wrappers
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/ppc_wrappers/bmi2intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/ppc_wrappers/bmiintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/ppc_wrappers/emmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/ppc_wrappers/immintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/ppc_wrappers/mm_malloc.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/ppc_wrappers/mmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/ppc_wrappers/pmmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/ppc_wrappers/smmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/ppc_wrappers/tmmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/ppc_wrappers/x86gprintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/ppc_wrappers/x86intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/ppc_wrappers/xmmintrin.h
|
||||
OLD_DIRS+=usr/lib/clang/15.0.3/include/ppc_wrappers
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/profile/InstrProfData.inc
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/profile/MemProfData.inc
|
||||
OLD_DIRS+=usr/lib/clang/15.0.3/include/profile
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/sanitizer/allocator_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/sanitizer/asan_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/sanitizer/common_interface_defs.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/sanitizer/coverage_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/sanitizer/dfsan_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/sanitizer/hwasan_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/sanitizer/linux_syscall_hooks.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/sanitizer/lsan_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/sanitizer/memprof_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/sanitizer/msan_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/sanitizer/netbsd_syscall_hooks.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/sanitizer/scudo_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/sanitizer/tsan_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/sanitizer/tsan_interface_atomic.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/sanitizer/ubsan_interface.h
|
||||
OLD_DIRS+=usr/lib/clang/15.0.3/include/sanitizer
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/xray/xray_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/xray/xray_log_interface.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/xray/xray_records.h
|
||||
OLD_DIRS+=usr/lib/clang/15.0.3/include/xray
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/__clang_cuda_builtin_vars.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/__clang_cuda_cmath.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/__clang_cuda_complex_builtins.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/__clang_cuda_device_functions.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/__clang_cuda_intrinsics.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/__clang_cuda_libdevice_declares.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/__clang_cuda_math.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/__clang_cuda_math_forward_declares.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/__clang_cuda_runtime_wrapper.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/__clang_cuda_texture_intrinsics.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/__clang_hip_cmath.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/__clang_hip_libdevice_declares.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/__clang_hip_math.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/__clang_hip_runtime_wrapper.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/__stddef_max_align_t.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/__wmmintrin_aes.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/__wmmintrin_pclmul.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/adxintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/altivec.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/ammintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/amxintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/arm64intr.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/arm_acle.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/arm_bf16.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/arm_cde.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/arm_cmse.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/arm_fp16.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/arm_mve.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/arm_neon.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/arm_neon_sve_bridge.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/arm_sve.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/armintr.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx2intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512bf16intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512bitalgintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512bwintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512cdintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512dqintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512erintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512fintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512fp16intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512ifmaintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512ifmavlintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512pfintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512vbmi2intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512vbmiintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512vbmivlintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512vlbf16intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512vlbitalgintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512vlbwintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512vlcdintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512vldqintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512vlfp16intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512vlintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512vlvbmi2intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512vlvnniintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512vlvp2intersectintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512vnniintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512vp2intersectintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512vpopcntdqintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avx512vpopcntdqvlintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avxintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/avxvnniintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/bmi2intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/bmiintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/builtins.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/cet.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/cetintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/cldemoteintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/clflushoptintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/clwbintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/clzerointrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/cpuid.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/crc32intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/emmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/enqcmdintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/f16cintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/float.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/fma4intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/fmaintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/fxsrintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/gfniintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/hexagon_circ_brev_intrinsics.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/hexagon_protos.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/hexagon_types.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/hlsl.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/hresetintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/htmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/htmxlintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/hvx_hexagon_protos.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/ia32intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/immintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/inttypes.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/invpcidintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/iso646.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/keylockerintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/limits.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/lwpintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/lzcntintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/mm3dnow.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/mm_malloc.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/mmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/module.modulemap
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/movdirintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/msa.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/mwaitxintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/nmmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/omp-tools.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/omp.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/ompt.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/opencl-c-base.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/opencl-c.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/pconfigintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/pkuintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/pmmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/popcntintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/prfchwintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/ptwriteintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/rdpruintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/rdseedintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/riscv_vector.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/rtmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/s390intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/serializeintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/sgxintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/shaintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/smmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/stdalign.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/stdarg.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/stdatomic.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/stdbool.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/stddef.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/stdint.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/stdnoreturn.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/tbmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/tgmath.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/tmmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/tsxldtrkintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/uintrintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/unwind.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/vadefs.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/vaesintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/varargs.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/vecintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/velintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/velintrin_approx.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/velintrin_gen.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/vpclmulqdqintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/waitpkgintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/wasm_simd128.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/wbnoinvdintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/wmmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/x86gprintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/x86intrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/xmmintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/xopintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/xsavecintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/xsaveintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/xsaveoptintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/xsavesintrin.h
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/include/xtestintrin.h
|
||||
OLD_DIRS+=usr/lib/clang/15.0.3/include
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.asan-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.asan-aarch64.so
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.asan-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.asan-arm.so
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.asan-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.asan-armhf.so
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.asan-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.asan-i386.so
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.asan-preinit-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.asan-preinit-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.asan-preinit-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.asan-preinit-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.asan-preinit-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.asan-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.asan-x86_64.so
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.asan_cxx-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.asan_cxx-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.asan_cxx-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.asan_cxx-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.asan_cxx-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.asan_static-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.asan_static-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.cfi-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.cfi-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.cfi-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.cfi-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.cfi-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.cfi_diag-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.cfi_diag-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.cfi_diag-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.cfi_diag-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.cfi_diag-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.dd-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.dd-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.fuzzer-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.fuzzer-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.fuzzer_interceptors-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.fuzzer_no_main-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.fuzzer_no_main-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.msan-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.msan-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.msan_cxx-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.msan_cxx-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.profile-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.profile-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.profile-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.profile-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.profile-powerpc.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.profile-powerpc64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.profile-powerpc64le.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.profile-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.safestack-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.safestack-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.safestack-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.stats-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.stats-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.stats-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.stats-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.stats-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.stats_client-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.stats_client-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.stats_client-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.stats_client-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.stats_client-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.tsan-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.tsan-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.tsan_cxx-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.tsan_cxx-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.ubsan_minimal-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.ubsan_minimal-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.ubsan_minimal-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.ubsan_minimal-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.ubsan_minimal-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.ubsan_standalone-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.ubsan_standalone-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.ubsan_standalone-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.ubsan_standalone-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.ubsan_standalone-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.ubsan_standalone_cxx-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.ubsan_standalone_cxx-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.ubsan_standalone_cxx-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.ubsan_standalone_cxx-i386.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.ubsan_standalone_cxx-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.xray-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.xray-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.xray-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.xray-basic-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.xray-basic-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.xray-basic-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.xray-basic-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.xray-fdr-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.xray-fdr-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.xray-fdr-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.xray-fdr-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.xray-profiling-aarch64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.xray-profiling-arm.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.xray-profiling-armhf.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.xray-profiling-x86_64.a
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/lib/freebsd/libclang_rt.xray-x86_64.a
|
||||
OLD_DIRS+=usr/lib/clang/15.0.3/lib/freebsd
|
||||
OLD_DIRS+=usr/lib/clang/15.0.3/lib
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/share/asan_ignorelist.txt
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/share/cfi_ignorelist.txt
|
||||
OLD_FILES+=usr/lib/clang/15.0.3/share/msan_ignorelist.txt
|
||||
OLD_DIRS+=usr/lib/clang/15.0.3/share
|
||||
OLD_DIRS+=usr/lib/clang/15.0.3
|
||||
OLD_DIRS+=usr/lib/clang
|
||||
OLD_FILES+=usr/share/doc/llvm/clang/LICENSE.TXT
|
||||
OLD_DIRS+=usr/share/doc/llvm/clang
|
||||
|
Loading…
Reference in New Issue
Block a user