diff options
| author | Serge Guelton <sguelton@redhat.com> | 2019-02-13 18:12:04 +0000 |
|---|---|---|
| committer | Serge Guelton <sguelton@redhat.com> | 2019-02-13 18:12:04 +0000 |
| commit | f688293393f1e481d1aef3b10cd35bb37c1ea7f8 (patch) | |
| tree | 83ed4f00d7c727c97bc26ed22fd5b3cfb4abd97e /llvm/test/CodeGen/X86/atomic-unordered.ll | |
| parent | 0f30a3b68fa8d687d041c8cd69ed8018d1ed0c84 (diff) | |
| download | bcm5719-llvm-f688293393f1e481d1aef3b10cd35bb37c1ea7f8.tar.gz bcm5719-llvm-f688293393f1e481d1aef3b10cd35bb37c1ea7f8.zip | |
Re-commit rL353927, patch included
Make llvm::Optional<T> trivially copyable when T is trivially copyable
This is an ever-recurring issue (see https://bugs.llvm.org/show_bug.cgi?id=39427 and https://bugs.llvm.org/show_bug.cgi?id=35978)
but I believe that thanks to https://reviews.llvm.org/D54472 we can now ship a decent implementation of this.
Basically the fact that llvm::is_trivially_copyable has a consistent behavior across compilers should prevent any ABI issue,
and using in-place new instead of memcpy should keep compiler bugs away.
This patch is slightly different from the original revision https://reviews.llvm.org/rL353927 but achieves the same goal. It just avoids
going through std::conditional which may the code more explicit.
llvm-svn: 353962
Diffstat (limited to 'llvm/test/CodeGen/X86/atomic-unordered.ll')
0 files changed, 0 insertions, 0 deletions

