Hi everybody, I found a bug in gas when assembling the arm neon instruction vcvt. The data type specifiers of the vcvt instruction are encoded in the wrong order. I was writing some code using the instruction "vcvt.s32.f32 q1,q0" which should convert a float value in q0 to an integer in q1. I'm testing my code using the scratchbox environment. Here I get the correct result. However, running the same binary on the device (Nokia N900 in my case) I'm getting wrong results. When I exchange the specifiers to vcvt.f32.s32 I'm getting the same wrong results as on the device now within scratchbox and the correct result on the device. Thus the opcodes are assembled in wrong order. Interestingly this bug exists on all levels: the assembler, the disassembler (objdumb) and the scratchbox ARM-emulator.
I haven't tested other instructions using two type specifiers yet, but I assume this to be a general bug concerning all such instructions. best regrads, André Bergner
_______________________________________________ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils