xref: /llvm-project/bolt/test/X86/Inputs/jump_table_reference.s (revision 4c106cfdf7cf7eec861ad3983a3dd9a9e8f3a8ae)
1*c74e5bfeSAmir Ayupov
2*c74e5bfeSAmir Ayupov  .text
3*c74e5bfeSAmir Ayupov  .globl main
4*c74e5bfeSAmir Ayupov  .type main, %function
5*c74e5bfeSAmir Ayupovmain:
6*c74e5bfeSAmir Ayupov  .cfi_startproc
7*c74e5bfeSAmir Ayupov  cmpq $0x3, %rdi
8*c74e5bfeSAmir Ayupov  jae .L4
9*c74e5bfeSAmir Ayupov  cmpq $0x1, %rdi
10*c74e5bfeSAmir Ayupov  jne .Ldo_jump
11*c74e5bfeSAmir Ayupov  jmpq *jt+8
12*c74e5bfeSAmir Ayupov.Ldo_jump:
13*c74e5bfeSAmir Ayupov  jmpq *jt(,%rdi,8)
14*c74e5bfeSAmir Ayupov.L1:
15*c74e5bfeSAmir Ayupov  movq $0x1, %rax
16*c74e5bfeSAmir Ayupov  jmp .L5
17*c74e5bfeSAmir Ayupov.L2:
18*c74e5bfeSAmir Ayupov  movq $0x0, %rax
19*c74e5bfeSAmir Ayupov  jmp .L5
20*c74e5bfeSAmir Ayupov.L3:
21*c74e5bfeSAmir Ayupov  movq $0x2, %rax
22*c74e5bfeSAmir Ayupov  jmp .L5
23*c74e5bfeSAmir Ayupov.L4:
24*c74e5bfeSAmir Ayupov  mov $0x3, %rax
25*c74e5bfeSAmir Ayupov.L5:
26*c74e5bfeSAmir Ayupov  retq
27*c74e5bfeSAmir Ayupov  .cfi_endproc
28*c74e5bfeSAmir Ayupov
29*c74e5bfeSAmir Ayupov  .section .rodata
30*c74e5bfeSAmir Ayupov  .align 16
31*c74e5bfeSAmir Ayupov  .globl jt
32*c74e5bfeSAmir Ayupovjt:
33*c74e5bfeSAmir Ayupov	.quad	.L1
34*c74e5bfeSAmir Ayupov	.quad	.L2
35*c74e5bfeSAmir Ayupov	.quad	.L3
36