summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/MachineBlockPlacement.cpp
diff options
context:
space:
mode:
authorEric Fiselier <eric@efcs.ca>2016-07-01 04:07:39 +0000
committerEric Fiselier <eric@efcs.ca>2016-07-01 04:07:39 +0000
commite2fd8b8db95cea730e9ab277c0e05f4ecfd59d09 (patch)
treed3084e6b34e463b59d06d2ab65c877fdddfa6b25 /llvm/lib/CodeGen/MachineBlockPlacement.cpp
parent10b9a1bb422639cf47d4aaf13a38b74e68101bef (diff)
downloadbcm5719-llvm-e2fd8b8db95cea730e9ab277c0e05f4ecfd59d09.tar.gz
bcm5719-llvm-e2fd8b8db95cea730e9ab277c0e05f4ecfd59d09.zip
Flatten tuple_constructible, tuple_convertible and tuple_assignable.
This patch is the last in a series that replaces recursive meta-programming in std::tuple with non-recursive implementations. Previously std::tuple could only be instantiated with 126 elements before it blew the max template instantiation depth. Now the size of std::tuple is essentially unbounded (I've tested with over 5000 elements). One unfortunate side-effect of this change is that tuple_constructible and similar no longer short circuit after the first failure. Instead they evaluate the conditions for all elements. This could be potentially breaking. I plan to look into this further. llvm-svn: 274331
Diffstat (limited to 'llvm/lib/CodeGen/MachineBlockPlacement.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud