SuccessChanges

Summary

  1. [lldb] Trigger reproducer job on success (details)
  2. [lldb] Make triggering downstream jobs a stage (details)
Commit 97d547b8145c0838b7283b726b20121ce98d84f7 by Jonas Devlieghere
[lldb] Trigger reproducer job on success
The file was modifiedzorg/jenkins/jobs/jobs/lldb-cmake (diff)
Commit d2cf26cb977866f556a2ee60e775c0d8c84294a0 by Jonas Devlieghere
[lldb] Make triggering downstream jobs a stage
The file was modifiedzorg/jenkins/jobs/jobs/lldb-cmake (diff)

Summary

  1. [CodeGen] remove instnamer dependency from test file; NFC (details)
  2. [StructurizeCFG] Fix an incorrect comment, NFC. (details)
  3. Support GCC [[gnu::attributes]] in C2x mode (details)
  4. [openmp] Fixed taskloop recursive splitting so that taskloop tasks have (details)
  5. [InstNamer] use 'i' for Instructions, not 'tmp' (details)
  6. [WebAssembly] Update test expectations (details)
  7. [libc] Add implementations of ceil[f], floor[f] and trunc[f] from math.h. (details)
  8. Process gep (phi ptr1, ptr2) in SROA (details)
  9. [InstCombine] add test for select-of-shuffle; NFC (details)
  10. [Object] Add DF_1_PIE (details)
  11. Update some names in test. NFC. (details)
  12. [flang] This adds the lowering stubs for Open MP. (details)
  13. [Clang][CGM] style cleanups NFC (details)
  14. [SVE] Eliminate calls to default-false VectorType::get() from Clang (details)
  15. AMDGPU: Fix alignment for dynamic allocas (details)
  16. Temporarily removed unstable test. NFC. (details)
  17. [ELF] Set DF_1_PIE for -pie (details)
  18. [AMDGPU/MemOpsCluster] Let mem ops clustering logic also consider number of clustered bytes (details)
  19. AMDGPU: Remove dead file (details)
  20. AMDGPU: Fix test in code directory (details)
  21. [PGO] Improve the working set size heuristics under the partial sample PGO. (details)
  22. [Darwin] Add and adopt a way to query the Darwin kernel version (details)
  23. DAG: Fix getNode dropping flags if there's a glue output (details)
  24. [LiveDebugValues] Speed up removeEntryValue, NFC (details)
  25. [LiveDebugValues] Add LocIndex::u32_{location,index}_t types for readability, NFC (details)
  26. AMDGPU: Fix not emitting nofpexcept on fdiv expansion (details)
  27. [InstCombine] fix use of base VectorType; NFC (details)
  28. [ELF] Refine --export-dynamic-symbol semantics to be compatible GNU ld 2.35 (details)
  29. Move internal_uname to #if SANITIZER_LINUX scope. (details)
  30. [Matrix] Implement matrix index expressions ([][]). (details)
  31. [PDB] Use inlinee file checksum offsets directly (details)
  32. [libc] Expose APIGenerator. (details)
  33. Add DIAError.h to list of headers excluded from the LLVM_DebugInfo_PDB module (details)
  34. [llvm][NFC] Cache FAM in InlineAdvisor (details)
  35. [lldb/Test] Add test for man page and lldb --help output (details)
  36. For --relativenames, ignore directory 0, which is the comp_dir. (details)
  37. [PDB] Share code to relocate .debug$[SF] sections, NFC (details)
Commit c0303e5391f65dbad3a6f1dbfa5ac9c9a83fa6c0 by spatel
[CodeGen] remove instnamer dependency from test file; NFC

This file was originally added without instnamer at:
rL283716 / fe2b9b4fbf860e3dc7da7705f548bc8d7b6ab9c1

But that was reverted and the test file reappeared with instnamer at:
rL285688 / 62f516f5906f967179610a73e4cc1d852b908bbd

