LLVM/project 0418a88clang/lib/Headers/zos_wrappers math.h variant.h, clang/test/Headers zos-guard.c

[z/OS][Clang] Reland Add wrapper headers to avoid macro name conflicts (#204472) (#207420)

Some z/OS system headers define macros (e.g. __time, __math) that
conflict with user identifiers and break compilation. These wrappers
include the system headers and neutralize the problematic macros.

Reland of 04079deb547c91eff6c6e2b820dbe6937c72fcf5.
Add systemz-registered-target requirement to zos-guard.c.
DeltaFile
+31-0clang/lib/Headers/zos_wrappers/math.h
+20-0clang/test/Headers/zos-guard.c
+19-0clang/lib/Headers/zos_wrappers/variant.h
+19-0clang/lib/Headers/zos_wrappers/time.h
+19-0clang/lib/Headers/zos_wrappers/string.h
+19-0clang/lib/Headers/zos_wrappers/poll.h
+127-010 files not shown
+180-016 files

LLVM/project 66ae5b8llvm/utils/gn/secondary/clang/lib/Lex BUILD.gn

[gn build] Port f1aeaa7bd552 (#207458)
DeltaFile
+1-0llvm/utils/gn/secondary/clang/lib/Lex/BUILD.gn
+1-01 files

LLVM/project 296ab5bllvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Core BUILD.gn

[gn build] Port e69038f9c2b1 (#207457)
DeltaFile
+1-0llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Core/BUILD.gn
+1-01 files

LLVM/project a6f5481llvm/utils/gn/secondary/clang-tools-extra/clang-doc/support BUILD.gn, llvm/utils/gn/secondary/clang-tools-extra/unittests/clang-doc BUILD.gn

[gn build] Port b6976d223eeb (#207454)
DeltaFile
+1-0llvm/utils/gn/secondary/clang-tools-extra/clang-doc/support/BUILD.gn
+1-0llvm/utils/gn/secondary/clang-tools-extra/unittests/clang-doc/BUILD.gn
+2-02 files

LLVM/project 0576c32llvm/utils/gn/secondary/libcxx/include BUILD.gn

[gn build] Port bd338806e423 (#207455)
DeltaFile
+1-0llvm/utils/gn/secondary/libcxx/include/BUILD.gn
+1-01 files

LLVM/project fbbf5dfllvm/utils/gn/secondary/lldb/source/Target BUILD.gn, llvm/utils/gn/secondary/lldb/source/Utility BUILD.gn

[gn build] Port 282416b6d457 (#207453)
DeltaFile
+0-1llvm/utils/gn/secondary/lldb/source/Target/BUILD.gn
+1-0llvm/utils/gn/secondary/lldb/source/Utility/BUILD.gn
+1-12 files

LLVM/project e96a42dlibcxx/test/benchmarks spec.gen.py, libcxx/utils run-spec-benchmark

[libc++] Fix SPEC benchmarks not producing a .lnt result file (#207450)

The refactoring in 471e8f7f94e7 removed the output of a .lnt file, which
is necessary for interoperation with consolidate-benchmarks.
DeltaFile
+15-4libcxx/utils/run-spec-benchmark
+1-1libcxx/test/benchmarks/spec.gen.py
+16-52 files

LLVM/project 07ef930llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Core BUILD.gn

[gn build] Port 24476abfac20 (#207452)
DeltaFile
+1-0llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Core/BUILD.gn
+1-01 files

LLVM/project 195f8aallvm/lib/Target/PowerPC PPCInstrFormats.td

Need to keep empty string.
DeltaFile
+2-2llvm/lib/Target/PowerPC/PPCInstrFormats.td
+2-21 files

LLVM/project 796dc15llvm/utils/gn/secondary/clang/lib/Headers BUILD.gn

[gn] Fix mistake from 4df00678d86fe (#207451)
DeltaFile
+2-2llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
+2-21 files

LLVM/project 9d3af67clang/docs ReleaseNotes.md, clang/lib/Sema SemaTemplate.cpp SemaDecl.cpp

[clang] accept member specializations declared in class scope

Explicit specializations are not restricted to namespace scope since CWG727 was
accepted as a DR.

Also fixes a crash upon error recovery in this case which was a recent
unreleased regression.

Fixes #206866
DeltaFile
+41-0clang/test/SemaTemplate/member-specialization.cpp
+5-4clang/lib/Sema/SemaTemplate.cpp
+6-0clang/lib/Sema/SemaDecl.cpp
+6-0clang/test/CXX/drs/cwg7xx.cpp
+3-0clang/docs/ReleaseNotes.md
+61-45 files

LLVM/project 3f72449llvm/lib/Transforms/Vectorize LoopVectorizationPlanner.h VPlanUtils.cpp, llvm/unittests/Transforms/Vectorize VPlanTest.cpp

[VPlan] Add VPBuilder::createVScale (NFC) (#207401)

Add a VPBuilder::createVScale helper (mirroring IRBuilder::CreateVScale)
and use it at the existing sites that create a VScale VPInstruction.
DeltaFile
+7-1llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
+4-4llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
+1-1llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
+12-63 files

LLVM/project f23cb39clang/docs LanguageExtensions.md, clang/include/clang/Options Options.td

Enable driver changes for fexec-charset
DeltaFile
+14-6clang/lib/Driver/ToolChains/Clang.cpp
+14-4clang/include/clang/Options/Options.td
+11-3clang/test/Driver/clang_f_opts.c
+10-0llvm/lib/Support/TextEncoding.cpp
+4-3clang/test/Driver/cl-options.c
+3-3clang/docs/LanguageExtensions.md
+56-193 files not shown
+60-199 files

LLVM/project c2fd1abclang/lib/AST ASTContext.cpp, clang/lib/Lex TextEncoding.cpp

Convert the key before cache lookup to prevent encoding differences
DeltaFile
+9-9clang/lib/AST/ASTContext.cpp
+2-2clang/lib/Lex/TextEncoding.cpp
+11-112 files

LLVM/project 6c50eeaclang/include/clang/Options Options.td, clang/lib/Driver/ToolChains Clang.cpp

address comments
DeltaFile
+3-3clang/include/clang/Options/Options.td
+1-1clang/lib/Driver/ToolChains/Clang.cpp
+4-42 files

LLVM/project da9c4b5clang/lib/AST PrintfFormatString.cpp FormatString.cpp, clang/lib/Sema SemaChecking.cpp

Add format string handling
DeltaFile
+58-31clang/lib/AST/PrintfFormatString.cpp
+46-40clang/lib/AST/FormatString.cpp
+33-21clang/lib/Sema/SemaChecking.cpp
+25-11clang/lib/AST/FormatStringParsing.h
+15-8clang/lib/AST/ScanfFormatString.cpp
+19-0llvm/lib/Support/TextEncoding.cpp
+196-1117 files not shown
+233-12013 files

LLVM/project 7e26deaclang/include/clang/Lex TextEncoding.h, clang/lib/Lex TextEncoding.cpp

fix CI
DeltaFile
+2-2clang/lib/Lex/TextEncoding.cpp
+1-0clang/include/clang/Lex/TextEncoding.h
+3-22 files

LLVM/project 15829b4clang/include/clang/Basic TargetInfo.h, clang/lib/AST ASTContext.cpp

convert to exec-charset inside getPredefinedStringLiteralFromCache, test __builtin_FILE()
DeltaFile
+10-0clang/lib/AST/ASTContext.cpp
+4-0clang/test/CodeGen/systemz-charset.cpp
+2-1clang/lib/Lex/TextEncoding.cpp
+3-0clang/lib/Basic/TargetInfo.cpp
+2-0clang/include/clang/Basic/TargetInfo.h
+21-15 files

LLVM/project b9babfcclang/lib/Lex TextEncoding.cpp, clang/lib/Sema SemaChecking.cpp

do not convert character by character
DeltaFile
+6-4clang/lib/Sema/SemaChecking.cpp
+1-1clang/lib/Lex/TextEncoding.cpp
+7-52 files

LLVM/project b74e511clang/lib/Parse ParseDecl.cpp

remove unnecessary changes
DeltaFile
+0-9clang/lib/Parse/ParseDecl.cpp
+0-91 files

LLVM/project 1bdeea8llvm/lib/Target/PowerPC PPCInstrInfo.td

Fix accidental renames.
DeltaFile
+6-3llvm/lib/Target/PowerPC/PPCInstrInfo.td
+6-31 files

LLVM/project 8fcaf22llvm/lib/Target/PowerPC PPCInstrInfo.td PPCInstr64Bit.td

[PowerPC] Change arguments of PPCEmitTimePseudo

Like #198861 but for PPCEmitTimePseudo.

This is not NFC. The asm name of LDtocBA was set to #LDtocCPT,
which is the name of the instruction before. This looks like a
cut`n`paste error, and I changed the asm name.
DeltaFile
+34-59llvm/lib/Target/PowerPC/PPCInstrInfo.td
+30-53llvm/lib/Target/PowerPC/PPCInstr64Bit.td
+10-20llvm/lib/Target/PowerPC/PPCInstrMMA.td
+2-1llvm/lib/Target/PowerPC/PPCInstrFormats.td
+76-1334 files

LLVM/project ae23ed0llvm/lib/Target/PowerPC PPCInstr64Bit.td PPCInstrFormats.td

[PowerPC] Remove asmstring from PPCPostRAExpPseudo

The `asmstring` is only used in the `PPCInstPrinter`, but these pseudos are replaced post-RA. Remove the strings since they are never used.
DeltaFile
+9-10llvm/lib/Target/PowerPC/PPCInstr64Bit.td
+4-6llvm/lib/Target/PowerPC/PPCInstrFormats.td
+1-2llvm/lib/Target/PowerPC/PPCInstrInfo.td
+1-2llvm/lib/Target/PowerPC/PPCInstrMMA.td
+15-204 files

LLVM/project cbb277alibcxxabi/src private_typeinfo.cpp

[libc++abi][NFC] Avoid out parameter in dyn_cast_get_derived_info (#207326)

Returning the object is much more idiomatic than having an out
parameter.
DeltaFile
+17-19libcxxabi/src/private_typeinfo.cpp
+17-191 files

LLVM/project 63b1974llvm/lib/Analysis ValueTracking.cpp, llvm/test/Transforms/InstCombine known-range-frexp-exp.ll

[ValueTracking] Fix frexp exponent range for nan/inf inputs (#202447)

computeConstantRange() returns a bounded range for the exponent result of
llvm.frexp.

frexp's exponent is unspecified when the argument is nan or inf,
so we can assign such a range only if we know the argument is
not nan or inf.
DeltaFile
+28-7llvm/test/Transforms/InstCombine/known-range-frexp-exp.ll
+14-12llvm/lib/Analysis/ValueTracking.cpp
+42-192 files

LLVM/project 320a8a4llvm/lib/Transforms/InstCombine InstCombineCasts.cpp, llvm/test/Transforms/InstCombine fptrunc.ll

[InstCombine] Don't blindly copy ninf when narrowing fptrunc(binop(fpext, fpext)) (#202489)

The fold narrows fptrunc(BO(fpext x, fpext y)) -> BO(x, y) for
fadd/fsub/fmul/fdiv, recomputing the binop directly in the narrower
type.

Even if the original BO returns a finite result, the fptrunc may produce
inf. Therefore even if the original BO has ninf, we have to drop it on
the new BO unless the original fptrunc *also* has ninf.
DeltaFile
+142-0llvm/test/Transforms/InstCombine/fptrunc.ll
+10-3llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
+152-32 files

LLVM/project cef9fdcclang/include/clang/Options Options.td, clang/lib/Driver/ToolChains Clang.cpp

address comments
DeltaFile
+3-3clang/include/clang/Options/Options.td
+1-1clang/lib/Driver/ToolChains/Clang.cpp
+4-42 files

LLVM/project e26c6d0clang/lib/AST ASTContext.cpp, clang/lib/Lex TextEncoding.cpp

Convert the key before cache lookup to prevent encoding differences
DeltaFile
+9-9clang/lib/AST/ASTContext.cpp
+2-2clang/lib/Lex/TextEncoding.cpp
+11-112 files

LLVM/project 1fe9decclang/docs LanguageExtensions.md, clang/include/clang/Options Options.td

Enable driver changes for fexec-charset
DeltaFile
+14-6clang/lib/Driver/ToolChains/Clang.cpp
+14-4clang/include/clang/Options/Options.td
+11-3clang/test/Driver/clang_f_opts.c
+10-0llvm/lib/Support/TextEncoding.cpp
+4-3clang/test/Driver/cl-options.c
+3-3clang/docs/LanguageExtensions.md
+56-193 files not shown
+60-199 files

LLVM/project b007e9eclang/lib/Lex TextEncoding.cpp, clang/lib/Sema SemaChecking.cpp

do not convert character by character
DeltaFile
+6-4clang/lib/Sema/SemaChecking.cpp
+1-1clang/lib/Lex/TextEncoding.cpp
+7-52 files