2003-08-06  Jason Eckhardt  <jle@rice.edu>

        * config/tc-i860.c (i860_process_insn): Check that instructions
        with their dual-bit set are 8-byte aligned.

gas/testsuite:
2003-08-06  Jason Eckhardt  <jle@rice.edu>

        * gas/i860/dual02-err.l: Update expected error message.
        * gas/i860/README.i860: Remove dual02-err from known failure list.
This commit is contained in:
Jason Eckhardt 2003-08-06 19:53:19 +00:00
parent 086432e254
commit 0acc96e1c8
5 changed files with 22 additions and 4 deletions

View File

@ -1,3 +1,8 @@
2003-08-06 Jason Eckhardt <jle@rice.edu>
* config/tc-i860.c (i860_process_insn): Check that instructions
with their dual-bit set are 8-byte aligned.
2003-08-06 Nick Clifton <nickc@redhat.com>
* po/fr.po: Updated French translation.

View File

@ -933,7 +933,13 @@ i860_process_insn (char *str)
{
if ((opcode & 0xfc000000) == 0x48000000 || opcode == 0xb0000000)
{
opcode |= (1 << 9);
/* The instruction is a flop or a fnop, so set its dual bit
(but check that it is 8-byte aligned). */
if (((frag_now->fr_address + frag_now_fix_octets ()) & 7) == 0)
opcode |= (1 << 9);
else
as_bad (_("'d.%s' must be 8-byte aligned"), insn->name);
if (dual_mode == DUAL_DDOT)
dual_mode = DUAL_OFF;
else if (dual_mode == DUAL_ONDDOT)

View File

@ -1,3 +1,8 @@
2003-08-06 Jason Eckhardt <jle@rice.edu>
* gas/i860/dual02-err.l: Update expected error message.
* gas/i860/README.i860: Remove dual02-err from known failure list.
2003-08-05 Jason Eckhardt <jle@rice.edu>
* gas/i860/README.i860: Remove dual01 from the known failures.

View File

@ -25,10 +25,12 @@ TODO:
tests of the Intel syntax should be added to prevent bitrot (including
relocatable expression syntax, etc). Test file dual03.s uses Intel
syntax lightly (i.e., register names without '%' prefix).
- Currently, .align in a .text section fills with 0x00000000. This is
a defect and it needs to fill with nop (0xa0000000). Write a testcase
for it.
Contact me (Jason Eckhardt, jle@rice.edu) if you'd like to help.
Known testsuite failures:
- dual02-err.s: GAS currently doesn't check that dual mode pairs
are properly aligned.
- none.

View File

@ -1,2 +1,2 @@
.*: Assembler messages:
.*:7: Error: FLOP with 'd\.' prefix must be 8-byte aligned
.*:7: Error: 'd\.fadd\.ss' must be 8-byte aligned