void test(int entry)
{
switch (entry)
{
case 0:
asm volatile ("mov r5,r0\n mov r5, r0\n mov r5, r0\n mov r5, r0\n"); // 8 bytes
asm volatile ("mov r5,r0\n mov r5, r0\n mov r5, r0\n mov r5, r0\n"); // 16 bytes
asm volatile ("mov r5,r0\n mov r5, r0\n mov r5, r0\n mov r5, r0\n"); // 24 bytes
asm volatile ("mov r5,r0\n mov r5, r0\n mov r5, r0\n mov r5, r0\n"); // 32 bytes
asm volatile ("mov r5,r0\n mov r5, r0\n mov r5, r0\n mov r5, r0\n"); // 40 bytes
asm volatile ("mov r5,r0\n mov r5, r0\n mov r5, r0\n mov r5, r0\n"); // 48 bytes
asm volatile ("mov r5,r0\n mov r5, r0\n mov r5, r0\n mov r5, r0\n"); // 56 bytes
asm volatile ("mov r5,r0\n mov r5, r0\n mov r5, r0\n mov r5, r0\n"); // 64 bytes

break;

case 1:
asm volatile ("mov r6,r0\n mov r6, r0\n mov r6, r0\n mov r6, r0\n"); // 8 bytes
asm volatile ("mov r6,r0\n mov r6, r0\n mov r6, r0\n mov r6, r0\n"); // 16 bytes
asm volatile ("mov r6,r0\n mov r6, r0\n mov r6, r0\n mov r6, r0\n"); // 24 bytes
asm volatile ("mov r6,r0\n mov r6, r0\n mov r6, r0\n mov r6, r0\n"); // 32 bytes
asm volatile ("mov r6,r0\n mov r6, r0\n mov r6, r0\n mov r6, r0\n"); // 40 bytes
asm volatile ("mov r6,r0\n mov r6, r0\n mov r6, r0\n mov r6, r0\n"); // 48 bytes
asm volatile ("mov r6,r0\n mov r6, r0\n mov r6, r0\n mov r6, r0\n"); // 56 bytes
asm volatile ("mov r6,r0\n mov r6, r0\n mov r6, r0\n mov r6, r0\n"); // 64 bytes

break;

case 2:
asm volatile ("mov r7,r0\n mov r7, r0\n mov r7, r0\n mov r7, r0\n"); // 8 bytes
asm volatile ("mov r7,r0\n mov r7, r0\n mov r7, r0\n mov r7, r0\n"); // 16 bytes
asm volatile ("mov r7,r0\n mov r7, r0\n mov r7, r0\n mov r7, r0\n"); // 24 bytes
asm volatile ("mov r7,r0\n mov r7, r0\n mov r7, r0\n mov r7, r0\n"); // 32 bytes
asm volatile ("mov r7,r0\n mov r7, r0\n mov r7, r0\n mov r7, r0\n"); // 40 bytes
asm volatile ("mov r7,r0\n mov r7, r0\n mov r7, r0\n mov r7, r0\n"); // 48 bytes
asm volatile ("mov r7,r0\n mov r7, r0\n mov r7, r0\n mov r7, r0\n"); // 56 bytes
asm volatile ("mov r7,r0\n mov r7, r0\n mov r7, r0\n mov r7, r0\n"); // 64 bytes

break;

case 3:
asm volatile ("mov r8,r0\n mov r8, r0\n mov r8, r0\n mov r8, r0\n"); // 8 bytes
asm volatile ("mov r8,r0\n mov r8, r0\n mov r8, r0\n mov r8, r0\n"); // 16 bytes
asm volatile ("mov r8,r0\n"); // 18 bytes
break;

case 4:
asm volatile ("mov r9,r0\n mov r9, r0\n mov r9, r0\n mov r9, r0\n"); // 8 bytes
asm volatile ("mov r9,r0\n mov r9, r0\n mov r9, r0\n mov r9, r0\n"); // 16 bytes
asm volatile ("mov r9,r0\n mov r9, r0\n mov r9, r0\n mov r9, r0\n"); // 24 bytes

break;
}
}


test.o: file format elf32-sh


Disassembly of section .text:

00000000 <_test>:
0: e1 04 mov #4,r1
2: 34 16 cmp/hi r1,r4
4: 89 16 bt 34 <_test+0x34>
6: c7 03 mova 14 <_test+0x14>,r0
8: 04 4c mov.b @(r0,r4),r4
a: 64 4c extu.b r4,r4
c: 34 0c add r0,r4
e: 44 2b jmp @r4
10: 00 09 nop
12: 00 09 nop

