assembly - How to improve the disassembler view in IAR Embedded Workbench for ARM v7.30 -
i'm using iar embedded workbench arm v7.30, , jlink jtag debugger connect arm development board. write in assembler, not c. while of disassembly view in iar debugger project correct, of isn't:
; original source code bl setup_starting_address tsts r4, #err_address_setup bne error_while_reading send_command mov r3, #command_read bl cf_send_command tsts r4, #err_command bne error_while_reading wait_for_flag_to_be_set bl get_status tsts r4, #status_bit3 beq wait_for_flag_to_be_set
renders this:
;disassembly view 0x204: 0xf7ff 0xffc4 bl setup_starting_address ; 0x190 epidmatxcnt: 0x208: 0xf414 0x2f00 tst.w r4, #524288 ; 0x80000 0x20c: 0xd113 bne.n error_while_reading ; 0x236 send_command: 0x20e: 0xf04f dc16 61519 ; 'oð' epiim: 0x210: 0x0320 lsls r0, r4, #12 0x212: 0xf7ff dc16 63487 ; 'ÿ÷' epiris: 0x214: 0xff83 0xf414 vmov.i32 d15,#0xb40000 epimis: 0x218: 0x3f00 subs r7, #0 0x21a: 0xd10c bne.n error_while_reading ; 0x236 epieisc: wait_for_flag_to_be_set: 0x21c: 0xf7ff 0xff4c bl get_status ; 0xb8 0x220: 0xf014 0x0f08 tst.w r4, #8 0x224: 0xd0fa beq.n wait_for_flag_to_be_set ; 0x21c
this example typical of problem. in code shown, debugger window correct, except block in middle:
mov r3, #command_read bl cf_send_command tsts r4, #err_command
which renders as:
dc16 61519 lsls r0, r4, #12 dc16 63487 vmov.i32 d15,#0xb40000 subs r7, #0
i'd remedy this, , better, package track single step progress in source view i've seen in c demonstrations. i'm assuming i'm missing in iar ew setup? how change setup debugger sync better source code, , provide cleaner interpretation of it?
the settings i've been playing these: in project>options>assembler>output 'generate debug information' ticked. , i've been looking round @ files creates during build seeing if export information help. in project>options>debugger>images there options 'download image' information on these seems sparse , trying them various files hasn't worked.
searching ide , debugger manuals doesn't offer either.
i barking right tree?
i had similar problem in iar 7.20.5.7624.
solved selecting "disassemble in current processor mode" under disassembly menu entry.
i suppose depends on current mode of cpu, if arm or thumb or thumb2 mode.
br,
catosh.
Comments
Post a Comment