re PR target/14047 (__progmem__ attribute doesn't work)

PR target/14047
	* config/avr/avr.c (avr_progmem_p): Add "attributes" parameter.
	(avr_insert_attributes): Pass "attributes" to avr_progmem_p.
	* config/avr/avr-protos.h (avr_progmem_p): Change prototype.

From-SVN: r79433
This commit is contained in:
Dean Ferreyra 2004-03-13 09:43:30 +03:00 committed by Denis Chertykov
parent 58354fa8a1
commit 427ee3601d
2 changed files with 4 additions and 4 deletions

View File

@ -42,7 +42,7 @@ extern void gas_output_ascii (FILE *file, const char *str, size_t length);
#ifdef TREE_CODE
extern void asm_output_external (FILE *file, tree decl, char *name);
extern int avr_progmem_p (tree decl);
extern int avr_progmem_p (tree decl, tree attributes);
#ifdef RTX_CODE /* inside TREE_CODE */
extern rtx avr_function_value (tree type, tree func);

View File

@ -4575,7 +4575,7 @@ avr_handle_fndecl_attribute (tree *node, tree name,
if found return 1, otherwise 0. */
int
avr_progmem_p (tree decl)
avr_progmem_p (tree decl, tree attributes)
{
tree a;
@ -4583,7 +4583,7 @@ avr_progmem_p (tree decl)
return 0;
if (NULL_TREE
!= lookup_attribute ("progmem", DECL_ATTRIBUTES (decl)))
!= lookup_attribute ("progmem", attributes))
return 1;
a=decl;
@ -4607,7 +4607,7 @@ avr_insert_attributes (tree node, tree *attributes)
{
if (TREE_CODE (node) == VAR_DECL
&& (TREE_STATIC (node) || DECL_EXTERNAL (node))
&& avr_progmem_p (node))
&& avr_progmem_p (node, *attributes))
{
static const char dsec[] = ".progmem.data";
*attributes = tree_cons (get_identifier ("section"),