James Molloy 196ad0823e [LSR] Don't try and create post-inc expressions on non-rotated loops
If a loop is not rotated (for example when optimizing for size), the latch is not the backedge. If we promote an expression to post-inc form, we not only increase register pressure and add a COPY for that IV expression but for all IVs!

Motivating testcase:

    void f(float *a, float *b, float *c, int n) {
      while (n-- > 0)
        *c++ = *a++ + *b++;
    }

It's imperative that the pointer increments be located in the latch block and not the header block; if not, we cannot use post-increment loads and stores and we have to keep both the post-inc and pre-inc values around until the end of the latch which bloats register usage.

llvm-svn: 278658
2016-08-15 07:53:03 +00:00
..
2016-01-26 00:03:25 +00:00
2016-05-11 21:51:28 +00:00
2016-07-14 05:48:25 +00:00
2016-08-14 09:34:39 +00:00
2016-03-29 07:53:07 +00:00
2016-07-21 14:36:41 +00:00
2016-01-16 15:25:02 +00:00
2016-07-19 07:14:21 +00:00
2016-01-05 00:48:16 +00:00
2016-06-24 18:04:39 +00:00
2016-04-08 06:45:19 +00:00
2016-04-01 10:16:15 +00:00
2016-04-05 17:12:19 +00:00
2016-04-05 17:12:19 +00:00
2016-01-26 00:03:25 +00:00
2016-06-16 18:21:11 +00:00
2016-07-31 21:55:33 +00:00
2016-06-01 21:32:56 +00:00
2016-07-06 14:15:43 +00:00
2016-07-13 23:23:40 +00:00
2015-12-16 11:22:37 +00:00
2015-12-16 11:22:37 +00:00
2016-02-18 18:44:33 +00:00
2016-02-18 18:44:33 +00:00
2016-08-10 12:26:40 +00:00
2016-06-01 17:55:10 +00:00
2016-03-21 11:06:20 +00:00
2016-06-27 20:19:14 +00:00
2016-04-01 21:06:17 +00:00
2016-07-31 21:59:23 +00:00
2016-07-30 20:28:02 +00:00
2016-07-30 20:28:02 +00:00
2016-07-30 20:28:02 +00:00
2016-07-30 20:28:02 +00:00
2016-07-30 20:28:02 +00:00
2016-07-30 20:28:02 +00:00
2016-08-10 12:24:19 +00:00
2016-03-23 11:13:54 +00:00