https://llvm.org/bugs/show_bug.cgi?id=23827
Chandler Carruth <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |[email protected] Resolution|--- |INVALID --- Comment #4 from Chandler Carruth <[email protected]> --- Fisnik, on what processor and with what benchmark do you measure the problem with 'amp's generated code? Why is the branch misprediction penalty very high there? I don't really understand that at all. Fundamentally, I disbelieve that these should ever be compiled differently. They are identical code sequences functionally, and we should generate an identical sequence of instructions. Also, note that all versions of GCC also generate two jumps in both test cases. ICC is the only one that generates different code, and the code sequence it generates for 'amp' seems absurdly worse than what Clang and GCC do for both test cases and what ICC itself odes for 'ampamp'. Finally, do note that with Clang's output you have prolog/epilog idiocy in the code that has nothing to do with the testcase. AFAICT, other than that silliness, Clang, GCC, and ICC for 'ampamp' all agree, and I think that code is the best code. Please re-open with measurements and details about what you think is going wrong here if there is an actual performance problem. -- You are receiving this mail because: You are on the CC list for the bug.
_______________________________________________ LLVMbugs mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs
