[ OBJDUMP native_save_fl() ] $ objdump -d -S --start-address=0x$(grep native_save_fl System.map | sed -e "s/ \+.*//") vmlinux | less vmlinux: file format elf64-x86-64 Disassembly of section .text: ffffffff810633a0 : /* * Interrupt control: */ static inline __nostackprotector unsigned long native_save_fl(void) { ffffffff810633a0: 55 push %rbp ffffffff810633a1: 48 89 e5 mov %rsp,%rbp ffffffff810633a4: 50 push %rax /* * "=rm" is safe here, because "pop" adjusts the stack before * it evaluates its effective address -- this is part of the * documented behavior of the "pop" instruction. */ asm volatile("# __raw_save_flags\n\t" ffffffff810633a5: 9c pushfq ffffffff810633a6: 8f 45 f8 popq -0x8(%rbp) "pushf ; pop %0" : "=rm" (flags) : /* no input */ : "memory"); return flags; ffffffff810633a9: 48 8b 45 f8 mov -0x8(%rbp),%rax ffffffff810633ad: 48 83 c4 08 add $0x8,%rsp ffffffff810633b1: 5d pop %rbp ffffffff810633b2: c3 retq ffffffff810633b3: 0f 1f 00 nopl (%rax) ffffffff810633b6: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) ffffffff810633bd: 00 00 00 ffffffff810633c0 : } static inline void native_restore_fl(unsigned long flags) { ...