I'm not seeing any difference locally from checking nameless values,
so trying to remove a layering violation and see if that can
survive the build bots.
The file was modifiedclang/test/CodeGen/x86-inline-asm-v-constraint.c
Commit 8a84158e5b966236c0e090cd5c7f44dab69e59a8 by ehudkatz
[StructurizeCFG] Fix an incorrect comment, NFC.
The file was modifiedllvm/lib/Transforms/Scalar/StructurizeCFG.cpp
Commit 522934da1f0c78c1de1a80d4ba14204a11f5afa8 by aaron
Support GCC [[gnu::attributes]] in C2x mode

GCC 10.1 introduced support for the [[]] style spelling of attributes in C
mode. Similar to how GCC supports __attribute__((foo)) as [[gnu::foo]] in
C++ mode, it now supports the same spelling in C mode as well. This patch
makes a change in Clang so that when you use the GCC attribute spelling,
the attribute is automatically available in all three spellings by default.
However, like Clang, GCC has some attributes it only recognizes in C++ mode
(specifically, abi_tag and init_priority), which this patch also honors.
The file was modifiedclang/utils/TableGen/ClangAttrEmitter.cpp
The file was modifiedclang/test/Sema/attr-c2x.c
The file was modifiedclang/include/clang/Basic/Attr.td
Commit 5e111c5df8efde39c62d5e6906f590311782e30b by Andrey.Churbanov
[openmp] Fixed taskloop recursive splitting so that taskloop tasks have
same parent tasks.

Differential Revision: https://reviews.llvm.org/D80577
The file was addedopenmp/runtime/test/tasking/omp_taskloop_taskwait.c
The file was modifiedopenmp/runtime/src/kmp_tasking.cpp
Commit dd54432a0f5a6f042fa4d2db3094c6f02e5ad275 by spatel
[InstNamer] use 'i' for Instructions, not 'tmp'

As discussed in https://bugs.llvm.org/show_bug.cgi?id=45951 and
D80584, the name 'tmp' is almost always a bad choice, but we have
a legacy of regression tests with that name because it was baked
into utils/update_test_checks.py.

This change makes -instnamer more consistent (already using "arg"
and "bb", the common LLVM shorthand). And it avoids the conflict
in telling users of the FileCheck script to run "-instnamer" to
create a better regression test and having that cause a warn/fail
in update_test_checks.py.
The file was modifiedllvm/test/Transforms/InstNamer/basic.ll
The file was modifiedllvm/lib/Transforms/Utils/InstructionNamer.cpp
Commit 26c78e3095f42c066804cf517339002a1028ed61 by sbc
[WebAssembly] Update test expectations

simd-2.C now compiles thanks to:
  https://github.com/WebAssembly/wasi-libc/pull/183

Differential Revision: https://reviews.llvm.org/D80930
The file was modifiedllvm/lib/Target/WebAssembly/known_gcc_test_failures.txt
Commit 1caedd0c550646557d8d2feb97b3cbba8c48b2d7 by sivachandra
[libc] Add implementations of ceil[f], floor[f] and trunc[f] from math.h.

Reviewers: abrachet

Differential Revision: https://reviews.llvm.org/D80612
The file was addedlibc/src/math/trunc.h
The file was modifiedlibc/utils/FPUtil/FloatProperties.h
The file was addedlibc/test/src/math/trunc_test.cpp
The file was addedlibc/src/math/truncf.cpp
The file was addedlibc/src/math/trunc.cpp
The file was addedlibc/test/src/math/ceil_test.cpp
The file was addedlibc/src/math/floorf.h
The file was addedlibc/src/math/ceil.cpp
The file was addedlibc/test/src/math/floorf_test.cpp
The file was modifiedlibc/utils/FPUtil/FloatOperations.h
The file was addedlibc/src/math/ceil.h
The file was addedlibc/test/src/math/floor_test.cpp
The file was addedlibc/test/src/math/ceilf_test.cpp
The file was addedlibc/src/math/floor.h
The file was addedlibc/test/src/math/truncf_test.cpp
The file was addedlibc/src/math/floorf.cpp
The file was modifiedlibc/utils/MPFRWrapper/MPFRUtils.cpp
The file was addedlibc/src/math/floor.cpp
The file was modifiedlibc/lib/CMakeLists.txt
The file was modifiedlibc/utils/MPFRWrapper/MPFRUtils.h
The file was modifiedlibc/src/math/CMakeLists.txt
The file was addedlibc/src/math/ceilf.cpp
The file was addedlibc/src/math/truncf.h
The file was modifiedlibc/test/src/math/CMakeLists.txt
The file was addedlibc/src/math/ceilf.h
Commit 745c6c8458babb31efc4e992a9c3e8598f03149f by Stanislav.Mekhanoshin
Process gep (phi ptr1, ptr2) in SROA

