mips: use .set push/pop in asm code

Change-Id: I3e7bc7ffb8d6d0c5d18a6ab38b1a270559a62fb9
This commit is contained in:
Solomon Peachy 2020-09-02 08:25:43 -04:00
parent 963e979e6c
commit bb6fc21244
2 changed files with 11 additions and 9 deletions

View file

@ -123,7 +123,10 @@ static inline void core_sleep(void)
#if CONFIG_CPU == JZ4732 || CONFIG_CPU == JZ4760B
__cpm_idle_mode();
#endif
asm volatile(".set mips32r2 \n"
asm volatile(
".set push \n"
".set mips32r2 \n"
".set noreorder \n"
"mfc0 $8, $12 \n" /* mfc t0, $12 */
"move $9, $8 \n" /* move t1, t0 */
"la $10, 0x8000000 \n" /* la t2, 0x8000000 */
@ -131,7 +134,7 @@ static inline void core_sleep(void)
"mtc0 $8, $12 \n" /* mtc t0, $12 */
"wait \n"
"mtc0 $9, $12 \n" /* mtc t1, $12 */
".set mips0 \n"
".set pop \n"
::: "t0", "t1", "t2"
);
enable_irq();