1 .h8300s 2 # relax expected 3 .global _start 4 .section .text.func1,"ax",@progbits 5 .align 1 6 _start: 7 sub.l er0,er0 8 sub.l er2,er2 9 mov.l #var3,er1 10 mov.l @(table+4:32,er2),er2 11 jmp @er2 12 .section .rodata.tab,"a",@progbits 13 .align 2 14 table: 15 .long .L20 16 .long .L21 17 .long .L22 18 .long .L30noRelax 19 .long .L31noRelax 20 .long .L32noRelax 21 .long .L100Relax 22 .section .text.func1 23 .L20: 24 mov.b @(var1+1:32,er0), r2l 25 mov.b r2l,@(var1+1:32,er0) 26 mov.b @(1:32,er1), r2l 27 mov.b r2l,@(1:32,er1) 28 rts 29 .L21: 30 mov.w @(var2+2:32,er0), r2 31 mov.w r2,@(var2+2:32,er0) 32 mov.w @(2:32,er1), r2 33 mov.w r2,@(2:32,er1) 34 rts 35 .L22: 36 mov.l @(var3+4:32,er0), er2 37 mov.l er2,@(var3+4:32,er0) 38 mov.l @(4:32,er1), er2 39 mov.l er2,@(4:32,er1) 40 rts 41 42 .L100Relax: 43 mov.l #0x01007800,er0 44 # part of MOV.L @(d:24,ERs),ERd opcode 45 mov.w @var2+2:32,r1 46 rts 47 48 # no relax allowed: 49 .L30noRelax: 50 mov.b @(var4+1:32,er0), r2l 51 mov.b r2l,@(var4+1:32,er0) 52 mov.b @(0x8000:32,er1), r2l 53 mov.b r2l,@(0x8000:32,er1) 54 rts 55 .L31noRelax: 56 mov.w @(var5+2:32,er0), r2 57 mov.w r2,@(var5+2:32,er0) 58 mov.w @(0x8000:32,er1), r2 59 mov.w r2,@(0x8000:32,er1) 60 rts 61 .L32noRelax: 62 mov.l @(var6+4:32,er0), er2 63 mov.l er2,@(var6+4:32,er0) 64 mov.l @(0x8000:32,er1), er2 65 mov.l er2,@(0x8000:32,er1) 66 rts 67