MSP430: Setup exclusion tables for function and data attributes
authorJozef Lawrynowicz <jozefl@gcc.gnu.org>
Tue, 3 Sep 2019 20:48:55 +0000 (20:48 +0000)
committerJozef Lawrynowicz <jozefl@gcc.gnu.org>
Tue, 3 Sep 2019 20:48:55 +0000 (20:48 +0000)
commitf1deee9179236ea46965e11923c0f8306b6821ef
tree20ea6afb60d894c3129d6aeb6241a1fe9fc54058
parent7a4418a53e80d38918a1f7ca4b8c2050cde08a24
MSP430: Setup exclusion tables for function and data attributes

gcc/ChangeLog:

2019-09-03  Jozef Lawrynowicz  <jozef.l@mittosystems.com>

* config/msp430/msp430.c (msp430_attr): Remove warnings about
conflicting msp430-specific attributes.
(msp430_section_attr): Likewise.
Add warnings about conflicts with generic "noinit" and "section"
attributes.
Fix grammar in -mlarge error message.
(msp430_data_attr): Rename to msp430_persist_attr.
Add warnings about conflicts with generic "noinit" and "section"
attributes.
Add warning for when variable is not initialized.
Chain conditionals which prevent the attribute being added.
(ATTR_EXCL): New helper.
(attr_reent_exclusions): New exclusion table.
(attr_naked_exclusions): Likewise.
(attr_crit_exclusions): Likewise.
(attr_lower_exclusions): Likewise.
(attr_upper_exclusions): Likewise.
(attr_either_exclusions): Likewise.
(attr_persist_exclusions): Likewise.
(msp430_attribute_table): Update with exclusion rules.
(msp430_output_aligned_decl_common): Don't output common symbol if decl
has a section.

gcc/testsuite/ChangeLog:

2019-09-03  Jozef Lawrynowicz  <jozef.l@mittosystems.com>

* gcc.target/msp430/data-attributes-2.c: New test.
* gcc.target/msp430/function-attributes-4.c: Update dg-warning
strings.
* gcc.target/msp430/region-attribute-misuse.c: Likewise.

From-SVN: r275356
gcc/ChangeLog
gcc/config/msp430/msp430.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/msp430/data-attributes-2.c [new file with mode: 0644]
gcc/testsuite/gcc.target/msp430/function-attributes-4.c
gcc/testsuite/gcc.target/msp430/region-attribute-misuse.c