OSDN Git Service

AMDGPU/SI: Change predicate to isCIOnly for 32-bit imm s_buffer_load* patterns
authorTom Stellard <tstellar@redhat.com>
Wed, 26 Sep 2018 16:53:36 +0000 (16:53 +0000)
committerTom Stellard <tstellar@redhat.com>
Wed, 26 Sep 2018 16:53:36 +0000 (16:53 +0000)
Summary:
This is essentially NFC, because the complex pattern used for these patterns
will fail on non-CI, but this makes the pattern consistent with other CI
smrd patterns.  It is also a performance improvement, because the pattern
will now fail earlier on non-CI.

Reviewers: arsenm, nhaehnle

Reviewed By: arsenm

Subscribers: kzhuravl, jvesely, wdng, yaxunl, dstuttard, tpr, t-tye, llvm-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@343125 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/AMDGPU/SMInstructions.td

index bd983cd..6037dcc 100644 (file)
@@ -777,7 +777,7 @@ def : SMRD_Pattern_ci <"S_LOAD_DWORDX16", v16i32>;
 class SMLoad_Pattern_ci <string Instr, ValueType vt> : GCNPat <
   (vt (SIsbuffer_load v4i32:$sbase, (SMRDBufferImm32 i32:$offset), i1:$glc)),
   (!cast<InstSI>(Instr) $sbase, $offset, (as_i1imm $glc))> {
-  let OtherPredicates = [isCI]; // should this be isCIOnly?
+  let OtherPredicates = [isCIOnly];
 }
 
 def : SMLoad_Pattern_ci <"S_BUFFER_LOAD_DWORD_IMM_ci", i32>;