提交 3ad6f43f 编写于 作者: B bernard.xiong@gmail.com

Added VisualDSP++ Compiler support.

git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2137 bbd45198-f89e-11dd-88c7-29a3b14d5316
上级 e86bd682
...@@ -59,7 +59,7 @@ typedef unsigned char u_char; ...@@ -59,7 +59,7 @@ typedef unsigned char u_char;
typedef unsigned short u_short; typedef unsigned short u_short;
typedef unsigned long u_long; typedef unsigned long u_long;
#if !defined(__CC_ARM) && !defined(__IAR_SYSTEMS_ICC__) #if !defined(__CC_ARM) && !defined(__IAR_SYSTEMS_ICC__) && !defined(__ADSPBLACKFIN__)
typedef unsigned int size_t; typedef unsigned int size_t;
#ifndef NULL #ifndef NULL
......
...@@ -53,7 +53,7 @@ char *strdup(const char *s) ...@@ -53,7 +53,7 @@ char *strdup(const char *s)
} }
#endif #endif
#if !defined(__CC_ARM) && !defined(__IAR_SYSTEMS_ICC__) #if !defined(__CC_ARM) && !defined(__IAR_SYSTEMS_ICC__) && !defined(__ADSPBLACKFIN__)
int isalpha( int ch ) int isalpha( int ch )
{ {
return (unsigned int)((ch | 0x20) - 'a') < 26u; return (unsigned int)((ch | 0x20) - 'a') < 26u;
...@@ -452,6 +452,13 @@ void finsh_system_var_init(const void* begin, const void* end) ...@@ -452,6 +452,13 @@ void finsh_system_var_init(const void* begin, const void* end)
#pragma section="FSymTab" #pragma section="FSymTab"
#pragma section="VSymTab" #pragma section="VSymTab"
#endif #endif
#elif defined(__ADSPBLACKFIN__) /* for VisaulDSP++ Compiler*/
#ifdef FINSH_USING_SYMTAB
extern "asm" int __fsymtab_start;
extern "asm" int __fsymtab_end;
extern "asm" int __vsymtab_start;
extern "asm" int __vsymtab_end;
#endif
#endif #endif
/* /*
...@@ -483,6 +490,9 @@ void finsh_system_init(void) ...@@ -483,6 +490,9 @@ void finsh_system_init(void)
extern const int __vsymtab_end; extern const int __vsymtab_end;
finsh_system_function_init(&__fsymtab_start, &__fsymtab_end); finsh_system_function_init(&__fsymtab_start, &__fsymtab_end);
finsh_system_var_init(&__vsymtab_start, &__vsymtab_end); finsh_system_var_init(&__vsymtab_start, &__vsymtab_end);
#elif defined(__ADSPBLACKFIN__) /* for VisualDSP++ Compiler */
finsh_system_function_init(&__fsymtab_start, &__fsymtab_end);
finsh_system_var_init(&__vsymtab_start, &__vsymtab_end);
#endif #endif
#endif #endif
......
...@@ -126,6 +126,13 @@ typedef rt_base_t rt_off_t; /**< Type for offset ...@@ -126,6 +126,13 @@ typedef rt_base_t rt_off_t; /**< Type for offset
#define ALIGN(n) __attribute__((aligned(n))) #define ALIGN(n) __attribute__((aligned(n)))
#define rt_inline static __inline #define rt_inline static __inline
#define RTT_API #define RTT_API
#elif defined (__ADSPBLACKFIN__) /* for VisualDSP++ Compiler */
#include <stdarg.h>
#define SECTION(x) __attribute__((section(x)))
#define UNUSED __attribute__((unused))
#define ALIGN(n) __attribute__((aligned(n)))
#define rt_inline static inline
#define RTT_API
#endif #endif
/* event length */ /* event length */
......
...@@ -375,6 +375,11 @@ void rt_interrupt_leave(void); ...@@ -375,6 +375,11 @@ void rt_interrupt_leave(void);
*/ */
rt_uint8_t rt_interrupt_get_nest(void); rt_uint8_t rt_interrupt_get_nest(void);
/**
* application module
*/
void rt_system_module_init(void);
/** /**
* @addtogroup KernelService * @addtogroup KernelService
*/ */
......
...@@ -1022,7 +1022,7 @@ rt_device_t rt_console_set_device(const char *name) ...@@ -1022,7 +1022,7 @@ rt_device_t rt_console_set_device(const char *name)
} }
#endif #endif
#if defined(__GNUC__) #if defined(__GNUC__) || defined(__ADSPBLACKFIN__)
void rt_hw_console_output(const char *str) __attribute__((weak)); void rt_hw_console_output(const char *str) __attribute__((weak));
void rt_hw_console_output(const char *str) void rt_hw_console_output(const char *str)
#elif defined(__CC_ARM) #elif defined(__CC_ARM)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册