Differential Revision: https://reviews.llvm.org/D79218
The file was addedllvm/test/Transforms/SROA/phi-gep.ll
The file was modifiedllvm/lib/Transforms/Scalar/SROA.cpp
Commit b874dc4ddabe9cada83e8e0b82274faf2eee95cc by spatel
[InstCombine] add test for select-of-shuffle; NFC

This is based on an example in D80658
The file was modifiedllvm/test/Transforms/InstCombine/vec_demanded_elts.ll
Commit d9943e7f0ce888733ee7ba91da432e5f01f7aa85 by maskray
[Object] Add DF_1_PIE

This flag (and the whole field DT_FLAGS_1) originated from Solaris. I intend to use it in an LLD patch D80872.

Reviewed By: jhenderson

Differential Revision: https://reviews.llvm.org/D80871
The file was modifiedllvm/test/tools/llvm-readobj/ELF/dynamic-tags.test
The file was modifiedllvm/include/llvm/BinaryFormat/ELF.h
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
Commit e132a9c012bab1425e6021a818befd17a73e2b64 by Stanislav.Mekhanoshin
Update some names in test. NFC.

There seems to be some instability with IR nameing between
platforms. Attempted to fix it with replacing dot-numbered
names.
The file was modifiedllvm/test/Transforms/SROA/phi-gep.ll
Commit ae6e499d258c24fde433d02793c327367c402d50 by eschweitz
[flang] This adds the lowering stubs for Open MP.

The lowering bridge will call these lowering hooks to process the Open
MP directives that it iterates over in the PFT.  This is a mock
interface without an implementation in this patch.

Reviewed By: kiranchandramohan

Differential Revision: https://reviews.llvm.org/D80815
The file was modifiedflang/lib/Lower/CMakeLists.txt
The file was addedflang/lib/Lower/OpenMP.cpp
The file was addedflang/include/flang/Lower/AbstractConverter.h
The file was addedflang/include/flang/Lower/OpenMP.h
Commit ef1d4bec891b2121fffa68675e3792b2527a75ee by ndesaulniers
[Clang][CGM] style cleanups NFC

Summary:
Forked from:
https://reviews.llvm.org/D80242

Use the getter for access to DebugInfo consistently.
Use break in switch in CodeGenModule::EmitTopLevelDecl consistently.

Reviewers: dblaikie

Reviewed By: dblaikie

Subscribers: cfe-commits, srhines

Tags: #clang

Differential Revision: https://reviews.llvm.org/D80840
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
Commit 796898172c48a475f27f038e587c35dbba9ab7a6 by ctetreau
[SVE] Eliminate calls to default-false VectorType::get() from Clang

Reviewers: efriedma, david-arm, fpetrogalli, ddunbar, rjmccall

Reviewed By: fpetrogalli, rjmccall

Subscribers: tschuett, rkruppe, psnobl, dmgreen, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D80323
The file was modifiedclang/lib/CodeGen/CGExpr.cpp
The file was modifiedclang/lib/CodeGen/TargetInfo.cpp
The file was modifiedclang/utils/TableGen/MveEmitter.cpp
The file was modifiedclang/lib/CodeGen/CGBuiltin.cpp
The file was modifiedclang/lib/CodeGen/CGExprScalar.cpp
The file was modifiedclang/lib/CodeGen/SwiftCallingConv.cpp
The file was modifiedclang/lib/CodeGen/CodeGenTypes.cpp
Commit 7ad36491cadee1ed91e18215c30328a3d5c104f9 by arsenm2
AMDGPU: Fix alignment for dynamic allocas

