The ARM Thumb2 assembly code
SSAT<c> <Rd>,#<imm>,<Rn>,ASR #32
and
USAT<c> <Rd>,#<imm>,<Rn>,ASR #32
should produce an error (these are only valid when not in Thumb mode).
They instead compile to
SSAT16<c> <Rd>,#<imm>,<Rn>
and
USAT16<c> <Rd>,#<imm>,<Rn>
For example:
$ echo ".code 16 ssat r1,#2,r3,asr #32" | arm-elf-as -aln -EB -o /dev/null
1 0000 F3230101 .code 16 ssat r1,#2,r3,asr#32
$ echo ".code 16 ssat16 r1,#2,r3" | arm-elf-as -aln -EB -o /dev/null
1 0000 F3230101 .code 16 ssat16 r1,#2,r3
$ echo ".code 16 usat r1,#2,r3,asr #32" | arm-elf-as -aln -EB -o /dev/null
1 0000 F3A30102 .code 16 usat r1,#2,r3,asr#32
$ echo ".code 16 usat16 r1,#2,r3" | arm-elf-as -aln -EB -o /dev/null
1 0000 F3A30102 .code 16 usat16 r1,#2,r3
--
Summary: Fails to report a bad shift value for Thumb2
instructions SSAT and USAT
Product: binutils
Version: 2.19
Status: NEW
Severity: normal
Priority: P3
Component: gas
AssignedTo: unassigned at sources dot redhat dot com
ReportedBy: anthony dot fox at cl dot cam dot ac dot uk
CC: bug-binutils at gnu dot org
GCC host triplet: i386-redhat-linux
GCC target triplet: arm-elf
http://sourceware.org/bugzilla/show_bug.cgi?id=10169
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
_______________________________________________
bug-binutils mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-binutils