Merge pull request #781 from dbabokin/master

Revert trigonometry to stdlib implementation on MIC
Fixing MIC performance issue, which showed up when we switched to
LLVM 3.4 (due to more aggressive optimizations): vector of *the same*
constants should be generated as scalar value in cpp file, instead of
__extract_element(splat(value), 0).
I.e. <2,2,2,2> should appear in cpp as 2, but not
__extract_element(splat(2), 0);
Merge pull request #782 from dbabokin/mic_perf

Fixing MIC performance issue (generate <2,2,2,2> as 2 in cpp).