// jumptable
14: 3c .byte 0x3c // address 0x50
15: 80 .byte 0x80 // address 0x94
16: c4 .byte 0xc4 // address 0xd8
17: 24 .byte 0x24 // address 0x38
18: 08 .byte 0x08 // address 0x1c
19: 00 .byte 0x00 // padding?
1a: 00 09 nop
1c: 60 93 mov r9,r0 // case 4:
1e: 60 93 mov r9,r0
20: 60 93 mov r9,r0
22: 60 93 mov r9,r0
24: 60 93 mov r9,r0
26: 60 93 mov r9,r0
28: 60 93 mov r9,r0
2a: 60 93 mov r9,r0
2c: 60 93 mov r9,r0
2e: 60 93 mov r9,r0
30: 60 93 mov r9,r0
32: 60 93 mov r9,r0
34: 00 0b rts
36: 00 09 nop
38: 60 83 mov r8,r0 // case 3:
3a: 60 83 mov r8,r0
3c: 60 83 mov r8,r0
3e: 60 83 mov r8,r0
40: 60 83 mov r8,r0
42: 60 83 mov r8,r0
44: 60 83 mov r8,r0
46: 60 83 mov r8,r0
48: 60 83 mov r8,r0
4a: 00 0b rts
4c: 00 09 nop
4e: 00 09 nop
50: 60 53 mov r5,r0 // case 0:
52: 60 53 mov r5,r0
54: 60 53 mov r5,r0
56: 60 53 mov r5,r0
58: 60 53 mov r5,r0
5a: 60 53 mov r5,r0
5c: 60 53 mov r5,r0
5e: 60 53 mov r5,r0
60: 60 53 mov r5,r0
62: 60 53 mov r5,r0
64: 60 53 mov r5,r0
66: 60 53 mov r5,r0
68: 60 53 mov r5,r0
6a: 60 53 mov r5,r0
6c: 60 53 mov r5,r0
6e: 60 53 mov r5,r0
70: 60 53 mov r5,r0
72: 60 53 mov r5,r0
74: 60 53 mov r5,r0
76: 60 53 mov r5,r0
78: 60 53 mov r5,r0
7a: 60 53 mov r5,r0
7c: 60 53 mov r5,r0
7e: 60 53 mov r5,r0
80: 60 53 mov r5,r0
82: 60 53 mov r5,r0
84: 60 53 mov r5,r0
86: 60 53 mov r5,r0
88: 60 53 mov r5,r0
8a: 60 53 mov r5,r0
8c: 60 53 mov r5,r0
8e: 60 53 mov r5,r0
90: 00 0b rts
92: 00 09 nop
94: 60 63 mov r6,r0 // case 1:
96: 60 63 mov r6,r0
98: 60 63 mov r6,r0
9a: 60 63 mov r6,r0
9c: 60 63 mov r6,r0
9e: 60 63 mov r6,r0
a0: 60 63 mov r6,r0
a2: 60 63 mov r6,r0
a4: 60 63 mov r6,r0
a6: 60 63 mov r6,r0
a8: 60 63 mov r6,r0
aa: 60 63 mov r6,r0
ac: 60 63 mov r6,r0
ae: 60 63 mov r6,r0
b0: 60 63 mov r6,r0
b2: 60 63 mov r6,r0
b4: 60 63 mov r6,r0
b6: 60 63 mov r6,r0
b8: 60 63 mov r6,r0
ba: 60 63 mov r6,r0
bc: 60 63 mov r6,r0
be: 60 63 mov r6,r0
c0: 60 63 mov r6,r0
c2: 60 63 mov r6,r0
c4: 60 63 mov r6,r0
c6: 60 63 mov r6,r0
c8: 60 63 mov r6,r0
ca: 60 63 mov r6,r0
cc: 60 63 mov r6,r0
ce: 60 63 mov r6,r0
d0: 60 63 mov r6,r0
d2: 60 63 mov r6,r0
d4: 00 0b rts
d6: 00 09 nop
d8: 60 73 mov r7,r0 // case 2:
da: 60 73 mov r7,r0
dc: 60 73 mov r7,r0
de: 60 73 mov r7,r0
e0: 60 73 mov r7,r0
e2: 60 73 mov r7,r0
e4: 60 73 mov r7,r0
e6: 60 73 mov r7,r0
e8: 60 73 mov r7,r0
ea: 60 73 mov r7,r0
ec: 60 73 mov r7,r0
ee: 60 73 mov r7,r0
f0: 60 73 mov r7,r0
f2: 60 73 mov r7,r0
f4: 60 73 mov r7,r0
f6: 60 73 mov r7,r0
f8: 60 73 mov r7,r0
fa: 60 73 mov r7,r0
fc: 60 73 mov r7,r0
fe: 60 73 mov r7,r0
100: 60 73 mov r7,r0
102: 60 73 mov r7,r0
104: 60 73 mov r7,r0
106: 60 73 mov r7,r0
108: 60 73 mov r7,r0
10a: 60 73 mov r7,r0
10c: 60 73 mov r7,r0
10e: 60 73 mov r7,r0
110: 60 73 mov r7,r0
112: 60 73 mov r7,r0
114: 60 73 mov r7,r0
116: 60 73 mov r7,r0
118: 00 0b rts
11a: 00 09 nop