* config/tc-ppc.c (ppc_comm): Accept optional fourth .lcomm

argument as alignment.
This commit is contained in:
David Edelsohn 2013-08-14 20:52:55 +00:00
parent 61884d20bc
commit 3c02c47f97
2 changed files with 24 additions and 5 deletions

View File

@ -1,3 +1,8 @@
2013-08-14 David Edelsohn <dje.gcc@gmail.com>
* config/tc-ppc.c (ppc_comm): Accept optional fourth .lcomm
argument as alignment.
2013-08-09 Nick Clifton <nickc@redhat.com>
* config/tc-rl78.c (elf_flags): New variable.

View File

@ -3526,11 +3526,6 @@ ppc_comm (int lcomm)
char *lcomm_name;
char lcomm_endc;
if (size <= 4)
align = 2;
else
align = 3;
/* The third argument to .lcomm appears to be the real local
common symbol to create. References to the symbol named in
the first argument are turned into references to the third
@ -3549,6 +3544,25 @@ ppc_comm (int lcomm)
lcomm_sym = symbol_find_or_make (lcomm_name);
*input_line_pointer = lcomm_endc;
/* The fourth argument to .lcomm is the alignment. */
if (*input_line_pointer != ',')
{
if (size <= 4)
align = 2;
else
align = 3;
}
else
{
++input_line_pointer;
align = get_absolute_expression ();
if (align <= 0)
{
as_warn (_("ignoring bad alignment"));
align = 2;
}
}
}
*end_name = '\0';