Files
archived-llvm/test/CodeGen/AMDGPU
James Molloy bd7c3fb3bf [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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278658 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-15 07:53:03 +00:00
..
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2016-05-05 20:07:37 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2016-02-08 19:06:01 +00:00
2016-05-25 18:07:36 +00:00
2016-07-15 21:27:13 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2016-07-28 11:39:24 +00:00
2015-06-13 03:28:10 +00:00
2016-06-02 19:54:26 +00:00
2015-06-13 03:28:10 +00:00
2016-05-05 20:07:37 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2016-06-09 23:42:54 +00:00
2016-06-09 23:42:54 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2016-07-22 17:01:21 +00:00
2016-07-22 17:01:21 +00:00
2016-07-22 17:01:21 +00:00
2016-07-22 17:01:21 +00:00
2016-06-02 19:54:26 +00:00
2015-06-13 03:28:10 +00:00
2016-05-28 00:19:52 +00:00
2016-05-28 00:19:52 +00:00
2016-06-09 19:17:15 +00:00
2016-07-09 08:02:28 +00:00
2016-07-09 08:02:28 +00:00
2016-05-05 20:07:37 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2016-06-02 19:54:26 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2016-05-05 20:07:37 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2016-05-05 20:07:37 +00:00
2016-06-02 19:54:26 +00:00
2016-06-02 19:54:26 +00:00
2016-06-02 19:54:26 +00:00
2016-06-02 19:54:26 +00:00
2016-06-02 19:54:26 +00:00
2016-06-02 19:54:26 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2016-05-05 20:07:37 +00:00
2016-05-05 20:07:37 +00:00
2016-06-15 00:11:01 +00:00
2016-05-05 20:07:37 +00:00
2016-05-05 20:07:37 +00:00
2016-05-05 20:07:37 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2016-05-18 15:48:44 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2016-08-02 22:25:04 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2016-05-05 20:07:37 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2016-08-02 22:25:04 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2016-05-05 20:07:37 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2016-05-05 20:07:37 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2015-06-13 03:28:10 +00:00
2016-05-05 20:07:37 +00:00

+==============================================================================+
| How to organize the lit tests                                                |
+==============================================================================+

- If you write a test for matching a single DAG opcode or intrinsic, it should
  go in a file called {opcode_name,intrinsic_name}.ll (e.g. fadd.ll)

- If you write a test that matches several DAG opcodes and checks for a single
  ISA instruction, then that test should go in a file called {ISA_name}.ll (e.g.
  bfi_int.ll

- For all other tests, use your best judgement for organizing tests and naming
  the files.

+==============================================================================+
| Naming conventions                                                           |
+==============================================================================+

- Use dash '-' and not underscore '_' to separate words in file names, unless
  the file is named after a DAG opcode or ISA instruction that has an
  underscore '_' in its name.