* config/msp430/msp430-opts.h (enum msp430_regions): New.
commitab9c90cd1d82c9b730d3a57bfecf8e1153810b7f
authornickc <nickc@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 5 May 2015 15:15:13 +0000 (5 15:15 +0000)
committernickc <nickc@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 5 May 2015 15:15:13 +0000 (5 15:15 +0000)
tree37f343ade01b75498c1f85d988d51b25a7413ce2
parent78536ab78e9de7a44454fe518ce1b98836343011
* config/msp430/msp430-opts.h (enum msp430_regions): New.
* config/msp430/msp430.c (msp430_override_options): Complain if
-mcode-region or -mdata-region is used on a non MSP430X.
(msp430_section_attr): New function.  Checks lower, upper and
either attributes.
(msp430_attribute_table): Add lower, upper and either.
(gen_prefix): New function.  Generates a prefix for a section
name.
(msp430_select_section): New function - handles the choice of
section for an object.  Takes into account memory region
attributes and options.
(msp430_function_section): Use gen_prefix.
(TARGET_SECTION_TYPE_FLAGS): Define.
(msp430_section_type_flags): New function.
(TARGET_ASM_UNIQUE_SECTION): Define.
(msp430_unique_section): New function.
(msp430_output_aligned_decl_common): New function.
(msp430_do_not_relax_short_jumps): New function.
* config/msp430/msp430.h (USE_SELECT_SECTION_FOR_FUNCTIONS):
Define.
(ASM_OUTPUT_ALIGNED_DECL_COMMON): Define.
* config/msp430/msp430-protos.h
(msp430_do_not_relax_short_jumps): New prototype.
(msp430_output_aligned_decl_common): New prototype.
* config/msp430/msp430.md (length): New attribute.
(cbranchhi4_real): If msp430_do_not_relax_short_jumps is true
then use a long code sequence for short jumps.
* config/msp430/msp430.opt (mcode-region): New.
(mdata-region): New.
* doc/invoke.texi: Document new options.
* doc/extend.texi: Document new attributes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@222810 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/msp430/msp430-opts.h
gcc/config/msp430/msp430-protos.h
gcc/config/msp430/msp430.c
gcc/config/msp430/msp430.h
gcc/config/msp430/msp430.md
gcc/config/msp430/msp430.opt
gcc/doc/extend.texi
gcc/doc/invoke.texi