summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Sparc
diff options
context:
space:
mode:
authorBenjamin Kramer <benny.kra@googlemail.com>2016-05-27 16:45:37 +0000
committerBenjamin Kramer <benny.kra@googlemail.com>2016-05-27 16:45:37 +0000
commit1cda54f369a268b2e237ccbce432538d3cbae8cf (patch)
tree12f624b53f95ccca052bdb63a3e6f4e2107dfe96 /llvm/lib/Target/Sparc
parent10a1e8b1fe574c6012018bb91a0572a65e8f6779 (diff)
downloadbcm5719-llvm-1cda54f369a268b2e237ccbce432538d3cbae8cf.tar.gz
bcm5719-llvm-1cda54f369a268b2e237ccbce432538d3cbae8cf.zip
[sparc] Simplify a slow and verbose way of checking if a string starts with "ld".
PR27904. llvm-svn: 271016
Diffstat (limited to 'llvm/lib/Target/Sparc')
-rwxr-xr-xllvm/lib/Target/Sparc/LeonPasses.cpp10
1 files changed, 4 insertions, 6 deletions
diff --git a/llvm/lib/Target/Sparc/LeonPasses.cpp b/llvm/lib/Target/Sparc/LeonPasses.cpp
index 7cdf862a3c0..31261c4a3e2 100755
--- a/llvm/lib/Target/Sparc/LeonPasses.cpp
+++ b/llvm/lib/Target/Sparc/LeonPasses.cpp
@@ -61,12 +61,10 @@ bool InsertNOPLoad::runOnMachineFunction(MachineFunction& MF)
Modified = true;
}
else if (MI.isInlineAsm()) {
- std::string AsmString (MI.getOperand(InlineAsm::MIOp_AsmString)
- .getSymbolName());
- std::string LDOpCoode ("ld");
- std::transform(AsmString.begin(), AsmString.end(), AsmString.begin(),
- ::tolower);
- if (AsmString.find(LDOpCoode) == 0) { // an inline ld or ldf instruction
+ // Look for an inline ld or ldf instruction.
+ StringRef AsmString =
+ MI.getOperand(InlineAsm::MIOp_AsmString).getSymbolName();
+ if (AsmString.startswith_lower("ld")) {
//errs() << "Inserting NOP after LD instruction\n";
MachineBasicBlock::iterator NMBBI = std::next(MBBI);
BuildMI(MBB, NMBBI, DL, TII.get(SP::NOP));
OpenPOWER on IntegriCloud