llvm-project/llvm/test/CodeGen
Sam Kolton ebfdaf7394 [AMDGPU] SDWA operands should not intersect with potential MIs
Summary:
There should be no intesection between SDWA operands and potential MIs. E.g.:
```
v_and_b32 v0, 0xff, v1 -> src:v1 sel:BYTE_0
v_and_b32 v2, 0xff, v0 -> src:v0 sel:BYTE_0
v_add_u32 v3, v4, v2
```
In that example it is possible that we would fold 2nd instruction into 3rd (v_add_u32_sdwa) and then try to fold 1st instruction into 2nd (that was already destroyed). So if SDWAOperand is also a potential MI then do not apply it.

Reviewers: vpykhtin, arsenm

Subscribers: kzhuravl, wdng, nhaehnle, yaxunl, dstuttard, tpr, t-tye

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

llvm-svn: 303347
2017-05-18 12:12:03 +00:00
..
AArch64 update the test that should have been updated in r303292. (NFC) 2017-05-17 20:44:08 +00:00
AMDGPU [AMDGPU] SDWA operands should not intersect with potential MIs 2017-05-18 12:12:03 +00:00
ARM Fix buildbot failure after rL303327: [BPI] Reduce the probability of unreachable edge to minimal value greater than 0. 2017-05-18 07:20:52 +00:00
AVR [AVR] When lowering Select8/Select16, put newly generated MBBs in the same spot 2017-05-13 00:22:34 +00:00
BPF [bpf] fix a bug which causes incorrect big endian reloc fixup 2017-05-05 18:05:00 +00:00
Generic Add a late IR expansion pass for the experimental reduction intrinsics. 2017-05-10 09:42:49 +00:00
Hexagon Add extra operand to CALLSEQ_START to keep frame part set up previously 2017-05-09 13:35:13 +00:00
Inputs
Lanai [lanai] Add computeKnownBitsForTargetNode for Lanai. 2017-05-09 18:35:26 +00:00
MIR [IfConversion] Keep the CFG updated incrementally in IfConvertTriangle 2017-05-12 06:28:58 +00:00
MSP430 Elide stores which are overwritten without being observed. 2017-05-16 19:43:56 +00:00
Mips Elide stores which are overwritten without being observed. 2017-05-16 19:43:56 +00:00
NVPTX Only enable LiveRangeShrink for x86. 2017-05-17 20:18:13 +00:00
PowerPC CodeGen: Power: Add lowering for shifts of v1i128. 2017-05-17 21:54:41 +00:00
SPARC Only enable LiveRangeShrink for x86. 2017-05-17 20:18:13 +00:00
SystemZ Elide stores which are overwritten without being observed. 2017-05-16 19:43:56 +00:00
Thumb Elide stores which are overwritten without being observed. 2017-05-16 19:43:56 +00:00
Thumb2 Elide stores which are overwritten without being observed. 2017-05-16 19:43:56 +00:00
WebAssembly [WebAssembly] Fix WebAssemblyOptimizeReturned after r300367 2017-04-17 21:40:28 +00:00
WinEH
X86 [GlobalISel][X86] G_ADD/G_SUB vector legalizer/selector support. 2017-05-18 11:10:56 +00:00
XCore In visitSTORE, always use FindBetterChain, rather than only when UseAA is enabled. 2017-03-14 00:34:14 +00:00