The bind and function functor constructors and assignment operators were overly general and getting confused with the copy constructor and copy assignment operators.  Constrained them.  This fixes http://llvm.org/bugs/show_bug.cgi?id=16385
In istream::ignore, check the delimeter as an int_type, not as a char_type, so as to correctly handle EOF.  This fixes http://llvm.org/bugs/show_bug.cgi?id=16427
LoopVectorize: Math functions only read rounding mode

Math functions are mark as readonly because they read the floating point
rounding mode. Because we don't vectorize loops that would contain function
calls that set the rounding mode it is safe to ignore this memory read.