summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp10
1 files changed, 3 insertions, 7 deletions
diff --git a/llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp b/llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
index 633ff84db8a..db25efb160f 100644
--- a/llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
+++ b/llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
@@ -162,16 +162,12 @@ bool RISCVAsmBackend::writeNopData(raw_ostream &OS, uint64_t Count) const {
return false;
// The canonical nop on RISC-V is addi x0, x0, 0.
- uint64_t Nop32Count = Count / 4;
- for (uint64_t i = Nop32Count; i != 0; --i)
+ for (; Count >= 4; Count -= 4)
OS.write("\x13\0\0\0", 4);
// The canonical nop on RVC is c.nop.
- if (HasStdExtC) {
- uint64_t Nop16Count = (Count - Nop32Count * 4) / 2;
- for (uint64_t i = Nop16Count; i != 0; --i)
- OS.write("\x01\0", 2);
- }
+ if (Count && HasStdExtC)
+ OS.write("\x01\0", 2);
return true;
}
OpenPOWER on IntegriCloud