.h8300s # relax expected .global _start .section .text.func1,"ax",@progbits .align 1 _start: sub.l er0,er0 sub.l er2,er2 mov.l #var3,er1 mov.l @(table+4:32,er2),er2 jmp @er2 .section .rodata.tab,"a",@progbits .align 2 table: .long .L20 .long .L21 .long .L22 .long .L30noRelax .long .L31noRelax .long .L32noRelax .long .L100Relax .section .text.func1 .L20: mov.b @(var1+1:32,er0), r2l mov.b r2l,@(var1+1:32,er0) mov.b @(1:32,er1), r2l mov.b r2l,@(1:32,er1) rts .L21: mov.w @(var2+2:32,er0), r2 mov.w r2,@(var2+2:32,er0) mov.w @(2:32,er1), r2 mov.w r2,@(2:32,er1) rts .L22: mov.l @(var3+4:32,er0), er2 mov.l er2,@(var3+4:32,er0) mov.l @(4:32,er1), er2 mov.l er2,@(4:32,er1) rts .L100Relax: mov.l #0x01007800,er0 # part of MOV.L @(d:24,ERs),ERd opcode mov.w @var2+2:32,r1 rts # no relax allowed: .L30noRelax: mov.b @(var4+1:32,er0), r2l mov.b r2l,@(var4+1:32,er0) mov.b @(0x8000:32,er1), r2l mov.b r2l,@(0x8000:32,er1) rts .L31noRelax: mov.w @(var5+2:32,er0), r2 mov.w r2,@(var5+2:32,er0) mov.w @(0x8000:32,er1), r2 mov.w r2,@(0x8000:32,er1) rts .L32noRelax: mov.l @(var6+4:32,er0), er2 mov.l er2,@(var6+4:32,er0) mov.l @(0x8000:32,er1), er2 mov.l er2,@(0x8000:32,er1) rts