SuccessChanges

Summary

  1. [libc++] Accept any non-zero return for .fail.cpp tests (details)
  2. [Attributor][Fix] Keep invokes if handlers catch asynchronous exceptions (details)
  3. Revert Register/MCRegister: Add conversion operators to avoid use of (details)
  4. [Attributor][Fix] Do not remove instructions during manifestation (details)
  5. [WebAssembly] Fix conflict between ret legalization and sjlj (details)
  6. [lldb][NFC] Document and refactor (details)
  7. Add "REQUIRES: x86-registered-target" to test. (details)
  8. hwasan: Untag global variable addresses in tests. (details)
  9. [OpenMP] Fix broken build due to new OMPT tests (details)
  10. [Sema] Add -Wpointer-compare (details)
  11. Add a note to the release not about a potentially breaking optimization (details)
  12. [llvm-readelf] Support dumping of stack sizes sections with readelf (details)
  13. Build libfuzzer libcxx-static with PIC (details)
Commit d1317133071e22ddd9ea0b78038a7d125ee9a36d by Louis Dionne
[libc++] Accept any non-zero return for .fail.cpp tests
llvm-svn: 367930
The file was modifiedlibcxx/utils/libcxx/test/format.py (diff)
Commit 924d2138fce43e9bcca98d06dccad28927d74c26 by jdoerfert
[Attributor][Fix] Keep invokes if handlers catch asynchronous exceptions
Similar to other places where we transform invokes to calls we need to
be careful if the handler (=personality) can catch asynchronous
exceptions as they are not modeled as part of nounwind.
This is tested with D59978.
llvm-svn: 367931
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp (diff)
Commit eac86ec25f5cd5d7a973c913d3c2ca8c90b24115 by daniel_l_sanders
Revert Register/MCRegister: Add conversion operators to avoid use of
implicit convert to unsigned. NFC
MSVC finds ambiguity where clang doesn't and it looks like it's not
going to be an easy fix Reverting while I figure out how to fix it
This reverts r367916 (git commit
aa15ec3c231717826e3c262b5ef9813d2fb5cadb) This reverts r367920 (git
commit 5d14efe279b5db9f4746ff834ab5c70e249d3871)
llvm-svn: 367932
The file was modifiedllvm/include/llvm/CodeGen/Register.h (diff)
The file was modifiedllvm/include/llvm/MC/MCRegister.h (diff)
The file was modifiedllvm/lib/CodeGen/MachineBasicBlock.cpp (diff)
Commit 3d7bbc6f9c4fdcbc29ac2da147151911b0983c85 by jdoerfert
[Attributor][Fix] Do not remove instructions during manifestation
When we remove instructions cached references could still be live. This
patch avoids removing invoke instructions that are replaced by calls and
instead keeps them around but in a dead block.
llvm-svn: 367933
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp (diff)
The file was modifiedllvm/test/Transforms/FunctionAttrs/liveness.ll (diff)
The file was modifiedllvm/include/llvm/Transforms/Utils/Local.h (diff)
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp (diff)
Commit 5c3cdef84b82464756bb571c13c31cf7773860c3 by keno
[WebAssembly] Fix conflict between ret legalization and sjlj
Summary: When the WebAssembly backend encounters a return type that
doesn't fit within i32, SelectionDAG performs sret demotion, adding an
additional argument to the start of the function that contains a pointer
to an sret buffer to use instead. However, this conflicts with the
emscripten sjlj lowering pass. There we translate calls like:
```
call {i32, i32} @foo()
```
into (in pseudo-llvm)
```
%addr = @foo
call {i32, i32} @__invoke_{i32,i32}(%addr)
```
i.e. we perform an indirect call through an extra function. However, the
sret transform now transforms this into the equivalent of
```
       %addr = @foo
       %sret = alloca {i32, i32}
       call {i32, i32} @__invoke_{i32,i32}(%sret, %addr)
```
(while simultaneously translation the implementation of @foo as well).
Unfortunately, this doesn't work out. The __invoke_ ABI expected the
function address to be the first argument, causing crashes.
There is several possible ways to fix this: 1. Implementing the sret
rewrite at the IR level as well and performing
  it as part of lowering to __invoke 2. Fixing the wasm backend to
recognize that __invoke has a special ABI 3. A change to the
binaryen/emscripten ABI to recognize this situation
This revision implements the middle option, teaching the backend to
treat __invoke_ functions specially in sret lowering. This is achieved
by 1) Introducing a new CallingConv ID for invoke functions 2) When this
CallingConv ID is seen in the backend and the first argument
  is marked as sret (a function pointer would never be marked as sret),
  swapping the first two arguments.
Reviewed By: tlively, aheejin Differential Revision:
https://reviews.llvm.org/D65463
llvm-svn: 367935
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp (diff)
The file was modifiedllvm/test/CodeGen/WebAssembly/lower-em-exceptions.ll (diff)
The file was modifiedllvm/test/CodeGen/WebAssembly/lower-em-exceptions-whitelist.ll (diff)
The file was modifiedllvm/test/CodeGen/WebAssembly/lower-em-sjlj.ll (diff)
The file was modifiedllvm/include/llvm/IR/CallingConv.h (diff)
The file was addedllvm/test/CodeGen/WebAssembly/lower-em-sjlj-sret.ll
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp (diff)
Commit 9de71690536d44d9a29a1fc1d9eea3bcb4eaf754 by Raphael Isemann
[lldb][NFC] Document and refactor
ClangPersistentVariables::RemovePersistentVariable
llvm-svn: 367936
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangPersistentVariables.cpp (diff)
Commit 38f985eb1cb33fb87735d006062de6c7b625c3c2 by peter
Add "REQUIRES: x86-registered-target" to test.
llvm-svn: 367937
The file was modifiedllvm/test/tools/llvm-symbolizer/untag-addresses.test (diff)
Commit e757cadb07890c2d187c8415927c2ddf72144f30 by peter
hwasan: Untag global variable addresses in tests.
Once we start instrumenting globals, all addresses including those of
string literals that we pass to the operating system will start being
tagged. Since we can't rely on the operating system to be able to cope
with these addresses, we need to untag them before passing them to the
operating system. This change introduces a macro that does so and uses
it everywhere it is needed.
Differential Revision: https://reviews.llvm.org/D65768
llvm-svn: 367938
The file was modifiedcompiler-rt/test/hwasan/TestCases/many-threads-uaf.c (diff)
The file was modifiedcompiler-rt/test/hwasan/TestCases/mem-intrinsics.c (diff)
The file was modifiedcompiler-rt/test/hwasan/TestCases/Linux/decorate-proc-maps.c (diff)
The file was modifiedcompiler-rt/test/hwasan/TestCases/allocator_returns_null.cpp (diff)
The file was modifiedcompiler-rt/test/hwasan/TestCases/tail-magic.c (diff)
The file was addedcompiler-rt/test/hwasan/TestCases/utils.h
The file was modifiedcompiler-rt/test/hwasan/TestCases/Linux/aligned_alloc-alignment.cpp (diff)
The file was modifiedcompiler-rt/test/hwasan/TestCases/Linux/release-shadow.c (diff)
The file was modifiedcompiler-rt/test/hwasan/TestCases/use-after-free.c (diff)
The file was modifiedcompiler-rt/test/hwasan/TestCases/Posix/posix_memalign-alignment.cpp (diff)
The file was modifiedcompiler-rt/test/hwasan/TestCases/sizes.cpp (diff)
The file was modifiedcompiler-rt/test/hwasan/TestCases/malloc_fill.cpp (diff)
The file was modifiedcompiler-rt/test/hwasan/TestCases/Linux/pvalloc-overflow.cpp (diff)
The file was modifiedcompiler-rt/test/hwasan/TestCases/heap-buffer-overflow.c (diff)
Commit dcdbe6515b21e0f210d087536c6fee74cb9fe37e by hansang.bae
[OpenMP] Fix broken build due to new OMPT tests
New OMPT tests with teams construct should be disabled for GCC as it
emits code with a GOMP entry not supported in the LLVM runtime.
Differential Revision: https://reviews.llvm.org/D65757
llvm-svn: 367939
The file was modifiedopenmp/runtime/test/ompt/teams/parallel_team.c (diff)
The file was modifiedopenmp/runtime/test/ompt/teams/team.c (diff)
The file was modifiedopenmp/runtime/test/ompt/teams/serialized.c (diff)
The file was modifiedopenmp/runtime/test/ompt/teams/serial_teams.c (diff)
Commit f708f0a2430f3a50b8836f4bd5510169dea359eb by George Burgess IV
[Sema] Add -Wpointer-compare
This patch adds a warning that diagnoses comparisons of pointers to
'\0'. This is often indicative of a bug (e.g. the user might've
forgotten to dereference the pointer).
Patch by Elaina Guan!
Differential Revision: https://reviews.llvm.org/D65595
llvm-svn: 367940
The file was modifiedclang/include/clang/Sema/Sema.h (diff)
The file was addedclang/test/Sema/warn-nullchar-nullptr.c
The file was modifiedclang/lib/Sema/SemaExpr.cpp (diff)
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td (diff)
Commit e39e79358fcdd5d8ad809defaa821f0bbfa809a5 by listmail
Add a note to the release not about a potentially breaking optimization
This has come up twice already (once in pr42763 and once in the commit
thread), so give warning of a new way in which UB can result in
unexpected program behavior.
llvm-svn: 367941
The file was modifiedllvm/docs/ReleaseNotes.rst (diff)
Commit c71c6299265678f9495966efd859770660ed7b50 by Wolfgang.Pieb
[llvm-readelf] Support dumping of stack sizes sections with readelf
--stack-sizes
Reviewers: jhenderson, grimar, rupprecht
Differential Revision: https://reviews.llvm.org/D65313
llvm-svn: 367942
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp (diff)
The file was modifiedllvm/tools/llvm-readobj/llvm-readobj.cpp (diff)
The file was addedllvm/test/tools/llvm-readobj/stack-sizes.test
The file was modifiedllvm/tools/llvm-readobj/ObjDumper.h (diff)
The file was modifiedllvm/docs/CommandGuide/llvm-readelf.rst (diff)
Commit 295d4b7727caba392ff3fdf1dbd9006b1ee1a1a2 by yikong
Build libfuzzer libcxx-static with PIC
r356153 changed default build option of static libcxx to no PIC. We now
need to explicitly specify CMAKE_POSITION_INDEPENDENT_CODE to get PIC
libcxx.
Differential Revision: https://reviews.llvm.org/D65773
llvm-svn: 367943
The file was modifiedcompiler-rt/lib/fuzzer/CMakeLists.txt (diff)

Summary

  1. Change CLEAN to a string parameter so it appears in the shell (details)
Commit 0b216f7870b21233a2fe7a06d320bbd0e46ad55d by Adrian Prantl
Change CLEAN to a string parameter so it appears in the shell
environment
llvm-svn: 367934
The file was modifiedzorg/jenkins/jobs/jobs/lldb-cmake-standalone (diff)
The file was modifiedzorg/jenkins/jobs/jobs/lldb-cmake-matrix (diff)