Create
Edit
Diff
FrontPage
Index
Search
Changes
Login
はじめてのひき - FizzBuzzAsm_SH-3
Title
! Version % sh3-linux-gcc41 -v Using built-in specs. Target: sh-linux コンフィグオプション: ../configure --prefix=/usr --program-prefix=sh-linux- --program-suffix=41 --mandir=/usr/share/man --infodir=/usr/sh-linux/share/info --datadir=/usr/sh-linux/share --target=sh-linux --host=i686-redhat-linux-gnu --build=i686-redhat-linux-gnu --with-system-zlib --with-gxx-include-dir=/usr/sh-linux/include/c++/4.1.2 --includedir=/usr/sh-linux/include --enable-checking=release --with-system-zlib --disable-libunwind-exceptions --enable-shared --enable-__cxa_atexit --enable-c99 --enable-threads=posix --enable-long-long --enable-multilib --with-multilib-list=m3,m4,m4-nofpu --with-endian=little --with-cpu=sh3 --enable-languages=c,c++,objc,obj-c++,java --disable-libgcj スレッドモデル: posix gcc バージョン 4.1.2 20070925 (Red Hat 4.1.2-33) ! Optimized fizzbuzz.o: file format elf32-sh-linux Disassembly of section .text: 00000000 <main>: 0: 86 2f mov.l r8,@-r15 2: 96 2f mov.l r9,@-r15 4: a6 2f mov.l r10,@-r15 6: e6 2f mov.l r14,@-r15 8: 22 4f sts.l pr,@-r15 a: f3 6e mov r15,r14 c: 01 e8 mov #1,r8 e: 00 e9 mov #0,r9 10: 22 da mov.l 9c <main+0x9c>,r10 ! 0 <main> 12: 23 d1 mov.l a0 <main+0xa0>,r1 ! 88888889 14: 1d 38 dmuls.l r1,r8 16: 0a 01 sts mach,r1 18: 8c 31 add r8,r1 1a: 21 41 shar r1 1c: 21 41 shar r1 1e: 21 41 shar r1 20: 87 39 cmp/gt r8,r9 22: 2a 32 subc r2,r2 24: 28 31 sub r2,r1 26: 13 62 mov r1,r2 28: 04 e0 mov #4,r0 2a: 0d 42 shld r0,r2 2c: 18 32 sub r1,r2 2e: 20 38 cmp/eq r2,r8 30: 04 8b bf 3c <main+0x3c> 32: 1c d4 mov.l a4 <main+0xa4>,r4 ! 0 <main> 34: 0b 4a jsr @r10 36: 01 78 add #1,r8 38: 27 a0 bra 8a <main+0x8a> 3a: 83 60 mov r8,r0 3c: 1a d1 mov.l a8 <main+0xa8>,r1 ! 66666667 3e: 1d 38 dmuls.l r1,r8 40: 0a 02 sts mach,r2 42: 21 42 shar r2 44: 87 39 cmp/gt r8,r9 46: 1a 31 subc r1,r1 48: 18 32 sub r1,r2 4a: 23 61 mov r2,r1 4c: 08 41 shll2 r1 4e: 2c 31 add r2,r1 50: 10 38 cmp/eq r1,r8 52: 05 8f bf.s 60 <main+0x60> 54: 87 39 cmp/gt r8,r9 56: 15 d4 mov.l ac <main+0xac>,r4 ! c 58: 0b 4a jsr @r10 5a: 01 78 add #1,r8 5c: 15 a0 bra 8a <main+0x8a> 5e: 83 60 mov r8,r0 60: 13 d1 mov.l b0 <main+0xb0>,r1 ! 55555556 62: 1d 38 dmuls.l r1,r8 64: 0a 02 sts mach,r2 66: 1a 31 subc r1,r1 68: 18 32 sub r1,r2 6a: 23 61 mov r2,r1 6c: 1c 31 add r1,r1 6e: 2c 31 add r2,r1 70: 10 38 cmp/eq r1,r8 72: 04 8b bf 7e <main+0x7e> 74: 0f d4 mov.l b4 <main+0xb4>,r4 ! 14 76: 0b 4a jsr @r10 78: 01 78 add #1,r8 7a: 06 a0 bra 8a <main+0x8a> 7c: 83 60 mov r8,r0 7e: 0e d4 mov.l b8 <main+0xb8>,r4 ! 1c 80: 0e d0 mov.l bc <main+0xbc>,r0 ! 0 <main> 82: 0b 40 jsr @r0 84: 83 65 mov r8,r5 86: 01 78 add #1,r8 88: 83 60 mov r8,r0 8a: 65 88 cmp/eq #101,r0 8c: c1 8b bf 12 <main+0x12> 8e: e3 6f mov r14,r15 90: 26 4f lds.l @r15+,pr 92: f6 6e mov.l @r15+,r14 94: f6 6a mov.l @r15+,r10 96: f6 69 mov.l @r15+,r9 98: 0b 00 rts 9a: f6 68 mov.l @r15+,r8 9c: 00 00 .word 0x0000 9c: R_SH_DIR32 puts 9e: 00 00 .word 0x0000 a0: 89 88 cmp/eq #-119,r0 a2: 88 88 cmp/eq #-120,r0 a4: 00 00 .word 0x0000 a4: R_SH_DIR32 .rodata.str1.4 a6: 00 00 .word 0x0000 a8: 67 66 not r6,r6 aa: 66 66 mov.l @r6+,r6 ac: 0c 00 mov.b @(r0,r0),r0 ac: R_SH_DIR32 .rodata.str1.4 ae: 00 00 .word 0x0000 b0: 56 55 mov.l @(24,r5),r5 b2: 55 55 mov.l @(20,r5),r5 b4: 14 00 mov.b r1,@(r0,r0) b4: R_SH_DIR32 .rodata.str1.4 b6: 00 00 .word 0x0000 b8: 1c 00 mov.b @(r0,r1),r0 b8: R_SH_DIR32 .rodata.str1.4 ba: 00 00 .word 0x0000 bc: 00 00 .word 0x0000 bc: R_SH_DIR32 printf ... ! Normal fizzbuzz.o: file format elf32-sh-linux Disassembly of section .text: 00000000 <main>: 0: e6 2f mov.l r14,@-r15 2: 22 4f sts.l pr,@-r15 4: f0 7f add #-16,r15 6: f3 6e mov r15,r14 8: e3 62 mov r14,r2 a: d0 72 add #-48,r2 c: 01 e1 mov #1,r1 e: 1f 12 mov.l r1,@(60,r2) 10: 6f a0 bra f2 <main+0xf2> 12: 09 00 nop 14: e3 61 mov r14,r1 16: d0 71 add #-48,r1 18: 1f 52 mov.l @(60,r1),r2 1a: 3c d1 mov.l 10c <main+0x10c>,r1 ! 88888889 1c: 1d 32 dmuls.l r1,r2 1e: 0a 01 sts mach,r1 20: 2c 31 add r2,r1 22: 21 41 shar r1 24: 21 41 shar r1 26: 21 41 shar r1 28: 13 63 mov r1,r3 2a: 00 e1 mov #0,r1 2c: 27 31 cmp/gt r2,r1 2e: 1a 31 subc r1,r1 30: 33 67 mov r3,r7 32: 18 37 sub r1,r7 34: 72 2e mov.l r7,@r14 36: e2 61 mov.l @r14,r1 38: 04 e3 mov #4,r3 3a: 3d 41 shld r3,r1 3c: e2 67 mov.l @r14,r7 3e: 78 31 sub r7,r1 40: 23 63 mov r2,r3 42: 18 33 sub r1,r3 44: 32 2e mov.l r3,@r14 46: e2 67 mov.l @r14,r7 48: 78 27 tst r7,r7 4a: 06 8b bf 5a <main+0x5a> 4c: 30 d1 mov.l 110 <main+0x110>,r1 ! 0 <main> 4e: 13 64 mov r1,r4 50: 30 d1 mov.l 114 <main+0x114>,r1 ! 0 <main> 52: 0b 41 jsr @r1 54: 09 00 nop 56: 45 a0 bra e4 <main+0xe4> 58: 09 00 nop 5a: e3 61 mov r14,r1 5c: d0 71 add #-48,r1 5e: 1f 52 mov.l @(60,r1),r2 60: 2d d1 mov.l 118 <main+0x118>,r1 ! 66666667 62: 1d 32 dmuls.l r1,r2 64: 0a 01 sts mach,r1 66: 21 41 shar r1 68: 13 63 mov r1,r3 6a: 00 e1 mov #0,r1 6c: 27 31 cmp/gt r2,r1 6e: 1a 31 subc r1,r1 70: 33 67 mov r3,r7 72: 18 37 sub r1,r7 74: 71 1e mov.l r7,@(4,r14) 76: e1 51 mov.l @(4,r14),r1 78: 08 41 shll2 r1 7a: e1 53 mov.l @(4,r14),r3 7c: 3c 31 add r3,r1 7e: 23 67 mov r2,r7 80: 18 37 sub r1,r7 82: 71 1e mov.l r7,@(4,r14) 84: e1 51 mov.l @(4,r14),r1 86: 18 21 tst r1,r1 88: 06 8b bf 98 <main+0x98> 8a: 24 d1 mov.l 11c <main+0x11c>,r1 ! c 8c: 13 64 mov r1,r4 8e: 21 d1 mov.l 114 <main+0x114>,r1 ! 0 <main> 90: 0b 41 jsr @r1 92: 09 00 nop 94: 26 a0 bra e4 <main+0xe4> 96: 09 00 nop 98: e3 61 mov r14,r1 9a: d0 71 add #-48,r1 9c: 1f 52 mov.l @(60,r1),r2 9e: 20 d1 mov.l 120 <main+0x120>,r1 ! 55555556 a0: 1d 32 dmuls.l r1,r2 a2: 0a 03 sts mach,r3 a4: 00 e1 mov #0,r1 a6: 27 31 cmp/gt r2,r1 a8: 1a 31 subc r1,r1 aa: 33 67 mov r3,r7 ac: 18 37 sub r1,r7 ae: 72 1e mov.l r7,@(8,r14) b0: e2 51 mov.l @(8,r14),r1 b2: 1c 31 add r1,r1 b4: e2 53 mov.l @(8,r14),r3 b6: 3c 31 add r3,r1 b8: 23 67 mov r2,r7 ba: 18 37 sub r1,r7 bc: 72 1e mov.l r7,@(8,r14) be: e2 51 mov.l @(8,r14),r1 c0: 18 21 tst r1,r1 c2: 06 8b bf d2 <main+0xd2> c4: 17 d1 mov.l 124 <main+0x124>,r1 ! 14 c6: 13 64 mov r1,r4 c8: 12 d1 mov.l 114 <main+0x114>,r1 ! 0 <main> ca: 0b 41 jsr @r1 cc: 09 00 nop ce: 09 a0 bra e4 <main+0xe4> d0: 09 00 nop d2: 15 d2 mov.l 128 <main+0x128>,r2 ! 1c d4: e3 61 mov r14,r1 d6: d0 71 add #-48,r1 d8: 1f 51 mov.l @(60,r1),r1 da: 23 64 mov r2,r4 dc: 13 65 mov r1,r5 de: 13 d1 mov.l 12c <main+0x12c>,r1 ! 0 <main> e0: 0b 41 jsr @r1 e2: 09 00 nop e4: e3 62 mov r14,r2 e6: d0 72 add #-48,r2 e8: e3 61 mov r14,r1 ea: d0 71 add #-48,r1 ec: 1f 51 mov.l @(60,r1),r1 ee: 01 71 add #1,r1 f0: 1f 12 mov.l r1,@(60,r2) f2: e3 61 mov r14,r1 f4: d0 71 add #-48,r1 f6: 1f 52 mov.l @(60,r1),r2 f8: 64 e1 mov #100,r1 fa: 17 32 cmp/gt r1,r2 fc: 8a 8b bf 14 <main+0x14> fe: 10 7e add #16,r14 100: e3 6f mov r14,r15 102: 26 4f lds.l @r15+,pr 104: f6 6e mov.l @r15+,r14 106: 0b 00 rts 108: 09 00 nop 10a: 09 00 nop 10c: 89 88 cmp/eq #-119,r0 10e: 88 88 cmp/eq #-120,r0 ... 110: R_SH_DIR32 .rodata 114: R_SH_DIR32 puts 118: 67 66 not r6,r6 11a: 66 66 mov.l @r6+,r6 11c: 0c 00 mov.b @(r0,r0),r0 11c: R_SH_DIR32 .rodata 11e: 00 00 .word 0x0000 120: 56 55 mov.l @(24,r5),r5 122: 55 55 mov.l @(20,r5),r5 124: 14 00 mov.b r1,@(r0,r0) 124: R_SH_DIR32 .rodata 126: 00 00 .word 0x0000 128: 1c 00 mov.b @(r0,r1),r0 128: R_SH_DIR32 .rodata 12a: 00 00 .word 0x0000 12c: 00 00 .word 0x0000 12c: R_SH_DIR32 printf ...
人生、宇宙、すべての答え+1
:
Keyword(s) (one keyword per line)
[FizzBuzzAsm_SH-3]
See
TextFormattingRules
for formatting help.
See TextFormattingRules for formatting help.