Tool/software: TI C/C++ Compiler
There is cryptic and incomplete information in TI Docs about the space the MSP430 Compiler/Linker reserves for section "_CIOBUF_" which, according to documentation, is used heavily for file i/o buffering between the MSP430 and the Host when the Debugger/Emulator is attached. My application does not use File I/O and the application is running out of memory with potential C-Function stack frame exhaustion. The application does use sprintf and scanf heavily, and there is as note in the below TI doc that these functions "do not use the entire interface."
Quote from above "printf " exception: the *sprintf functions do not require the entire C I/O interface" (What does this mean? Do they need the _CIOBUF_?
The linker is putting the buffer for 'C I/O', "_CIOBUF_" right next to stack, so I'm trying to also determine if either _CIOBUF_ is overwriting stack "_stack", or if stack is overwriting _CIOBUF_. Also trying to determine if stack grows from _stack to __STACK_END_ or the reverse.
From the map file I have:
00007c00 _stack
00009c00 __STACK_END
00002000 __STACK_SIZE
Memory Dumps of _CIOBUF_ and _stack follow
###########################################
#################################
Tool/software: TI C/C++ Compiler
There is cryptic and incomplete information in TI Docs about the space the MSP430 Compiler/Linker reserves for section "_CIOBUF_" which, according to documentation, is used heavily for file i/o buffering between the MSP430 and the Host when the Debugger/Emulator is attached. My application does not use File I/O and the application is running out of memory with potential C-Function stack frame exhaustion. The application does use sprintf and scanf heavily, and there is as note in the below TI doc that these functions "do not use the entire interface."
Quote from above "printf " exception: the *sprintf functions do not require the entire C I/O interface" (What does this mean? Do they need the _CIOBUF_?
The linker is putting the buffer for 'C I/O', "_CIOBUF_" right next to stack, so I'm trying to also determine if either _CIOBUF_ is overwriting stack "_stack", or if stack is overwriting _CIOBUF_. Also trying to determine if stack grows from _stack to __STACK_END_ or the reverse.
From the map file I have:
00007c00 _stack
00009c00 __STACK_END
00002000 __STACK_SIZE