Fellows,
"Alexey Zaparovanny" <[email protected]> Has imcompatibility bug reported:
The GNU assembler interpretates
rla.b 0(r4)
as:
add.b 0(r4), 0(r4) (6 cycles)
OPC0x54d4
DW0x0000
DW0x0000
Where source operand considered to be an indexed moded with zero displacement.
After assembly-disassembly voodoos the objdump issues
rla.b 0(r4)
which IAR (I think... I have not had a chance to check it) considers as
add.b @r4, 0(r4)
which is 2 bytes shorter.
So, any jump over this insn will be incorrect cause of two missing bytes.
So, if you're playing with mspgcc and iar stuff, just be carefull or use old
style debugging method - oscilloscope and leds (this works perfect) :))
~d
P.S. I'll fix this shortly
--
/********************************************************************
("`-''-/").___..--''"`-._ (\ Dimmy the Wild UA1ACZ
`6_ 6 ) `-. ( ).`-.__.`) Enterprise Information Sys
(_Y_.)' ._ ) `._ `. ``-..-' Nevsky prospekt, 20 / 44
_..`--'_..-_/ /--'_.' ,' Saint Petersburg, Russia
(il),-'' (li),' ((!.-' +7 (812) 3468202, 5585314
********************************************************************/