Other Parts Discussed in Thread: MSP430F67791
I am wondering why the "#ifdef __LARGE_DATA_MODEL__" inside an unmodified linker command file seems to be ignored during link. If I use the unmodified command file, .cinit and .const are placed in FLASH and the link dies. If I modify the file so that .cinit and.const are placed in FLASH | FLASH2 regardless of the definition of __LARGE_DATA_MODEL__ everything works fine. Thanks!
I am building code for an MSP430F67791 using CCS Version: 5.5.0.00077 with compiler v4.2.3, and have selected everything I can find that would produce a large model image.
My compiler options look like this:
-vmspx --abi=eabi --code_model=large --data_model=large --near_data=none -O2 --include_path="/opt/ti/ccsv5/ccs_base/msp430/include" --include_path="/home/xxxx/code/eclipse_workspace/ufd/driverlib/MSP430F5xx_6xx" --include_path="/opt/ti/ccsv5/tools/compiler/msp430_4.2.3/include" -g --define=__MSP430F67791__ --diag_warning=225 --display_error_number --diag_wrap=off --silicon_errata=CPU21 --silicon_errata=CPU22 --silicon_errata=CPU40 --large_memory_model --printf_support=full
My linker options look like this:
-vmspx --abi=eabi --code_model=large --data_model=large --near_data=none -O2 -g --define=__MSP430F67791__ --diag_warning=225 --display_error_number --diag_wrap=off --silicon_errata=CPU21 --silicon_errata=CPU22 --silicon_errata=CPU40 --large_memory_model --printf_support=full -z -m"ufd.map" --heap_size=160 --stack_size=160 --use_hw_mpy=F5 -i"/opt/ti/ccsv5/ccs_base/msp430/include" -i"/opt/ti/ccsv5/tools/compiler/msp430_4.2.3/lib" -i"/opt/ti/ccsv5/tools/compiler/msp430_4.2.3/include" -i"/opt/ti/ccsv5/ccs_base/msp430/lib" --reread_libs --warn_sections --display_error_number --diag_wrap=off --xml_link_info="ufd_linkInfo.xml" --rom_model