Re: [arm-gnu] How to make gas accept Thumb2 insns on armv6-m ?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [arm-gnu] How to make gas accept Thumb2 insns on armv6-m ?



On Mon, Jun 08, 2009 at 04:01:02PM +0200, Christophe LYON wrote:
> Hello,
>
> I am trying to make gas accept the following sample code:
> 	mul     r3, r0, r3
> 	mul     ip, r2, r1
> 	umull   r0, r1, r2, r0
> 	add     ip, ip, r3
> 	add     r1, r1, ip
>
> for armv6-m.
> If I use gas -mthumb -march=armv6-m, I get:
> toto.s:4: Error: dest must overlap one source register -- `mul ip,r2,r1'
> toto.s:5: Error: selected processor does not support `umull r0,r1,r2,r0'

First of all, if you want to write Thumb-2, I believe you need
".syntax unified" to get consistent behavior.  That will fix the
"dest must overlap one source register" error for armv6t2.

Secondly, ARM v6-M does not implement most of the Thumb-2 instruction
set.  I believe the assembler's other errors are correct.

-- 
Daniel Jacobowitz
CodeSourcery