summaryrefslogtreecommitdiffstats
path: root/gas/testsuite
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2000-06-19 01:22:44 +0000
committerNick Clifton <nickc@redhat.com>2000-06-19 01:22:44 +0000
commit60bcf0fa8c115b4e71d7b1372aca3efccffc9607 (patch)
tree9592b86c1082c3cc81770da7e04068973b781af0 /gas/testsuite
parent58781cd0ba8aed9244e6b17b60cb1a3cf005faf2 (diff)
downloadppe42-binutils-60bcf0fa8c115b4e71d7b1372aca3efccffc9607.tar.gz
ppe42-binutils-60bcf0fa8c115b4e71d7b1372aca3efccffc9607.zip
Applied Stephane Carrez <Stephane.Carrez@worldnet.fr> patches to add support
for m68hc11 and m68hc12 processors.
Diffstat (limited to 'gas/testsuite')
-rw-r--r--gas/testsuite/ChangeLog9
-rw-r--r--gas/testsuite/gas/m68hc11/all.exp18
-rw-r--r--gas/testsuite/gas/m68hc11/all_insns.d352
-rw-r--r--gas/testsuite/gas/m68hc11/all_insns.s335
-rw-r--r--gas/testsuite/gas/m68hc11/insns.d44
-rw-r--r--gas/testsuite/gas/m68hc11/insns.s60
-rw-r--r--gas/testsuite/gas/m68hc11/lbranch.d47
-rw-r--r--gas/testsuite/gas/m68hc11/lbranch.s41
-rw-r--r--gas/testsuite/gas/m68hc11/opers12.d70
-rw-r--r--gas/testsuite/gas/m68hc11/opers12.s72
-rw-r--r--gas/testsuite/gas/m68k/all.exp14
11 files changed, 1061 insertions, 1 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog
index 3a7af645d2..19b7f99d3c 100644
--- a/gas/testsuite/ChangeLog
+++ b/gas/testsuite/ChangeLog
@@ -1,3 +1,12 @@
+2000-06-18 Stephane Carrez <stcarrez@worldnet.fr>
+
+ * gas/m68k/all.exp: Don't execute tests if the target is m68hc11&12.
+ * gas/m68hc11/all.exp: Specific tests for m68hc11.
+ * gas/m68hc11/all_insns.[ds]: Check m68hc11 instructions.
+ * gas/m68hc11/insns[ds]: Another test.
+ * gas/m68hc11/lbranch.[ds]: Check branch optimization (gas relax).
+ * gas/m68hc11/opers12.[ds]: New files, check m68hc12 operands.
+
2000-06-17 Alan Modra <alan@linuxcare.com.au>
* gas/macros/strings.s: Don't start directives in first column
diff --git a/gas/testsuite/gas/m68hc11/all.exp b/gas/testsuite/gas/m68hc11/all.exp
new file mode 100644
index 0000000000..15be4e3fc0
--- /dev/null
+++ b/gas/testsuite/gas/m68hc11/all.exp
@@ -0,0 +1,18 @@
+#
+# Some generic m68HC11 tests
+#
+if ![istarget "m68hc11-*-*"] then {
+ if ![istarget "m6811-*-*"] then {
+ if ![istarget "m68hc12-*-*"] then {
+ if ![istarget "m6812-*-*"] then {
+ return
+ }
+ }
+ }
+}
+run_dump_test insns
+run_dump_test lbranch
+run_dump_test all_insns
+
+# Some 68HC12 tests
+run_dump_test opers12
diff --git a/gas/testsuite/gas/m68hc11/all_insns.d b/gas/testsuite/gas/m68hc11/all_insns.d
new file mode 100644
index 0000000000..adb516cb7a
--- /dev/null
+++ b/gas/testsuite/gas/m68hc11/all_insns.d
@@ -0,0 +1,352 @@
+#objdump: -d --prefix-addresses
+#as: -m68hc11
+#name: all_insns
+
+# Test handling of basic instructions.
+
+.*: +file format elf32\-m68hc11
+
+Disassembly of section .text:
+0+000 <L0> aba
+0+001 <L1> abx
+0+002 <L2> aby
+0+004 <L3> adca #103
+0+006 <L4> adca \*0+000 <L0>
+0+008 <L5> adca 105,x
+0+00a <L6> adca 0+000 <L0>
+0+00d <L7> adca 81,x
+0+00f <L8> adcb #255
+0+011 <L9> adcb \*0+000 <L0>
+0+013 <L10> adcb 236,x
+0+015 <L11> adcb 0+000 <L0>
+0+018 <L12> adcb 205,x
+0+01a <L13> adda #186
+0+01c <L14> adda \*0+000 <L0>
+0+01e <L15> adda 242,x
+0+020 <L16> adda 0+000 <L0>
+0+023 <L17> adda 227,x
+0+025 <L18> addb #70
+0+027 <L19> addb \*0+000 <L0>
+0+029 <L20> addb 194,x
+0+02b <L21> addb 0+000 <L0>
+0+02e <L22> addb 248,x
+0+030 <L23> addd #0000231b <L330\+0x2034>
+0+033 <L24> addd \*0+000 <L0>
+0+035 <L25> addd 231,x
+0+037 <L26> addd 0+000 <L0>
+0+03a <L27> addd 118,x
+0+03c <L28> anda #90
+0+03e <L29> anda \*0+000 <L0>
+0+040 <L30> anda 99,x
+0+042 <L31> anda 0+000 <L0>
+0+045 <L32> anda 159,x
+0+047 <L33> andb #201
+0+049 <L34> andb \*0+000 <L0>
+0+04b <L35> andb 102,x
+0+04d <L36> andb 0+000 <L0>
+0+050 <L37> andb 13,x
+0+052 <L38> asl 183,x
+0+054 <L39> asl 0+000 <L0>
+0+057 <L40> asl 88,x
+0+059 <L41> asla
+0+05a <L42> aslb
+0+05b <L43> asld
+0+05c <L44> asr 163,x
+0+05e <L45> asr 0+000 <L0>
+0+061 <L46> asr 37,x
+0+063 <L47> asra
+0+064 <L48> asrb
+0+065 <L49> bcs 0+06a <L50>
+0+067 <L49\+0x2> jmp 0+0f3 <L93>
+0+06a <L50> bclr \*0+000 <L0> #\$00
+0+06d <L51> bclr 88,x #\$00
+0+070 <L52> bclr 94,x #\$00
+0+073 <L53> bcc 0+078 <L54>
+0+075 <L53\+0x2> jmp 0+1a8 <L171>
+0+078 <L54> bne 0+07d <L55>
+0+07a <L54\+0x2> jmp 0+1b6 <L178>
+0+07d <L55> blt 0+082 <L56>
+0+07f <L55\+0x2> jmp 0+1f5 <L205>
+0+082 <L56> ble 0+087 <L57>
+0+084 <L56\+0x2> jmp 0+1e4 <L198>
+0+087 <L57> bls 0+08c <L58>
+0+089 <L57\+0x2> jmp 0+18a <L155>
+0+08c <L58> bcs 0+091 <L59>
+0+08e <L58\+0x2> jmp 0+1bb <L180>
+0+091 <L59> bita #84
+0+093 <L60> bita \*0+000 <L0>
+0+095 <L61> bita 14,x
+0+097 <L62> bita 0+000 <L0>
+0+09a <L63> bita 116,x
+0+09c <L64> bitb #65
+0+09e <L65> bitb \*0+000 <L0>
+0+0a0 <L66> bitb 61,x
+0+0a2 <L67> bitb 0+000 <L0>
+0+0a5 <L68> bitb 135,x
+0+0a7 <L69> ble 0+11d <L112>
+0+0a9 <L70> bcc 0+0ae <L71>
+0+0ab <L70\+0x2> jmp 0+22e <L233>
+0+0ae <L71> bls 0+097 <L62>
+0+0b0 <L72> bge 0+0b5 <L73>
+0+0b2 <L72\+0x2> jmp 0+197 <L161>
+0+0b5 <L73> bmi 0+09e <L65>
+0+0b7 <L74> beq 0+0bc <L75>
+0+0b9 <L74\+0x2> jmp 0+220 <L225>
+0+0bc <L75> bmi 0+0c1 <L76>
+0+0be <L75\+0x2> jmp 0+24e <L252>
+0+0c1 <L76> bra 0+106 <L103>
+0+0c3 <L77> brclr \*0+000 <L0> #\$00 0+145 <L125\+0x2>
+0+0c7 <L78> brclr 151,x #\$00 0+127 <L115>
+0+0cb <L79> brclr 107,x #\$00 0+0de <L84\+0x1>
+0+0cf <L80> brn 0+082 <L56>
+0+0d1 <L81> brset \*0+000 <L0> #\$00 0+141 <L124>
+0+0d5 <L82> brset 176,x #\$00 0+154 <L132>
+0+0d9 <L83> brset 50,x #\$00 0+119 <L110\+0x2>
+0+0dd <L84> bset \*0+000 <L0> #\$00
+0+0e0 <L85> bset 24,x #\$00
+0+0e3 <L86> bset 92,x #\$00
+0+0e6 <L87> jsr 0+037 <L26>
+0+0e9 <L88> bvs 0+0ee <L89>
+0+0eb <L88\+0x2> jmp 0+253 <L254>
+0+0ee <L89> bvs 0+0a2 <L67>
+0+0f0 <L90> cba
+0+0f1 <L91> clc
+0+0f2 <L92> cli
+0+0f3 <L93> clr 251,x
+0+0f5 <L94> clr 0+000 <L0>
+0+0f8 <L95> clr 170,x
+0+0fa <L96> clra
+0+0fb <L97> clrb
+0+0fc <L98> clv
+0+0fd <L99> cmpa #58
+0+0ff <L100> cmpa \*0+000 <L0>
+0+101 <L101> cmpa 41,x
+0+103 <L102> cmpa 0+000 <L0>
+0+106 <L103> cmpa 230,x
+0+108 <L104> cmpb #5
+0+10a <L105> cmpb \*0+000 <L0>
+0+10c <L106> cmpb 124,x
+0+10e <L107> cmpb 0+000 <L0>
+0+111 <L108> cmpb 117,x
+0+113 <L109> cpd #0+fd8 <L330\+0xcf1>
+0+117 <L110> cpd \*0+000 <L0>
+0+11a <L111> cpd 97,x
+0+11d <L112> cpd 0+000 <L0>
+0+121 <L113> cpd 249,x
+0+124 <L114> cpx #0000af5c <L330\+0xac75>
+0+127 <L115> cpx \*0+000 <L0>
+0+129 <L116> cpx 168,x
+0+12b <L117> cpx 0+000 <L0>
+0+12e <L118> cpx 15,x
+0+130 <L119> cpy #00004095 <L330\+0x3dae>
+0+134 <L120> cpy \*0+000 <L0>
+0+137 <L121> cpy 235,x
+0+13a <L122> cpy 0+000 <L0>
+0+13e <L123> cpy 179,x
+0+141 <L124> com 5,x
+0+143 <L125> com 0+000 <L0>
+0+146 <L126> com 247,x
+0+148 <L127> coma
+0+149 <L128> comb
+0+14a <L129> cpd #0000bf00 <L330\+0xbc19>
+0+14e <L130> cpd \*0+000 <L0>
+0+151 <L131> cpd 161,x
+0+154 <L132> cpd 0+000 <L0>
+0+158 <L133> cpd 229,x
+0+15b <L134> cpx #00008fca <L330\+0x8ce3>
+0+15e <L135> cpx \*0+000 <L0>
+0+160 <L136> cpx 203,x
+0+162 <L137> cpx 0+000 <L0>
+0+165 <L138> cpx 72,x
+0+167 <L139> cpy #0+247 <L248>
+0+16b <L140> cpy \*0+000 <L0>
+0+16e <L141> cpy 189,x
+0+171 <L142> cpy 0+000 <L0>
+0+175 <L143> cpy 35,x
+0+178 <L144> daa
+0+179 <L145> dec 30,x
+0+17b <L146> dec 0+000 <L0>
+0+17e <L147> dec 28,x
+0+180 <L148> deca
+0+181 <L149> decb
+0+182 <L150> des
+0+183 <L151> dex
+0+184 <L152> dey
+0+186 <L153> eora #123
+0+188 <L154> eora \*0+000 <L0>
+0+18a <L155> eora 197,x
+0+18c <L156> eora 0+000 <L0>
+0+18f <L157> eora 115,x
+0+191 <L158> eorb #90
+0+193 <L159> eorb \*0+000 <L0>
+0+195 <L160> eorb 94,x
+0+197 <L161> eorb 0+000 <L0>
+0+19a <L162> eorb 121,x
+0+19c <L163> fdiv
+0+19d <L164> idiv
+0+19e <L165> inc 99,x
+0+1a0 <L166> inc 0+000 <L0>
+0+1a3 <L167> inc 112,x
+0+1a5 <L168> inca
+0+1a6 <L169> incb
+0+1a7 <L170> ins
+0+1a8 <L171> inx
+0+1a9 <L172> iny
+0+1ab <L173> jmp 100,x
+0+1ad <L174> jmp 0+000 <L0>
+0+1b0 <L175> jmp 17,x
+0+1b2 <L176> jsr \*0+000 <L0>
+0+1b4 <L177> jsr 9,x
+0+1b6 <L178> jsr 0+000 <L0>
+0+1b9 <L179> jsr 170,x
+0+1bb <L180> ldaa #212
+0+1bd <L181> ldaa \*0+000 <L0>
+0+1bf <L182> ldaa 242,x
+0+1c1 <L183> ldaa 0+000 <L0>
+0+1c4 <L184> ldaa 16,x
+0+1c6 <L185> ldab #175
+0+1c8 <L186> ldab \*0+000 <L0>
+0+1ca <L187> ldab 51,x
+0+1cc <L188> ldab 0+000 <L0>
+0+1cf <L189> ldab 227,x
+0+1d1 <L190> ldd #0000c550 <L330\+0xc269>
+0+1d4 <L191> ldd \*0+000 <L0>
+0+1d6 <L192> ldd 71,x
+0+1d8 <L193> ldd 0+000 <L0>
+0+1db <L194> ldd 92,x
+0+1dd <L195> lds #00004fbb <L330\+0x4cd4>
+0+1e0 <L196> lds \*0+000 <L0>
+0+1e2 <L197> lds 34,x
+0+1e4 <L198> lds 0+000 <L0>
+0+1e7 <L199> lds 186,x
+0+1e9 <L200> ldx #0000579b <L330\+0x54b4>
+0+1ec <L201> ldx \*0+000 <L0>
+0+1ee <L202> ldx 245,x
+0+1f0 <L203> ldx 0+000 <L0>
+0+1f3 <L204> ldx 225,x
+0+1f5 <L205> ldy #0000ac1a <L330\+0xa933>
+0+1f9 <L206> ldy \*0+000 <L0>
+0+1fc <L207> ldy 127,x
+0+1ff <L208> ldy 0+000 <L0>
+0+203 <L209> ldy 248,x
+0+206 <L210> asl 41,x
+0+208 <L211> asl 0+000 <L0>
+0+20b <L212> asl 164,x
+0+20d <L213> asla
+0+20e <L214> aslb
+0+20f <L215> asld
+0+210 <L216> lsr 27,x
+0+212 <L217> lsr 0+000 <L0>
+0+215 <L218> lsr 181,x
+0+217 <L219> lsra
+0+218 <L220> lsrb
+0+219 <L221> lsrd
+0+21a <L222> mul
+0+21b <L223> neg 202,x
+0+21d <L224> neg 0+000 <L0>
+0+220 <L225> neg 232,x
+0+222 <L226> nega
+0+223 <L227> negb
+0+224 <L228> nop
+0+225 <L229> oraa #152
+0+227 <L230> oraa \*0+000 <L0>
+0+229 <L231> oraa 56,x
+0+22b <L232> oraa 0+000 <L0>
+0+22e <L233> oraa 121,x
+0+230 <L234> orab #77
+0+232 <L235> orab \*0+000 <L0>
+0+234 <L236> orab 52,x
+0+236 <L237> orab 0+000 <L0>
+0+239 <L238> orab 95,x
+0+23b <L239> psha
+0+23c <L240> pshb
+0+23d <L241> pshx
+0+23e <L242> pshy
+0+240 <L243> pula
+0+241 <L244> pulb
+0+242 <L245> pulx
+0+243 <L246> puly
+0+245 <L247> rol 78,x
+0+247 <L248> rol 0+000 <L0>
+0+24a <L249> rol 250,x
+0+24c <L250> rola
+0+24d <L251> rolb
+0+24e <L252> ror 203,x
+0+250 <L253> ror 0+000 <L0>
+0+253 <L254> ror 5,x
+0+255 <L255> rora
+0+256 <L256> rorb
+0+257 <L257> rti
+0+258 <L258> rts
+0+259 <L259> sba
+0+25a <L260> sbca #172
+0+25c <L261> sbca \*0+000 <L0>
+0+25e <L262> sbca 33,x
+0+260 <L263> sbca 0+000 <L0>
+0+263 <L264> sbca 170,x
+0+265 <L265> sbcb #26
+0+267 <L266> sbcb \*0+000 <L0>
+0+269 <L267> sbcb 162,x
+0+26b <L268> sbcb 0+000 <L0>
+0+26e <L269> sbcb 112,x
+0+270 <L270> sec
+0+271 <L271> sei
+0+272 <L272> sev
+0+273 <L273> staa \*0+000 <L0>
+0+275 <L274> staa 115,x
+0+277 <L275> staa 0+000 <L0>
+0+27a <L276> staa 4,x
+0+27c <L277> stab \*0+000 <L0>
+0+27e <L278> stab 211,x
+0+280 <L279> stab 0+000 <L0>
+0+283 <L280> stab 148,x
+0+285 <L281> std \*0+000 <L0>
+0+287 <L282> std 175,x
+0+289 <L283> std 0+000 <L0>
+0+28c <L284> std 240,x
+0+28e <L285> stop
+0+28f <L286> sts \*0+000 <L0>
+0+291 <L287> sts 158,x
+0+293 <L288> sts 0+000 <L0>
+0+296 <L289> sts 50,x
+0+298 <L290> stx \*0+000 <L0>
+0+29a <L291> stx 73,x
+0+29c <L292> stx 0+000 <L0>
+0+29f <L293> stx 130,x
+0+2a1 <L294> sty \*0+000 <L0>
+0+2a4 <L295> sty 169,x
+0+2a7 <L296> sty 0+000 <L0>
+0+2ab <L297> sty 112,x
+0+2ae <L298> suba #212
+0+2b0 <L299> suba \*0+000 <L0>
+0+2b2 <L300> suba 138,x
+0+2b4 <L301> suba 0+000 <L0>
+0+2b7 <L302> suba 84,x
+0+2b9 <L303> subb #72
+0+2bb <L304> subb \*0+000 <L0>
+0+2bd <L305> subb 10,x
+0+2bf <L306> subb 0+000 <L0>
+0+2c2 <L307> subb 213,x
+0+2c4 <L308> subd #0000f10e <L330\+0xee27>
+0+2c7 <L309> subd \*0+000 <L0>
+0+2c9 <L310> subd 168,x
+0+2cb <L311> subd 0+000 <L0>
+0+2ce <L312> subd 172,x
+0+2d0 <L313> swi
+0+2d1 <L314> tab
+0+2d2 <L315> tap
+0+2d3 <L316> tba
+ ...
+0+2d5 <L318> tpa
+0+2d6 <L319> tst 91,x
+0+2d8 <L320> tst 0+000 <L0>
+0+2db <L321> tst 142,x
+0+2dd <L322> tsta
+0+2de <L323> tstb
+0+2df <L324> tsx
+0+2e0 <L325> tsy
+0+2e2 <L326> txs
+0+2e3 <L327> tys
+0+2e5 <L328> wai
+0+2e6 <L329> xgdx
+0+2e7 <L330> xgdy
diff --git a/gas/testsuite/gas/m68hc11/all_insns.s b/gas/testsuite/gas/m68hc11/all_insns.s
new file mode 100644
index 0000000000..f20b5b9447
--- /dev/null
+++ b/gas/testsuite/gas/m68hc11/all_insns.s
@@ -0,0 +1,335 @@
+# Example of M68hc11 instructions
+ .sect .text
+_start:
+L0: aba
+L1: abx
+L2: aby
+L3: adca #103
+L4: adca *Z198
+L5: adca 105,X
+L6: adca symbol115
+L7: adca 81,X
+L8: adcb #255
+L9: adcb *Z74
+L10: adcb 236,X
+L11: adcb symbol41
+L12: adcb 205,X
+L13: adda #186
+L14: adda *Z171
+L15: adda 242,X
+L16: adda symbol251
+L17: adda 227,X
+L18: addb #70
+L19: addb *Z124
+L20: addb 194,X
+L21: addb symbol84
+L22: addb 248,X
+L23: addd #8987
+L24: addd *Z232
+L25: addd 231,X
+L26: addd symbol141
+L27: addd 118,X
+L28: anda #90
+L29: anda *Z46
+L30: anda 99,X
+L31: anda symbol51
+L32: anda 159,X
+L33: andb #201
+L34: andb *Z154
+L35: andb 102,X
+L36: andb symbol50
+L37: andb 13,X
+L38: asl 183,X
+L39: asl symbol49
+L40: asl 88,X
+L41: asla
+L42: aslb
+L43: asld
+L44: asr 163,X
+L45: asr symbol90
+L46: asr 37,X
+L47: asra
+L48: asrb
+L49: bcc L93
+L50: bclr *Z5 #$17
+L51: bclr 88,X #$e9
+L52: bclr 94,X #$d4
+L53: bcs L171
+L54: beq L178
+L55: bge L205
+L56: bgt L198
+L57: bhi L155
+L58: bhs L180
+L59: bita #84
+L60: bita *Z17
+L61: bita 14,X
+L62: bita symbol130
+L63: bita 116,X
+L64: bitb #65
+L65: bitb *Z33
+L66: bitb 61,X
+L67: bitb symbol220
+L68: bitb 135,X
+L69: ble L112
+L70: blo L233
+L71: bls L62
+L72: blt L161
+L73: bmi L65
+L74: bne L225
+L75: bpl L252
+L76: bra L103
+L77: brclr *Z62 #$01 .+126
+L78: brclr 151,X #$ea .+92
+L79: brclr 107,X #$96 .+15
+L80: brn L56
+L81: brset *Z92 #$2a .+108
+L82: brset 176,X #$3b .+123
+L83: brset 50,X #$af .+60
+L84: bset *Z84 #$ec
+L85: bset 24,X #$db
+L86: bset 92,X #$02
+L87: bsr L26
+L88: bvc L254
+L89: bvs L67
+L90: cba
+L91: clc
+L92: cli
+L93: clr 251,X
+L94: clr symbol250
+L95: clr 170,X
+L96: clra
+L97: clrb
+L98: clv
+L99: cmpa #58
+L100: cmpa *Z251
+L101: cmpa 41,X
+L102: cmpa symbol209
+L103: cmpa 230,X
+L104: cmpb #5
+L105: cmpb *Z60
+L106: cmpb 124,X
+L107: cmpb symbol148
+L108: cmpb 117,X
+L109: cmpd #4056
+L110: cmpd *Z190
+L111: cmpd 97,X
+L112: cmpd symbol137
+L113: cmpd 249,X
+L114: cmpx #44892
+L115: cmpx *Z187
+L116: cmpx 168,X
+L117: cmpx symbol153
+L118: cmpx 15,X
+L119: cmpy #16533
+L120: cmpy *Z177
+L121: cmpy 235,X
+L122: cmpy symbol241
+L123: cmpy 179,X
+L124: com 5,X
+L125: com symbol239
+L126: com 247,X
+L127: coma
+L128: comb
+L129: cpd #48896
+L130: cpd *Z233
+L131: cpd 161,X
+L132: cpd symbol58
+L133: cpd 229,X
+L134: cpx #36810
+L135: cpx *Z11
+L136: cpx 203,X
+L137: cpx symbol208
+L138: cpx 72,X
+L139: cpy #583
+L140: cpy *Z100
+L141: cpy 189,X
+L142: cpy symbol31
+L143: cpy 35,X
+L144: daa
+L145: dec 30,X
+L146: dec symbol168
+L147: dec 28,X
+L148: deca
+L149: decb
+L150: des
+L151: dex
+L152: dey
+L153: eora #123
+L154: eora *Z100
+L155: eora 197,X
+L156: eora symbol20
+L157: eora 115,X
+L158: eorb #90
+L159: eorb *Z197
+L160: eorb 94,X
+L161: eorb symbol75
+L162: eorb 121,X
+L163: fdiv
+L164: idiv
+L165: inc 99,X
+L166: inc symbol59
+L167: inc 112,X
+L168: inca
+L169: incb
+L170: ins
+L171: inx
+L172: iny
+L173: jmp 100,X
+L174: jmp symbol36
+L175: jmp 17,X
+L176: jsr *Z158
+L177: jsr 9,X
+L178: jsr symbol220
+L179: jsr 170,X
+L180: ldaa #212
+L181: ldaa *Z172
+L182: ldaa 242,X
+L183: ldaa symbol27
+L184: ldaa 16,X
+L185: ldab #175
+L186: ldab *Z59
+L187: ldab 51,X
+L188: ldab symbol205
+L189: ldab 227,X
+L190: ldd #50512
+L191: ldd *Z72
+L192: ldd 71,X
+L193: ldd symbol21
+L194: ldd 92,X
+L195: lds #20411
+L196: lds *Z111
+L197: lds 34,X
+L198: lds symbol25
+L199: lds 186,X
+L200: ldx #22427
+L201: ldx *Z125
+L202: ldx 245,X
+L203: ldx symbol11
+L204: ldx 225,X
+L205: ldy #44058
+L206: ldy *Z28
+L207: ldy 127,X
+L208: ldy symbol35
+L209: ldy 248,X
+L210: lsl 41,X
+L211: lsl symbol248
+L212: lsl 164,X
+L213: lsla
+L214: lslb
+L215: lsld
+L216: lsr 27,X
+L217: lsr symbol19
+L218: lsr 181,X
+L219: lsra
+L220: lsrb
+L221: lsrd
+L222: mul
+L223: neg 202,X
+L224: neg symbol78
+L225: neg 232,X
+L226: nega
+L227: negb
+L228: nop
+L229: oraa #152
+L230: oraa *Z50
+L231: oraa 56,X
+L232: oraa symbol224
+L233: oraa 121,X
+L234: orab #77
+L235: orab *Z61
+L236: orab 52,X
+L237: orab symbol188
+L238: orab 95,X
+L239: psha
+L240: pshb
+L241: pshx
+L242: pshy
+L243: pula
+L244: pulb
+L245: pulx
+L246: puly
+L247: rol 78,X
+L248: rol symbol119
+L249: rol 250,X
+L250: rola
+L251: rolb
+L252: ror 203,X
+L253: ror symbol108
+L254: ror 5,X
+L255: rora
+L256: rorb
+L257: rti
+L258: rts
+L259: sba
+L260: sbca #172
+L261: sbca *Z134
+L262: sbca 33,X
+L263: sbca symbol43
+L264: sbca 170,X
+L265: sbcb #26
+L266: sbcb *Z85
+L267: sbcb 162,X
+L268: sbcb symbol190
+L269: sbcb 112,X
+L270: sec
+L271: sei
+L272: sev
+L273: staa *Z181
+L274: staa 115,X
+L275: staa symbol59
+L276: staa 4,X
+L277: stab *Z92
+L278: stab 211,X
+L279: stab symbol54
+L280: stab 148,X
+L281: std *Z179
+L282: std 175,X
+L283: std symbol226
+L284: std 240,X
+L285: stop
+L286: sts *Z228
+L287: sts 158,X
+L288: sts symbol79
+L289: sts 50,X
+L290: stx *Z21
+L291: stx 73,X
+L292: stx symbol253
+L293: stx 130,X
+L294: sty *Z78
+L295: sty 169,X
+L296: sty symbol8
+L297: sty 112,X
+L298: suba #212
+L299: suba *Z178
+L300: suba 138,X
+L301: suba symbol41
+L302: suba 84,X
+L303: subb #72
+L304: subb *Z154
+L305: subb 10,X
+L306: subb symbol188
+L307: subb 213,X
+L308: subd #61710
+L309: subd *Z24
+L310: subd 168,X
+L311: subd symbol68
+L312: subd 172,X
+L313: swi
+L314: tab
+L315: tap
+L316: tba
+L317: test
+L318: tpa
+L319: tst 91,X
+L320: tst symbol243
+L321: tst 142,X
+L322: tsta
+L323: tstb
+L324: tsx
+L325: tsy
+L326: txs
+L327: tys
+L328: wai
+L329: xgdx
+L330: xgdy
+
diff --git a/gas/testsuite/gas/m68hc11/insns.d b/gas/testsuite/gas/m68hc11/insns.d
new file mode 100644
index 0000000000..fe09680eb9
--- /dev/null
+++ b/gas/testsuite/gas/m68hc11/insns.d
@@ -0,0 +1,44 @@
+#objdump: -d --prefix-addresses
+#as: -m68hc11
+#name: insns
+
+# Test handling of basic instructions.
+
+.*: +file format elf32\-m68hc11
+
+Disassembly of section .text:
+0+000 <_start> lds #0+0400 <L1\+0x3a9>
+0+003 <_start\+0x3> ldx #0+0001 <_start\+0x1>
+0+006 <Loop> jsr 0+0010 <test>
+0+009 <Loop\+0x3> dex
+0+00a <Loop\+0x4> bne 0+0006 <Loop>
+0+00c <Stop> .byte 0xcd, 0x03
+0+00e <Stop\+0x2> bra 0+0000 <_start>
+0+010 <test> ldd #0+0002 <_start\+0x2>
+0+013 <test\+0x3> jsr 0+0017 <test2>
+0+016 <test\+0x6> rts
+0+017 <test2> ldx 23,y
+0+01a <test2\+0x3> std 23,x
+0+01c <test2\+0x5> ldd 0,x
+0+01e <test2\+0x7> sty 0,y
+0+021 <test2\+0xa> stx 0,y
+0+024 <test2\+0xd> brclr 6,x #\$04 00000017 <test2>
+0+028 <test2\+0x11> brclr 12,x #\$08 00000017 <test2>
+0+02c <test2\+0x15> ldd \*0+0 <_start>
+0+02e <test2\+0x17> ldx \*0+2 <_start\+0x2>
+0+030 <test2\+0x19> clr 0+0 <_start>
+0+033 <test2\+0x1c> clr 0+1 <_start\+0x1>
+0+036 <test2\+0x1f> bne 0+34 <test2\+0x1d>
+0+038 <test2\+0x21> beq 0+3c <test2\+0x25>
+0+03a <test2\+0x23> bclr \*0+1 <_start\+0x1> #\$20
+0+03d <test2\+0x26> brclr \*0+2 <_start\+0x2> #\$28 0+017 <test2>
+0+041 <test2\+0x2a> ldy #0+ffec <L1\+0xff95>
+0+045 <test2\+0x2e> ldd 12,y
+0+048 <test2\+0x31> addd 44,y
+0+04b <test2\+0x34> addd 50,y
+0+04e <test2\+0x37> subd 0+02c <test2\+0x15>
+0+051 <test2\+0x3a> subd #0+02c <test2\+0x15>
+0+054 <test2\+0x3d> jmp 0000000c <Stop>
+0+057 <L1> anda #23
+0+059 <L1\+0x2> andb #0
+0+05b <L1\+0x4> rts \ No newline at end of file
diff --git a/gas/testsuite/gas/m68hc11/insns.s b/gas/testsuite/gas/m68hc11/insns.s
new file mode 100644
index 0000000000..2b2f9716a0
--- /dev/null
+++ b/gas/testsuite/gas/m68hc11/insns.s
@@ -0,0 +1,60 @@
+# Test for correct generation of 68HC11 insns.
+
+ .globl _start
+ .sect .text
+
+_start:
+ lds #stack+1024
+ ldx #1
+Loop:
+ jsr test
+ dex
+ bne Loop
+Stop:
+
+ .byte 0xcd
+ .byte 3
+ bra _start
+
+test:
+ ldd #2
+ jsr test2
+ rts
+
+B_low = 12
+A_low = 44
+D_low = 50
+value = 23
+
+ .globl test2
+test2:
+ ldx value,y
+ std value,x
+ ldd ,x
+ sty ,y
+ stx ,y
+ brclr 6,x,#4,test2
+ brclr 12,x #8 test2
+ ldd *ZD1
+ ldx *ZD1+2
+ clr *ZD2
+ clr *ZD2+1
+ bne .-4
+ beq .+2
+ bclr *ZD1+1, #32
+ brclr *ZD2+2, #40, test2
+ ldy #24+_start-44
+ ldd B_low,y
+ addd A_low,y
+ addd D_low,y
+ subd A_low
+ subd #A_low
+ jmp Stop
+L1:
+ anda #%lo(test2)
+ andb #%hi(test2)
+ rts
+
+ .sect .data
+
+.comm stack, 1024
diff --git a/gas/testsuite/gas/m68hc11/lbranch.d b/gas/testsuite/gas/m68hc11/lbranch.d
new file mode 100644
index 0000000000..74cda030d1
--- /dev/null
+++ b/gas/testsuite/gas/m68hc11/lbranch.d
@@ -0,0 +1,47 @@
+#objdump: -d --prefix-addresses
+#as: -m68hc11
+#name: lbranch
+
+# Test handling of basic instructions.
+
+.*: +file format elf32\-m68hc11
+
+Disassembly of section .text:
+0+0000 <_rcall> ldaa #16
+0+0002 <_rcall\+0x2> jmp 0+010b <Lend>
+0+0005 <_rcall\+0x5> jsr 0+011b <toto>
+0+0008 <_rcall\+0x8> beq 0+000d <_rcall\+0xd>
+0+000a <_rcall\+0xa> jmp 0+011b <toto>
+0+000d <_rcall\+0xd> bne 0+0012 <_rcall\+0x12>
+0+000f <_rcall\+0xf> jmp 0+011b <toto>
+0+0012 <_rcall\+0x12> bcc 0+0017 <_rcall\+0x17>
+0+0014 <_rcall\+0x14> jmp 0+011b <toto>
+0+0017 <_rcall\+0x17> bcs 0+001c <_rcall\+0x1c>
+0+0019 <_rcall\+0x19> jmp 0+011b <toto>
+0+001c <_rcall\+0x1c> xgdx
+0+001d <_rcall\+0x1d> xgdx
+0+001e <_rcall\+0x1e> bne 0+0023 <_rcall\+0x23>
+0+0020 <_rcall\+0x20> jmp 0+0180 <bidule>
+0+0023 <_rcall\+0x23> bcc 0+0028 <_rcall\+0x28>
+0+0025 <_rcall\+0x25> jmp 0+0180 <bidule>
+0+0028 <_rcall\+0x28> bcs 0+002d <_rcall\+0x2d>
+0+002a <_rcall\+0x2a> jmp 0+0180 <bidule>
+0+002d <_rcall\+0x2d> xgdx
+0+002e <_rcall\+0x2e> jmp 0+00c8 <_rcall\+0xc8>
+0+0031 <_rcall\+0x31> jsr 0+0783 <bidule\+0x603>
+0+0034 <_rcall\+0x34> beq 0+0039 <_rcall\+0x39>
+0+0036 <_rcall\+0x36> jmp 0+010b <Lend>
+0+0039 <_rcall\+0x39> jsr 0+011b <toto>
+0+003c <_rcall\+0x3c> bne 0+0041 <_rcall\+0x41>
+0+003e <_rcall\+0x3e> jmp 0+011b <toto>
+[ ]*\.\.\.
+0+0109 <_rcall\+0x109> ldaa \*0+0000 <_rcall>
+0+010b <Lend> bls 0+0110 <Lend\+0x5>
+0+010d <Lend\+0x2> jmp 0+0000 <_rcall>
+0+0110 <Lend\+0x5> bhi 0+0115 <Lend\+0xa>
+0+0112 <Lend\+0x7> jmp 0+0000 <_rcall>
+0+0115 <Lend\+0xa> jsr 0+0000 <_rcall>
+0+0118 <Lend\+0xd> ldx #0+000c <_rcall\+0xc>
+0+011b <toto> rts
+[ ]*\.\.\.
+0+0180 <bidule> rts
diff --git a/gas/testsuite/gas/m68hc11/lbranch.s b/gas/testsuite/gas/m68hc11/lbranch.s
new file mode 100644
index 0000000000..568d8a7aa2
--- /dev/null
+++ b/gas/testsuite/gas/m68hc11/lbranch.s
@@ -0,0 +1,41 @@
+# Test for the 68HC11 long branch switch
+ .text
+ .globl _rcall
+ .globl _start
+_start:
+_rcall:
+ ldaa #0x10 ;86 10
+ jbra Lend ; Must be switched to a jmp
+ jbsr toto ; -> to a jsr
+ jbne toto ; -> to a beq+jmp
+ jbeq toto ; -> to a bne+jmp
+ jbcs toto ; -> to a bcc+jmp
+ jbcc toto ; -> to a bcs+jmp
+ xgdx
+ xgdx
+ beq bidule ; -> to a bne+jmp
+ bcs bidule ; -> to a bcc+jmp
+ bcc bidule ; -> to a bcs+jmp
+ xgdx
+ jbra 200
+ jbsr 1923
+ bne Lend ; -> to a beq+jmp
+ jbsr toto
+ jbeq toto
+ .skip 200
+ ldaa *dir ;96 33
+Lend:
+ bhi external_op
+ bls external_op
+ bsr out
+ ldx #12
+toto:
+ rts
+ .skip 100
+bidule:
+ rts
+ .sect ".page0"
+dir:
+ .long 0
+
+ ; END
diff --git a/gas/testsuite/gas/m68hc11/opers12.d b/gas/testsuite/gas/m68hc11/opers12.d
new file mode 100644
index 0000000000..fec02eb03b
--- /dev/null
+++ b/gas/testsuite/gas/m68hc11/opers12.d
@@ -0,0 +1,70 @@
+#objdump: -d --prefix-addresses
+#as: -m68hc12
+#name: opers
+
+.*: +file format elf32\-m68hc12
+
+Disassembly of section .text:
+0+000 <start> anda \[12,X\]
+0+004 <start\+0x4> ldaa #10
+0+006 <start\+0x6> ldx 0+009 <L1>
+0+009 <L1> ldy 0,X
+0+00b <L1\+0x2> addd 1,Y
+0+00d <L1\+0x4> subd -1,Y
+0+00f <L1\+0x6> eora 15,Y
+0+011 <L1\+0x8> eora -16,Y
+0+013 <L1\+0xa> eorb 16,Y
+0+016 <L1\+0xd> eorb -17,Y
+0+019 <L1\+0x10> oraa 128,SP
+0+01c <L1\+0x13> orab -128,SP
+0+01f <L1\+0x16> orab 255,X
+0+022 <L1\+0x19> orab -256,X
+0+025 <L1\+0x1c> anda 256,X
+0+029 <L1\+0x20> andb -257,X
+0+02d <L1\+0x24> anda \[12,X\]
+0+031 <L1\+0x28> ldaa \[257,Y\]
+0+035 <L1\+0x2c> ldab \[32767,SP\]
+0+039 <L1\+0x30> ldd \[32768,PC\]
+0+03d <L1\+0x34> ldd 0,PC
+0+040 <L1\+0x37> std A,X
+0+042 <L1\+0x39> ldx B,X
+0+044 <L1\+0x3b> stx D,Y
+0+046 <L1\+0x3d> addd 1,\+X
+0+048 <L1\+0x3f> addd 2,\+X
+0+04a <L1\+0x41> addd 8,\+X
+0+04c <L1\+0x43> addd 1,SP\+
+0+04e <L1\+0x45> addd 2,SP\+
+0+050 <L1\+0x47> addd 8,SP\+
+0+052 <L1\+0x49> subd 1,\-Y
+0+054 <L1\+0x4b> subd 2,\-Y
+0+056 <L1\+0x4d> subd 8,\-Y
+0+058 <L1\+0x4f> addd 1,Y\-
+0+05a <L1\+0x51> addd 2,Y\-
+0+05c <L1\+0x53> addd 8,Y\-
+0+05e <L1\+0x55> std \[D,X\]
+0+060 <L1\+0x57> std \[D,Y\]
+0+062 <L1\+0x59> std \[D,SP\]
+0+064 <L1\+0x5b> std \[D,PC\]
+0+066 <L1\+0x5d> beq 0+009 <L1>
+0+068 <L1\+0x5f> lbeq 0+000 <start>
+0+06c <L1\+0x63> lbcc 0+0bc <L2>
+0+070 <L1\+0x67> movb 0+000 <start>, 1,X
+0+075 <L1\+0x6c> movw 1,X, 0+000 <start>
+0+07a <L1\+0x71> movb 0+000 <start>, 1,\+X
+0+07f <L1\+0x76> movb 0+000 <start>, 1,\-X
+0+084 <L1\+0x7b> movb #23, 1,\-SP
+0+088 <L1\+0x7f> movb 0+009 <L1>, 0+0bc <L2>
+0+08e <L1\+0x85> movb 0+009 <L1>, A,X
+0+093 <L1\+0x8a> movw 0+009 <L1>, B,X
+0+098 <L1\+0x8f> movw 0+009 <L1>, D,X
+0+09d <L1\+0x94> movw D,X, A,X
+0+0a1 <L1\+0x98> movw B,SP, D,PC
+0+0a5 <L1\+0x9c> movw B,SP, 0+009 <L1>
+0+0aa <L1\+0xa1> movw B,SP, 1,X
+0+0ae <L1\+0xa5> movw D,X, A,Y
+0+0b2 <L1\+0xa9> trap #48
+0+0b4 <L1\+0xab> trap #57
+0+0b6 <L1\+0xad> trap #64
+0+0b8 <L1\+0xaf> trap #128
+0+0ba <L1\+0xb1> trap #255
+0+0bc <L2> rts
diff --git a/gas/testsuite/gas/m68hc11/opers12.s b/gas/testsuite/gas/m68hc11/opers12.s
new file mode 100644
index 0000000000..dcf53d1ae6
--- /dev/null
+++ b/gas/testsuite/gas/m68hc11/opers12.s
@@ -0,0 +1,72 @@
+
+#
+# Try to verify all operand modes for 68HC12
+#
+ sect .text
+ globl start
+
+start:
+ anda [12,x]
+ ldaa #10
+ ldx L1
+L1: ldy ,x
+ addd 1,y
+ subd -1,y
+ eora 15,y
+ eora -16,y
+ eorb 16,y
+ eorb -17,y
+ oraa 128,sp
+ orab -128,sp
+ orab 255,x
+ orab -256,x
+ anda 256,x
+ andb -257,x
+ anda [12,x]
+ ldaa [257,y]
+ ldab [32767,sp]
+ ldd [32768,pc]
+ ldd L1,pc
+ std a,x
+ ldx b,x
+ stx d,y
+ addd 1,+x
+ addd 2,+x
+ addd 8,+x
+ addd 1,sp+
+ addd 2,sp+
+ addd 8,sp+
+ subd 1,-y
+ subd 2,-y
+ subd 8,-y
+ addd 1,y-
+ addd 2,y-
+ addd 8,y-
+ std [d,x]
+ std [d,y]
+ std [d,sp]
+ std [d,pc]
+ beq L1
+ lbeq start
+ lbcc L2
+ movb start, 1,x
+ movw 1,x, start
+ movb start, 1,+x
+ movb start, 1,-x
+ movb #23, 1,-sp
+ movb L1, L2
+ movb L1, a,x
+ movw L1, b,x
+ movw L1, d,x
+ movw d,x, a,x
+ movw b,sp, d,pc
+ movw b,sp, L1
+ movw b,sp, 1,x
+ movw d,x, a,y
+ trap #0x30
+ trap #0x39
+ trap #0x40
+ trap #0x80
+ trap #255
+L2:
+ rts
diff --git a/gas/testsuite/gas/m68k/all.exp b/gas/testsuite/gas/m68k/all.exp
index 88ab2a05c0..d5261708be 100644
--- a/gas/testsuite/gas/m68k/all.exp
+++ b/gas/testsuite/gas/m68k/all.exp
@@ -1,6 +1,18 @@
#
# Some generic m68k tests
#
+if [istarget "m68hc11-*-*"] then {
+ return
+}
+if [istarget "m68hc12-*-*"] then {
+ return
+}
+if [istarget "m6811-*-*"] then {
+ return
+}
+if [istarget "m6812-*-*"] then {
+ return
+}
if [istarget m68*-*-*] then {
gas_test "t2.s" "" "" "cross-section branch"
if [istarget m68*-motorola-sysv] then {
@@ -36,4 +48,4 @@ if [istarget m68*-*-*] then {
}
if [info exists errorInfo] then {
unset errorInfo
- }
+}
OpenPOWER on IntegriCloud