The alignment value also needs to be scaled by the wave size.
The file was modifiedllvm/test/CodeGen/AMDGPU/non-entry-alloca.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
Commit 4e963299ee0f6f413f9d25bf7a53e6a90441f7b4 by Stanislav.Mekhanoshin
Temporarily removed unstable test. NFC.
The file was modifiedllvm/test/Transforms/SROA/phi-gep.ll
Commit ee9a251caf1d785798c3602d473c3d2d84180d50 by maskray
[ELF] Set DF_1_PIE for -pie

DF_1_PIE originated from Solaris (https://docs.oracle.com/cd/E36784_01/html/E36857/chapter6-42444.html ).
GNU ld since
https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=5fe2850dd96483f176858fd75c098313d5b20bc2
sets the flag on non-Solaris platforms.

It can help distinguish PIE from ET_DYN.
eu-classify from elfutils uses this to recognize PIE (https://sourceware.org/git/?p=elfutils.git;a=commit;h=3f489b5c7c78df6d52f8982f79c36e9a220e8951 )

glibc uses this flag to reject dlopen'ing a PIE (https://sourceware.org/bugzilla/show_bug.cgi?id=24323 )

Reviewed By: psmith

Differential Revision: https://reviews.llvm.org/D80872
The file was modifiedlld/test/ELF/i386-retpoline-pic.s
The file was modifiedlld/test/ELF/gnu-ifunc-dyntags.s
The file was modifiedlld/test/ELF/pack-dyn-relocs.s
The file was modifiedlld/test/ELF/aarch64-gnu-ifunc-nonpreemptable.s
The file was modifiedlld/test/ELF/aarch64-ifunc-bti.s
The file was modifiedlld/test/ELF/pack-dyn-relocs-arm2.s
The file was modifiedlld/test/ELF/pie.s
The file was modifiedlld/test/ELF/ppc32-ifunc-nonpreemptible-pic.s
The file was modifiedlld/test/ELF/local-got-pie.s
The file was modifiedlld/test/ELF/pack-dyn-relocs-relr-loop.s
The file was modifiedlld/test/ELF/riscv-ifunc-nonpreemptible.s
The file was modifiedlld/test/ELF/separate-segments.s
The file was modifiedlld/test/ELF/riscv-gp.s
The file was modifiedlld/test/ELF/ppc32-call-stub-pic.s
The file was modifiedlld/test/ELF/aarch64-feature-bti.s
The file was modifiedlld/test/ELF/relative-dynamic-reloc-pie.s
The file was modifiedlld/ELF/SyntheticSections.cpp
The file was modifiedlld/test/ELF/arm-pie-relative.s
The file was modifiedlld/test/ELF/ppc64-long-branch-pi.s
Commit 0ed2c046362e2248eaf3d81e235115b28d4af262 by mahesha.comp
[AMDGPU/MemOpsCluster] Let mem ops clustering logic also consider number of clustered bytes

Summary:
While clustering mem ops, AMDGPU target needs to consider number of clustered bytes
to decide on max number of mem ops that can be clustered. This patch adds support to pass
number of clustered bytes to target mem ops clustering logic.

Reviewers: foad, rampitec, arsenm, vpykhtin, javedabsar

Reviewed By: foad

Subscribers: MatzeB, kzhuravl, jvesely, wdng, nhaehnle, yaxunl, dstuttard, tpr, t-tye, hiraditya, javed.absar, kerbowa, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D80545
The file was modifiedllvm/lib/Target/AMDGPU/SIInsertHardClauses.cpp
The file was modifiedllvm/lib/CodeGen/MachineScheduler.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.cpp
The file was modifiedllvm/lib/Target/X86/X86InstrInfo.h
The file was modifiedllvm/lib/Target/Lanai/LanaiInstrInfo.h
The file was modifiedllvm/lib/Target/Lanai/LanaiInstrInfo.cpp
The file was modifiedllvm/include/llvm/CodeGen/TargetInstrInfo.h
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.h
The file was modifiedllvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
The file was modifiedllvm/lib/CodeGen/TargetInstrInfo.cpp
The file was modifiedllvm/lib/Target/X86/X86InstrInfo.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonInstrInfo.h
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.h
Commit ed08c4fb2e63daed03987f80a17cbececeb2c656 by Matthew.Arsenault
AMDGPU: Remove dead file
The file was removedllvm/lib/Target/AMDGPU/VIInstructions.td
Commit 20793b2aef1c7589cff1c35194f1463e747cb1a5 by Matthew.Arsenault
AMDGPU: Fix test in code directory
The file was removedllvm/lib/Target/AMDGPU/sroa-before-unroll.ll
The file was addedllvm/test/CodeGen/AMDGPU/sroa-before-unroll.ll
Commit 6c27c61d32fd2951a290c6d4363bd495f6feae96 by yamauchi
[PGO] Improve the working set size heuristics under the partial sample PGO.

Summary:
The working set size heuristics (ProfileSummaryInfo::hasHugeWorkingSetSize)
under the partial sample PGO may not be accurate because the profile is partial
and the number of hot profile counters in the ProfileSummary may not reflect the
actual working set size of the program being compiled.

To improve this, the (approximated) ratio of the the number of profile counters
of the program being compiled to the number of profile counters in the partial
sample profile is computed (which is called the partial profile ratio) and the
working set size of the profile is scaled by this ratio to reflect the working
set size of the program being compiled and used for the working set size
heuristics.

The partial profile ratio is approximated based on the number of the basic
blocks in the program and the NumCounts field in the ProfileSummary and computed
through the thin LTO indexing. This means that there is the limitation that the
scaled working set size is available to the thin LTO post link passes only.

Reviewers: davidxl

Subscribers: mgorny, eraman, hiraditya, steven_wu, dexonsmith, arphaman, dang, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D79831
The file was modifiedllvm/lib/IR/Module.cpp
The file was modifiedllvm/include/llvm/IR/Module.h
The file was modifiedllvm/lib/Analysis/ProfileSummaryInfo.cpp
The file was modifiedllvm/lib/LTO/LTOBackend.cpp
The file was modifiedllvm/include/llvm/IR/ProfileSummary.h
The file was modifiedllvm/lib/Transforms/IPO/FunctionImport.cpp
The file was modifiedllvm/unittests/Analysis/ProfileSummaryInfoTest.cpp
The file was modifiedllvm/unittests/IR/ModuleTest.cpp
Commit f97a609b1763d7e343f52a7061727c4874bc26df by julian.lettner
[Darwin] Add and adopt a way to query the Darwin kernel version

This applies the learnings from [1].  What I intended as a simple
cleanup made me realize that the compiler-rt version checks have two
separate issues:

1) In some places (e.g., mmap flag setting) what matters is the kernel
   version, not the OS version.
2) OS version checks are implemented by querying the kernel version.
   This is not necessarily correct inside the simulators if the
   simulator runtime isn't aligned with the host macOS.

