#objdump: -dwrj.text
#target: x86_64-*-*

.*: +file format elf.*-x86-64.*

Disassembly of section .text:

#...
[0-9a-f]+ <check>:
 +[a-f0-9]+:	48 83 ec 08          	sub    \$0x8,%rsp
 +[a-f0-9]+:	67 e8 ([0-9a-f]{2} ){4}[ 	]+addr32 call [0-9a-f]+ <get_func>
 +[a-f0-9]+:	48 3b 05 ([0-9a-f]{2} ){4}[ 	]+cmp    0x[0-9a-f]+\(%rip\),%rax +# [0-9a-f]+ <.*>
 +[a-f0-9]+:	75 34                	jne    [0-9a-f]+ <check\+0x[0-9a-f]+>
 +[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>
 +[a-f0-9]+:	75 2b                	jne    [0-9a-f]+ <check\+0x[0-9a-f]+>
 +[a-f0-9]+:	67 e8 ([0-9a-f]{2} ){4}[ 	]+addr32 call [0-9a-f]+ <func>
 +[a-f0-9]+:	3d 78 56 34 12       	cmp    \$0x12345678,%eax
 +[a-f0-9]+:	75 1e                	jne    [0-9a-f]+ <check\+0x[0-9a-f]+>
 +[a-f0-9]+:	67 e8 ([0-9a-f]{2} ){4}[ 	]+addr32 call [0-9a-f]+ <call_func>
 +[a-f0-9]+:	3d 78 56 34 12       	cmp    \$0x12345678,%eax
 +[a-f0-9]+:	75 11                	jne    [0-9a-f]+ <check\+0x[0-9a-f]+>
 +[a-f0-9]+:	48 8d 3d ([0-9a-f]{2} ){4}[ 	]+lea    0x[a-f0-9]+\(%rip\),%rdi +# [a-f0-9]+.*
 +[a-f0-9]+:	48 83 c4 08          	add    \$0x8,%rsp
 +[a-f0-9]+:	ff 25 ([0-9a-f]{2} ){4}[ 	]+jmp    \*0x[0-9a-f]+\(%rip\) +# [0-9a-f]+ <.*>
 +[a-f0-9]+:	ff 15 ([0-9a-f]{2} ){4}[ 	]+call   \*0x[0-9a-f]+\(%rip\) +# [0-9a-f]+ <.*>
#...
[0-9a-f]+ <get_func>:
 +[a-f0-9]+:	48 8d 05 ([0-9a-f]{2} ){4}[ 	]+lea    -0x[0-9a-f]+\(%rip\),%rax +# [0-9a-f]+ <func>
 +[a-f0-9]+:	c3                   	ret *
#...
[0-9a-f]+ <call_func>:
 +[a-f0-9]+:	e9 ([0-9a-f]{2} ){4}[ 	]+jmp    [a-f0-9]+ <func>
 +[a-f0-9]+:	90                   	nop
#pass
