Advertisement
andrcontrol

Untitled

Nov 26th, 2021
2,221
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. G::~G() [base object destructor]:
  2.         pushq   %r12
  3.         pushq   %rbp
  4.         pushq   %rbx
  5.         movq    %rdi, %rbx
  6.         movq    56(%rdi), %rdi
  7.         testq   %rdi, %rdi
  8.         je      .L2
  9.         call    operator delete(void*)
  10. .L2:
  11.         movq    32(%rbx), %rdi
  12.         testq   %rdi, %rdi
  13.         je      .L3
  14.         call    operator delete(void*)
  15. .L3:
  16.         movq    16(%rbx), %r12
  17.         movq    8(%rbx), %rbp
  18.         cmpq    %rbp, %r12
  19.         je      .L4
  20. .L8:
  21.         movq    0(%rbp), %rdi
  22.         testq   %rdi, %rdi
  23.         je      .L5
  24.         call    operator delete(void*)
  25.         addq    $24, %rbp
  26.         cmpq    %rbp, %r12
  27.         jne     .L8
  28. .L6:
  29.         movq    8(%rbx), %rbp
  30. .L4:
  31.         testq   %rbp, %rbp
  32.         je      .L1
  33.         popq    %rbx
  34.         movq    %rbp, %rdi
  35.         popq    %rbp
  36.         popq    %r12
  37.         jmp     operator delete(void*)
  38. .L5:
  39.         addq    $24, %rbp
  40.         cmpq    %rbp, %r12
  41.         jne     .L8
  42.         jmp     .L6
  43. .L1:
  44.         popq    %rbx
  45.         popq    %rbp
  46.         popq    %r12
  47.         ret
  48. .LC0:
  49.         .string "vector::_M_fill_insert"
  50. .LC1:
  51.         .string "vector<bool>::_M_fill_insert"
  52.  
  53. G::make_nuance(int, int, std::vector<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > >, std::allocator<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > > >):
  54.         pushq   %r12
  55.         movl    %edx, %r12d
  56.         pushq   %rbp
  57.         movq    %rdi, %rbp
  58.         addq    $8, %rdi
  59.         pushq   %rbx
  60.         movl    %esi, %ebx
  61.         movq    %rcx, %rsi
  62.         subq    $16, %rsp
  63.         call    std::vector<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > >, std::allocator<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > > >::operator=(std::vector<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > >, std::allocator<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > > > const&)
  64.         leal    -1(%rbx), %edx
  65.         movq    40(%rbp), %rsi
  66.         movl    %ebx, 0(%rbp)
  67.         imull   %r12d, %edx
  68.         addl    $1, %ebx
  69.         movq    %rsi, %rax
  70.         movslq  %ebx, %rbx
  71.         addl    $1, %edx
  72.         movl    %edx, 4(%rbp)
  73.         movq    32(%rbp), %rdx
  74.         subq    %rdx, %rax
  75.         sarq    $2, %rax
  76.         cmpq    %rax, %rbx
  77.         ja      .L369
  78.         jnb     .L363
  79.         leaq    (%rdx,%rbx,4), %rax
  80.         cmpq    %rax, %rsi
  81.         je      .L363
  82.         movq    %rax, 40(%rbp)
  83. .L363:
  84.         movq    72(%rbp), %rsi
  85.         movq    56(%rbp), %rdx
  86.         movl    80(%rbp), %eax
  87.         movq    %rsi, %rdi
  88.         subq    %rdx, %rdi
  89.         movq    %rax, %rcx
  90.         leaq    (%rax,%rdi,8), %rax
  91.         cmpq    %rax, %rbx
  92.         jnb     .L364
  93.         testq   %rbx, %rbx
  94.         leaq    63(%rbx), %rax
  95.         cmovns  %rbx, %rax
  96.         sarq    $6, %rax
  97.         leaq    (%rdx,%rax,8), %rdx
  98.         movq    %rbx, %rax
  99.         sarq    $63, %rax
  100.         shrq    $58, %rax
  101.         addq    %rax, %rbx
  102.         andl    $63, %ebx
  103.         subq    %rax, %rbx
  104.         js      .L370
  105.         movl    %ebx, 80(%rbp)
  106.         movq    %rdx, 72(%rbp)
  107.         addq    $16, %rsp
  108.         popq    %rbx
  109.         popq    %rbp
  110.         popq    %r12
  111.         ret
  112. .L370:
  113.         addq    $64, %rbx
  114.         subq    $8, %rdx
  115.         movl    %ebx, 80(%rbp)
  116.         movq    %rdx, 72(%rbp)
  117.         addq    $16, %rsp
  118.         popq    %rbx
  119.         popq    %rbp
  120.         popq    %r12
  121.         ret
  122. .L369:
  123.         movq    %rbx, %rdx
  124.         leaq    4(%rbp), %rcx
  125.         leaq    32(%rbp), %rdi
  126.         subq    %rax, %rdx
  127.         call    std::vector<int, std::allocator<int> >::_M_fill_insert(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, unsigned long, int const&)
  128.         jmp     .L363
  129. .L364:
  130.         movl    %ecx, 8(%rsp)
  131.         movq    %rbx, %rcx
  132.         movq    8(%rsp), %rdx
  133.         addq    $16, %rsp
  134.         popq    %rbx
  135.         leaq    56(%rbp), %rdi
  136.         subq    %rax, %rcx
  137.         popq    %rbp
  138.         xorl    %r8d, %r8d
  139.         popq    %r12
  140.         jmp     std::vector<bool, std::allocator<bool> >::_M_fill_insert(std::_Bit_iterator, unsigned long, bool)
  141. .LC2:
  142.         .string "vector::_M_realloc_insert"
  143. main:
  144.         pushq   %r15
  145.         movl    $_ZSt3cin, %edi
  146.         pushq   %r14
  147.         pushq   %r13
  148.         pushq   %r12
  149.         pushq   %rbp
  150.         pushq   %rbx
  151.         subq    $216, %rsp
  152.         leaq    32(%rsp), %rsi
  153.         call    std::basic_istream<char, std::char_traits<char> >::operator>>(int&)
  154.         leaq    36(%rsp), %rsi
  155.         movq    %rax, %rdi
  156.         call    std::basic_istream<char, std::char_traits<char> >::operator>>(int&)
  157.         leaq    40(%rsp), %rsi
  158.         movq    %rax, %rdi
  159.         call    std::basic_istream<char, std::char_traits<char> >::operator>>(int&)
  160.         movl    32(%rsp), %eax
  161.         pxor    %xmm0, %xmm0
  162.         movq    $0, 168(%rsp)
  163.         movl    $0, 176(%rsp)
  164.         imull   %eax, %eax
  165.         movq    $0, 184(%rsp)
  166.         movl    $0, 192(%rsp)
  167.         movq    $0, 200(%rsp)
  168.         leal    1(%rax), %ebx
  169.         movups  %xmm0, 120(%rsp)
  170.         movslq  %ebx, %rbx
  171.         movups  %xmm0, 136(%rsp)
  172.         leaq    (%rbx,%rbx,2), %rbp
  173.         movups  %xmm0, 152(%rsp)
  174.         salq    $3, %rbp
  175.         movaps  %xmm0, 48(%rsp)
  176.         movq    $0, 64(%rsp)
  177.         movq    %rbp, %rdi
  178.         call    operator new(unsigned long)
  179.         addq    %rax, %rbp
  180.         leaq    -1(%rbx), %rdx
  181.         movq    %rax, 48(%rsp)
  182.         movq    %rbp, 64(%rsp)
  183.         cmpq    $2, %rdx
  184.         jbe     .L372
  185.         movq    %rbx, %rsi
  186.         movq    %rbx, %rcx
  187.         pxor    %xmm0, %xmm0
  188.         movq    %rax, %rdx
  189.         shrq    %rsi
  190.         andq    $-2, %rcx
  191.         addq    %rsi, %rcx
  192.         salq    $4, %rcx
  193.         addq    %rax, %rcx
  194. .L373:
  195.         movups  %xmm0, (%rdx)
  196.         addq    $48, %rdx
  197.         movups  %xmm0, -32(%rdx)
  198.         movups  %xmm0, -16(%rdx)
  199.         cmpq    %rcx, %rdx
  200.         jne     .L373
  201.         movq    %rbx, %rdx
  202.         movq    %rbx, %rsi
  203.         andq    $-2, %rdx
  204.         andl    $1, %esi
  205.         leaq    (%rdx,%rdx,2), %rcx
  206.         leaq    (%rax,%rcx,8), %rax
  207.         cmpq    %rdx, %rbx
  208.         je      .L374
  209.         movq    %rsi, %rbx
  210.         leaq    -1(%rsi), %rdx
  211. .L372:
  212.         pxor    %xmm0, %xmm0
  213.         movq    $0, 16(%rax)
  214.         movups  %xmm0, (%rax)
  215.         testq   %rdx, %rdx
  216.         je      .L374
  217.         movq    $0, 40(%rax)
  218.         movups  %xmm0, 24(%rax)
  219.         cmpq    $2, %rbx
  220.         je      .L374
  221.         movq    $0, 64(%rax)
  222.         movups  %xmm0, 48(%rax)
  223. .L374:
  224.         movl    32(%rsp), %eax
  225.         movq    %rbp, 56(%rsp)
  226.         testl   %eax, %eax
  227.         jle     .L424
  228.         movq    $24, (%rsp)
  229.         xorl    %r12d, %r12d
  230.         movl    $1, 12(%rsp)
  231. .L388:
  232.         movl    $1, %ebx
  233.         jmp     .L387
  234. .L376:
  235.         movl    32(%rsp), %eax
  236.         addl    $1, %ebx
  237.         cmpl    %ebx, %eax
  238.         jl      .L478
  239. .L387:
  240.         leaq    44(%rsp), %rsi
  241.         movl    $_ZSt3cin, %edi
  242.         leaq    112(%rsp), %r13
  243.         call    std::basic_istream<char, std::char_traits<char> >::operator>>(int&)
  244.         movl    44(%rsp), %edx
  245.         cmpl    %edx, %r12d
  246.         leal    1(%rdx), %eax
  247.         cmovl   %edx, %r12d
  248.         cmpl    $1, %eax
  249.         jbe     .L376
  250.         movq    (%rsp), %r15
  251.         addq    48(%rsp), %r15
  252.         movq    8(%r15), %rbp
  253.         cmpq    16(%r15), %rbp
  254.         je      .L377
  255.         movl    32(%rsp), %eax
  256.         movl    %ebx, 0(%rbp)
  257.         addq    $8, %rbp
  258.         addl    $1, %ebx
  259.         movl    %edx, -4(%rbp)
  260.         movq    %rbp, 8(%r15)
  261.         cmpl    %ebx, %eax
  262.         jge     .L387
  263. .L478:
  264.         addl    $1, 12(%rsp)
  265.         movl    12(%rsp), %edi
  266.         addq    $24, (%rsp)
  267.         cmpl    %edi, %eax
  268.         jge     .L388
  269. .L375:
  270.         movq    56(%rsp), %r14
  271.         pxor    %xmm0, %xmm0
  272.         movabsq $-6148914691236517205, %rdx
  273.         movq    $0, 96(%rsp)
  274.         movaps  %xmm0, 80(%rsp)
  275.         movq    %r14, %rbx
  276.         subq    48(%rsp), %rbx
  277.         movq    %rbx, %rax
  278.         sarq    $3, %rax
  279.         imulq   %rdx, %rax
  280.         testq   %rax, %rax
  281.         je      .L479
  282.         movabsq $384307168202282325, %rdx
  283.         leaq    112(%rsp), %r13
  284.         cmpq    %rdx, %rax
  285.         ja      .L480
  286.         movq    %rbx, %rdi
  287.         call    operator new(unsigned long)
  288.         movq    %rax, (%rsp)
  289.         movq    56(%rsp), %r14
  290. .L390:
  291.         movq    (%rsp), %r13
  292.         movq    48(%rsp), %rbp
  293.         movq    %r13, %xmm0
  294.         addq    %r13, %rbx
  295.         punpcklqdq      %xmm0, %xmm0
  296.         movq    %rbx, 96(%rsp)
  297.         movaps  %xmm0, 80(%rsp)
  298.         cmpq    %rbp, %r14
  299.         je      .L429
  300.         movabsq $2305843009213693950, %r15
  301. .L401:
  302.         movq    8(%rbp), %rbx
  303.         subq    0(%rbp), %rbx
  304.         pxor    %xmm3, %xmm3
  305.         movq    $0, 16(%r13)
  306.         movq    %rbx, %rax
  307.         movups  %xmm3, 0(%r13)
  308.         sarq    $3, %rax
  309.         je      .L481
  310.         movabsq $1152921504606846975, %rdi
  311.         cmpq    %rdi, %rax
  312.         ja      .L482
  313.         movq    %rbx, %rdi
  314.         call    operator new(unsigned long)
  315. .L394:
  316.         movq    %rax, %xmm0
  317.         addq    %rax, %rbx
  318.         punpcklqdq      %xmm0, %xmm0
  319.         movq    %rbx, 16(%r13)
  320.         movups  %xmm0, 0(%r13)
  321.         movq    8(%rbp), %rsi
  322.         movq    0(%rbp), %rcx
  323.         cmpq    %rcx, %rsi
  324.         je      .L396
  325.         leaq    -8(%rsi), %rdi
  326.         leaq    15(%rcx), %r9
  327.         movq    %rcx, %rdx
  328.         subq    %rcx, %rdi
  329.         subq    %rax, %r9
  330.         movq    %rdi, %r8
  331.         shrq    $3, %r8
  332.         cmpq    $30, %r9
  333.         jbe     .L430
  334.         testq   %r15, %r8
  335.         je      .L430
  336.         addq    $1, %r8
  337.         xorl    %edx, %edx
  338.         movq    %r8, %rsi
  339.         shrq    %rsi
  340.         salq    $4, %rsi
  341. .L398:
  342.         movdqu  (%rcx,%rdx), %xmm1
  343.         movups  %xmm1, (%rax,%rdx)
  344.         addq    $16, %rdx
  345.         cmpq    %rsi, %rdx
  346.         jne     .L398
  347.         movq    %r8, %rdx
  348.         andq    $-2, %rdx
  349.         leaq    0(,%rdx,8), %rsi
  350.         addq    %rsi, %rcx
  351.         addq    %rax, %rsi
  352.         cmpq    %r8, %rdx
  353.         je      .L400
  354.         movq    (%rcx), %rdx
  355.         movq    %rdx, (%rsi)
  356. .L400:
  357.         leaq    8(%rax,%rdi), %rax
  358. .L396:
  359.         addq    $24, %rbp
  360.         movq    %rax, 8(%r13)
  361.         addq    $24, %r13
  362.         cmpq    %rbp, %r14
  363.         jne     .L401
  364. .L392:
  365.         movq    %r13, 88(%rsp)
  366.         movl    32(%rsp), %esi
  367.         leaq    112(%rsp), %r13
  368.         movl    %r12d, %edx
  369.         leaq    80(%rsp), %rcx
  370.         movq    %r13, %rdi
  371.         call    G::make_nuance(int, int, std::vector<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > >, std::allocator<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > > >)
  372.         leaq    80(%rsp), %rdi
  373.         call    std::vector<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > >, std::allocator<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > > >::~vector() [complete object destructor]
  374.         movslq  36(%rsp), %rax
  375.         movslq  40(%rsp), %rbx
  376.         movq    144(%rsp), %rsi
  377.         movl    $0, (%rsi,%rax,4)
  378.         movl    112(%rsp), %edi
  379.         testl   %edi, %edi
  380.         jle     .L415
  381.         movl    %ebx, (%rsp)
  382.         movq    120(%rsp), %r11
  383.         movl    $1, %r10d
  384.         movl    $1, %r9d
  385.         movq    168(%rsp), %r8
  386.         movl    116(%rsp), %r14d
  387. .L420:
  388.         movl    $1, %ecx
  389.         movl    $-1, %eax
  390.         jmp     .L414
  391. .L484:
  392.         movslq  %eax, %rdx
  393.         movl    (%rsi,%rdx,4), %edx
  394.         cmpl    %edx, (%rsi,%rcx,4)
  395.         cmovl   %ecx, %eax
  396. .L413:
  397.         addq    $1, %rcx
  398.         cmpl    %ecx, %edi
  399.         jl      .L483
  400. .L414:
  401.         movq    %rcx, %rdx
  402.         movq    %r9, %rbp
  403.         shrq    $6, %rdx
  404.         salq    %cl, %rbp
  405.         testq   %rbp, (%r8,%rdx,8)
  406.         jne     .L413
  407.         cmpl    $-1, %eax
  408.         jne     .L484
  409.         movl    %ecx, %eax
  410.         addq    $1, %rcx
  411.         cmpl    %ecx, %edi
  412.         jge     .L414
  413. .L483:
  414.         movslq  %eax, %r12
  415.         leaq    (%rsi,%r12,4), %rbp
  416.         movl    0(%rbp), %edx
  417.         cmpl    %r14d, %edx
  418.         je      .L476
  419.         movl    %eax, %ecx
  420.         movq    %r9, %rbx
  421.         leaq    (%r12,%r12,2), %rax
  422.         movq    %r12, %r15
  423.         salq    %cl, %rbx
  424.         leaq    (%r11,%rax,8), %rcx
  425.         shrq    $6, %r15
  426.         movq    (%rcx), %rax
  427.         movq    8(%rcx), %r12
  428.         orq     %rbx, (%r8,%r15,8)
  429.         cmpq    %r12, %rax
  430.         jne     .L419
  431.         jmp     .L416
  432. .L418:
  433.         movl    0(%rbp), %edx
  434. .L419:
  435.         movl    4(%rax), %ecx
  436.         addl    %edx, %ecx
  437.         movslq  (%rax), %rdx
  438.         leaq    (%rsi,%rdx,4), %rdx
  439.         cmpl    (%rdx), %ecx
  440.         jge     .L417
  441.         movl    %ecx, (%rdx)
  442. .L417:
  443.         addq    $8, %rax
  444.         cmpq    %rax, %r12
  445.         jne     .L418
  446.         movl    116(%rsp), %r14d
  447.         movl    112(%rsp), %edi
  448. .L416:
  449.         addl    $1, %r10d
  450.         cmpl    %r10d, %edi
  451.         jge     .L420
  452. .L476:
  453.         movslq  (%rsp), %rbx
  454. .L415:
  455.         movl    (%rsi,%rbx,4), %esi
  456.         cmpl    116(%rsp), %esi
  457.         je      .L485
  458.         movl    $_ZSt4cout, %edi
  459.         call    std::basic_ostream<char, std::char_traits<char> >::operator<<(int)
  460. .L421:
  461.         leaq    48(%rsp), %rdi
  462.         call    std::vector<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > >, std::allocator<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > > >::~vector() [complete object destructor]
  463.         movq    %r13, %rdi
  464.         call    G::~G() [complete object destructor]
  465.         addq    $216, %rsp
  466.         xorl    %eax, %eax
  467.         popq    %rbx
  468.         popq    %rbp
  469.         popq    %r12
  470.         popq    %r13
  471.         popq    %r14
  472.         popq    %r15
  473.         ret
  474. .L377:
  475.         movabsq $1152921504606846975, %rdi
  476.         movq    (%r15), %r14
  477.         movq    %rbp, %rax
  478.         subq    %r14, %rax
  479.         movq    %rax, 24(%rsp)
  480.         sarq    $3, %rax
  481.         cmpq    %rdi, %rax
  482.         je      .L486
  483.         testq   %rax, %rax
  484.         je      .L425
  485.         movabsq $9223372036854775800, %rdi
  486.         leaq    (%rax,%rax), %rcx
  487.         movq    %rdi, 16(%rsp)
  488.         cmpq    %rcx, %rax
  489.         jbe     .L487
  490. .L379:
  491.         movq    16(%rsp), %rdi
  492.         leaq    112(%rsp), %r13
  493.         call    operator new(unsigned long)
  494.         movq    16(%rsp), %r8
  495.         movl    44(%rsp), %edx
  496.         movq    %rax, %r13
  497.         addq    %rax, %r8
  498.         leaq    8(%rax), %rax
  499. .L380:
  500.         movq    24(%rsp), %rcx
  501.         addq    %r13, %rcx
  502.         movl    %ebx, (%rcx)
  503.         movl    %edx, 4(%rcx)
  504.         cmpq    %r14, %rbp
  505.         je      .L381
  506.         leaq    -8(%rbp), %rcx
  507.         leaq    15(%r14), %rax
  508.         subq    %r14, %rcx
  509.         subq    %r13, %rax
  510.         movq    %rcx, %rsi
  511.         shrq    $3, %rsi
  512.         cmpq    $30, %rax
  513.         jbe     .L428
  514.         movabsq $2305843009213693950, %rax
  515.         testq   %rax, %rsi
  516.         je      .L428
  517.         addq    $1, %rsi
  518.         xorl    %edx, %edx
  519.         movq    %rsi, %rax
  520.         shrq    %rax
  521.         salq    $4, %rax
  522. .L383:
  523.         movdqu  (%r14,%rdx), %xmm2
  524.         movups  %xmm2, 0(%r13,%rdx)
  525.         addq    $16, %rdx
  526.         cmpq    %rdx, %rax
  527.         jne     .L383
  528.         movq    %rsi, %rdi
  529.         andq    $-2, %rdi
  530.         leaq    0(,%rdi,8), %rdx
  531.         leaq    (%r14,%rdx), %rax
  532.         addq    %r13, %rdx
  533.         cmpq    %rdi, %rsi
  534.         je      .L385
  535.         movq    (%rax), %rax
  536.         movq    %rax, (%rdx)
  537. .L385:
  538.         leaq    16(%r13,%rcx), %rax
  539. .L381:
  540.         testq   %r14, %r14
  541.         je      .L386
  542.         movq    %r14, %rdi
  543.         movq    %rax, 24(%rsp)
  544.         movq    %r8, 16(%rsp)
  545.         call    operator delete(void*)
  546.         movq    24(%rsp), %rax
  547.         movq    16(%rsp), %r8
  548. .L386:
  549.         movq    %r13, %xmm0
  550.         movq    %rax, %xmm4
  551.         movq    %r8, 16(%r15)
  552.         punpcklqdq      %xmm4, %xmm0
  553.         movups  %xmm0, (%r15)
  554.         jmp     .L376
  555. .L481:
  556.         xorl    %eax, %eax
  557.         jmp     .L394
  558. .L487:
  559.         testq   %rcx, %rcx
  560.         jne     .L488
  561.         movl    $8, %eax
  562.         xorl    %r8d, %r8d
  563.         xorl    %r13d, %r13d
  564.         jmp     .L380
  565. .L425:
  566.         movq    $8, 16(%rsp)
  567.         jmp     .L379
  568. .L430:
  569.         movq    %rax, %rcx
  570. .L397:
  571.         movl    (%rdx), %r9d
  572.         movl    4(%rdx), %r8d
  573.         addq    $8, %rdx
  574.         addq    $8, %rcx
  575.         movl    %r9d, -8(%rcx)
  576.         movl    %r8d, -4(%rcx)
  577.         cmpq    %rdx, %rsi
  578.         jne     .L397
  579.         jmp     .L400
  580. .L428:
  581.         movq    %r13, %rdx
  582.         movq    %r14, %rax
  583. .L382:
  584.         movl    (%rax), %edi
  585.         movl    4(%rax), %esi
  586.         addq    $8, %rax
  587.         addq    $8, %rdx
  588.         movl    %edi, -8(%rdx)
  589.         movl    %esi, -4(%rdx)
  590.         cmpq    %rbp, %rax
  591.         jne     .L382
  592.         jmp     .L385
  593. .L485:
  594.         orl     $-1, %esi
  595.         movl    $_ZSt4cout, %edi
  596.         call    std::basic_ostream<char, std::char_traits<char> >::operator<<(int)
  597.         jmp     .L421
  598. .L479:
  599.         movq    $0, (%rsp)
  600.         jmp     .L390
  601. .L429:
  602.         movq    (%rsp), %r13
  603.         jmp     .L392
  604. .L424:
  605.         xorl    %r12d, %r12d
  606.         jmp     .L375
  607. .L480:
  608.         call    std::__throw_bad_alloc()
  609. .L482:
  610.         call    std::__throw_bad_alloc()
  611. .L488:
  612.         movabsq $1152921504606846975, %rax
  613.         cmpq    %rax, %rcx
  614.         cmova   %rax, %rcx
  615.         leaq    0(,%rcx,8), %rax
  616.         movq    %rax, 16(%rsp)
  617.         jmp     .L379
  618. .L486:
  619.         movl    $.LC2, %edi
  620.         leaq    112(%rsp), %r13
  621.         call    std::__throw_length_error(char const*)
  622.         movq    %rax, %rbx
  623.         jmp     .L422
  624.         movq    %rax, %rbx
  625.         leaq    112(%rsp), %r13
  626.         jmp     .L423
  627.         movq    %rax, %rdi
  628.         jmp     .L403
  629.         movq    %rax, %rbx
  630.         jmp     .L409
  631.  
  632. main.cold:
  633. .L422:
  634.         leaq    80(%rsp), %rdi
  635.         call    std::vector<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > >, std::allocator<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > > >::~vector() [complete object destructor]
  636. .L409:
  637.         leaq    48(%rsp), %rdi
  638.         call    std::vector<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > >, std::allocator<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > > >::~vector() [complete object destructor]
  639. .L423:
  640.         movq    %r13, %rdi
  641.         call    G::~G() [complete object destructor]
  642.         movq    %rbx, %rdi
  643.         call    _Unwind_Resume
  644. .L403:
  645.         call    __cxa_begin_catch
  646.         movq    (%rsp), %rbx
  647. .L406:
  648.         cmpq    %rbx, %r13
  649.         jne     .L489
  650.         call    __cxa_rethrow
  651. .L489:
  652.         movq    (%rbx), %rdi
  653.         testq   %rdi, %rdi
  654.         je      .L405
  655.         call    operator delete(void*)
  656. .L405:
  657.         addq    $24, %rbx
  658.         jmp     .L406
  659.         movq    %rax, %rbx
  660.         call    __cxa_end_catch
  661.         movq    80(%rsp), %rdi
  662.         testq   %rdi, %rdi
  663.         je      .L408
  664.         call    operator delete(void*)
  665. .L408:
  666.         leaq    112(%rsp), %r13
  667.         jmp     .L409
  668.  
  669. _GLOBAL__sub_I_main:
  670.         subq    $8, %rsp
  671.         movl    $_ZStL8__ioinit, %edi
  672.         call    std::ios_base::Init::Init() [complete object constructor]
  673.         movl    $__dso_handle, %edx
  674.         movl    $_ZStL8__ioinit, %esi
  675.         movl    $_ZNSt8ios_base4InitD1Ev, %edi
  676.         addq    $8, %rsp
  677.         jmp     __cxa_atexit
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement