Back to index

cell-binutils  2.17cvs20070401
indexed12.d
Go to the documentation of this file.
00001 #objdump: -S
00002 #as: -m68hc12 -gdwarf2
00003 #name: 68HC12 indexed addressing mode with 5, 9 and 16-bit offsets (indexed12)
00004 #source: indexed12.s
00005 
00006 .*: +file format elf32\-m68hc12
00007 
00008 Disassembly of section .text:
00009 
00010 0+ <_main>:
00011 ;;
00012        .sect .text
00013        .globl _main
00014 _main:
00015        nop
00016    0:  a7            nop
00017 ;;; Global check \(1st\)
00018        ldab   L1\-_main,x   ; Offset/const of these 2 insns must be
00019    1:  e6 e0 93      ldab   147,X
00020        ldaa   #L1\-_main    ; identical \(likewise for 2nd global check\)
00021    4:  86 93         ldaa   #147
00022 ;;; Test gas relax with difference of symbols \(same section\)
00023        ldaa   L2\-L1,x             ; \-> ldaa 2,x \(5\-bit offset\), text seg
00024    6:  a6 02         ldaa   2,X
00025        adda   L1\-L2,y             ; \-> adda \-2,y \(5\-bit offset\), text seg
00026    8:  ab 5e         adda   \-2,Y
00027 
00028        orab   L7\-L6,sp     ; \-> orab 8,sp  \(5\-bit offset\), text seg
00029    a:  ea 88         orab   8,SP
00030        anda   L8\-L7,sp     ; \-> anda 15,sp \(5\-bit offset\), text seg
00031    c:  a4 8f         anda   15,SP
00032        eora   L7\-L8,sp     ; \-> eora \-15,sp \(5\-bit offset\), text seg
00033    e:  a8 91         eora   \-15,SP
00034        eorb   L7\-L9,sp     ; \-> eorb \-16,sp \(5\-bit offset\), text seg
00035   10:  e8 90         eorb   \-16,SP
00036 
00037        andb   L9\-L7,sp     ; \-> andb 16,sp \(9\-bit offset\), text seg
00038   12:  e4 f0 10      andb   16,SP
00039        staa   L7\-L10,x     ; \-> staa \-17,x \(9\-bit offset\), text seg
00040   15:  6a e1 ef      staa   \-17,X
00041        stab   L11\-L10,y    ; \-> stab 128,y \(9\-bit offset\), text seg
00042   18:  6b e8 80      stab   128,Y
00043        stab   L10\-L11,y    ; \-> stab \-128,y \(9\-bit offset\), text seg
00044   1b:  6b e9 80      stab   \-128,Y
00045        stab   L11\-L10\+1,y ; \-> stab 129,y \(9\-bit offset\), text seg
00046   1e:  6b e8 81      stab   129,Y
00047        stab   L10\-L11\-1,y ; \-> stab \-129,y \(9\-bit offset\), text seg
00048   21:  6b e9 7f      stab   \-129,Y
00049        stab   L11\-1\-L10,y ; \-> stab 127,y \(9\-bit offset\), text seg
00050   24:  6b e8 7f      stab   127,Y
00051        stab   L10\-1\-L11,y ; \-> stab \-129,y \(9\-bit offset\), text seg
00052   27:  6b e9 7f      stab   \-129,Y
00053 
00054        tst    L12\-L10,x    ; \-> tst 255,x \(9\-bit offset\), text seg
00055   2a:  e7 e0 ff      tst    255,X
00056        tst    L10\-L12,x    ; \-> tst \-255,x \(9\-bit offset\), text seg
00057   2d:  e7 e1 01      tst    \-255,X
00058        tst    L12\-L10\+1,x ; \-> tst 256,x \(16\-bit offset\), text seg
00059   30:  e7 e2 01 00   tst    256,X
00060        mina   L13\-L10,x    ; \-> mina 256,x \(16\-bit offset\)
00061   34:  18 19 e2 01   mina   256,X
00062   38:  00 
00063        mina   L10\-L13,x    ; \-> mina \-256,x \(9\-bit offset\)
00064   39:  18 19 e1 00   mina   \-256,X
00065 
00066        maxa   L14\-L10,x    ; \-> maxa 257,x \(16\-bit offset\)
00067   3d:  18 18 e2 01   maxa   257,X
00068   41:  01 
00069        maxa   L10\-L14,x    ; \-> maxa \-257,x \(16\-bit offset\)
00070   42:  18 18 e2 fe   maxa   \-257,X
00071   46:  ff 
00072 
00073 ;;; Test gas relax with difference of symbols \(different section\)
00074        ldaa   D2\-D1,x             ; \-> ldaa 2,x \(5\-bit offset\), data seg
00075   47:  a6 02         ldaa   2,X
00076        adda   D1\-D2,y             ; \-> adda \-2,y \(5\-bit offset\), data seg
00077   49:  ab 5e         adda   \-2,Y
00078 
00079        orab   D7\-D6,sp     ; \-> orab 8,sp  \(5\-bit offset\), data seg
00080   4b:  ea 88         orab   8,SP
00081        anda   D8\-D7,sp     ; \-> anda 15,sp \(5\-bit offset\), data seg
00082   4d:  a4 8f         anda   15,SP
00083        eora   D7\-D8,sp     ; \-> eora \-15,sp \(5\-bit offset\), data seg
00084   4f:  a8 91         eora   \-15,SP
00085        eorb   D7\-D9,sp     ; \-> eorb \-16,sp \(5\-bit offset\), data seg
00086   51:  e8 90         eorb   \-16,SP
00087 
00088        andb   D9\-D7,sp     ; \-> andb 16,sp \(9\-bit offset\), data seg
00089   53:  e4 f0 10      andb   16,SP
00090        staa   D7\-D10,x     ; \-> staa \-17,x \(9\-bit offset\), data seg
00091   56:  6a e1 ef      staa   \-17,X
00092        stab   D11\-D10,y    ; \-> stab 128,y \(9\-bit offset\), data seg
00093   59:  6b e8 80      stab   128,Y
00094        stab   D10\-D11,y    ; \-> stab \-128,y \(9\-bit offset\), data seg
00095   5c:  6b e9 80      stab   \-128,Y
00096        stab   D11\-D10\+1,y ; \-> stab 129,y \(9\-bit offset\), data seg
00097   5f:  6b e8 81      stab   129,Y
00098        stab   D10\-D11\+1,y ; \-> stab \-127,y \(9\-bit offset\), data seg
00099   62:  6b e9 81      stab   \-127,Y
00100        stab   D11\-1\-D10,y ; \-> stab 127,y \(9\-bit offset\), data seg
00101   65:  6b e8 7f      stab   127,Y
00102        stab   D10\-1\-D11,y ; \-> stab \-129,y \(9\-bit offset\), data seg
00103   68:  6b e9 7f      stab   \-129,Y
00104 
00105        tst    D12\-D10,x    ; \-> tst 255,x \(9\-bit offset\), data seg
00106   6b:  e7 e0 ff      tst    255,X
00107        tst    D10\-D12,x    ; \-> tst \-255,x \(9\-bit offset\), data seg
00108   6e:  e7 e1 01      tst    \-255,X
00109        tst    D12\-D10\+1,x ; \-> tst 256,x \(16\-bit offset\), data seg
00110   71:  e7 e2 01 00   tst    256,X
00111        mina   D13\-D10,x    ; \-> mina 256,x \(16\-bit offset\)
00112   75:  18 19 e2 01   mina   256,X
00113   79:  00 
00114        mina   D10\-D13,x    ; \-> mina \-256,x \(9\-bit offset\)
00115   7a:  18 19 e1 00   mina   \-256,X
00116 
00117        maxa   D14\-D10,x    ; \-> maxa 257,x \(16\-bit offset\)
00118   7e:  18 18 e2 01   maxa   257,X
00119   82:  01 
00120        maxa   D10\-D14,x    ; \-> maxa \-257,x \(16\-bit offset\)
00121   83:  18 18 e2 fe   maxa   \-257,X
00122   87:  ff 
00123 
00124 ;;; Global check \(2nd\)
00125        ldab   L1\-_main,x
00126   88:  e6 e0 93      ldab   147,X
00127        ldaa   #L1\-_main
00128   8b:  86 93         ldaa   #147
00129 
00130 ;;; Indexed addressing with external symbol
00131        ldab   _external\+128,x
00132   8d:  e6 e2 00 80   ldab   128,X
00133        bra    L2
00134   91:  20 02         bra    95 <L2>
00135 
00136 0+93 <L1>:
00137   93:  aa bb         oraa   5,SP\-
00138 
00139 0+95 <L2>:
00140   95:  a7            nop
00141   96:  a7            nop
00142   97:  a7            nop
00143   98:  a7            nop
00144   99:  a7            nop
00145   9a:  a7            nop
00146   9b:  a7            nop
00147   9c:  a7            nop
00148 
00149 0+9d <L7>:
00150   9d:  a7            nop
00151   9e:  a7            nop
00152   9f:  a7            nop
00153   a0:  a7            nop
00154   a1:  a7            nop
00155   a2:  a7            nop
00156   a3:  a7            nop
00157   a4:  a7            nop
00158   a5:  a7            nop
00159   a6:  a7            nop
00160   a7:  a7            nop
00161   a8:  a7            nop
00162   a9:  a7            nop
00163   aa:  a7            nop
00164   ab:  a7            nop
00165 
00166 0+ac <L8>:
00167 L1:
00168        .dc.w  0xaabb
00169 L2:
00170 L6:
00171        .ds.b  8, 0xa7
00172 L7:
00173        .ds.b  15, 0xa7
00174 L8:
00175        nop
00176   ac:  a7            nop
00177 
00178 0+ad <L9>:
00179 L9:
00180        nop
00181   ad:  a7            nop
00182 
00183 0+ae <L10>:
00184        ...
00185 
00186 0+12e <L11>:
00187        ...
00188 
00189 0+1ad <L12>:
00190 L10:
00191        .skip  128
00192 L11:
00193        .skip  127
00194 L12:
00195        nop
00196  1ad:  a7            nop
00197 
00198 0+1ae <L13>:
00199 L13:
00200        nop
00201  1ae:  a7            nop
00202 
00203 0+1af <L14>:
00204 L14:
00205        rts
00206  1af:  3d            rts