[PATCH] D35035: [InstCombine] Prevent memcpy generation for small data size

Sanjay Patel via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Aug 12 07:03:43 PDT 2017


spatel added a comment.

In https://reviews.llvm.org/D35035#839833, @joerg wrote:

> What is the advantage of expanding the memcpy intrinsic in InstCombine vs doing it later in the target-specific code?


I can't answer for 'memcpy' directly, but probably related - I'm looking at cases where late 'memcmp' expansion causes us to miss optimizations in:
https://bugs.llvm.org/show_bug.cgi?id=34032#c13

instcombine is definitely not the IR pass for 'memcmp' expansion. (It's complicated enough to be its own pass, but currently it's a pass-within-a-pass of CGP.)

We could make the argument that the post-IR backend should handle those cases, but I think it would require the collective powers of gvn, cse, instcombine, and simplifycfg.


https://reviews.llvm.org/D35035





More information about the llvm-commits mailing list