SuccessChanges

Summary

  1. Fix -Wdocumentation warning. NFCI. (details)
  2. [AST] CommentLexer - Remove (optional) Invalid parameter from (details)
  3. [mips] Reduce code duplication in the `loadAndAddSymbolAddress`. NFC (details)
  4. [mips] Mark tests for lw/sw expansion in PIC by a separate "check (details)
  5. [mips] Pass "xgot" flag as a subtarget feature (details)
  6. [lldb] Fix a test assertion after r372192 (details)
  7. Fix command-script-import.test on linux (details)
  8. [SDA] Don't stop divergence propagation at the IPD. (details)
  9. Fir TestAPILog for gcc (details)
  10. Revert r372082 "[Clang] Pragma vectorize_width() implies (details)
  11. Follow-up to r372209: Use single quotes for host_ldflags in the lit (details)
Commit 1541dd4841860589866ddf3befeac604fdd3d5ec by llvm-dev
Fix -Wdocumentation warning. NFCI.
llvm-svn: 372215
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
Commit 4b8b7f249c627639d2c529d460e7f015fe47385f by llvm-dev
[AST] CommentLexer - Remove (optional) Invalid parameter from
getSpelling.
The static analyzer noticed that we were dereferencing it even when the
default null value was being used. Further investigation showed that we
never explicitly set the parameter so I've just removed it entirely.
llvm-svn: 372217
The file was modifiedclang/include/clang/AST/CommentLexer.h
The file was modifiedclang/lib/AST/CommentLexer.cpp
Commit 59d0cc82b5c0382c0d1768d43818ed4dda45ec56 by simon
[mips] Reduce code duplication in the `loadAndAddSymbolAddress`. NFC
llvm-svn: 372218
The file was modifiedllvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
Commit 1ebdbad4751c5e0951974dd954a7e3b069ffd320 by simon
[mips] Mark tests for lw/sw expansion in PIC by a separate "check
prefix". NFC
That simplify adding XGOT tests later.
llvm-svn: 372219
The file was modifiedllvm/test/MC/Mips/mips-expansions.s
The file was modifiedllvm/test/MC/Mips/mips64-expansions.s
Commit 9c36de99caa5356c7ed8760ce43d8c70cd15b2e6 by simon
[mips] Pass "xgot" flag as a subtarget feature
We need "xgot" flag in the MipsAsmParser to implement correct expansion
of some pseudo instructions in case of using 32-bit GOT (XGOT).
MipsAsmParser does not have reference to MipsSubtarget but has a
reference to "feature bit set".
llvm-svn: 372220
The file was modifiedclang/lib/Driver/ToolChains/Arch/Mips.cpp
The file was modifiedllvm/test/CodeGen/Mips/address-selection.ll
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedllvm/lib/Target/Mips/MipsISelLowering.cpp
The file was modifiedclang/test/Driver/mips-features.c
The file was modifiedllvm/lib/Target/Mips/Mips.td
The file was modifiedclang/test/Driver/mips-integrated-as.s
The file was modifiedllvm/lib/Target/Mips/MipsSubtarget.h
The file was modifiedllvm/test/CodeGen/Mips/biggot.ll
The file was modifiedllvm/test/CodeGen/Mips/mirparser/target-flags-pic-mxgot-tls.mir
Commit 98c0dc39de24d85e3d7dca488babff952f35578c by krasimir
[lldb] Fix a test assertion after r372192
Summary: The `CHECK: frame:py: None` seems to have been a typo, causing
build bot failures:
```
# CHECK: frame:py: None
         ^
<stdin>:1:1: note: scanning from here
(lldb) command source -s 0
'E:/build_slave/lldb-x64-windows-ninja/build/tools/lldb\lit\lit-lldb-init'
^
<stdin>:23:1: note: possible intended match here
frame:py: No value
^
```
This update fixes the build bots.
--
Reviewers: bkramer
Reviewed By: bkramer
Differential Revision: https://reviews.llvm.org/D67702
llvm-svn: 372221
The file was modifiedlldb/lit/Commands/command-script-import.test
Commit fc1fd6bf9fcfac412b10b4193805ec5de0e8df57 by pavel
Fix command-script-import.test on linux
The test was expecting the value of "lldb.frame" to be None, because it
is cleared after each python interpreter session. However, this is not
true in the very first session, because lldb.py sets these values to
invalid objects (lldb.SBFrame(), etc.).
I have not investigated why is it that this test passes on darwin, but
my guess is that this is because we do extra work on darwin (loading the
objc runtime, etc), which causes us to enter the python interpreter
sooner.
This patch changes lldb.py to also initialize these values to None, as
that seems to make more sense. I also fixed some typos in the test while
I was in there.
llvm-svn: 372222
The file was modifiedlldb/lit/Commands/command-script-import.test
The file was modifiedlldb/lit/Commands/Inputs/frame.py
The file was modifiedlldb/scripts/lldb.swig
Commit c92e51d84bb78e4b32c229441af239f154daf75a by jay.foad
[SDA] Don't stop divergence propagation at the IPD.
Summary: This fixes B42473 and B42706.
This patch makes the SDA propagate branch divergence until the end of
the RPO traversal. Before, the SyncDependenceAnalysis propagated
divergence only until the IPD in rpo order. RPO is incompatible with
post dominance in the presence of loops. This made the SDA crash because
blocks were missed in the propagation.
Reviewers: foad, nhaehnle
Reviewed By: foad
Subscribers: jvesely, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65274
llvm-svn: 372223
The file was addedllvm/test/Analysis/DivergenceAnalysis/AMDGPU/b42473-r1-crash.ll
The file was modifiedllvm/lib/Analysis/SyncDependenceAnalysis.cpp
Commit 89ad7f7a1ba245fccf1f64f95a146ada6f6aaac6 by pavel
Fir TestAPILog for gcc
different compilers will put different things into __PRETTY_FUNCTION__.
For instance gcc will not put a " " in the "const char *" argument,
causing our regex matching to fail.
This patch relaxes the regexes in this test to account for this
difference.
llvm-svn: 372224
The file was modifiedlldb/packages/Python/lldbsuite/test/api/log/TestAPILog.py
Commit 858a1ae37d260ae454751bbf5d74742138f10676 by hans
Revert r372082 "[Clang] Pragma vectorize_width() implies
vectorize(enable)"
This broke the Chromium build. Consider the following code:
  float ScaleSumSamples_C(const float* src, float* dst, float scale, int
width) {
   float fsum = 0.f;
   int i;
#if defined(__clang__)
#pragma clang loop vectorize_width(4)
#endif
   for (i = 0; i < width; ++i) {
     float v = *src++;
     fsum += v * v;
     *dst++ = v * scale;
   }
   return fsum;
}
Compiling at -Oz, Clang  now warns:
  $ clang++ -target x86_64 -Oz -c /tmp/a.cc
/tmp/a.cc:1:7: warning: loop not vectorized: the optimizer was unable
to
perform the requested transformation; the transformation might be
disabled or
specified as part of an unsupported transformation ordering
[-Wpass-failed=transform-warning]
this suggests it's not actually enabling vectorization hard enough.
At -Os it asserts instead:
  $ build.release/bin/clang++ -target x86_64 -Os -c /tmp/a.cc
clang-10:
/work/llvm.monorepo/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp:2734:
void
llvm::InnerLoopVectorizer::emitMemRuntimeChecks(llvm::Loop*,
llvm::BasicBlock*): Assertion `
!BB->getParent()->hasOptSize() && "Cannot emit memory checks when
optimizing for size"' failed.
Of course neither of these are what the developer expected from the
pragma.
> Specifying the vectorization width was supposed to implicitly enable
> vectorization, except that it wasn't really doing this. It was only
> setting the vectorize.width metadata, but not vectorize.enable.
>
> This should fix PR27643.
>
> Differential Revision: https://reviews.llvm.org/D66290
llvm-svn: 372225
The file was modifiedclang/test/CodeGenCXX/pragma-loop.cpp
The file was modifiedclang/test/CodeGenCXX/pragma-loop-predicate.cpp
The file was modifiedclang/lib/CodeGen/CGLoopInfo.cpp
Commit 40fdacbf4c9ab40fe41b9c4cb2a2d45fc57d4d0e by hans
Follow-up to r372209: Use single quotes for host_ldflags in the lit
config
HOST_LDFLAGS is now using double quotes, and that would break the lit
config file.
llvm-svn: 372226
The file was modifiedllvm/test/lit.site.cfg.py.in