This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: GAS for ARM: Reject ASR/LSR/ROR with immediate of 0
- To: scottb at netwinder dot org
- Subject: Re: GAS for ARM: Reject ASR/LSR/ROR with immediate of 0
- From: Nick Clifton <nickc at redhat dot com>
- Date: Mon, 14 Aug 2000 15:07:14 -0700
- CC: phillpB at cygnus dot com, rearnshaw at cambridge dot arm dot com, binutils at sources dot redhat dot com
Hi Scott,
: > It was just pointed out to me that GAS for the ARM accepts an
: > immediate value of 0 for the ASR, LSR and ROR versions of addressing
: > mode 1, whereas ARM's own assembler does not. Since the ARM ARM
: > also implies that a value of zero is incorrect I have developed the
: > patch below. Will this break anything in your worlds if I apply it ?
: >
:
: The documentation I have (ARM Architechure reference) seems to deal explicitly
: with the case of 0 as the shift_imm value. It specifies what the shifter
: operand should be and the carry out bit. Or have I missed what you are trying
: to fix?
That is for the LSL shift only. The other three shifts take immediate
values in the range 1..32 (inclusive) and my patch is fixing GAS so
that if these shift are given a value of 0 it will barf.
Cheers
Nick