2005-09-02 Paul Brook <paul@codesourcery.com>
authorPaul Brook <paul@codesourcery.com>
Fri, 2 Sep 2005 12:50:44 +0000 (12:50 +0000)
committerPaul Brook <paul@codesourcery.com>
Fri, 2 Sep 2005 12:50:44 +0000 (12:50 +0000)
gas/
* config/tc-arm.c (opcode_lookup): Look for infix opcode when
incorrect suffix matches.
gas/testsuite/
* gas/arm/fpa-mem.d: Test "stfpls".
* gas/arm/fpa-mem.s: Ditto.

gas/ChangeLog
gas/config/tc-arm.c
gas/testsuite/ChangeLog
gas/testsuite/gas/arm/fpa-mem.d
gas/testsuite/gas/arm/fpa-mem.s

index 56d99c14ce3afafdc5e2d52e8dc7edb95c758e8e..ec5219e7370507e8e7525e5ccbc0c893f8cd68e7 100644 (file)
@@ -1,3 +1,8 @@
+2005-09-02  Paul Brook  <paul@codesourcery.com>
+
+       * config/tc-arm.c (opcode_lookup): Look for infix opcode when
+       incorrect suffix matches.
+
 2005-09-01  David Ung  <davidu@mips.com>
 
        * config/tc-mips.c (append_insn): Correctly handle mips16 case
index fd95edb283e96771013c66551456f20c6e3f5220..f52716d39c3d9d1ece0c852cc67a6907d578362e 100644 (file)
@@ -7676,8 +7676,10 @@ opcode_lookup (char **str)
        {
        case OT_cinfix3:
        case OT_odd_infix_unc:
+         /* Some mnemonics are ambiguous between infix and suffix
+            conditions.  Disambiguate based on assembly syntax.  */
          if (!unified_syntax)
-           return 0;
+           break;
          /* else fall through */
 
        case OT_csuffix:
index 814571e530705707840119364c6e4eac345897fb..ef33b845437ac31d885f07931f9c928c0a6227b9 100644 (file)
@@ -1,3 +1,8 @@
+2005-09-02  Paul Brook  <paul@codesourcery.com>
+
+       * gas/arm/fpa-mem.d: Test "stfpls".
+       * gas/arm/fpa-mem.s: Ditto.
+
 2005-09-01  Hans-Peter Nilsson  <hp@axis.com>
 
        * gas/cris: Adjust all files for testing target
index bbe4cfa3dc8ddbc18165a806896ce09895f2157b..a94c742564488e9cb6507a9025b178f595a1a605 100644 (file)
@@ -30,5 +30,5 @@ Disassembly of section .text:
 0+4c <[^>]*> ed800200 ?        sfm     f0, 4, \[r0\]
 0+50 <[^>]*> ed00020c ?        sfm     f0, 4, \[r0, #-48\]
 0+54 <[^>]*> ed800200 ?        sfm     f0, 4, \[r0\]
-0+58 <[^>]*> e1a00000 ?        nop[    ]+\(mov r0,r0\)
-0+5c <[^>]*> e1a00000 ?        nop[    ]+\(mov r0,r0\)
+0+58 <[^>]*> 5d800100 ?        stfpls  f0, \[r0\]
+0+5c <[^>]*> 9dc08100 ?        stflsp  f0, \[r0\]
index dfc9b6564c43acb06525ec16aa8687b4ea9d3b14..efbbbd885a0cadced2713a04832d1326af9d0c76 100644 (file)
@@ -25,7 +25,10 @@ F:
        sfmfd   f0, 4, [r0]
        sfmea   f0, 4, [r0]
        
-       # Add two nop instructions to ensure that the
-       # output is 32-byte aligned as required for arm-aout.
-       nop
-       nop
+       # Test mnemonic that is ambiguous between infix and suffic
+       # condition codes
+       # sfts condition code pl
+       stfpls  f0, [r0]
+       .syntax unified
+       # stfp condition code ls
+       stfpls  f0, [r0]