summaryrefslogtreecommitdiff
path: root/arch/arc/include/asm/delay.h
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arc/include/asm/delay.h')
-rw-r--r--arch/arc/include/asm/delay.h9
1 files changed, 4 insertions, 5 deletions
diff --git a/arch/arc/include/asm/delay.h b/arch/arc/include/asm/delay.h
index 43de30256981..08e7e2a16ac1 100644
--- a/arch/arc/include/asm/delay.h
+++ b/arch/arc/include/asm/delay.h
@@ -22,11 +22,10 @@
static inline void __delay(unsigned long loops)
{
__asm__ __volatile__(
- "1: sub.f %0, %0, 1 \n"
- " jpnz 1b \n"
- : "+r"(loops)
- :
- : "cc");
+ " lp 1f \n"
+ " nop \n"
+ "1: \n"
+ : "+l"(loops));
}
extern void __bad_udelay(void);