The official mbed C/C SDK provides the software platform and libraries to build your applications.

Fork of mbed by mbed official

Committer:
bogdanm
Date:
Thu Nov 27 13:33:22 2014 +0000
Revision:
92:4fc01daae5a5
Child:
97:433970e64889
Release 92 of the mbed libray

Main changes:

- nRF51822: fixed pin assignment issues
- ST targets moving to the STM32Cube driver
- LPC1439: fixed serial interrupt issue
- first Cortex-A platform supported in mbed (RZ_A1H)

Who changed what in which revision?

UserRevisionLine numberNew contents of line
bogdanm 92:4fc01daae5a5 1 /* Copyright (c) 2009 Nordic Semiconductor. All Rights Reserved.
bogdanm 92:4fc01daae5a5 2 *
bogdanm 92:4fc01daae5a5 3 * The information contained herein is confidential property of Nordic
bogdanm 92:4fc01daae5a5 4 * Semiconductor ASA.Terms and conditions of usage are described in detail
bogdanm 92:4fc01daae5a5 5 * in NORDIC SEMICONDUCTOR STANDARD SOFTWARE LICENSE AGREEMENT.
bogdanm 92:4fc01daae5a5 6 *
bogdanm 92:4fc01daae5a5 7 * Licensees are granted free, non-transferable use of the information. NO
bogdanm 92:4fc01daae5a5 8 * WARRANTY of ANY KIND is provided. This heading must NOT be removed from
bogdanm 92:4fc01daae5a5 9 * the file.
bogdanm 92:4fc01daae5a5 10 *
bogdanm 92:4fc01daae5a5 11 */
bogdanm 92:4fc01daae5a5 12
bogdanm 92:4fc01daae5a5 13 #ifndef _COMPILER_ABSTRACTION_H
bogdanm 92:4fc01daae5a5 14 #define _COMPILER_ABSTRACTION_H
bogdanm 92:4fc01daae5a5 15
bogdanm 92:4fc01daae5a5 16 /*lint ++flb "Enter library region" */
bogdanm 92:4fc01daae5a5 17
bogdanm 92:4fc01daae5a5 18 #if defined ( __CC_ARM )
bogdanm 92:4fc01daae5a5 19 #define __ASM __asm /*!< asm keyword for ARM Compiler */
bogdanm 92:4fc01daae5a5 20 #define __INLINE __inline /*!< inline keyword for ARM Compiler */
bogdanm 92:4fc01daae5a5 21 #define __STATIC_INLINE static __inline
bogdanm 92:4fc01daae5a5 22
bogdanm 92:4fc01daae5a5 23 #elif defined ( __ICCARM__ )
bogdanm 92:4fc01daae5a5 24 #define __ASM __asm /*!< asm keyword for IAR Compiler */
bogdanm 92:4fc01daae5a5 25 #define __INLINE inline /*!< inline keyword for IAR Compiler. Only available in High optimization mode! */
bogdanm 92:4fc01daae5a5 26 #define __STATIC_INLINE static inline
bogdanm 92:4fc01daae5a5 27 #define __current_sp() __get_SP()
bogdanm 92:4fc01daae5a5 28
bogdanm 92:4fc01daae5a5 29 #elif defined ( __GNUC__ )
bogdanm 92:4fc01daae5a5 30 #define __ASM __asm /*!< asm keyword for GNU Compiler */
bogdanm 92:4fc01daae5a5 31 #define __INLINE inline /*!< inline keyword for GNU Compiler */
bogdanm 92:4fc01daae5a5 32 #define __STATIC_INLINE static inline
bogdanm 92:4fc01daae5a5 33
bogdanm 92:4fc01daae5a5 34 static __INLINE unsigned int __current_sp(void)
bogdanm 92:4fc01daae5a5 35 {
bogdanm 92:4fc01daae5a5 36 register unsigned sp asm("sp");
bogdanm 92:4fc01daae5a5 37 return sp;
bogdanm 92:4fc01daae5a5 38 }
bogdanm 92:4fc01daae5a5 39
bogdanm 92:4fc01daae5a5 40 #elif defined ( __TASKING__ )
bogdanm 92:4fc01daae5a5 41 #define __ASM __asm /*!< asm keyword for TASKING Compiler */
bogdanm 92:4fc01daae5a5 42 #define __INLINE inline /*!< inline keyword for TASKING Compiler */
bogdanm 92:4fc01daae5a5 43 #define __STATIC_INLINE static inline
bogdanm 92:4fc01daae5a5 44
bogdanm 92:4fc01daae5a5 45 #endif
bogdanm 92:4fc01daae5a5 46
bogdanm 92:4fc01daae5a5 47 /*lint --flb "Leave library region" */
bogdanm 92:4fc01daae5a5 48
bogdanm 92:4fc01daae5a5 49 #endif