|
From: Alexander G. <ag...@su...> - 2011-11-24 22:57:18
|
Hi list, While trying to debug some gcc breakage, I stumbled over an unimplemented opcode in 3.7.0: ==30077== Command: /usr/lib/gcc/armv7l-suse-linux-gnueabi/4.6/../../../../armv7l-suse-linux-gnueabi/bin/as -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -meabi=5 -o /tmp/ccP7oOkQ.o /tmp/ccX6YmBQ.s ==30077== disInstr(thumb): unhandled instruction: 0xEB0D 0x0E4B ==30077== valgrind: Unrecognised instruction at address 0xcffb. ==30077== at 0xCFFA: ??? (in /usr/bin/as) According to Peter the opcode is valid and missing in today's svn too: <pm215> agraf: 0xEB0D 0x0E4B: that is ADD.W r14, r13, r11 lsl 1 (encoding T3) so looks ok <pm215> let me just see if it's fixed in svn <pm215> nope, svn still has this bug, valgrind isn't allowing ADD.W rd, r13, rm, shifted I'm not that deep into valgrind code (and ARM asm), so if someone more knowledgable could implement this opcode I will gladly give it a try with my as binary and see where it borks next :). Thanks, Alex |