This commit tackles 1) by adopting a separate query function for the
Darwin kernel version.  2) (and cleanups) will be dealt with in
follow-ups.

[1] https://reviews.llvm.org/D78942

rdar://63031937

Reviewed By: delcypher

Differential Revision: https://reviews.llvm.org/D79965
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_mac.h
Commit 836c7dcf1238683ff18882affac1dae5ae5c5f79 by Matthew.Arsenault
DAG: Fix getNode dropping flags if there's a glue output

The AMDGPU non-strict fdiv lowering needs to introduce an FP mode
switch in some cases, and has custom nodes to provide chain/glue for
the intermediate FP operations. We need to propagate nofpexcept here,
but getNode was dropping the flags.

Adding nofpexcept in the AMDGPU custom lowering is left to a future
patch.

Also fix a second case where flags were dropped, but in this case it
seems it just didn't handle this number of operands.

Test will be included in future AMDGPU patch.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
Commit 2ecaf93525fe4b271117d3932118ecaccdacaa03 by Vedant Kumar
[LiveDebugValues] Speed up removeEntryValue, NFC

Summary:
Instead of iterating over all VarLoc IDs in removeEntryValue(), just
iterate over the interval reserved for entry value VarLocs. This changes
the iteration order, hence the test update -- otherwise this is NFC.

This appears to give an ~8.5x wall time speed-up for LiveDebugValues when
compiling sqlite3.c 3.30.1 with a Release clang (on my machine):

