diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2022-02-25 21:11:00 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2022-02-26 07:40:17 +0100 |
commit | a286d28695d312971400c6b25f43d0794f5e9be8 (patch) | |
tree | 169e5471bced96e5504fe597316bba4b4a776af6 /bsps/powerpc/mvme3100/start/bspstart.c | |
parent | riscv: Use zicsr architecture extension (diff) | |
download | rtems-a286d28695d312971400c6b25f43d0794f5e9be8.tar.bz2 |
powerpc: Use .machine any for some inline asm
Diffstat (limited to 'bsps/powerpc/mvme3100/start/bspstart.c')
-rw-r--r-- | bsps/powerpc/mvme3100/start/bspstart.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/bsps/powerpc/mvme3100/start/bspstart.c b/bsps/powerpc/mvme3100/start/bspstart.c index 0ec215e33b..f27304c144 100644 --- a/bsps/powerpc/mvme3100/start/bspstart.c +++ b/bsps/powerpc/mvme3100/start/bspstart.c @@ -364,9 +364,21 @@ VpdBufRec vpdData [] = { int i; unsigned msr,tcr; asm volatile("mfmsr %0":"=r"(msr)); - asm volatile("mftcr %0":"=r"(tcr)); + asm volatile ( + ".machine \"push\"\n" + ".machine \"any\"\n" + "mftcr %0\n" + ".machine \"pop\"" : + "=r"(tcr) + ); printk("MSR is 0x%08x, TCR 0x%08x\n",msr,tcr); - asm volatile("mttcr %0"::"r"(0)); + asm volatile ( + ".machine \"push\"\n" + ".machine \"any\"\n" + "mttcr %0\n" + ".machine \"pop\"" : : + "r"(0) + ); if (0) { asm volatile("mtmsr %0"::"r"(msr|0x8000)); for (i=0; i<12; i++) |