]> granicus.if.org Git - llvm/commitdiff
[PowerPC] check for INLINEASM_BR along w/ INLINEASM
authorNick Desaulniers <ndesaulniers@google.com>
Fri, 31 May 2019 23:02:13 +0000 (23:02 +0000)
committerNick Desaulniers <ndesaulniers@google.com>
Fri, 31 May 2019 23:02:13 +0000 (23:02 +0000)
Summary:
It looks like since INLINEASM_BR was created off of INLINEASM (r353563),
a few checks for INLINEASM needed to be updated to check for either
case.

pr/41999

Reviewers: hfinkel

Reviewed By: hfinkel

Subscribers: nemanjai, hiraditya, kbarton, jsji, llvm-commits, craig.topper, srhines

Tags: #llvm

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

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

lib/Target/PowerPC/PPCInstrInfo.cpp
lib/Target/PowerPC/PPCVSXSwapRemoval.cpp

index 25f4c9aa8ebd123de56f604f203b121f8a097027..cacbe4eecc5f947ff30762bc073866608829e5f6 100644 (file)
@@ -2013,7 +2013,7 @@ bool PPCInstrInfo::optimizeCompareInstr(MachineInstr &CmpInstr, unsigned SrcReg,
 unsigned PPCInstrInfo::getInstSizeInBytes(const MachineInstr &MI) const {
   unsigned Opcode = MI.getOpcode();
 
-  if (Opcode == PPC::INLINEASM) {
+  if (Opcode == PPC::INLINEASM || Opcode == PPC::INLINEASM_BR) {
     const MachineFunction *MF = MI.getParent()->getParent();
     const char *AsmStr = MI.getOperand(0).getSymbolName();
     return getInlineAsmLength(AsmStr, *MF->getTarget().getMCAsmInfo());
index b1ddbb6b837ca56211ab2f7d445a356c96beb154..44175af7f9b60379e5ccf721d27365a85ffee394 100644 (file)
@@ -422,6 +422,7 @@ bool PPCVSXSwapRemoval::gatherVectorInstructions() {
       // of opcodes having a common attribute in TableGen.  Should this
       // change, this is a prime candidate to use such a mechanism.
       case PPC::INLINEASM:
+      case PPC::INLINEASM_BR:
       case PPC::EXTRACT_SUBREG:
       case PPC::INSERT_SUBREG:
       case PPC::COPY_TO_REGCLASS: