Changes
Summary
- [SelectionDAG] Replace llvm_unreachable at the end of getCopyFromParts with a report_fatal_error. Based on PR41748, not all cases are handled in this function. llvm_unreachable is treated as an optimization hint than can prune code paths in a release build. This causes weird behavior when PR41748 is encountered on a release build. It appears to generate an fp_round instruction from the floating point code. Making this a report_fatal_error prevents incorrect optimization of the code and will instead generate a message to file a bug report.
Change Type | Path in Repository | Path in Workspace |
---|---|---|
![]() | /llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp | trunk/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp |
Summary
- [c++20] Implement P1009R2: allow omitting the array bound in an array new expression. This was voted into C++20 as a defect report resolution, so we retroactively apply it to all prior language modes (though it can never actually be used before C++11 mode).
- The 'CodeGenObjC/illegal-UTF8.m' get failed with Clang built with 32-bit targets only (as example ARM-only) with the following error: error: unable to create target: 'No available targets are compatible with triple "< ... any 64-bit target triple ... >"' I didn't find any 64-bit dependencies for the test and I think removing '-m64' option should fix the problem and allow this test for any target specified by LLVM_DEFAULT_TARGET_TRIPLE. Patch by Vlad Vereschaka. Differential Revision: https://reviews.llvm.org/D61345
Summary
- Fix up after r360006.
Change Type | Path in Repository | Path in Workspace |
---|---|---|
![]() | /clang-tools-extra/trunk/clang-tidy/modernize/MakeSmartPtrCheck.cpp | trunk/clang-tidy/modernize/MakeSmartPtrCheck.cpp |