1#objdump: -dwrj.text
2#target: x86_64-*-*
3
4.*: +file format elf.*-x86-64.*
5
6Disassembly of section .text:
7
8#...
9[0-9a-f]+ <check>:
10 +[a-f0-9]+:	48 83 ec 08          	sub    \$0x8,%rsp
11 +[a-f0-9]+:	67 e8 ([0-9a-f]{2} ){4}[ 	]+addr32 call [0-9a-f]+ <get_func>
12 +[a-f0-9]+:	48 81 f8 ([0-9a-f]{2} ){4}[ 	]+cmp    \$0x[0-9a-f]+,%rax
13 +[a-f0-9]+:	75 34                	jne    [0-9a-f]+ <check\+0x[0-9a-f]+>
14 +[a-f0-9]+:	4(0|8) 39 05 ([0-9a-f]{2} ){4}[ 	]+(rex |)cmp +%(e|r)ax,0x[0-9a-f]+\(%rip\) +# [a-f0-9]+ <func_p>
15 +[a-f0-9]+:	75 2b                	jne    [0-9a-f]+ <check\+0x[0-9a-f]+>
16 +[a-f0-9]+:	67 e8 ([0-9a-f]{2} ){4}[ 	]+addr32 call [0-9a-f]+ <func>
17 +[a-f0-9]+:	3d 78 56 34 12       	cmp    \$0x12345678,%eax
18 +[a-f0-9]+:	75 1e                	jne    [0-9a-f]+ <check\+0x[0-9a-f]+>
19 +[a-f0-9]+:	67 e8 ([0-9a-f]{2} ){4}[ 	]+addr32 call [0-9a-f]+ <call_func>
20 +[a-f0-9]+:	3d 78 56 34 12       	cmp    \$0x12345678,%eax
21 +[a-f0-9]+:	75 11                	jne    [0-9a-f]+ <check\+0x[0-9a-f]+>
22 +[a-f0-9]+:	48 8d 3d ([0-9a-f]{2} ){4}[ 	]+lea    0x[a-f0-9]+\(%rip\),%rdi +# [a-f0-9]+.*
23 +[a-f0-9]+:	48 83 c4 08          	add    \$0x8,%rsp
24 +[a-f0-9]+:	e9 ([0-9a-f]{2} ){4}[ 	]+jmp    [a-f0-9]+ <.*puts.*>
25 +[a-f0-9]+:	90                   	nop
26 +[a-f0-9]+:	67 e8 ([0-9a-f]{2} ){4}[ 	]+addr32 call [0-9a-f]+ <abort>
27#...
28[0-9a-f]+ <get_func>:
29 +[a-f0-9]+:	4(0|8) c7 c0 ([0-9a-f]{2} ){4}[ 	]+(rex |)mov +\$0x[0-9a-f]+,%(e|r)ax
30 +[a-f0-9]+:	c3                   	ret *
31#...
32[0-9a-f]+ <call_func>:
33 +[a-f0-9]+:	e9 ([0-9a-f]{2} ){4}[ 	]+jmp    [a-f0-9]+ <func>
34 +[a-f0-9]+:	90                   	nop
35#pass
36