```
          ---User Time---   --System Time--   --User+System--   ---Wall Time--- --- Name ---
  Before: 2.5402 ( 18.8%)   0.0050 (  0.4%)   2.5452 ( 17.3%)   2.5452 ( 17.3%) Live DEBUG_VALUE analysis
   After: 0.2364 (  2.1%)   0.0034 (  0.3%)   0.2399 (  2.0%)   0.2398 (  2.0%) Live DEBUG_VALUE analysis
```

The change in removeEntryValue() is the only one that appears to affect
wall time, but for consistency (and to resolve a pending TODO), I made
the analogous changes for iterating over SpillLocKind VarLocs.

Reviewers: nikic, aprantl, jmorse, djtodoro

Subscribers: hiraditya, dexonsmith, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D80684
The file was modifiedllvm/include/llvm/ADT/CoalescingBitVector.h
The file was modifiedllvm/unittests/ADT/CoalescingBitVectorTest.cpp
The file was modifiedllvm/lib/CodeGen/LiveDebugValues.cpp
The file was modifiedllvm/test/DebugInfo/MIR/X86/entry-values-diamond-bbs.mir
Commit 11c617c417766c7ff36a8fefb9bd2b608c971e19 by Vedant Kumar
[LiveDebugValues] Add LocIndex::u32_{location,index}_t types for readability, NFC

This is per Adrian's suggestion in https://reviews.llvm.org/D80684.
The file was modifiedllvm/lib/CodeGen/LiveDebugValues.cpp
Commit 89d48ccabe6a950369b2bd922b1d8e987b856ac7 by Matthew.Arsenault
AMDGPU: Fix not emitting nofpexcept on fdiv expansion

In this awkward case, we have to emit custom pseudo-constrained FP
wrappers. InstrEmitter concludes that since a mayRaiseFPException
instruction had a chain, it can't add nofpexcept.

Test deferred until mayRaiseFPException is really set on everything.
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
Commit 26ebe936f3ba63a2365f660509026e11fa0d695a by spatel
[InstCombine] fix use of base VectorType; NFC

SimplifyDemandedVectorElts() bails out on ScalableVectorType
anyway, but we can exit faster with the external check.

Move this to a helper function because there are likely other
vector folds that we can try here.
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineInternal.h
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
Commit 751f18e7d46dbb53f62c4c567e331b9bc87febf6 by maskray
[ELF] Refine --export-dynamic-symbol semantics to be compatible GNU ld 2.35

GNU ld from binutils 2.35 onwards will likely support
--export-dynamic-symbol but with different semantics.
https://sourceware.org/pipermail/binutils/2020-May/111302.html

Differences:

1. -export-dynamic-symbol is not supported
2. --export-dynamic-symbol takes a glob argument
3. --export-dynamic-symbol can suppress binding the references to the definition within the shared object if (-Bsymbolic or -Bsymbolic-functions)
4. --export-dynamic-symbol does not imply -u

I don't think the first three points can affect any user.
For the fourth point, Not implying -u can lead to some archive members unfetched.
Add -u foo to restore the previous behavior.

Exact semantics:

* -no-pie or -pie: matched non-local defined symbols will be added to the dynamic symbol table.
* -shared: matched non-local STV_DEFAULT symbols will not be bound to definitions within the shared object
  even if they would otherwise be due to -Bsymbolic, -Bsymbolic-functions, or --dynamic-list.

Reviewed By: psmith

Differential Revision: https://reviews.llvm.org/D80487
The file was modifiedlld/docs/ld.lld.1
The file was modifiedlld/ELF/Config.h
The file was modifiedlld/ELF/Symbols.cpp
The file was modifiedlld/ELF/Driver.cpp
The file was modifiedlld/test/ELF/export-dynamic-symbol.s
The file was modifiedlld/test/ELF/warn-backrefs.s
The file was modifiedlld/ELF/ScriptParser.cpp
The file was modifiedlld/ELF/Options.td
The file was modifiedlld/docs/ReleaseNotes.rst
Commit b638b63b99d66786cb37336292604a2ae3490cfd by mliska
Move internal_uname to #if SANITIZER_LINUX scope.

Remove it from target-specific scope which corresponds
to sanitizer_linux.cpp where it lives in the same macro
scope.

