.text .p2align 4 .globl protected_func_1b .type protected_func_1b, @function protected_func_1b: .LFB11: .cfi_startproc movl $3, %eax ret .cfi_endproc .LFE11: .size protected_func_1b, .-protected_func_1b .section .rodata.str1.8,"aMS",@progbits,1 .align 8 .LC0: .string "'protected_func_1a' in main and shared library doesn't have same address" .align 8 .LC1: .string "'protected_func_1a' doesn't return the correct value" .align 8 .LC2: .string "'protected_func_1b' in main and shared library has same address" .section .rodata.str1.1,"aMS",@progbits,1 .LC3: .string "PASS" .section .text.startup,"ax",@progbits .p2align 4 .globl main .type main, @function main: .LFB12: .cfi_startproc pushq %r12 .cfi_def_cfa_offset 16 .cfi_offset 12, -16 xorl %r12d, %r12d call protected_func_1a_p cmpq protected_func_1a@GOTPCREL(%rip), %rax je .L4 leaq .LC0(%rip), %rdi movl $1, %r12d call puts .L4: call protected_func_1a cmpl $1, %eax jne .L13 call protected_func_1b_p leaq protected_func_1b(%rip), %rdx cmpq %rax, %rdx je .L6 testl %r12d, %r12d jne .L12 leaq .LC3(%rip), %rdi call puts movl %r12d, %eax popq %r12 .cfi_remember_state .cfi_def_cfa_offset 8 ret .L13: .cfi_restore_state leaq .LC1(%rip), %rdi call puts call protected_func_1b_p leaq protected_func_1b(%rip), %rdx cmpq %rax, %rdx je .L6 .L12: movl $1, %r12d movl %r12d, %eax popq %r12 .cfi_remember_state .cfi_def_cfa_offset 8 ret .L6: .cfi_restore_state leaq .LC2(%rip), %rdi call puts jmp .L12 .cfi_endproc .LFE12: .size main, .-main .section .note.GNU-stack,"",@progbits