summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenCXX/ubsan-coroutines.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [NewPM] Run ubsan-coroutines test under the legacy pass manager onlyLeonard Chan2019-08-201-1/+3
| | | | | | | | | | | The passes that lower the llvm.coro.* instrinsics have not yet been ported, so only run under the legacy PM for now. See https://bugs.llvm.org/show_bug.cgi?id=42867 Differential Revision: https://reviews.llvm.org/D66493 llvm-svn: 369442
* [CodeGen] Disable UBSan for coroutine functionsBrian Gesiak2019-08-131-0/+49
Summary: As explained in http://lists.llvm.org/pipermail/llvm-dev/2018-March/121924.html, the LLVM coroutines transforms are not yet able to move the instructions for UBSan null checking past coroutine suspend boundaries. For now, disable all UBSan checks when generating code for coroutines functions. I also considered an approach where only '-fsanitize=null' would be disabled, However in practice this led to other LLVM errors when writing object files: "Cannot represent a difference across sections". For now, disable all UBSan checks until coroutine transforms are updated to handle them. Test Plan: 1. check-clang 2. Compile the program in https://gist.github.com/modocache/54a036c3bf9c06882fe85122e105d153 using the '-fsanitize=null' option and confirm it does not crash during LLVM IR generation. Reviewers: GorNishanov, vsk, eric_niebler, lewissbaker Reviewed By: vsk Subscribers: cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D44672 llvm-svn: 368675
OpenPOWER on IntegriCloud