1 #as: -O 2 #objdump: -drw 3 #name: x86-64 optimized encoding 1 with -O 4 5 .*: +file format .* 6 7 8 Disassembly of section .text: 9 10 0+ <_start>: 11 +[a-f0-9]+: 48 25 00 00 00 00 and \$0x0,%rax 2: R_X86_64_32S foo 12 +[a-f0-9]+: 25 ff ff ff 7f and \$0x7fffffff,%eax 13 +[a-f0-9]+: 81 e3 ff ff ff 7f and \$0x7fffffff,%ebx 14 +[a-f0-9]+: 41 81 e6 ff ff ff 7f and \$0x7fffffff,%r14d 15 +[a-f0-9]+: 48 25 00 00 00 80 and \$0xffffffff80000000,%rax 16 +[a-f0-9]+: 48 81 e3 00 00 00 80 and \$0xffffffff80000000,%rbx 17 +[a-f0-9]+: 49 81 e6 00 00 00 80 and \$0xffffffff80000000,%r14 18 +[a-f0-9]+: 83 e0 7f and \$0x7f,%eax 19 +[a-f0-9]+: 83 e3 7f and \$0x7f,%ebx 20 +[a-f0-9]+: 41 83 e6 7f and \$0x7f,%r14d 21 +[a-f0-9]+: 48 83 e0 80 and \$0xffffffffffffff80,%rax 22 +[a-f0-9]+: 48 83 e3 80 and \$0xffffffffffffff80,%rbx 23 +[a-f0-9]+: 49 83 e6 80 and \$0xffffffffffffff80,%r14 24 +[a-f0-9]+: a9 ff ff ff 7f test \$0x7fffffff,%eax 25 +[a-f0-9]+: f7 c3 ff ff ff 7f test \$0x7fffffff,%ebx 26 +[a-f0-9]+: 41 f7 c6 ff ff ff 7f test \$0x7fffffff,%r14d 27 +[a-f0-9]+: 48 a9 00 00 00 80 test \$0xffffffff80000000,%rax 28 +[a-f0-9]+: 48 f7 c3 00 00 00 80 test \$0xffffffff80000000,%rbx 29 +[a-f0-9]+: 49 f7 c6 00 00 00 80 test \$0xffffffff80000000,%r14 30 +[a-f0-9]+: 48 33 06 xor \(%rsi\),%rax 31 +[a-f0-9]+: 31 c0 xor %eax,%eax 32 +[a-f0-9]+: 31 db xor %ebx,%ebx 33 +[a-f0-9]+: 45 31 f6 xor %r14d,%r14d 34 +[a-f0-9]+: 48 31 d0 xor %rdx,%rax 35 +[a-f0-9]+: 48 31 d3 xor %rdx,%rbx 36 +[a-f0-9]+: 49 31 d6 xor %rdx,%r14 37 +[a-f0-9]+: 29 c0 sub %eax,%eax 38 +[a-f0-9]+: 29 db sub %ebx,%ebx 39 +[a-f0-9]+: 45 29 f6 sub %r14d,%r14d 40 +[a-f0-9]+: 48 29 d0 sub %rdx,%rax 41 +[a-f0-9]+: 48 29 d3 sub %rdx,%rbx 42 +[a-f0-9]+: 49 29 d6 sub %rdx,%r14 43 +[a-f0-9]+: 48 81 20 ff ff ff 7f andq \$0x7fffffff,\(%rax\) 44 +[a-f0-9]+: 48 81 20 00 00 00 80 andq \$0xffffffff80000000,\(%rax\) 45 +[a-f0-9]+: 48 f7 00 ff ff ff 7f testq \$0x7fffffff,\(%rax\) 46 +[a-f0-9]+: 48 f7 00 00 00 00 80 testq \$0xffffffff80000000,\(%rax\) 47 +[a-f0-9]+: b8 ff ff ff 7f mov \$0x7fffffff,%eax 48 +[a-f0-9]+: b8 ff ff ff 7f mov \$0x7fffffff,%eax 49 +[a-f0-9]+: 41 b8 ff ff ff 7f mov \$0x7fffffff,%r8d 50 +[a-f0-9]+: 41 b8 ff ff ff 7f mov \$0x7fffffff,%r8d 51 +[a-f0-9]+: b8 ff ff ff ff mov \$0xffffffff,%eax 52 +[a-f0-9]+: b8 ff ff ff ff mov \$0xffffffff,%eax 53 +[a-f0-9]+: 41 b8 ff ff ff ff mov \$0xffffffff,%r8d 54 +[a-f0-9]+: 41 b8 ff ff ff ff mov \$0xffffffff,%r8d 55 +[a-f0-9]+: b8 ff 03 00 00 mov \$0x3ff,%eax 56 +[a-f0-9]+: b8 ff 03 00 00 mov \$0x3ff,%eax 57 +[a-f0-9]+: 48 b8 00 00 00 00 01 00 00 00 movabs \$0x100000000,%rax 58 +[a-f0-9]+: 48 b8 00 00 00 00 01 00 00 00 movabs \$0x100000000,%rax 59 +[a-f0-9]+: 31 c0 xor %eax,%eax 60 +[a-f0-9]+: 45 31 f6 xor %r14d,%r14d 61 #pass 62