blob: c4d30b1c79eb542c37e2307e470a1bfd356d3e9f [file] [log] [blame]
; Tests the broken-word function, one more word than fits in a
; single branch.
.syntax no_register_prefix
start: moveq 0,r0
; Take the opportunity to (rudimentally) test case-recognition,
; as the diassembler gets overly confused by the table.
subs.b 87,r0
bound.b 41,r0
adds.w [pc+r0.w],pc
sym2:
.word sym1 - sym2
.word sym3 - sym2
.word sym4 - sym2
.word sym5 - sym2
.word sym6 - sym2
.word sym7 - sym2
.word sym8 - sym2
.word sym9 - sym2
.word sym10 - sym2
.word sym11 - sym2
.word sym12 - sym2
.word sym13 - sym2
.word sym14 - sym2
.word sym15 - sym2
.word sym16 - sym2
.word sym17 - sym2
.word sym18 - sym2
.word sym19 - sym2
.word sym20 - sym2
.word sym21 - sym2
.word sym22 - sym2
.word sym23 - sym2
.word sym24 - sym2
.word sym25 - sym2
.word sym26 - sym2
.word sym27 - sym2
.word sym28 - sym2
.word sym29 - sym2
.word sym30 - sym2
.word sym31 - sym2
.word sym32 - sym2
.word sym33 - sym2
.word sym34 - sym2
.word sym35 - sym2
.word sym36 - sym2
.word sym37 - sym2
.word sym38 - sym2
.word sym39 - sym2
.word sym40 - sym2
.word sym41 - sym2
.word sym42 - sym2
.word sym43 - sym2
.space 16, 0
moveq 1,r0
; Medium-range branch around secondary jump table inserted here :
; ba next_label
; nop
; .skip 2,0
; Secondary jump table inserted here :
; jump sym1
; jump sym3
; ...
next_label:
moveq 2,r0
.space 32768, 0
sym1: moveq -3,r0
sym3: moveq 3,r0
sym4: moveq 4,r0
sym5: moveq 5,r0
sym6: moveq 6,r0
sym7: moveq 7,r0
sym8: moveq 8,r0
sym9: moveq 9,r0
sym10: moveq 10,r0
sym11: moveq 11,r0
sym12: moveq 12,r0
sym13: moveq 13,r0
sym14: moveq 14,r0
sym15: moveq 15,r0
sym16: moveq 16,r0
sym17: moveq 17,r0
sym18: moveq 18,r0
sym19: moveq 19,r0
sym20: moveq 20,r0
sym21: moveq 21,r0
sym22: moveq 22,r0
sym23: moveq 23,r0
sym24: moveq 24,r0
sym25: moveq 25,r0
sym26: moveq 26,r0
sym27: moveq 27,r0
sym28: moveq 28,r0
sym29: moveq 29,r0
sym30: moveq 30,r0
sym31: moveq 31,r0
sym32: moveq -32,r0
sym33: moveq -31,r0
sym34: moveq -30,r0
sym35: moveq -29,r0
sym36: moveq -28,r0
sym37: moveq -27,r0
sym38: moveq -26,r0
sym39: moveq -25,r0
sym40: moveq -24,r0
sym41: moveq -23,r0
sym42: moveq -22,r0
sym43: moveq -21,r0