http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59615
--- Comment #8 from Marc Glisse <glisse at gcc dot gnu.org> --- (In reply to Jakub Jelinek from comment #7) > They are modelled in the .md files now, we just don't have general purpose > builtins for this yet in GCC 4.9, it is only used for -fsanitize=undefined > right now. Ah, right, I thought you had only added an expander, nice that it is properly modeled now (thanks), though I am yet to find C code where combine (or other) ends up matching this pattern, which seems doable without a builtin. (well, we are still losing the high half of the product if we use that pattern, but that's less often needed) Sorry for the hijack, back to comment 5 as the real motivation.