The function vec_roll_to_mat3_normalized() basically has to handle 3 scenarios: - When a bone is oriented along the negative Y axis - When a bone is very close to the negative Y axis - All other cases The tests in the Differential make sure that all 3 situations are covered. Reviewed By: sybren, mont29 Differential Revision: https://developer.blender.org/D9525