Changpeng Fang 989ec59c9f AMDGPU: Fix a SIAnnotateControlFlow issue when there are multiple backedges.
Summary:
At the exit of the loop, the compiler uses a register to remember and accumulate
the number of threads that have already exited. When all active threads exit the
loop, this register is used to restore the exec mask, and the execution continues
for the post loop code.

When there is a "continue" in the loop, the compiler made a mistake to reset the
register to 0 when the "continue" backedge is taken. This will result in some
threads not executing the post loop code as they are supposed to.

This patch fixed the issue.

Reviewers:
  nhaehnle, arsenm

Differential Revision:
  https://reviews.llvm.org/D59312

llvm-svn: 356298
2019-03-15 21:02:48 +00:00
..
2017-08-07 18:30:35 +00:00
2019-02-08 11:59:48 +00:00
2017-08-07 18:30:35 +00:00
2018-04-30 19:08:16 +00:00
2017-08-07 18:30:35 +00:00
2019-03-12 21:02:54 +00:00
2019-03-12 21:02:54 +00:00
2017-08-07 18:30:35 +00:00
2018-08-31 22:43:36 +00:00
2018-08-31 22:43:36 +00:00
2017-08-07 18:30:35 +00:00
2018-06-27 15:33:33 +00:00
2018-06-27 15:33:33 +00:00
2017-08-07 18:30:35 +00:00
2017-08-07 18:30:35 +00:00
2019-03-12 16:00:59 +00:00
2017-08-07 18:30:35 +00:00
2019-01-07 12:20:35 +00:00
2018-12-07 17:46:16 +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.