diff options
Diffstat (limited to 'llvm/lib/Target/PowerPC/MCTargetDesc/PPCInstPrinter.cpp')
| -rw-r--r-- | llvm/lib/Target/PowerPC/MCTargetDesc/PPCInstPrinter.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/llvm/lib/Target/PowerPC/MCTargetDesc/PPCInstPrinter.cpp b/llvm/lib/Target/PowerPC/MCTargetDesc/PPCInstPrinter.cpp index 3f6497aa0e8f..67c02c17bc46 100644 --- a/llvm/lib/Target/PowerPC/MCTargetDesc/PPCInstPrinter.cpp +++ b/llvm/lib/Target/PowerPC/MCTargetDesc/PPCInstPrinter.cpp @@ -158,7 +158,10 @@ void PPCInstPrinter::printInst(const MCInst *MI, uint64_t Address, // dcbt ra, rb, th [server] // dcbt th, ra, rb [embedded] // where th can be omitted when it is 0. dcbtst is the same. - if (MI->getOpcode() == PPC::DCBT || MI->getOpcode() == PPC::DCBTST) { + // On AIX, only emit the extended mnemonics for dcbt and dcbtst if + // the "modern assembler" is available. + if ((MI->getOpcode() == PPC::DCBT || MI->getOpcode() == PPC::DCBTST) && + (!TT.isOSAIX() || STI.getFeatureBits()[PPC::FeatureModernAIXAs])) { unsigned char TH = MI->getOperand(0).getImm(); O << "\tdcbt"; if (MI->getOpcode() == PPC::DCBTST) @@ -628,8 +631,6 @@ const char *PPCInstPrinter::getVerboseConditionRegName(unsigned RegNum, // showRegistersWithPrefix - This method determines whether registers // should be number-only or include the prefix. bool PPCInstPrinter::showRegistersWithPrefix() const { - if (TT.getOS() == Triple::AIX) - return false; return FullRegNamesWithPercent || FullRegNames; } |
