1; Tests the broken-word function with a real switch table. CRISv32 version. 2 3start: moveq 0,r0 4 5 subs.b 87,r0 6 bound.b 41,r0 7 lapc sym2,acr 8 addi r0.w,acr 9 adds.w [acr],acr 10 jump acr 11 nop 12sym2: 13 .word sym1 - . 14 .word sym3 - . 15 .word sym4 - . 16 .word sym5 - . 17 .word sym6 - . 18 .word sym7 - . 19 .word sym8 - . 20 .word sym9 - . 21 .word sym10 - . 22 .word sym11 - . 23 .word sym12 - . 24 .word sym13 - . 25 .word sym14 - . 26 .word sym15 - . 27 .word sym16 - . 28 .word sym17 - . 29 .word sym18 - . 30 .word sym19 - . 31 .word sym20 - . 32 .word sym21 - . 33 .word sym22 - . 34 .word sym23 - . 35 .word sym24 - . 36 .word sym25 - . 37 .word sym26 - . 38 .word sym27 - . 39 .word sym28 - . 40 .word sym29 - . 41 .word sym30 - . 42 .word sym31 - . 43 .word sym32 - . 44 .word sym33 - . 45 .word sym34 - . 46 .word sym35 - . 47 .word sym36 - . 48 .word sym37 - . 49 .word sym38 - . 50 .word sym39 - . 51 .word sym40 - . 52 .word sym41 - . 53 .word sym42 - . 54 .word sym43 - . 55 56 .space 16, 0 57 58 moveq 1,r0 59; Medium-range branch around secondary jump table inserted here : 60; ba next_label 61; nop 62; .skip 2,0 63; Secondary jump table inserted here : 64; ba sym1 65; nop 66; ba sym3 67; nop 68; ... 69next_label: 70 moveq 2,r0 71 72 .space 32768, 0 73 74sym1: moveq -3,r0 75sym3: moveq 3,r0 76sym4: moveq 4,r0 77sym5: moveq 5,r0 78sym6: moveq 6,r0 79sym7: moveq 7,r0 80sym8: moveq 8,r0 81sym9: moveq 9,r0 82sym10: moveq 10,r0 83sym11: moveq 11,r0 84sym12: moveq 12,r0 85sym13: moveq 13,r0 86sym14: moveq 14,r0 87sym15: moveq 15,r0 88sym16: moveq 16,r0 89sym17: moveq 17,r0 90sym18: moveq 18,r0 91sym19: moveq 19,r0 92sym20: moveq 20,r0 93sym21: moveq 21,r0 94sym22: moveq 22,r0 95sym23: moveq 23,r0 96sym24: moveq 24,r0 97sym25: moveq 25,r0 98sym26: moveq 26,r0 99sym27: moveq 27,r0 100sym28: moveq 28,r0 101sym29: moveq 29,r0 102sym30: moveq 30,r0 103sym31: moveq 31,r0 104sym32: moveq -32,r0 105sym33: moveq -31,r0 106sym34: moveq -30,r0 107sym35: moveq -29,r0 108sym36: moveq -28,r0 109sym37: moveq -27,r0 110sym38: moveq -26,r0 111sym39: moveq -25,r0 112sym40: moveq -24,r0 113sym41: moveq -23,r0 114sym42: moveq -22,r0 115sym43: moveq -21,r0 116