1 /* SPDX-License-Identifier: GPL-2.0 */ 1 2 #ifndef __MOVS_H__ 3 #define __MOVS_H__ 4 5 /* 6 ** movs.h 7 ** 8 ** Inline assembly macros to generate movs & r 9 */ 10 11 /* Set DFC register value */ 12 13 #define SET_DFC(x) \ 14 __asm__ __volatile__ (" movec %0,%/dfc 15 16 /* Get DFC register value */ 17 18 #define GET_DFC(x) \ 19 __asm__ __volatile__ (" movec %/dfc, % 20 21 /* Set SFC register value */ 22 23 #define SET_SFC(x) \ 24 __asm__ __volatile__ (" movec %0,%/sfc 25 26 /* Get SFC register value */ 27 28 #define GET_SFC(x) \ 29 __asm__ __volatile__ (" movec %/sfc, % 30 31 #define SET_VBR(x) \ 32 __asm__ __volatile__ (" movec %0,%/vbr 33 34 #define GET_VBR(x) \ 35 __asm__ __volatile__ (" movec %/vbr, % 36 37 /* Set a byte using the "movs" instruction */ 38 39 #define SET_CONTROL_BYTE(addr,value) \ 40 __asm__ __volatile__ (" movsb %0, %1@" 41 42 /* Get a byte using the "movs" instruction */ 43 44 #define GET_CONTROL_BYTE(addr,value) \ 45 __asm__ __volatile__ (" movsb %1@, %0" 46 47 /* Set a (long)word using the "movs" instructi 48 49 #define SET_CONTROL_WORD(addr,value) \ 50 __asm__ __volatile__ (" movsl %0, %1@" 51 52 /* Get a (long)word using the "movs" instructi 53 54 #define GET_CONTROL_WORD(addr,value) \ 55 __asm__ __volatile__ (" movsl %1@, %0" 56 #endif 57
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.