S32DS PPC Compiler/ Linker manual available?

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

S32DS PPC Compiler/ Linker manual available?

1,330件の閲覧回数
uditsalunke
Contributor III

hello,

S32DS PPC Compiler and Linker manual available? from release notes I see its based on GCC v4.9.2.

Could anyone please share these document or help to get it?

My intention to have this document is optimise my code for portability. for that I want to add compiler abstraction to my code.  Also want to customise my application executable - want linker manual / documentation.

Thanks

Udit  

ラベル(1)
タグ(3)
0 件の賞賛
返信
1 返信

945件の閲覧回数
stanish
NXP Employee
NXP Employee

Hi Udit,

Indeed S32DS for Power is based on GCC tool chain (v4.9.x). The offline documentation is available here:

"<S32DS_Power...>\Cross_Tools\powerpc-eabivle-4_9\powerpc-eabivle\share\docs\pdf"

"<S32DS_Power...>\Cross_Tools\powerpc-eabivle-4_9\powerpc-eabivle\share\docs\pdf\gcc\"

Some useful information can be found in the gcc release notes:

"<S32DS_Power...>\Cross_Tools\powerpc-eabivle-4_9\releasenotes.pdf"

For improving code portability across different compilers you can inspire from AMMCLIB header files that contains built-in macros to distinguish between different compilers (e.g. see below the snippet from:

 "<S32DS_Power...>\S32DS\AMMCLIB\MPC574xP_AMMCLIB_v1.1.9\include\SWLIBS_Defines.h" )

#if defined(__ghs__)
 #ifndef INLINE
 /*
 * @violates @ref SWLIBS_Defines_h_REF_1 MISRA 2004 Required Rule 19.4, Disallowed definition for 
 * macro. 
 */
 #define INLINE inline
 #endif
#elif defined(__MWERKS__) || defined(__CWCC__)
 #ifndef INLINE
 /*
 * @violates @ref SWLIBS_Defines_h_REF_1 MISRA 2004 Required Rule 19.4, Disallowed definition for 
 * macro. 
 */
 #define INLINE static __inline
 #endif
#elif defined(__DCC__)
 #ifndef INLINE
 /*
 * @violates @ref SWLIBS_Defines_h_REF_1 MISRA 2004 Required Rule 19.4, Disallowed definition for 
 * macro. 
 */
 #define INLINE static __inline__
 #endif
#elif defined(__CSMC__)
 #ifndef INLINE
 /*
 * @violates @ref SWLIBS_Defines_h_REF_1 MISRA 2004 Required Rule 19.4, Disallowed definition for 
 * macro. 
 */
 #define INLINE static @inline
 #endif
#elif defined(__IAR_SYSTEMS_ICC__)
 #ifndef INLINE
 /*
 * @violates @ref SWLIBS_Defines_h_REF_1 MISRA 2004 Required Rule 19.4, Disallowed definition for 
 * macro. 
 */
 #define INLINE static inline
 #endif
#elif defined(__GNUC__) && defined(__PPC_EABI__)
 #ifndef INLINE
 /*
 * @violates @ref SWLIBS_Defines_h_REF_1 MISRA 2004 Required Rule 19.4, Disallowed definition for 
 * macro. 
 */
 #define INLINE static inline
 #endif
#elif defined(__GNUC__)
 #ifndef INLINE
 /*
 * @violates @ref SWLIBS_Defines_h_REF_1 MISRA 2004 Required Rule 19.4, Disallowed definition for 
 * macro. 
 */
 #define INLINE static __inline__
 #endif
#elif defined(_MATLAB_BAM_CREATE)
 #ifndef INLINE
 /*
 * @violates @ref SWLIBS_Defines_h_REF_1 MISRA 2004 Required Rule 19.4, Disallowed definition for 
 * macro.
 */
 #define INLINE static __inline
 #endif
#else
 #ifndef INLINE
 /*
 * @violates @ref SWLIBS_Defines_h_REF_1 MISRA 2004 Required Rule 19.4, Disallowed definition for 
 * macro. 
 */
 #define INLINE static inline
 #endif
#endif‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

Hope it helps.

Stan