SuccessChanges

Summary

  1. [HIP] Fix -gsplit-dwarf option (details)
  2. Revert "[HIP] Fix -gsplit-dwarf option" (details)
  3. Fixes complexity of map insert_or_assign with a hint. (details)
  4. [ConstantFolding] add undef handling for fmin/fmax intrinsics (details)
  5. [InstCombine] regenerate test checks; NFC (details)
  6. [InstCombine] auto-generate test checks; NFC (details)
  7. [MemLoc] Support bcmp in MemoryLocation::getForArgument (details)
Commit e50465ecefc964e5700df26fc7e02a673eed085a by Yaxun.Liu
[HIP] Fix -gsplit-dwarf option

when -gsplit option is used with clang driver, clang driver will create
a filename with .dwo option based on the input file name and pass
it to clang -cc1. This file is used for storing the debug info. Since
HIP generate separate object files for different GPU arch's,
this file should be different for different GPU arch. This patch
adds _ and GPU arch to the stem of the dwo file.

Differential Revision: https://reviews.llvm.org/D87791
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/lib/Driver/ToolChains/CommonArgs.cpp
The file was modifiedclang/lib/Driver/ToolChains/MinGW.cpp
The file was modifiedclang/lib/Driver/ToolChains/CommonArgs.h
The file was addedclang/test/Driver/hip-gsplit-dwarf-options.hip
The file was modifiedclang/lib/Driver/ToolChains/Gnu.cpp
Commit 2819cea2ef8aab9d7ef8ba29feec9cb58cc942f6 by Yaxun.Liu
Revert "[HIP] Fix -gsplit-dwarf option"

This reverts commit e50465ecefc964e5700df26fc7e02a673eed085a
due to regression in lldb tests.
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/lib/Driver/ToolChains/Gnu.cpp
The file was modifiedclang/lib/Driver/ToolChains/CommonArgs.h
The file was removedclang/test/Driver/hip-gsplit-dwarf-options.hip
The file was modifiedclang/lib/Driver/ToolChains/MinGW.cpp
The file was modifiedclang/lib/Driver/ToolChains/CommonArgs.cpp
Commit d4dd961300588ce7e50625a1947befb45e3a0c42 by koraq
Fixes complexity of map insert_or_assign with a hint.

Mitsuru Kariya reported the map operations insert_or_assign with a hint
violates the complexity requirement. The function no longer uses a lower_bound,
which caused the wrong complexity.

Fixes PR38722: [C++17] std::map::insert_or_assign w/ hint violate complexity requirements

Differential Revision: https://reviews.llvm.org/D62779
The file was modifiedlibcxx/include/__tree
The file was modifiedlibcxx/include/map
The file was modifiedlibcxx/test/std/containers/associative/map/map.modifiers/insert_or_assign.pass.cpp
Commit f74a334fe35bcea08a48f76462782f0eafc6d564 by spatel
[ConstantFolding] add undef handling for fmin/fmax intrinsics

The output here may not be optimal (yet), but it should be
consistent for commuted operands (it was not before) and
correct. We can do better by checking FMF and NaN if needed.

Code in InstSimplify generally assumes that we have already
folded code like this, so it was not handling 2 constant
inputs by commuting consistently.
The file was modifiedllvm/lib/Analysis/ConstantFolding.cpp
The file was modifiedllvm/test/Transforms/InstSimplify/ConstProp/fp-undef.ll
Commit 2c3d199fbfaa51f12a82d30c6b07f92acf470e15 by spatel
[InstCombine] regenerate test checks; NFC
The file was modifiedllvm/test/Transforms/InstCombine/zext-or-icmp.ll
Commit 534e9132afceed8af8b4c309dab1547cc750e9fe by spatel
[InstCombine] auto-generate test checks; NFC
The file was modifiedllvm/test/Transforms/InstCombine/phi.ll
Commit d716f1608cf3bcb4bece20b81ab9204a64a1d67f by Dávid Bolvanský
[MemLoc] Support bcmp in MemoryLocation::getForArgument

Reviewed By: fhahn

Differential Revision: https://reviews.llvm.org/D87964
The file was modifiedllvm/test/Analysis/BasicAA/libfuncs.ll
The file was modifiedllvm/test/Transforms/DeadStoreElimination/MSSA/libcalls.ll
The file was modifiedllvm/lib/Analysis/MemoryLocation.cpp