(handle_pragma_token): Delete.
From-SVN: r2034
This commit is contained in:
parent
743ff6783a
commit
1e59a3f81a
@ -3031,115 +3031,6 @@ sparc_type_code (type)
|
||||
}
|
||||
}
|
||||
|
||||
#if defined(HANDLE_PRAGMA) && !defined(HANDLE_SYSV_PRAGMA)
|
||||
|
||||
/* Handle a pragma directive. HANDLE_PRAGMA conspires to parse the
|
||||
input following #pragma into tokens based on yylex. TOKEN is the
|
||||
current token, and STRING is its printable form. */
|
||||
|
||||
void
|
||||
handle_pragma_token (string, token)
|
||||
char *string;
|
||||
tree token;
|
||||
{
|
||||
static enum pragma_state
|
||||
{
|
||||
ps_start,
|
||||
ps_done,
|
||||
ps_bad,
|
||||
ps_weak,
|
||||
ps_name,
|
||||
ps_equals,
|
||||
ps_value,
|
||||
} state = ps_start, type;
|
||||
static char *name;
|
||||
static char *value;
|
||||
static int align;
|
||||
|
||||
if (string == 0)
|
||||
{
|
||||
#ifdef WEAK_ASM_OP
|
||||
if (type == ps_weak)
|
||||
{
|
||||
if (state == ps_name || state == ps_value)
|
||||
{
|
||||
fprintf (asm_out_file, "\t%s\t", WEAK_ASM_OP);
|
||||
ASM_OUTPUT_LABELREF (asm_out_file, name);
|
||||
fputc ('\n', asm_out_file);
|
||||
if (state == ps_value)
|
||||
{
|
||||
fputc ('\t', asm_out_file);
|
||||
ASM_OUTPUT_LABELREF (asm_out_file, name);
|
||||
fputs (" = ", asm_out_file);
|
||||
ASM_OUTPUT_LABELREF (asm_out_file, value);
|
||||
fputc ('\n', asm_out_file);
|
||||
}
|
||||
}
|
||||
else if (! (state == ps_done || state == ps_start))
|
||||
warning ("ignoring malformed #pragma weak symbol [=value]");
|
||||
}
|
||||
#endif /* WEAK_ASM_OP */
|
||||
|
||||
type = state = ps_start;
|
||||
return;
|
||||
}
|
||||
|
||||
switch (state)
|
||||
{
|
||||
case ps_start:
|
||||
if (token && TREE_CODE (token) == IDENTIFIER_NODE)
|
||||
{
|
||||
#ifdef WEAK_ASM_OP
|
||||
if (strcmp (IDENTIFIER_POINTER (token), "weak") == 0)
|
||||
type = state = ps_weak;
|
||||
else
|
||||
#endif
|
||||
type = state = ps_done;
|
||||
}
|
||||
else
|
||||
type = state = ps_done;
|
||||
break;
|
||||
|
||||
#ifdef WEAK_ASM_OP
|
||||
case ps_weak:
|
||||
if (token && TREE_CODE (token) == IDENTIFIER_NODE)
|
||||
{
|
||||
name = IDENTIFIER_POINTER (token);
|
||||
state = ps_name;
|
||||
}
|
||||
else
|
||||
state = ps_bad;
|
||||
break;
|
||||
|
||||
case ps_name:
|
||||
state = (strcmp (string, "=") ? ps_bad : ps_equals);
|
||||
break;
|
||||
|
||||
case ps_equals:
|
||||
if (token && TREE_CODE (token) == IDENTIFIER_NODE)
|
||||
{
|
||||
value = IDENTIFIER_POINTER (token);
|
||||
state = ps_value;
|
||||
}
|
||||
else
|
||||
state = ps_bad;
|
||||
break;
|
||||
|
||||
case ps_value:
|
||||
state = ps_bad;
|
||||
break;
|
||||
#endif /* WEAK_ASM_OP */
|
||||
|
||||
case ps_bad:
|
||||
case ps_done:
|
||||
break;
|
||||
|
||||
default:
|
||||
abort ();
|
||||
}
|
||||
}
|
||||
#endif /* HANDLE_PRAGMA && not HANDLE_SYSV_PRAGMA */
|
||||
|
||||
/* Subroutines to support a flat (single) register window calling
|
||||
convention. */
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user