ソースとアセンブラの両方表示

sh_sh3_le-objdump -d -S e.o

> [doyu@oreo .memo]$ cd ~/target/root/
> [doyu@oreo root]$ cat e.c
    
> > > > static int __init hello_init(void) > { > int i; > > printk("Hello %08x\n", i++); > > return 0; > } > > static void __exit hello_exit(void) > { > printk("bye\n"); > } > > module_init(hello_init); > module_exit(hello_exit); > > MODULE_LICENSE("GPL"); > > > > > [doyu@oreo root]$ sh_sh3_le-gcc -c e.c -D__KERNEL__ -DMODULE -g > [doyu@oreo root]$ sh_sh3_le-objdump -d -S e.o > > > 00000000 : > > > > static int __init hello_init(void) > { > 0: e6 2f mov.l r14,@-r15 > 2: 22 4f sts.l pr,@-r15 > 4: fc 7f add #-4,r15 > 6: f3 6e mov r15,r14 > int i; > > printk("Hello %08x\n", i++); > 8: 08 d3 mov.l 2c ,r3 ! 0x0 > a: e2 61 mov.l @r14,r1 > c: 13 62 mov r1,r2 > e: 01 71 add #1,r1 > 10: 12 2e mov.l r1,@r14 > 12: 23 61 mov r2,r1 > 14: 33 64 mov r3,r4 > 16: 13 65 mov r1,r5 > 18: 05 d1 mov.l 30 ,r1 ! 0x0 > 1a: 0b 41 jsr @r1 > 1c: 09 00 nop > > return 0; > 1e: 00 e0 mov #0,r0 > } > 20: 04 7e add #4,r14 > 22: e3 6f mov r14,r15 > 24: 26 4f lds.l @r15+,pr > 26: f6 6e mov.l @r15+,r14