diff options
author | Eric Fiselier <eric@efcs.ca> | 2017-04-12 23:45:53 +0000 |
---|---|---|
committer | Eric Fiselier <eric@efcs.ca> | 2017-04-12 23:45:53 +0000 |
commit | c88580c400cec2d06fdc3477db9efa5350770c65 (patch) | |
tree | aaaee4c950edce340d06a2b35195b5f96c06f08a /llvm/lib/Target | |
parent | 6fd4bc6b22eed5e02217862328c1fcbe5c96eab5 (diff) | |
download | bcm5719-llvm-c88580c400cec2d06fdc3477db9efa5350770c65.tar.gz bcm5719-llvm-c88580c400cec2d06fdc3477db9efa5350770c65.zip |
[libcxx] Fix __compressed_pair so it doesn't copy the argument multiple times, and add constexpr.
Summary:
__compressed_pair takes and passes it's constructor arguments by value. This causes arguments to be moved 3 times instead of once. This patch addresses that issue and fixes `constexpr` on the constructors.
I would rather have this fix than D27564, and I'm fairly confident it's not ABI breaking but I'm not 100% sure.
I prefer this solution because it removes a lot of code and makes the implementation *much* smaller.
Reviewers: mclow.lists, K-ballo
Reviewed By: K-ballo
Subscribers: K-ballo, cfe-commits
Differential Revision: https://reviews.llvm.org/D27565
llvm-svn: 300140
Diffstat (limited to 'llvm/lib/Target')
0 files changed, 0 insertions, 0 deletions