bsps/powerpc: Do not use GCC extern inline

This commit is contained in:
Ralf Kirchner
2012-11-13 18:09:19 +01:00
committed by Sebastian Huber
parent f8ac52f21c
commit d1c89524b2

View File

@@ -21,36 +21,32 @@
extern "C" { extern "C" {
#endif #endif
#ifdef __GNUC__ static inline unsigned ld_le16(volatile uint16_t *addr)
extern __inline__ unsigned ld_le16(volatile uint16_t *addr)
{ {
unsigned val; unsigned val;
__asm__ __volatile__ ("lhbrx %0,0,%1" : "=r" (val) : "r" (addr), "m" (*addr)); __asm__ volatile ("lhbrx %0,0,%1" : "=r" (val) : "r" (addr), "m" (*addr));
return val; return val;
} }
extern __inline__ void st_le16(volatile uint16_t *addr, unsigned val) static inline void st_le16(volatile uint16_t *addr, unsigned val)
{ {
__asm__ __volatile__ ("sthbrx %1,0,%2" : "=m" (*addr) : "r" (val), "r" (addr)); __asm__ volatile ("sthbrx %1,0,%2" : "=m" (*addr) : "r" (val), "r" (addr));
} }
extern __inline__ unsigned ld_le32(volatile uint32_t *addr) static inline unsigned ld_le32(volatile uint32_t *addr)
{ {
unsigned val; unsigned val;
__asm__ __volatile__ ("lwbrx %0,0,%1" : "=r" (val) : "r" (addr), "m" (*addr)); __asm__ volatile ("lwbrx %0,0,%1" : "=r" (val) : "r" (addr), "m" (*addr));
return val; return val;
} }
extern __inline__ void st_le32(volatile uint32_t *addr, unsigned val) static inline void st_le32(volatile uint32_t *addr, unsigned val)
{ {
__asm__ __volatile__ ("stwbrx %1,0,%2" : "=m" (*addr) : "r" (val), "r" (addr)); __asm__ volatile ("stwbrx %1,0,%2" : "=m" (*addr) : "r" (val), "r" (addr));
} }
#endif /* __GNUC__ */
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif