|
发表于 2023-2-17 22:26:08
|
显示全部楼层
原理?这就是原理
- sh-5.1$ cat main.cpp
- #include <iostream>
- #include <vector>
- using namespace std;
- vector<int> getv() {
- vector<int> v;
- return v;
- }
- void test01() {vector<int> v = getv();}
- int main() {
- test01();
- return 0;
- }
- sh-5.1$ g++ -S main.cpp
- sh-5.1$ cat main.s
- .file "main.cpp"
- .text
- .local _ZStL8__ioinit
- .comm _ZStL8__ioinit,1,1
- .section .text._ZNSt12_Vector_baseIiSaIiEE12_Vector_implD2Ev,"axG",@progbits,_ZNSt12_Vector_baseIiSaIiEE12_Vector_implD5Ev,comdat
- .align 2
- .weak _ZNSt12_Vector_baseIiSaIiEE12_Vector_implD2Ev
- .type _ZNSt12_Vector_baseIiSaIiEE12_Vector_implD2Ev, @function
- _ZNSt12_Vector_baseIiSaIiEE12_Vector_implD2Ev:
- .LFB2128:
- .cfi_startproc
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call _ZNSaIiED2Ev
- nop
- leave
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2128:
- .size _ZNSt12_Vector_baseIiSaIiEE12_Vector_implD2Ev, .-_ZNSt12_Vector_baseIiSaIiEE12_Vector_implD2Ev
- .weak _ZNSt12_Vector_baseIiSaIiEE12_Vector_implD1Ev
- .set _ZNSt12_Vector_baseIiSaIiEE12_Vector_implD1Ev,_ZNSt12_Vector_baseIiSaIiEE12_Vector_implD2Ev
- .section .text._ZNSt12_Vector_baseIiSaIiEEC2Ev,"axG",@progbits,_ZNSt12_Vector_baseIiSaIiEEC5Ev,comdat
- .align 2
- .weak _ZNSt12_Vector_baseIiSaIiEEC2Ev
- .type _ZNSt12_Vector_baseIiSaIiEEC2Ev, @function
- _ZNSt12_Vector_baseIiSaIiEEC2Ev:
- .LFB2130:
- .cfi_startproc
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call _ZNSt12_Vector_baseIiSaIiEE12_Vector_implC1Ev
- nop
- leave
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2130:
- .size _ZNSt12_Vector_baseIiSaIiEEC2Ev, .-_ZNSt12_Vector_baseIiSaIiEEC2Ev
- .weak _ZNSt12_Vector_baseIiSaIiEEC1Ev
- .set _ZNSt12_Vector_baseIiSaIiEEC1Ev,_ZNSt12_Vector_baseIiSaIiEEC2Ev
- .section .text._ZNSt6vectorIiSaIiEEC2Ev,"axG",@progbits,_ZNSt6vectorIiSaIiEEC5Ev,comdat
- .align 2
- .weak _ZNSt6vectorIiSaIiEEC2Ev
- .type _ZNSt6vectorIiSaIiEEC2Ev, @function
- _ZNSt6vectorIiSaIiEEC2Ev:
- .LFB2132:
- .cfi_startproc
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call _ZNSt12_Vector_baseIiSaIiEEC2Ev
- nop
- leave
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2132:
- .size _ZNSt6vectorIiSaIiEEC2Ev, .-_ZNSt6vectorIiSaIiEEC2Ev
- .weak _ZNSt6vectorIiSaIiEEC1Ev
- .set _ZNSt6vectorIiSaIiEEC1Ev,_ZNSt6vectorIiSaIiEEC2Ev
- .text
- .globl _Z4getvv
- .type _Z4getvv, @function
- _Z4getvv:
- .LFB2123:
- .cfi_startproc
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call _ZNSt6vectorIiSaIiEEC1Ev
- nop
- movq -8(%rbp), %rax
- leave
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2123:
- .size _Z4getvv, .-_Z4getvv
- .globl _Z6test01v
- .type _Z6test01v, @function
- _Z6test01v:
- .LFB2140:
- .cfi_startproc
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- subq $32, %rsp
- movq %fs:40, %rax
- movq %rax, -8(%rbp)
- xorl %eax, %eax
- leaq -32(%rbp), %rax
- movq %rax, %rdi
- call _Z4getvv
- leaq -32(%rbp), %rax
- movq %rax, %rdi
- call _ZNSt6vectorIiSaIiEED1Ev
- movq -8(%rbp), %rax
- subq %fs:40, %rax
- je .L7
- call __stack_chk_fail@PLT
- .L7:
- leave
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2140:
- .size _Z6test01v, .-_Z6test01v
- .globl main
- .type main, @function
- main:
- .LFB2141:
- .cfi_startproc
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- call _Z6test01v
- movl $0, %eax
- popq %rbp
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2141:
- .size main, .-main
- .section .text._ZNSt12_Vector_baseIiSaIiEE12_Vector_implC2Ev,"axG",@progbits,_ZNSt12_Vector_baseIiSaIiEE12_Vector_implC5Ev,comdat
- .align 2
- .weak _ZNSt12_Vector_baseIiSaIiEE12_Vector_implC2Ev
- .type _ZNSt12_Vector_baseIiSaIiEE12_Vector_implC2Ev, @function
- _ZNSt12_Vector_baseIiSaIiEE12_Vector_implC2Ev:
- .LFB2406:
- .cfi_startproc
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call _ZNSaIiEC2Ev
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call _ZNSt12_Vector_baseIiSaIiEE17_Vector_impl_dataC2Ev
- nop
- leave
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2406:
- .size _ZNSt12_Vector_baseIiSaIiEE12_Vector_implC2Ev, .-_ZNSt12_Vector_baseIiSaIiEE12_Vector_implC2Ev
- .weak _ZNSt12_Vector_baseIiSaIiEE12_Vector_implC1Ev
- .set _ZNSt12_Vector_baseIiSaIiEE12_Vector_implC1Ev,_ZNSt12_Vector_baseIiSaIiEE12_Vector_implC2Ev
- .section .text._ZNSaIiED2Ev,"axG",@progbits,_ZNSaIiED5Ev,comdat
- .align 2
- .weak _ZNSaIiED2Ev
- .type _ZNSaIiED2Ev, @function
- _ZNSaIiED2Ev:
- .LFB2409:
- .cfi_startproc
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call _ZNSt15__new_allocatorIiED2Ev
- nop
- leave
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2409:
- .size _ZNSaIiED2Ev, .-_ZNSaIiED2Ev
- .weak _ZNSaIiED1Ev
- .set _ZNSaIiED1Ev,_ZNSaIiED2Ev
- .section .text._ZNSt12_Vector_baseIiSaIiEED2Ev,"axG",@progbits,_ZNSt12_Vector_baseIiSaIiEED5Ev,comdat
- .align 2
- .weak _ZNSt12_Vector_baseIiSaIiEED2Ev
- .type _ZNSt12_Vector_baseIiSaIiEED2Ev, @function
- _ZNSt12_Vector_baseIiSaIiEED2Ev:
- .LFB2412:
- .cfi_startproc
- .cfi_personality 0x9b,DW.ref.__gxx_personality_v0
- .cfi_lsda 0x1b,.LLSDA2412
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq 16(%rax), %rdx
- movq -8(%rbp), %rax
- movq (%rax), %rax
- subq %rax, %rdx
- movq %rdx, %rax
- sarq $2, %rax
- movq %rax, %rdx
- movq -8(%rbp), %rax
- movq (%rax), %rcx
- movq -8(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call _ZNSt12_Vector_baseIiSaIiEE13_M_deallocateEPim
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call _ZNSt12_Vector_baseIiSaIiEE12_Vector_implD1Ev
- nop
- leave
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2412:
- .globl __gxx_personality_v0
- .section .gcc_except_table._ZNSt12_Vector_baseIiSaIiEED2Ev,"aG",@progbits,_ZNSt12_Vector_baseIiSaIiEED5Ev,comdat
- .LLSDA2412:
- .byte 0xff
- .byte 0xff
- .byte 0x1
- .uleb128 .LLSDACSE2412-.LLSDACSB2412
- .LLSDACSB2412:
- .LLSDACSE2412:
- .section .text._ZNSt12_Vector_baseIiSaIiEED2Ev,"axG",@progbits,_ZNSt12_Vector_baseIiSaIiEED5Ev,comdat
- .size _ZNSt12_Vector_baseIiSaIiEED2Ev, .-_ZNSt12_Vector_baseIiSaIiEED2Ev
- .weak _ZNSt12_Vector_baseIiSaIiEED1Ev
- .set _ZNSt12_Vector_baseIiSaIiEED1Ev,_ZNSt12_Vector_baseIiSaIiEED2Ev
- .section .text._ZNSt6vectorIiSaIiEED2Ev,"axG",@progbits,_ZNSt6vectorIiSaIiEED5Ev,comdat
- .align 2
- .weak _ZNSt6vectorIiSaIiEED2Ev
- .type _ZNSt6vectorIiSaIiEED2Ev, @function
- _ZNSt6vectorIiSaIiEED2Ev:
- .LFB2415:
- .cfi_startproc
- .cfi_personality 0x9b,DW.ref.__gxx_personality_v0
- .cfi_lsda 0x1b,.LLSDA2415
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call _ZNSt12_Vector_baseIiSaIiEE19_M_get_Tp_allocatorEv
- movq %rax, %rdx
- movq -8(%rbp), %rax
- movq 8(%rax), %rcx
- movq -8(%rbp), %rax
- movq (%rax), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call _ZSt8_DestroyIPiiEvT_S1_RSaIT0_E
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call _ZNSt12_Vector_baseIiSaIiEED2Ev
- nop
- leave
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2415:
- .section .gcc_except_table._ZNSt6vectorIiSaIiEED2Ev,"aG",@progbits,_ZNSt6vectorIiSaIiEED5Ev,comdat
- .LLSDA2415:
- .byte 0xff
- .byte 0xff
- .byte 0x1
- .uleb128 .LLSDACSE2415-.LLSDACSB2415
- .LLSDACSB2415:
- .LLSDACSE2415:
- .section .text._ZNSt6vectorIiSaIiEED2Ev,"axG",@progbits,_ZNSt6vectorIiSaIiEED5Ev,comdat
- .size _ZNSt6vectorIiSaIiEED2Ev, .-_ZNSt6vectorIiSaIiEED2Ev
- .weak _ZNSt6vectorIiSaIiEED1Ev
- .set _ZNSt6vectorIiSaIiEED1Ev,_ZNSt6vectorIiSaIiEED2Ev
- .section .text._ZNSaIiEC2Ev,"axG",@progbits,_ZNSaIiEC5Ev,comdat
- .align 2
- .weak _ZNSaIiEC2Ev
- .type _ZNSaIiEC2Ev, @function
- _ZNSaIiEC2Ev:
- .LFB2525:
- .cfi_startproc
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call _ZNSt15__new_allocatorIiEC2Ev
- nop
- leave
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2525:
- .size _ZNSaIiEC2Ev, .-_ZNSaIiEC2Ev
- .weak _ZNSaIiEC1Ev
- .set _ZNSaIiEC1Ev,_ZNSaIiEC2Ev
- .section .text._ZNSt12_Vector_baseIiSaIiEE17_Vector_impl_dataC2Ev,"axG",@progbits,_ZNSt12_Vector_baseIiSaIiEE17_Vector_impl_dataC5Ev,comdat
- .align 2
- .weak _ZNSt12_Vector_baseIiSaIiEE17_Vector_impl_dataC2Ev
- .type _ZNSt12_Vector_baseIiSaIiEE17_Vector_impl_dataC2Ev, @function
- _ZNSt12_Vector_baseIiSaIiEE17_Vector_impl_dataC2Ev:
- .LFB2528:
- .cfi_startproc
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq $0, (%rax)
- movq -8(%rbp), %rax
- movq $0, 8(%rax)
- movq -8(%rbp), %rax
- movq $0, 16(%rax)
- nop
- popq %rbp
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2528:
- .size _ZNSt12_Vector_baseIiSaIiEE17_Vector_impl_dataC2Ev, .-_ZNSt12_Vector_baseIiSaIiEE17_Vector_impl_dataC2Ev
- .weak _ZNSt12_Vector_baseIiSaIiEE17_Vector_impl_dataC1Ev
- .set _ZNSt12_Vector_baseIiSaIiEE17_Vector_impl_dataC1Ev,_ZNSt12_Vector_baseIiSaIiEE17_Vector_impl_dataC2Ev
- .section .text._ZNSt15__new_allocatorIiED2Ev,"axG",@progbits,_ZNSt15__new_allocatorIiED5Ev,comdat
- .align 2
- .weak _ZNSt15__new_allocatorIiED2Ev
- .type _ZNSt15__new_allocatorIiED2Ev, @function
- _ZNSt15__new_allocatorIiED2Ev:
- .LFB2531:
- .cfi_startproc
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- movq %rdi, -8(%rbp)
- nop
- popq %rbp
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2531:
- .size _ZNSt15__new_allocatorIiED2Ev, .-_ZNSt15__new_allocatorIiED2Ev
- .weak _ZNSt15__new_allocatorIiED1Ev
- .set _ZNSt15__new_allocatorIiED1Ev,_ZNSt15__new_allocatorIiED2Ev
- .section .text._ZNSt12_Vector_baseIiSaIiEE13_M_deallocateEPim,"axG",@progbits,_ZNSt12_Vector_baseIiSaIiEE13_M_deallocateEPim,comdat
- .align 2
- .weak _ZNSt12_Vector_baseIiSaIiEE13_M_deallocateEPim
- .type _ZNSt12_Vector_baseIiSaIiEE13_M_deallocateEPim, @function
- _ZNSt12_Vector_baseIiSaIiEE13_M_deallocateEPim:
- .LFB2533:
- .cfi_startproc
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- subq $32, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq %rdx, -24(%rbp)
- cmpq $0, -16(%rbp)
- je .L19
- movq -8(%rbp), %rax
- movq -24(%rbp), %rdx
- movq -16(%rbp), %rcx
- movq %rcx, %rsi
- movq %rax, %rdi
- call _ZNSt16allocator_traitsISaIiEE10deallocateERS0_Pim
- .L19:
- nop
- leave
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2533:
- .size _ZNSt12_Vector_baseIiSaIiEE13_M_deallocateEPim, .-_ZNSt12_Vector_baseIiSaIiEE13_M_deallocateEPim
- .section .text._ZNSt12_Vector_baseIiSaIiEE19_M_get_Tp_allocatorEv,"axG",@progbits,_ZNSt12_Vector_baseIiSaIiEE19_M_get_Tp_allocatorEv,comdat
- .align 2
- .weak _ZNSt12_Vector_baseIiSaIiEE19_M_get_Tp_allocatorEv
- .type _ZNSt12_Vector_baseIiSaIiEE19_M_get_Tp_allocatorEv, @function
- _ZNSt12_Vector_baseIiSaIiEE19_M_get_Tp_allocatorEv:
- .LFB2534:
- .cfi_startproc
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- popq %rbp
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2534:
- .size _ZNSt12_Vector_baseIiSaIiEE19_M_get_Tp_allocatorEv, .-_ZNSt12_Vector_baseIiSaIiEE19_M_get_Tp_allocatorEv
- .section .text._ZSt8_DestroyIPiiEvT_S1_RSaIT0_E,"axG",@progbits,_ZSt8_DestroyIPiiEvT_S1_RSaIT0_E,comdat
- .weak _ZSt8_DestroyIPiiEvT_S1_RSaIT0_E
- .type _ZSt8_DestroyIPiiEvT_S1_RSaIT0_E, @function
- _ZSt8_DestroyIPiiEvT_S1_RSaIT0_E:
- .LFB2535:
- .cfi_startproc
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- subq $32, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq %rdx, -24(%rbp)
- movq -16(%rbp), %rdx
- movq -8(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call _ZSt8_DestroyIPiEvT_S1_
- nop
- leave
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2535:
- .size _ZSt8_DestroyIPiiEvT_S1_RSaIT0_E, .-_ZSt8_DestroyIPiiEvT_S1_RSaIT0_E
- .section .text._ZNSt15__new_allocatorIiEC2Ev,"axG",@progbits,_ZNSt15__new_allocatorIiEC5Ev,comdat
- .align 2
- .weak _ZNSt15__new_allocatorIiEC2Ev
- .type _ZNSt15__new_allocatorIiEC2Ev, @function
- _ZNSt15__new_allocatorIiEC2Ev:
- .LFB2612:
- .cfi_startproc
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- movq %rdi, -8(%rbp)
- nop
- popq %rbp
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2612:
- .size _ZNSt15__new_allocatorIiEC2Ev, .-_ZNSt15__new_allocatorIiEC2Ev
- .weak _ZNSt15__new_allocatorIiEC1Ev
- .set _ZNSt15__new_allocatorIiEC1Ev,_ZNSt15__new_allocatorIiEC2Ev
- .section .text._ZNSt16allocator_traitsISaIiEE10deallocateERS0_Pim,"axG",@progbits,_ZNSt16allocator_traitsISaIiEE10deallocateERS0_Pim,comdat
- .weak _ZNSt16allocator_traitsISaIiEE10deallocateERS0_Pim
- .type _ZNSt16allocator_traitsISaIiEE10deallocateERS0_Pim, @function
- _ZNSt16allocator_traitsISaIiEE10deallocateERS0_Pim:
- .LFB2614:
- .cfi_startproc
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- subq $32, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq %rdx, -24(%rbp)
- movq -24(%rbp), %rdx
- movq -16(%rbp), %rcx
- movq -8(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call _ZNSt15__new_allocatorIiE10deallocateEPim
- nop
- leave
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2614:
- .size _ZNSt16allocator_traitsISaIiEE10deallocateERS0_Pim, .-_ZNSt16allocator_traitsISaIiEE10deallocateERS0_Pim
- .section .text._ZSt8_DestroyIPiEvT_S1_,"axG",@progbits,_ZSt8_DestroyIPiEvT_S1_,comdat
- .weak _ZSt8_DestroyIPiEvT_S1_
- .type _ZSt8_DestroyIPiEvT_S1_, @function
- _ZSt8_DestroyIPiEvT_S1_:
- .LFB2615:
- .cfi_startproc
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq -16(%rbp), %rdx
- movq -8(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call _ZNSt12_Destroy_auxILb1EE9__destroyIPiEEvT_S3_
- nop
- leave
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2615:
- .size _ZSt8_DestroyIPiEvT_S1_, .-_ZSt8_DestroyIPiEvT_S1_
- .section .text._ZNSt15__new_allocatorIiE10deallocateEPim,"axG",@progbits,_ZNSt15__new_allocatorIiE10deallocateEPim,comdat
- .align 2
- .weak _ZNSt15__new_allocatorIiE10deallocateEPim
- .type _ZNSt15__new_allocatorIiE10deallocateEPim, @function
- _ZNSt15__new_allocatorIiE10deallocateEPim:
- .LFB2674:
- .cfi_startproc
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- subq $32, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq %rdx, -24(%rbp)
- movq -24(%rbp), %rax
- leaq 0(,%rax,4), %rdx
- movq -16(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call _ZdlPvm@PLT
- leave
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2674:
- .size _ZNSt15__new_allocatorIiE10deallocateEPim, .-_ZNSt15__new_allocatorIiE10deallocateEPim
- .section .text._ZNSt12_Destroy_auxILb1EE9__destroyIPiEEvT_S3_,"axG",@progbits,_ZNSt12_Destroy_auxILb1EE9__destroyIPiEEvT_S3_,comdat
- .weak _ZNSt12_Destroy_auxILb1EE9__destroyIPiEEvT_S3_
- .type _ZNSt12_Destroy_auxILb1EE9__destroyIPiEEvT_S3_, @function
- _ZNSt12_Destroy_auxILb1EE9__destroyIPiEEvT_S3_:
- .LFB2675:
- .cfi_startproc
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- nop
- popq %rbp
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2675:
- .size _ZNSt12_Destroy_auxILb1EE9__destroyIPiEEvT_S3_, .-_ZNSt12_Destroy_auxILb1EE9__destroyIPiEEvT_S3_
- .text
- .type _Z41__static_initialization_and_destruction_0ii, @function
- _Z41__static_initialization_and_destruction_0ii:
- .LFB2710:
- .cfi_startproc
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- subq $16, %rsp
- movl %edi, -4(%rbp)
- movl %esi, -8(%rbp)
- cmpl $1, -4(%rbp)
- jne .L31
- cmpl $65535, -8(%rbp)
- jne .L31
- leaq _ZStL8__ioinit(%rip), %rax
- movq %rax, %rdi
- call _ZNSt8ios_base4InitC1Ev@PLT
- leaq __dso_handle(%rip), %rax
- movq %rax, %rdx
- leaq _ZStL8__ioinit(%rip), %rax
- movq %rax, %rsi
- movq _ZNSt8ios_base4InitD1Ev@GOTPCREL(%rip), %rax
- movq %rax, %rdi
- call __cxa_atexit@PLT
- .L31:
- nop
- leave
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2710:
- .size _Z41__static_initialization_and_destruction_0ii, .-_Z41__static_initialization_and_destruction_0ii
- .type _GLOBAL__sub_I__Z4getvv, @function
- _GLOBAL__sub_I__Z4getvv:
- .LFB2711:
- .cfi_startproc
- pushq %rbp
- .cfi_def_cfa_offset 16
- .cfi_offset 6, -16
- movq %rsp, %rbp
- .cfi_def_cfa_register 6
- movl $65535, %esi
- movl $1, %edi
- call _Z41__static_initialization_and_destruction_0ii
- popq %rbp
- .cfi_def_cfa 7, 8
- ret
- .cfi_endproc
- .LFE2711:
- .size _GLOBAL__sub_I__Z4getvv, .-_GLOBAL__sub_I__Z4getvv
- .section .init_array,"aw"
- .align 8
- .quad _GLOBAL__sub_I__Z4getvv
- .hidden DW.ref.__gxx_personality_v0
- .weak DW.ref.__gxx_personality_v0
- .section .data.rel.local.DW.ref.__gxx_personality_v0,"awG",@progbits,DW.ref.__gxx_personality_v0,comdat
- .align 8
- .type DW.ref.__gxx_personality_v0, @object
- .size DW.ref.__gxx_personality_v0, 8
- DW.ref.__gxx_personality_v0:
- .quad __gxx_personality_v0
- .hidden __dso_handle
- .ident "GCC: (GNU) 12.2.1 20230111"
- .section .note.GNU-stack,"",@progbits
- sh-5.1$
复制代码 |
|