inc星际苍穹 inc星际苍穹
CoderandPoemer
关注数: 103 粉丝数: 39 发帖数: 3,419 关注贴吧数: 140
请问这个powerpc所对应的arm与arm64代码可行吗? powerpc下—— 在powerpc下,有—— static inline int in_8(const volatile unsigned char *address) { int ret; __asm__ __volatile__("lbz%U1%X1 %0,%1;twi 0,%0,0;isync":"=r"(ret):"m"(*address)); return ret; } static inline void out_8(volatile unsigned char *address,int value) { __asm__ __volatile__("stb%U0%X0 %1,%0;sync":"=m"(*address):"r"(value)); } static inline unsigned in_le16(const volatile unsigned short *address) { unsigned ret; __asm__ __volatile__("lhbrx %0,0,%1;twi 0,%0,0;isync":"=r"(ret):"r"(address),"m"(*address)); return ret; } static inline unsigned in_be16(const volatile unsigned short *address) { unsigned ret; __asm__ __volatile__("lhz%U1%X1 %0,%1;twi 0,%0,0;isync":"=r"(ret):"m"(*address)); return ret; } static inline void out_le16(volatile unsigned short *address,int value) { __asm__ __volatile__("sthbrx %1,0,%2;sync":"=m"(*address):"r"(value),"r"(address)); } static inline void out_be16(volatile unsigned short *address,int value) { __asm__ __volatile__("sth%U0%X0 %1,%0;sync":"=m"(*address):"r"(value)); } static inline unsigned in_le32(const volatile unsigned *address) { unsigned ret; __asm__ __volatile__("lwbrx %0,0,%1;twi 0,%0,0;isync":"=r"(ret):"r"(address),"m"(*address)); return ret; } static inline unsigned in_be32(const volatile unsigned *address) { unsigned ret; __asm__ __volatile__("lwz%U1%X1 %0,%1;twi 0,%0,0;isync":"=r"(ret):"m"(*address)); return ret; } static inline void out_le32(volatile unsigned *address,int value) { __asm__ __volatile__("stwbrx %1,0,%2;sync":"=m"(*address):"r"(value),"r"(address)); } static inline void out_be32(volatile unsigned *address,int value) { __asm__ __volatile__("stw%U0%X0 %1,%0;sync":"=m"(*address):"r"(value)); } static inline void sync() { __asm__ __volatile__("sync":::"memory"); } static inline void eieio() { __asm__ __volatile__("eieio":::"memory"); } static inline void barrier() { __asm__ __volatile__("":::"memory"); } /////////////////分割线////////////////////////////////////////// 在评论区给出arm与arm64的
1 下一页