summaryrefslogtreecommitdiffstats
path: root/libcxx/test/std/utilities/function.objects/bind/func.bind/func.bind.place/placeholders.pass.cpp
diff options
context:
space:
mode:
authorChandler Carruth <chandlerc@gmail.com>2016-12-23 23:33:35 +0000
committerChandler Carruth <chandlerc@gmail.com>2016-12-23 23:33:35 +0000
commit4eaff12ba28eba1f1b0fe174f60f12457d98b5ba (patch)
tree6e5559988df397f2a545822e131a1c2e14b4f4b9 /libcxx/test/std/utilities/function.objects/bind/func.bind/func.bind.place/placeholders.pass.cpp
parentf32f63f22252f570a7b515c29cc20b14ebc8e07e (diff)
downloadbcm5719-llvm-4eaff12ba28eba1f1b0fe174f60f12457d98b5ba.tar.gz
bcm5719-llvm-4eaff12ba28eba1f1b0fe174f60f12457d98b5ba.zip
[PM] Teach the always inlining test case to be much more strict about
whether functions are removed, and fix the new PM's always inliner to actually pass this test. Without this, the new PM's always inliner leaves all the functions kicking around which won't work out very well given the semantics of always inline. Doing this really highlights how frustrating the current alwaysinline semantic contract is though -- why can we put it on *external* functions, etc? Also I've added a number of tricky and interesting test cases for removing functions with the always inliner. There is one remaining case not handled -- fully removing comdats -- and I've left a FIXME about this. llvm-svn: 290457
Diffstat (limited to 'libcxx/test/std/utilities/function.objects/bind/func.bind/func.bind.place/placeholders.pass.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud