As mentioned in the forums (
http://forum.kde.org/viewtopic.php?f=74&t=85488&sid=56568a50ee5f70d17993d387dedd9c63&start=30#p149344)
on microsoft's compiler there's a performance regression in eigen3
concerning subtraction of VectorXd's (and probably other matrices with
other cheap operations too). The appropriate ei_assign_impl isn't
always inlined, and since the operation is otherwise cheap; the function
call overhead is quite significant. Gcc seems to inline the function;
but MSC does not when vectorization is on (EIGEN_DONT_VECTORIZE not
defined). Replacing the "inline" keyword with the EIGEN_STRONG_INLINE
macro resolves the problem.
Attached: patch.