SuccessChanges

Changes from Git (git http://labmaster3.local/git/llvm-project.git)

Summary

  1. [AMDGPU][MC] Corrected branch relocation handling to detect undefined labels (details)
  2. [OpenCL] Added addrspace_cast operator in C++ mode. (details)
  3. [InstCombine][NFC] Simplify check in sinking (details)
  4. Turn -Wmax-tokens off by default (details)
  5. [libcxx testing] Remove ALLOW_RETRIES from lock_guard tests (details)
  6. [libcxx][type_traits] Add C++20 changes to common_type (details)
Commit f997370d9c8f4a67e495312078ca7b6dc2e94fa4 by dmitry.preobrazhensky
[AMDGPU][MC] Corrected branch relocation handling to detect undefined labels

Fixed ELF object writer to die gracefully when an undefined label is encountered in a branch instruction.
See https://bugs.llvm.org/show_bug.cgi?id=41914.

Reviewers: arsenm, rampitec

Differential Revision: https://reviews.llvm.org/D79943
The file was addedllvm/test/MC/AMDGPU/labels-branch-err.s
The file was modifiedllvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
Commit a6a237f2046ad8993db30481c8b61aeb2f73a5ad by anastasia.stulova
[OpenCL] Added addrspace_cast operator in C++ mode.

This operator is intended for casting between
pointers to objects in different address spaces
and follows similar logic as const_cast in C++.

Tags: #clang

Differential Revision: https://reviews.llvm.org/D60193
The file was modifiedclang/include/clang/Basic/StmtNodes.td
The file was modifiedclang/lib/Parse/ParseExpr.cpp
The file was addedclang/test/Index/cxx.cl
The file was modifiedclang/lib/AST/StmtPrinter.cpp
The file was modifiedclang/include/clang/Serialization/ASTBitCodes.h
The file was modifiedclang/tools/libclang/CXCursor.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticParseKinds.td
The file was modifiedclang/lib/AST/ExprCXX.cpp
The file was modifiedclang/lib/AST/ExprClassification.cpp
The file was modifiedclang/include/clang/AST/ExprCXX.h
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/lib/AST/ItaniumMangle.cpp
The file was modifiedclang/lib/Sema/TreeTransform.h
The file was modifiedclang/lib/Sema/SemaCast.cpp
The file was modifiedclang/include/clang/Basic/TokenKinds.def
The file was modifiedclang/lib/StaticAnalyzer/Core/ExprEngine.cpp
The file was modifiedclang/include/clang/AST/RecursiveASTVisitor.h
The file was modifiedclang/lib/CodeGen/CGExpr.cpp
The file was modifiedclang/include/clang-c/Index.h
The file was modifiedclang/lib/Serialization/ASTWriter.cpp
The file was modifiedclang/tools/libclang/CIndex.cpp
The file was addedclang/test/CodeGenOpenCLCXX/addrspace_cast.cl
The file was addedclang/test/SemaOpenCLCXX/addrspace_cast.cl
The file was modifiedclang/lib/Serialization/ASTReaderStmt.cpp
The file was modifiedclang/lib/Serialization/ASTWriterStmt.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/AST/StmtProfile.cpp
The file was modifiedclang/lib/Parse/ParseExprCXX.cpp
The file was addedclang/test/SemaOpenCLCXX/addrspace_cast_ast_dump.cl
The file was modifiedclang/lib/AST/Expr.cpp
The file was modifiedclang/lib/Sema/SemaExceptionSpec.cpp
Commit e47c101e35fd8d046f7d4fa296c17db508e8cdc2 by mkazantsev
[InstCombine][NFC] Simplify check in sinking

We just need to check that the only predecessor of user parent is
BB, we don't need to iterate through BB's successors for it.
The file was modifiedllvm/lib/Transforms/InstCombine/InstructionCombining.cpp
Commit 87b235db63a3d8d5b82d60ef6202b92b94a7d9d2 by hans
Turn -Wmax-tokens off by default

On the one hand, one might interpret the use of the max-token pragmas or
-fmax-tokens flag as an opt-in to the warning. However, in Chromium
we've found it useful to only opt in selected build configurations, even
though we have the pragmas in the code. For that reason, we think it
makes sense to turn it off by default.

Differential revision: https://reviews.llvm.org/D80014
The file was modifiedclang/test/Parser/max-tokens.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticGroups.td
The file was modifiedclang/include/clang/Basic/DiagnosticParseKinds.td
Commit a675c1dee483129611794f37e0867f565181827b by dave
[libcxx testing] Remove ALLOW_RETRIES from lock_guard tests

These two tests were clumsily using time measurements to determine
whether std::lock_guard was working correctly. In practice, this
approach merely verified that the underlying lock properly waits.

Now these two tests verify that lock is acquired, not dropped
prematurely, and finally, actually dropped at the end of the scope.
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/mutex.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/adopt_lock.pass.cpp
Commit c579ab9962b10d275ebd951657414a479bd7acab by mschellenbergercosta
[libcxx][type_traits] Add C++20 changes to common_type

Summary: This already implements the expected changes for LWG-3205

Reviewers: mclow.lists, EricWF, CaseyCarter, cjdb, #libc, ldionne

Reviewed By: #libc, ldionne

Subscribers: dexonsmith, broadwaylamb, christof, ldionne, libcxx-commits

Tags: #libc

Differential Revision: https://reviews.llvm.org/D74350
The file was modifiedlibcxx/include/type_traits
The file was modifiedlibcxx/test/std/utilities/meta/meta.trans/meta.trans.other/common_type.pass.cpp