Differential Revision: https://reviews.llvm.org/D80864
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_linux.h
Commit 8f3f88d2f50d97011bf48ccc507bef033715e566 by flo
[Matrix] Implement matrix index expressions ([][]).

This patch implements matrix index expressions
(matrix[RowIdx][ColumnIdx]).

It does so by introducing a new MatrixSubscriptExpr(Base, RowIdx, ColumnIdx).
MatrixSubscriptExprs are built in 2 steps in ActOnMatrixSubscriptExpr. First,
if the base of a subscript is of matrix type, we create a incomplete
MatrixSubscriptExpr(base, idx, nullptr). Second, if the base is an incomplete
MatrixSubscriptExpr, we create a complete
MatrixSubscriptExpr(base->getBase(), base->getRowIdx(), idx)

Similar to vector elements, it is not possible to take the address of
a MatrixSubscriptExpr.
For CodeGen, a new MatrixElt type is added to LValue, which is very
similar to VectorElt. The only difference is that we may need to cast
the type of the base from an array to a vector type when accessing it.

Reviewers: rjmccall, anemet, Bigcheese, rsmith, martong

Reviewed By: rjmccall

Differential Revision: https://reviews.llvm.org/D76791
The file was modifiedclang/include/clang/AST/ComputeDependence.h
The file was modifiedclang/lib/AST/ASTContext.cpp
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was modifiedclang/lib/CodeGen/CGExprScalar.cpp
The file was modifiedclang/lib/CodeGen/CGValue.h
The file was modifiedclang/test/SemaCXX/matrix-type-operators.cpp
The file was modifiedclang/lib/CodeGen/CodeGenFunction.h
The file was modifiedclang/lib/Sema/SemaInit.cpp
The file was modifiedclang/lib/Sema/SemaExceptionSpec.cpp
The file was modifiedclang/lib/AST/NSAPI.cpp
The file was modifiedclang/lib/AST/StmtPrinter.cpp
The file was modifiedclang/lib/AST/Type.cpp
The file was modifiedclang/lib/Serialization/ASTReader.cpp
The file was modifiedclang/lib/AST/TypeLoc.cpp
The file was modifiedclang/lib/Serialization/ASTReaderStmt.cpp
The file was modifiedclang/lib/Serialization/ASTWriterStmt.cpp
The file was modifiedclang/lib/CodeGen/CGExpr.cpp
The file was modifiedclang/include/clang/AST/BuiltinTypes.def
The file was addedclang/test/SemaObjC/matrix-type-operators.m
The file was modifiedclang/include/clang/AST/ASTContext.h
The file was modifiedclang/lib/Sema/SemaCast.cpp
The file was modifiedclang/include/clang/AST/RecursiveASTVisitor.h
The file was modifiedclang/lib/AST/StmtProfile.cpp
The file was modifiedclang/lib/Serialization/ASTCommon.cpp
The file was modifiedclang/test/CodeGenCXX/matrix-type-operators.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/include/clang/Basic/StmtNodes.td
The file was modifiedclang/test/Sema/matrix-type-operators.c
The file was modifiedclang/include/clang/Sema/Initialization.h
The file was modifiedclang/lib/StaticAnalyzer/Core/ExprEngine.cpp
The file was modifiedclang/lib/AST/ItaniumMangle.cpp
The file was modifiedclang/tools/libclang/CXCursor.cpp
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/lib/Sema/TreeTransform.h
The file was modifiedclang/include/clang/Serialization/ASTBitCodes.h
The file was modifiedclang/lib/AST/ExprClassification.cpp
The file was modifiedllvm/include/llvm/IR/MatrixBuilder.h
The file was modifiedclang/include/clang/AST/Expr.h
The file was modifiedclang/include/clang/Basic/Specifiers.h
The file was addedclang/test/CodeGenObjC/matrix-type-operators.m
The file was modifiedclang/lib/AST/Expr.cpp
The file was modifiedclang/lib/AST/ComputeDependence.cpp
The file was modifiedclang/include/clang/AST/Stmt.h
The file was modifiedclang/lib/AST/TextNodeDumper.cpp
The file was modifiedclang/test/CodeGen/matrix-type-operators.c
Commit 8f0a6600306417227da72d93d11b2fa6f0be6b4c by rnk
[PDB] Use inlinee file checksum offsets directly

