* config/tc-sparc.c (sparc_handle_align): Reindent a bit. Correct
initialization of waddr. (sparc_elf_final_processing): Add default case to switch.
This commit is contained in:
parent
be228e0db6
commit
04a92367bc
2 changed files with 30 additions and 17 deletions
|
@ -1,3 +1,9 @@
|
||||||
|
Tue Jul 14 11:58:40 1998 Ian Lance Taylor <ian@cygnus.com>
|
||||||
|
|
||||||
|
* config/tc-sparc.c (sparc_handle_align): Reindent a bit. Correct
|
||||||
|
initialization of waddr.
|
||||||
|
(sparc_elf_final_processing): Add default case to switch.
|
||||||
|
|
||||||
Tue Jul 14 11:00:16 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
|
Tue Jul 14 11:00:16 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
|
||||||
|
|
||||||
* doc/c-i386.texi: Fix a typo. Use the term 80-bit real rather
|
* doc/c-i386.texi: Fix a typo. Use the term 80-bit real rather
|
||||||
|
|
|
@ -603,7 +603,7 @@ md_show_usage (stream)
|
||||||
fprintf (stream, _("\
|
fprintf (stream, _("\
|
||||||
-EL generate code for a little endian machine\n\
|
-EL generate code for a little endian machine\n\
|
||||||
-EB generate code for a big endian machine\n\
|
-EB generate code for a big endian machine\n\
|
||||||
--little-endian-data generate code for a machine having big endian
|
--little-endian-data generate code for a machine having big endian\n\
|
||||||
instructions and little endian data."));
|
instructions and little endian data."));
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
@ -3386,7 +3386,10 @@ sparc_handle_align (fragp)
|
||||||
{
|
{
|
||||||
int count = fragp->fr_next->fr_address - fragp->fr_address - fragp->fr_fix;
|
int count = fragp->fr_next->fr_address - fragp->fr_address - fragp->fr_fix;
|
||||||
|
|
||||||
if (count >= 4 && !(count & 3) && count <= 1024 && !((long)(fragp->fr_literal + fragp->fr_fix) & 3))
|
if (count >= 4
|
||||||
|
&& !(count & 3)
|
||||||
|
&& count <= 1024
|
||||||
|
&& !((long)(fragp->fr_literal + fragp->fr_fix) & 3))
|
||||||
{
|
{
|
||||||
unsigned *p = (unsigned *)(fragp->fr_literal + fragp->fr_fix);
|
unsigned *p = (unsigned *)(fragp->fr_literal + fragp->fr_fix);
|
||||||
int i;
|
int i;
|
||||||
|
@ -3399,7 +3402,7 @@ sparc_handle_align (fragp)
|
||||||
|
|
||||||
if (SPARC_OPCODE_ARCH_V9_P (max_architecture) && count > 8)
|
if (SPARC_OPCODE_ARCH_V9_P (max_architecture) && count > 8)
|
||||||
{
|
{
|
||||||
char *waddr = &fragp->fr_literal + fragp->fr_fix;
|
char *waddr = &fragp->fr_literal[fragp->fr_fix];
|
||||||
unsigned wval = (0x30680000 | count >> 2); /* ba,a,pt %xcc, 1f */
|
unsigned wval = (0x30680000 | count >> 2); /* ba,a,pt %xcc, 1f */
|
||||||
if (INSN_BIG_ENDIAN)
|
if (INSN_BIG_ENDIAN)
|
||||||
number_to_chars_bigendian (waddr, wval, 4);
|
number_to_chars_bigendian (waddr, wval, 4);
|
||||||
|
@ -3420,6 +3423,7 @@ sparc_elf_final_processing ()
|
||||||
/* Set the Sparc ELF flag bits. FIXME: There should probably be some
|
/* Set the Sparc ELF flag bits. FIXME: There should probably be some
|
||||||
sort of BFD interface for this. */
|
sort of BFD interface for this. */
|
||||||
if (sparc_arch_size == 64)
|
if (sparc_arch_size == 64)
|
||||||
|
{
|
||||||
switch (sparc_memory_model)
|
switch (sparc_memory_model)
|
||||||
{
|
{
|
||||||
case MM_RMO:
|
case MM_RMO:
|
||||||
|
@ -3428,6 +3432,9 @@ sparc_elf_final_processing ()
|
||||||
case MM_PSO:
|
case MM_PSO:
|
||||||
elf_elfheader (stdoutput)->e_flags |= EF_SPARCV9_PSO;
|
elf_elfheader (stdoutput)->e_flags |= EF_SPARCV9_PSO;
|
||||||
break;
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if (current_architecture >= SPARC_OPCODE_ARCH_V9)
|
else if (current_architecture >= SPARC_OPCODE_ARCH_V9)
|
||||||
elf_elfheader (stdoutput)->e_flags |= EF_SPARC_32PLUS;
|
elf_elfheader (stdoutput)->e_flags |= EF_SPARC_32PLUS;
|
||||||
|
|
Loading…
Reference in a new issue