Bug 14575

Summary: gas/arm errors on ldralt
Product: binutils Reporter: Khem Raj <raj.khem>
Component: gasAssignee: Not yet assigned to anyone <unassigned>
Status: RESOLVED FIXED    
Severity: normal CC: Matthew.Gretton-Dann, nickc
Priority: P2    
Version: 2.23   
Target Milestone: ---   
Host: Target:
Build: Last reconfirmed:

Description Khem Raj 2012-09-12 23:46:58 UTC
With trunk as well 2.23 gas is erroring out on assembling a valid ldrt instruction with 'al' conditional code

testcase

/tmp/as.s

ldralt r5,[r1],#4

$ ./gas/as-new -march=armv5te /tmp/a.s
/tmp/a.s: Assembler messages:
/tmp/a.s:1: Error: selected processor does not support ARM mode `ldralt r5,[r1],#4'


The below commit is the casue of this error

Author: mgretton <mgretton>
Date:   Fri Aug 24 08:03:38 2012 +0000

        * gas/config/tc-arm.c (do_rm_rn): New function.
        (do_strlex): Likewise.
        (do_t_strlex): Likewise.
        (insns): Add support for LDRA/STRL instructions.
        * gas/testsuite/gas/arm/armv8-a-bad.l: Update testcase.
        * gas/testsuite/gas/arm/armv8-a-bad.s: Likewise.
        * gas/testsuite/gas/arm/armv8-a.d: Likewise.
        * gas/testsuite/gas/arm/armv8-a.s: Likewise.
        * opcodes/arm-dis.c (arm_opcodes): Add LDRA/STRL instructions.
        (thumb32_opcodes): Likewise.
        (print_arm_insn): Add support for %<>T formatter.
Comment 1 Nick Clifton 2012-10-23 09:21:29 UTC
The problem was described here...

  http://sourceware.org/ml/binutils/2012-09/msg00130.html

... and fixed here:

  http://sourceware.org/ml/binutils-cvs/2012-09/msg00119.html

(patch checked into 2.23 branch and mainline)