The inlinees section contains references to the file checksum table. The
file checksum table in the PDB must have the same layout as the file
checksum table in the object file, so all the existing file id
references should stay valid.

Previously, we would do this:
  for all inlined functions:
    - lookup filename from checksum and string table
    - make that filename absolute
    - look up the new file id for that filename up in the new checksum
      table

This lead to pdbMakeAbsolute and remove_dots ending up in the hot path.
We should only need to absolutify the source path once, not once every
time we process an inline function from that source file.

This speeds up linking chrome PGO stage 1 net_unittests.exe from 9.203s
to 8.500s (-7.6%). Looking just at time to process symbol records, it
goes from ~2000ms to ~1300ms, which is consistent with the overall
speedup of about 700ms. This will be less noticeable in debug builds,
which have fewer inlined functions records.
The file was modifiedlld/COFF/PDB.cpp
Commit 1ab092b75859137c48d279a137fe5dce61a925b6 by paulatoth
[libc] Expose APIGenerator.

Summary: This is split off from D79192 and exposes APIGenerator (renames to APIIndexer) for use in generating the integrations tests.

Reviewers: sivachandra

Reviewed By: sivachandra

Subscribers: tschuett, ecnelises, libc-commits

Tags: #libc-project

Differential Revision: https://reviews.llvm.org/D80832
The file was modifiedlibc/utils/HdrGen/PublicAPICommand.h
The file was modifiedlibc/utils/HdrGen/PublicAPICommand.cpp
Commit a05f1e5ae4e0d0fc789a4caeff108fe4a50dc652 by dany.grumberg
Add DIAError.h to list of headers excluded from the LLVM_DebugInfo_PDB module

Differential Revision: https://reviews.llvm.org/D80808
The file was modifiedllvm/include/llvm/module.modulemap
Commit 999ea25a9eeab72f95acaa7f753f4f3a7ac450b3 by mtrofin
[llvm][NFC] Cache FAM in InlineAdvisor

Summary:
This simplifies the interface by storing the function analysis manager
with the InlineAdvisor, and, thus, not requiring it be passed each time
we inquire for an advice.

Reviewers: davidxl, asbirlea

Subscribers: eraman, hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D80405
The file was modifiedllvm/include/llvm/Analysis/InlineAdvisor.h
The file was modifiedllvm/include/llvm/Transforms/IPO/Inliner.h
The file was modifiedllvm/lib/Analysis/InlineAdvisor.cpp
The file was modifiedllvm/lib/Transforms/IPO/Inliner.cpp
Commit 382f6d37a1f2ec472a1f869be2d33078fe6ea8da by Jonas Devlieghere
[lldb/Test] Add test for man page and lldb --help output
The file was addedlldb/test/Shell/Driver/TestHelp.test
Commit f027cfa37e6757bb2d17ac3bea944df4e06bcff4 by saugustine
For --relativenames, ignore directory 0, which is the comp_dir.

Update for upstream comments. Improve test by writing all the debug
info by hand.

Reviewers: dblaikie, jhenderson

Subscribers: hiraditya, MaskRay, rupprecht, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D80168
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
The file was modifiedllvm/test/tools/llvm-symbolizer/relativenames.s
Commit 45fd3e4688a78d182d11733f8d633966f05d2860 by rnk
[PDB] Share code to relocate .debug$[SF] sections, NFC

Sink relocateDebugChunk near the only call site.
The file was modifiedlld/COFF/PDB.cpp

Summary

  1. [lldb] Trigger reproducer job on success (details)
  2. [lldb] Make triggering downstream jobs a stage (details)
Commit 97d547b8145c0838b7283b726b20121ce98d84f7 by Jonas Devlieghere
[lldb] Trigger reproducer job on success
The file was modifiedzorg/jenkins/jobs/jobs/lldb-cmake
Commit d2cf26cb977866f556a2ee60e775c0d8c84294a0 by Jonas Devlieghere
[lldb] Make triggering downstream jobs a stage
The file was modifiedzorg/jenkins/jobs/jobs/lldb-cmake