
/* WARNING: Function: __x86.get_pc_thunk.si replaced with injection: get_pc_thunk_si */
/* WARNING: Enum "DT": Some values do not have unique names */
/* WARNING: Enum "ELFOSABI": Some values do not have unique names */
/* DWARF original prototype: void do_relocate_sections(AArch64_relobj<64,_false> * this,
   Symbol_table * symtab, Layout * layout, uchar * pshdrs, Output_file * of, Views * pviews) */

void __thiscall
anon_unknown.dwarf_109b185::AArch64_relobj<64,_false>::do_relocate_sections
          (AArch64_relobj<64,_false> *this,Symbol_table *symtab,Layout *layout,uchar *pshdrs,
          Output_file *of,Views *pviews)

{
  General_options *pGVar1;
  Target_info *pTVar2;
  _Hash_node_base *p_Var3;
  uchar *puVar4;
  _Hash_node_base *p_Var5;
  _Hash_node_base *p_Var6;
  _Hash_node_base *p_Var7;
  undefined *puVar8;
  AArch64_reloc_property *pAVar9;
  uint uVar10;
  uint64_t uVar11;
  Elf_Addr EVar12;
  bool bVar13;
  uint end_shndx;
  __node_base *p_Var14;
  pointer pVVar15;
  _Hash_node_base *p_Var16;
  undefined *puVar17;
  Output_relaxed_input_section *pOVar18;
  uint uVar19;
  uint uVar20;
  uint uVar21;
  int iVar22;
  int iVar23;
  uint uVar24;
  int iVar25;
  uint uVar26;
  pointer_conflict ppSVar27;
  Stub_table<64,_false> *pSVar28;
  _Rb_tree_color _Var29;
  int iVar30;
  _Hash_node_base *p_Var31;
  uint *puVar32;
  uint uVar33;
  uint uVar34;
  _Hash_node_base *p_Var35;
  uint64_t uVar36;
  AArch64_relobj<64,_false> *a64relobj;
  AArch64_relobj<64,_false> *pAVar37;
  undefined **__k;
  uint local_b4;
  int local_b0;
  _Hash_node_base *local_ac;
  _Rb_tree_node_base *local_7c;
  uint local_78;
  Stub_table<64,_false> *local_5c;
  Stub_table<64,_false> *local_58;
  _Rb_tree_node_base *local_34;
  _Rb_tree_node_base *local_30;
  Section_id sid;
  
  end_shndx = *(int *)&this->field_0x28 - 1;
  __k = (undefined **)0x1;
  a64relobj = (AArch64_relobj<64,_false> *)pviews;
  gold::Sized_relobj_file<64,_false>::relocate_section_range
            ((Sized_relobj_file<64,_false> *)this,symtab,layout,pshdrs,of,pviews,1,end_shndx);
  pGVar1 = gold::parameters->options_;
  if (pGVar1 == (General_options *)0x0) {
                    /* WARNING: Subroutine does not return */
    gold::do_gold_unreachable("../../gold/parameters.h",0x5c,"options");
  }
  if ((pGVar1->relocatable_).value == false) {
    local_58 = *(Stub_table<64,_false> **)&this->field_0x28;
    if ((((pGVar1->fix_cortex_a53_843419_).value != false) ||
        ((pGVar1->fix_cortex_a53_835769_).value != false)) &&
       ((Stub_table<64,_false> *)0x1 < local_58)) {
      ppSVar27 = (this->stub_tables_).
                 super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>
                 ._M_impl._M_start;
      if (7 < (uint)((int)(this->stub_tables_).
                          super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>
                          ._M_impl._M_finish - (int)ppSVar27)) {
        local_5c = (Stub_table<64,_false> *)0x1;
        do {
          pSVar28 = ppSVar27[(int)local_5c];
          if (pSVar28 != (Stub_table<64,_false> *)0x0) {
            Stub_table<64,_false>::find_erratum_stubs_for_input_section
                      (local_5c,a64relobj,(uint)__k);
            local_7c = local_34;
            pVVar15 = (pviews->
                      super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>
                      )._M_impl._M_start + (int)local_5c;
            if (pVVar15->is_input_output_view == false) {
              local_b4 = 0;
              local_b0 = 0;
            }
            else {
              __k = (undefined **)local_5c;
              if ((Stub_table<64,_false> *)0xfeff < local_5c) {
                elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum
                          ((Elf_file<64,_false,_gold::Object> *)&this->field_0x90);
                __k = (undefined **)
                      ((int)&(local_5c->super_Output_data)._vptr_Output_data +
                      *(int *)&this->field_0xa4);
              }
              a64relobj = this;
              pOVar18 = gold::Output_section::find_relaxed_input_section
                                  (*(Output_section **)(*(int *)&this->field_0x38 + (int)__k * 4),
                                   (Relobj *)this,(uint)__k);
              if (pOVar18 == (Output_relaxed_input_section *)0x0) {
                    /* WARNING: Subroutine does not return */
                gold::do_gold_unreachable
                          ("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs");
              }
              if (((pOVar18->super_Output_section_data_build).super_Output_section_data.
                   super_Output_data.field_0x1c & 1) == 0) goto LAB_001e670d;
              uVar10 = (uint)(pOVar18->super_Output_section_data_build).super_Output_section_data.
                             super_Output_data.address_;
              local_b4 = uVar10 - (int)pVVar15->address;
              local_b0 = (*(int *)((int)&(pOVar18->super_Output_section_data_build).
                                         super_Output_section_data.super_Output_data.address_ + 4) -
                         *(int *)((int)&pVVar15->address + 4)) -
                         (uint)(uVar10 < (uint)pVVar15->address);
            }
            if (local_34 != local_30) {
              _Var29 = local_34[1]._M_color;
              uVar10 = (uint)pVVar15->address;
              uVar24 = *(uint *)(_Var29 + 0x1c);
              uVar19 = local_b4 + uVar10;
              iVar30 = local_b0 + *(int *)((int)&pVVar15->address + 4) +
                       (uint)CARRY4(local_b4,uVar10);
              local_78 = *(uint *)(_Var29 + 0x24);
              if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) {
LAB_001e674b:
                    /* WARNING: Subroutine does not return */
                gold::do_gold_unreachable("../../gold/aarch64.cc",0x401,"erratum_address");
              }
              if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||
                  local_78 != uVar24 + uVar19) {
LAB_001e6234:
                    /* WARNING: Subroutine does not return */
                gold::do_gold_unreachable
                          ("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");
              }
              puVar4 = pVVar15->view;
              do {
                uVar24 = *(uint *)(puVar4 + local_b4 + uVar24);
                uVar20 = *(uint *)(_Var29 + 0x20);
                if (uVar20 == 0xffffffff) {
                    /* WARNING: Subroutine does not return */
                  gold::do_gold_unreachable("../../gold/aarch64.cc",999,"update_erratum_insn");
                }
                if (*(int *)(_Var29 + 0x10) == 4) {
                  if ((uVar24 & 0x3b000000) != 0x39000000) {
                    /* WARNING: Subroutine does not return */
                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");
                  }
                  if ((uVar20 & 0x3b000000) != 0x39000000) {
                    /* WARNING: Subroutine does not return */
                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");
                  }
                  if ((uVar24 & 0x1f) != (uVar20 & 0x1f)) {
                    /* WARNING: Subroutine does not return */
                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");
                  }
                  if ((uVar24 >> 5 & 0x1f) != (uVar20 >> 5 & 0x1f)) {
                    /* WARNING: Subroutine does not return */
                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");
                  }
                  iVar25 = *(int *)(_Var29 + 0x2c);
                  *(uint *)(_Var29 + 0x20) = uVar24;
                  uVar24 = *(uint *)(puVar4 + local_b4 + iVar25);
                  if ((uVar24 & 0xffffffe0) != 0xd53bd040) {
                    if ((uVar24 & 0x9f000000) == 0x90000000) {
                      uVar26 = iVar25 + uVar19;
                      uVar33 = uVar24 >> 3 & 0x1ffffc;
                      uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;
                      uVar20 = (uVar26 & 0xfffff000) - uVar26;
                      uVar21 = uVar20 + uVar34;
                      iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -
                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)
                               + (uint)(0xffefffff < uVar21);
                      if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))
                      goto LAB_001e6269;
                      if ((uVar24 & 0x1f000000) != 0x10000000) {
                    /* WARNING: Subroutine does not return */
                        gold::do_gold_unreachable
                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");
                      }
                      *(uint *)(puVar4 + local_b4 + iVar25) =
                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;
                    }
                    else if ((iVar25 == 0) ||
                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040
                            )) {
                    /* WARNING: Subroutine does not return */
                      gold::do_gold_unreachable
                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");
                    }
                  }
                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;
                  iVar25 = (int)(pSVar28->super_Output_data).address_;
                }
                else {
                  if (*(int *)(_Var29 + 0x10) != 5) {
                    /* WARNING: Subroutine does not return */
                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");
                  }
                  if (uVar24 != uVar20) {
                    /* WARNING: Subroutine does not return */
                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");
                  }
LAB_001e6269:
                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;
                  iVar25 = (int)(pSVar28->super_Output_data).address_;
                  if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;
                  *(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4) =
                       (iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +
                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff | 0x14000000;
                }
                if (*(int *)(_Var29 + 0x20) == -1) {
                    /* WARNING: Subroutine does not return */
                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");
                }
                if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;
                iVar22 = *(int *)(_Var29 + 0xc) +
                         (iVar25 + (int)pSVar28->reloc_stubs_size_ + 3U & 0xfffffffc);
                if (1 < *(int *)(_Var29 + 0x10) - 4U) {
                    /* WARNING: Subroutine does not return */
                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");
                }
                iVar23 = iVar22 + 4;
                *(int *)(puVar4 + (iVar22 - iVar25) + (iVar25 - uVar10)) = *(int *)(_Var29 + 0x20);
                if ((*(uint *)(_Var29 + 8) & *(uint *)(_Var29 + 4)) == 0xffffffff)
                goto LAB_001e67c7;
                *(uint *)(puVar4 + (iVar23 - iVar25) + (iVar25 - uVar10)) =
                     *(uint *)(_Var29 + 4) - iVar23 >> 2 & 0x3ffffff | 0x14000000;
                if (*(int *)(_Var29 + 0x20) == -1) {
                    /* WARNING: Subroutine does not return */
                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")
                  ;
                }
                *(undefined4 *)(_Var29 + 0x20) = 0xffffffff;
                local_7c = (_Rb_tree_node_base *)std::_Rb_tree_increment(local_7c);
                if (local_30 == local_7c) break;
                _Var29 = local_7c[1]._M_color;
                uVar24 = *(uint *)(_Var29 + 0x1c);
                local_78 = *(uint *)(_Var29 + 0x24);
                if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) goto LAB_001e674b;
                if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||
                    local_78 != uVar24 + uVar19) goto LAB_001e6234;
              } while( true );
            }
          }
          local_5c = (Stub_table<64,_false> *)
                     ((int)&(local_5c->super_Output_data)._vptr_Output_data + 1);
          if (local_5c == local_58) {
            local_58 = *(Stub_table<64,_false> **)&this->field_0x28;
            goto LAB_001e5adf;
          }
          ppSVar27 = (this->stub_tables_).
                     super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>
                     ._M_impl._M_start;
        } while (local_5c <
                 (Stub_table<64,_false> *)
                 ((int)(this->stub_tables_).
                       super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>
                       ._M_impl._M_finish - (int)ppSVar27 >> 2));
      }
                    /* WARNING: Subroutine does not return */
      gold::do_gold_unreachable("../../gold/aarch64.cc",0x6f6,"stub_table");
    }
LAB_001e5adf:
    if (gold::parameters->target_ == (Target *)0x0) {
                    /* WARNING: Subroutine does not return */
      gold::do_gold_unreachable("../../gold/parameters.h",0x69,"target");
    }
    pTVar2 = gold::parameters->target_->pti_;
    if (((pTVar2->machine_code != EM_AARCH64) || (pTVar2->size != 0x40)) ||
       (pTVar2->is_big_endian != false)) {
                    /* WARNING: Subroutine does not return */
      gold::do_gold_unreachable("../../gold/aarch64.cc",0xc2e,"current_target");
    }
    if ((Stub_table<64,_false> *)0x1 < local_58) {
      pSVar28 = (Stub_table<64,_false> *)0x1;
      do {
        p_Var14 = std::
                  _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>
                  ::_M_find_before_node
                            ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>
                              *)((uint)pSVar28 ^ (uint)this),(size_type)a64relobj,(key_type *)__k,
                             end_shndx);
        if (((((p_Var14 != (__node_base *)0x0) && (p_Var14->_M_nxt != (_Hash_node_base *)0x0)) &&
             (p_Var3 = p_Var14->_M_nxt[3]._M_nxt, p_Var3 != (_Hash_node_base *)0x0)) &&
            ((p_Var35 = p_Var3[0xd]._M_nxt, p_Var35 != (_Hash_node_base *)0x0 &&
             (p_Var3 == p_Var35[8]._M_nxt)))) &&
           ((p_Var35[0xc]._M_nxt != (_Hash_node_base *)0x0 ||
            (p_Var35[0x15]._M_nxt != (_Hash_node_base *)0x0)))) {
          if ((Stub_table<64,_false> *)(*(int *)&this->field_0x3c - *(int *)&this->field_0x38 >> 2)
              <= pSVar28) {
                    /* WARNING: Subroutine does not return */
            gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");
          }
          if (*(int *)(*(int *)&this->field_0x38 + (int)pSVar28 * 4) == 0) {
                    /* WARNING: Subroutine does not return */
            gold::do_gold_unreachable("../../gold/aarch64.cc",0x889,"do_relocate_sections");
          }
          pVVar15 = (pviews->
                    super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>
                    )._M_impl._M_start + (int)pSVar28;
          puVar4 = pVVar15->view;
          if (puVar4 == (uchar *)0x0) {
                    /* WARNING: Subroutine does not return */
            gold::do_gold_unreachable("../../gold/aarch64.cc",0x892,"do_relocate_sections");
          }
          if (((uint)p_Var35[7]._M_nxt & 1) == 0) {
LAB_001e670d:
                    /* WARNING: Subroutine does not return */
            gold::do_gold_unreachable("../../gold/output.h",0xc5,"address");
          }
          p_Var3 = p_Var35[1]._M_nxt;
          p_Var5 = p_Var35[2]._M_nxt;
          EVar12 = pVVar15->address;
          if (((uint)p_Var35[7]._M_nxt & 2) == 0) {
                    /* WARNING: Subroutine does not return */
            gold::do_gold_unreachable("../../gold/output.h",0xcf,"data_size");
          }
          p_Var6 = p_Var35[3]._M_nxt;
          local_ac = p_Var35[0xb]._M_nxt;
          if (local_ac != (_Hash_node_base *)0x0) {
            p_Var35 = local_ac[5]._M_nxt;
            p_Var31 = p_Var35[3]._M_nxt;
            if (p_Var31 == (_Hash_node_base *)0xffffffff) {
LAB_001e5d9c:
                    /* WARNING: Subroutine does not return */
              gold::do_gold_unreachable("../../gold/aarch64.cc",0x370,"offset");
            }
            do {
              p_Var7 = p_Var35[4]._M_nxt;
              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::
                   singleton == '\0') &&
                 (iVar30 = __cxa_guard_acquire(&(anonymous_namespace)::
                                                Stub_template_repertoire<false>::
                                                get_stub_template(int)::singleton), iVar30 != 0)) {
                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::
                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::
                             Stub_template_repertoire()::template_ST_NONE;
                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::
                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;
                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::
                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;
                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::
                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;
                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::
                                Stub_template_repertoire()::template_ST_E_843419;
                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::
                                Stub_template_repertoire()::template_ST_E_835769;
                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::
                                     get_stub_template(int)::singleton);
                __k = &__dso_handle;
                a64relobj = (AArch64_relobj<64,_false> *)
                            &(anonymous_namespace)::Stub_template_repertoire<false>::
                             get_stub_template(int)::singleton;
                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);
              }
              if (p_Var6 < p_Var31 + (int)(&(anonymous_namespace)::Stub_template_repertoire<false>::
                                            get_stub_template(int)::singleton)[(int)p_Var7][1]) {
                    /* WARNING: Subroutine does not return */
                gold::do_gold_unreachable("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub");
              }
              p_Var16 = (_Hash_node_base *)((int)&p_Var3->_M_nxt + (int)&p_Var31->_M_nxt);
              iVar30 = (int)&p_Var5->_M_nxt + (uint)CARRY4((uint)p_Var31,(uint)p_Var3);
              p_Var7 = p_Var35[4]._M_nxt;
              puVar32 = (uint *)((int)p_Var31 + (int)p_Var3 + ((int)puVar4 - (int)EVar12));
              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::
                   singleton == '\0') &&
                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::
                                                Stub_template_repertoire<false>::
                                                get_stub_template(int)::singleton), iVar25 != 0)) {
                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::
                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::
                             Stub_template_repertoire()::template_ST_NONE;
                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::
                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;
                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::
                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;
                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::
                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;
                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::
                                Stub_template_repertoire()::template_ST_E_843419;
                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::
                                Stub_template_repertoire()::template_ST_E_835769;
                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::
                                     get_stub_template(int)::singleton);
                __k = &__dso_handle;
                a64relobj = (AArch64_relobj<64,_false> *)
                            &(anonymous_namespace)::Stub_template_repertoire<false>::
                             get_stub_template(int)::singleton;
                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);
              }
              p_Var31 = p_Var35[4]._M_nxt;
              puVar8 = (&(anonymous_namespace)::Stub_template_repertoire<false>::
                         get_stub_template(int)::singleton)[(int)p_Var7][1];
              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::
                   singleton == '\0') &&
                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::
                                                Stub_template_repertoire<false>::
                                                get_stub_template(int)::singleton), iVar25 != 0)) {
                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::
                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::
                             Stub_template_repertoire()::template_ST_NONE;
                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::
                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;
                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::
                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;
                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::
                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;
                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::
                                Stub_template_repertoire()::template_ST_E_843419;
                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::
                                Stub_template_repertoire()::template_ST_E_835769;
                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::
                                     get_stub_template(int)::singleton);
                __k = &__dso_handle;
                a64relobj = (AArch64_relobj<64,_false> *)
                            &(anonymous_namespace)::Stub_template_repertoire<false>::
                             get_stub_template(int)::singleton;
                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);
              }
              if (0 < (int)puVar8) {
                if (*puVar32 !=
                    *(uint *)*(&(anonymous_namespace)::Stub_template_repertoire<false>::
                                get_stub_template(int)::singleton)[(int)p_Var31]) {
LAB_001e68a0:
                    /* WARNING: Subroutine does not return */
                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");
                }
                puVar17 = (undefined *)0x0;
                while (puVar17 = puVar17 + 1, puVar8 != puVar17) {
                  if (puVar32[(int)puVar17] !=
                      *(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::
                                        get_stub_template(int)::singleton)[(int)p_Var31] +
                               puVar17 * 4)) goto LAB_001e68a0;
                }
              }
              pAVar37 = (AArch64_relobj<64,_false> *)p_Var35[2]._M_nxt;
              p_Var31 = p_Var35 + 1;
              p_Var7 = p_Var31->_M_nxt;
              uVar11 = *(uint64_t *)p_Var31;
              uVar36 = *(uint64_t *)p_Var31;
              if (((uint)pAVar37 & (uint)p_Var7) == 0xffffffff) {
LAB_001e67c7:
                    /* WARNING: Subroutine does not return */
                gold::do_gold_unreachable("../../gold/aarch64.cc",0x359,"destination_address");
              }
              p_Var35 = p_Var35[4]._M_nxt;
              if (p_Var35 == (_Hash_node_base *)0x2) {
                puVar32[2] = (uint)p_Var7;
                puVar32[3] = (uint)pAVar37;
              }
              else if (p_Var35 == (_Hash_node_base *)0x3) {
                puVar32[4] = (int)(p_Var7 + -1) - (int)p_Var16;
                puVar32[5] = (int)pAVar37 +
                             (((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -
                             (uint)(p_Var7 + -1 < p_Var16));
              }
              else {
                if (p_Var35 != (_Hash_node_base *)0x1) {
                    /* WARNING: Subroutine does not return */
                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");
                }
                iVar30 = (int)pAVar37 +
                         (-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -
                         iVar30);
                uVar10 = ((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000) >> 0xc;
                *puVar32 = ((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |
                           (uVar10 & 3) << 0x1d | *puVar32 & 0x9f00001f;
                if (1 < iVar30 + 1U) {
                    /* WARNING: Subroutine does not return */
                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");
                }
                pAVar9 = aarch64_reloc_property_table->table_[0x15];
                if (pAVar9 == (AArch64_reloc_property *)0x0) {
                    /* WARNING: Subroutine does not return */
                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");
                }
                uVar36 = (*pAVar9->rvalue_bit_select_func_)(uVar36);
                iVar30 = pAVar9->reloc_inst_ * 0x10;
                if ((*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1) ||
                   (uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),
                   uVar10 == 0xffffffff)) {
                    /* WARNING: Subroutine does not return */
                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");
                }
                uVar24 = (int)uVar36 << ((byte)uVar10 & 0x1f);
                if ((uVar10 & 0x20) != 0) {
                  uVar24 = 0;
                }
                puVar32[1] = ~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]
                             | uVar24;
                bVar13 = (*pAVar9->rvalue_checkup_func_)(uVar11);
                a64relobj = pAVar37;
                if (!bVar13) {
                    /* WARNING: Subroutine does not return */
                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");
                }
              }
              local_ac = local_ac->_M_nxt;
              if (local_ac == (_Hash_node_base *)0x0) break;
              p_Var35 = local_ac[5]._M_nxt;
              p_Var31 = p_Var35[3]._M_nxt;
              if (p_Var31 == (_Hash_node_base *)0xffffffff) goto LAB_001e5d9c;
            } while( true );
          }
        }
        pSVar28 = (Stub_table<64,_false> *)
                  ((int)&(pSVar28->super_Output_data)._vptr_Output_data + 1);
      } while (pSVar28 != local_58);
    }
  }
  return;
}



/* WARNING: Function: __i686.get_pc_thunk.si replaced with injection: get_pc_thunk_si */

void FUN_001e5a30(uint param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4,
                 undefined4 param_5,int *param_6)

{
  char cVar1;
  int iVar2;
  int *piVar3;
  uint uVar4;
  uint uVar5;
  int iVar6;
  int *piVar7;
  int iVar8;
  uint uVar9;
  int iVar10;
  uint uVar11;
  uint *puVar12;
  int iVar13;
  int iVar14;
  undefined4 extraout_ECX;
  int iVar15;
  uint *puVar16;
  int iVar17;
  uint uVar18;
  int iVar19;
  uint uVar20;
  undefined **ppuVar21;
  uint *puVar22;
  uint uVar23;
  undefined4 *puVar24;
  int local_b0;
  int *local_ac;
  uint local_7c;
  uint *local_78;
  undefined **local_74;
  uint local_5c;
  uint local_58;
  uint local_34;
  uint local_30;
  uint local_24;
  uint local_20;
  
  ppuVar21 = &__DT_PLTGOT;
  iVar2 = *(int *)(param_1 + 0x28) + -1;
  FUN_00325a00(param_1,param_2,param_3,param_4,param_5,param_6,1,iVar2,*(int *)(param_1 + 0x28));
  iVar8 = *(int *)(DAT_005ea7c8 + 8);
  if (iVar8 == 0) {
                    /* WARNING: Subroutine does not return */
    FUN_002446e0("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT);
  }
  if (*(char *)(iVar8 + 0x318d) == '\0') {
    local_58 = *(uint *)(param_1 + 0x28);
    uVar18 = local_58;
    if (((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&
       (1 < local_58)) {
      iVar8 = *(int *)(param_1 + 0x13c);
      iVar19 = *(int *)(param_1 + 0x140);
      if (7 < (uint)(iVar19 - iVar8)) {
        local_5c = 1;
        do {
          ppuVar21 = (undefined **)(local_5c * 4);
          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);
          if (puVar24 != (undefined4 *)0x0) {
            FUN_001d6d60(local_5c);
            local_7c = local_34;
            piVar7 = (int *)(local_5c * 0x1c + *param_6);
            if ((char)piVar7[6] == '\0') {
              puVar22 = (uint *)0x0;
              local_b0 = 0;
            }
            else {
              uVar18 = local_5c;
              if (0xfeff < local_5c) {
                FUN_00108090(param_1 + 0x90);
                uVar18 = local_5c + *(int *)(param_1 + 0xa4);
                ppuVar21 = (undefined **)(uVar18 * 4);
              }
              local_74 = &__DT_PLTGOT;
              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1
                                   ,uVar18);
              if (iVar8 == 0) {
                    /* WARNING: Subroutine does not return */
                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",
                             extraout_ECX);
              }
              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;
              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);
              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -
                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);
              ppuVar21 = local_74;
            }
            local_74 = &__DT_PLTGOT;
            uVar18 = local_34;
            if (local_34 != local_30) {
              iVar8 = *(int *)(local_34 + 0x10);
              uVar4 = piVar7[1];
              uVar18 = *(uint *)(iVar8 + 0x1c);
              uVar9 = (int)puVar22 + uVar4;
              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);
              local_78 = *(uint **)(iVar8 + 0x24);
              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {
LAB_001e674b:
                    /* WARNING: Subroutine does not return */
                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");
              }
              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||
                  local_78 != (uint *)(uVar18 + uVar9)) {
LAB_001e6234:
                    /* WARNING: Subroutine does not return */
                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");
              }
              piVar7 = (int *)*piVar7;
              iVar10 = (int)piVar7 + (int)puVar22;
              puVar12 = puVar22;
              do {
                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);
                uVar11 = *(uint *)(iVar8 + 0x20);
                if (uVar11 == 0xffffffff) {
                    /* WARNING: Subroutine does not return */
                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");
                }
                if (*(int *)(iVar8 + 0x10) == 4) {
                  if ((uVar18 & 0x3b000000) != 0x39000000) {
                    /* WARNING: Subroutine does not return */
                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");
                  }
                  if ((uVar11 & 0x3b000000) != 0x39000000) {
                    /* WARNING: Subroutine does not return */
                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");
                  }
                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {
                    /* WARNING: Subroutine does not return */
                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");
                  }
                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {
                    /* WARNING: Subroutine does not return */
                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");
                  }
                  iVar17 = *(int *)(iVar8 + 0x2c);
                  *(uint *)(iVar8 + 0x20) = uVar18;
                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);
                  puVar12 = (uint *)*puVar16;
                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {
                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {
                      uVar5 = iVar17 + uVar9;
                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;
                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;
                      uVar18 = (uVar5 & 0xfffff000) - uVar5;
                      uVar11 = uVar18 + uVar20;
                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -
                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +
                               (uint)(0xffefffff < uVar11);
                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))
                      goto LAB_001e6269;
                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {
                    /* WARNING: Subroutine does not return */
                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");
                      }
                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |
                                 (uint)puVar12 & 0x1f00001f;
                    }
                    else if ((iVar17 == 0) ||
                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=
                             0xd53bd040)) {
                    /* WARNING: Subroutine does not return */
                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")
                      ;
                    }
                  }
                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;
                  iVar17 = puVar24[1];
                }
                else {
                  if (*(int *)(iVar8 + 0x10) != 5) {
                    /* WARNING: Subroutine does not return */
                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");
                  }
                  if (uVar18 != uVar11) {
                    /* WARNING: Subroutine does not return */
                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");
                  }
LAB_001e6269:
                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;
                  iVar17 = puVar24[1];
                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;
                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =
                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +
                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;
                }
                uVar18 = (iVar17 - uVar4) + (int)piVar7;
                if (*(int *)(iVar8 + 0x20) == -1) {
                    /* WARNING: Subroutine does not return */
                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");
                }
                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;
                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);
                if (1 < *(int *)(iVar8 + 0x10) - 4U) {
                    /* WARNING: Subroutine does not return */
                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");
                }
                iVar15 = iVar13 + 4;
                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);
                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;
                *(uint *)(uVar18 + (iVar15 - iVar17)) =
                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;
                if (*(int *)(iVar8 + 0x20) == -1) {
                    /* WARNING: Subroutine does not return */
                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");
                }
                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;
                local_7c = thunk_FUN_003af660(local_7c);
                ppuVar21 = local_74;
                if (local_30 == local_7c) break;
                iVar8 = *(int *)(local_7c + 0x10);
                uVar18 = *(uint *)(iVar8 + 0x1c);
                puVar12 = (uint *)(uVar18 + uVar9);
                local_78 = *(uint **)(iVar8 + 0x24);
                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;
                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||
                    local_78 != puVar12) goto LAB_001e6234;
              } while( true );
            }
          }
          local_5c = local_5c + 1;
          if (local_5c == local_58) {
            local_58 = *(uint *)(param_1 + 0x28);
            goto LAB_001e5adf;
          }
          iVar8 = *(int *)(param_1 + 0x13c);
          iVar19 = *(int *)(param_1 + 0x140);
        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));
      }
                    /* WARNING: Subroutine does not return */
      FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);
    }
LAB_001e5adf:
    piVar7 = *(int **)(DAT_005ea7c8 + 0xc);
    if (piVar7 == (int *)0x0) {
                    /* WARNING: Subroutine does not return */
      FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);
    }
    piVar3 = (int *)piVar7[1];
    if (((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0')) {
                    /* WARNING: Subroutine does not return */
      FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);
    }
    if (1 < local_58) {
      uVar18 = 1;
      puVar12 = &local_24;
      do {
        local_24 = param_1;
        local_20 = uVar18;
        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);
        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&
             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&
            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))
           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {
          puVar24 = *(undefined4 **)(param_1 + 0x3c);
          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;
          if (uVar4 <= uVar18) {
                    /* WARNING: Subroutine does not return */
            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,
                         puVar12);
          }
          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {
                    /* WARNING: Subroutine does not return */
            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,
                         puVar12);
          }
          piVar3 = (int *)(uVar18 * 0x1c + *param_6);
          iVar8 = *piVar3;
          if (iVar8 == 0) {
                    /* WARNING: Subroutine does not return */
            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,
                         puVar12);
          }
          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {
LAB_001e670d:
                    /* WARNING: Subroutine does not return */
            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);
          }
          uVar4 = *(uint *)(iVar19 + 4);
          iVar10 = *(int *)(iVar19 + 8);
          iVar17 = piVar3[1];
          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {
                    /* WARNING: Subroutine does not return */
            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);
          }
          uVar9 = *(uint *)(iVar19 + 0xc);
          local_ac = *(int **)(iVar19 + 0x2c);
          if (local_ac != (int *)0x0) {
            iVar19 = local_ac[5];
            uVar11 = *(uint *)(iVar19 + 0xc);
            if (uVar11 == 0xffffffff) {
LAB_001e5d9c:
                    /* WARNING: Subroutine does not return */
              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);
            }
            puVar24 = &DAT_005eb508;
            do {
              iVar13 = *(int *)(iVar19 + 0x10);
              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {
                DAT_005eb508 = &PTR_DAT_005d5c28;
                DAT_005eb50c = &PTR_DAT_005d5c20;
                DAT_005eb510 = &PTR_DAT_005d5c18;
                DAT_005eb514 = &PTR_DAT_005d5c10;
                DAT_005eb518 = &PTR_DAT_005d5c08;
                DAT_005eb51c = &PTR_DAT_005d5c00;
                FUN_003ac7d0(&DAT_005eb500);
                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);
              }
              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {
                    /* WARNING: Subroutine does not return */
                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,
                             puVar24,puVar12);
              }
              uVar5 = uVar11 + uVar4;
              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);
              iVar13 = *(int *)(iVar19 + 0x10);
              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);
              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {
                DAT_005eb508 = &PTR_DAT_005d5c28;
                DAT_005eb50c = &PTR_DAT_005d5c20;
                DAT_005eb510 = &PTR_DAT_005d5c18;
                DAT_005eb514 = &PTR_DAT_005d5c10;
                DAT_005eb518 = &PTR_DAT_005d5c08;
                DAT_005eb51c = &PTR_DAT_005d5c00;
                FUN_003ac7d0(&DAT_005eb500);
                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);
              }
              iVar14 = *(int *)(iVar19 + 0x10);
              iVar13 = *(int *)(puVar24[iVar13] + 4);
              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {
                DAT_005eb508 = &PTR_DAT_005d5c28;
                DAT_005eb50c = &PTR_DAT_005d5c20;
                DAT_005eb510 = &PTR_DAT_005d5c18;
                DAT_005eb514 = &PTR_DAT_005d5c10;
                DAT_005eb518 = &PTR_DAT_005d5c08;
                DAT_005eb51c = &PTR_DAT_005d5c00;
                FUN_003ac7d0(&DAT_005eb500);
                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);
              }
              if (0 < iVar13) {
                if (*puVar22 != **(uint **)puVar24[iVar14]) {
LAB_001e68a0:
                    /* WARNING: Subroutine does not return */
                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");
                }
                iVar6 = 0;
                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {
                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;
                }
              }
              uVar11 = *(uint *)(iVar19 + 8);
              uVar23 = *(uint *)(iVar19 + 4);
              if ((uVar11 & uVar23) == 0xffffffff) {
LAB_001e67c7:
                    /* WARNING: Subroutine does not return */
                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");
              }
              iVar19 = *(int *)(iVar19 + 0x10);
              if (iVar19 == 2) {
                puVar22[2] = uVar23;
                puVar22[3] = uVar11;
              }
              else if (iVar19 == 3) {
                puVar22[4] = (uVar23 - 4) - uVar5;
                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -
                             (uint)(uVar23 - 4 < uVar5);
              }
              else {
                if (iVar19 != 1) {
                    /* WARNING: Subroutine does not return */
                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);
                }
                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));
                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;
                uVar20 = iVar19 + 1;
                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d
                           | *puVar22 & 0x9f00001f;
                if (1 < uVar20) {
                    /* WARNING: Subroutine does not return */
                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");
                }
                iVar19 = *(int *)(DAT_005eb634 + 0x54);
                if (iVar19 == 0) {
                    /* WARNING: Subroutine does not return */
                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);
                }
                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);
                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;
                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||
                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {
                    /* WARNING: Subroutine does not return */
                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);
                }
                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);
                if ((uVar5 & 0x20) != 0) {
                  uVar20 = 0;
                }
                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;
                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);
                if (cVar1 == '\0') {
                    /* WARNING: Subroutine does not return */
                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");
                }
              }
              local_ac = (int *)*local_ac;
              if (local_ac == (int *)0x0) break;
              iVar19 = local_ac[5];
              uVar11 = *(uint *)(iVar19 + 0xc);
              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;
            } while( true );
          }
        }
        uVar18 = uVar18 + 1;
      } while (uVar18 != local_58);
    }
  }
  return;
}


PUSH EBP
PUSH EDI
PUSH ESI
CALL 0x00063c76
ADD ESI,0x4045c8
PUSH EBX
SUB ESP,0xac
MOV EAX,dword ptr [ESP + 0xc0]
MOV EAX,dword ptr [EAX + 0x28]
MOV dword ptr [ESP + 0x48],ESI
MOV EBX,ESI
MOV dword ptr [ESP],EAX
SUB EAX,0x1
PUSH EAX
PUSH 0x1
PUSH dword ptr [ESP + 0xdc]
PUSH dword ptr [ESP + 0xdc]
PUSH dword ptr [ESP + 0xdc]
PUSH dword ptr [ESP + 0xdc]
PUSH dword ptr [ESP + 0xdc]
PUSH dword ptr [ESP + 0xdc]
CALL 0x00325a00
LEA EAX,[ESI + 0x7c8]
MOV EDX,dword ptr [EAX]
MOV dword ptr [ESP + 0xa4],EAX
ADD ESP,0x20
MOV EAX,dword ptr [EDX + 0x8]
TEST EAX,EAX
JZ 0x001e69a9
CMP byte ptr [EAX + 0x318d],0x0
JNZ 0x001e6378
MOV ESI,dword ptr [ESP + 0xc0]
CMP byte ptr [EAX + 0x1671],0x0
MOV ESI,dword ptr [ESI + 0x28]
MOV dword ptr [ESP + 0x64],ESI
JNZ 0x001e5dc0
CMP byte ptr [EAX + 0x16ed],0x0
JNZ 0x001e5dc0
MOV EAX,dword ptr [EDX + 0xc]
MOV dword ptr [ESP],EAX
TEST EAX,EAX
JZ 0x001e69e0
MOV EAX,dword ptr [ESP]
MOV EAX,dword ptr [EAX + 0x4]
CMP dword ptr [EAX + 0x8],0xb7
JNZ 0x001e69fa
CMP dword ptr [EAX],0x40
JNZ 0x001e69fa
CMP byte ptr [EAX + 0x4],0x0
JNZ 0x001e69fa
CMP dword ptr [ESP + 0x64],0x1
JBE 0x001e6378
MOV EAX,dword ptr [ESP]
MOV EBP,0x1
ADD EAX,0x70
MOV dword ptr [ESP + 0x40],EAX
LEA EAX,[ESP + 0x98]
MOV dword ptr [ESP + 0x8],EAX
MOV EAX,dword ptr [ESP + 0x48]
LEA EAX,[EAX + 0x1500]
MOV dword ptr [ESP + 0x28],EAX
JMP 0x001e5b5d
ADD EBP,0x1
CMP EBP,dword ptr [ESP + 0x64]
JZ 0x001e6378
MOV EAX,dword ptr [ESP + 0xc0]
MOV ECX,EBP
MOV ESI,dword ptr [ESP]
XOR EDX,EDX
MOV dword ptr [ESP + 0x9c],EBP
SUB ESP,0xc
XOR ECX,EAX
MOV dword ptr [ESP + 0xa4],EAX
MOV EAX,ECX
DIV dword ptr [ESI + 0x74]
PUSH ECX
MOV ECX,dword ptr [ESP + 0x18]
MOV EAX,dword ptr [ESP + 0x50]
CALL 0x001d1150
ADD ESP,0x10
TEST EAX,EAX
JZ 0x001e5b50
MOV EAX,dword ptr [EAX]
TEST EAX,EAX
JZ 0x001e5b50
MOV EAX,dword ptr [EAX + 0xc]
TEST EAX,EAX
JZ 0x001e5b50
MOV EDX,dword ptr [EAX + 0x34]
TEST EDX,EDX
JZ 0x001e5b50
CMP EAX,dword ptr [EDX + 0x20]
JNZ 0x001e5b50
MOV ECX,dword ptr [EDX + 0x30]
TEST ECX,ECX
JNZ 0x001e5bbf
MOV EAX,dword ptr [EDX + 0x54]
TEST EAX,EAX
JZ 0x001e5b50
MOV EAX,dword ptr [ESP + 0xc0]
MOV ECX,dword ptr [EAX + 0x38]
MOV EAX,dword ptr [EAX + 0x3c]
MOV dword ptr [ESP + 0x4],EAX
SUB EAX,ECX
SAR EAX,0x2
CMP EAX,EBP
JBE 0x001e68fb
MOV EAX,dword ptr [ECX + EBP*0x4]
TEST EAX,EAX
JZ 0x001e6918
MOV ESI,dword ptr [ESP + 0xd4]
IMUL EAX,EBP,0x1c
ADD EAX,dword ptr [ESI]
MOV ESI,dword ptr [EAX]
MOV dword ptr [ESP + 0x30],ESI
TEST ESI,ESI
JZ 0x001e6935
MOVZX ECX,byte ptr [EDX + 0x1c]
TEST CL,0x1
JZ 0x001e670d
MOV ESI,dword ptr [EDX + 0x4]
MOV EDI,dword ptr [EDX + 0x8]
MOV dword ptr [ESP + 0x38],ESI
SUB ESI,dword ptr [EAX + 0x4]
AND ECX,0x2
MOV dword ptr [ESP + 0x3c],EDI
MOV dword ptr [ESP + 0x44],ESI
JZ 0x001e69c3
MOV EAX,dword ptr [EDX + 0xc]
MOV dword ptr [ESP + 0x4c],EAX
MOV EAX,dword ptr [EDX + 0x2c]
MOV dword ptr [ESP + 0x10],EAX
TEST EAX,EAX
JZ 0x001e5b50
MOV ECX,dword ptr [EAX + 0x14]
MOV ESI,dword ptr [ECX + 0xc]
CMP ESI,-0x1
JZ 0x001e5d9c
LEA EAX,[0x1508]
MOV dword ptr [ESP + 0x5c],EBP
MOV EDI,ECX
MOV dword ptr [ESP + 0x58],EAX
MOV EAX,dword ptr [ESP + 0x48]
LEA EDX,[EAX + 0x1508]
LEA EAX,[EAX + 0xfffebc28]
MOV dword ptr [ESP + 0x4],EDX
MOV dword ptr [ESP + 0x50],EAX
MOV EAX,dword ptr [ESP + 0x48]
MOV EBP,dword ptr [EDI + 0x10]
MOVZX EAX,byte ptr [EAX + 0x1500]
TEST AL,AL
JZ 0x001e64c8
MOV EAX,dword ptr [ESP + 0x4]
MOV EAX,dword ptr [EAX + EBP*0x4]
MOV EAX,dword ptr [EAX + 0x4]
LEA EAX,[ESI + EAX*0x4]
CMP dword ptr [ESP + 0x4c],EAX
JC 0x001e696f
MOV EAX,ESI
XOR EDX,EDX
ADD EAX,dword ptr [ESP + 0x38]
ADC EDX,dword ptr [ESP + 0x3c]
MOV EBP,dword ptr [EDI + 0x10]
ADD ESI,dword ptr [ESP + 0x44]
MOV dword ptr [ESP + 0x20],EAX
MOV EAX,dword ptr [ESP + 0x48]
ADD ESI,dword ptr [ESP + 0x30]
MOV dword ptr [ESP + 0x24],EDX
MOVZX EAX,byte ptr [EAX + 0x1500]
TEST AL,AL
JZ 0x001e6600
MOV EAX,dword ptr [ESP + 0x4]
MOV EDX,dword ptr [EDI + 0x10]
MOV EAX,dword ptr [EAX + EBP*0x4]
MOV EBP,dword ptr [EAX + 0x4]
MOV EAX,dword ptr [ESP + 0x48]
MOVZX EAX,byte ptr [EAX + 0x1500]
TEST AL,AL
JZ 0x001e6560
MOV EAX,dword ptr [ESP + 0x4]
MOV EAX,dword ptr [EAX + EDX*0x4]
MOV EDX,dword ptr [EAX]
TEST EBP,EBP
JLE 0x001e5d2b
MOV EAX,dword ptr [EDX]
CMP dword ptr [ESI],EAX
JNZ 0x001e68a0
XOR EAX,EAX
JMP 0x001e5d24
MOV EBX,dword ptr [EDX + EAX*0x4]
CMP dword ptr [ESI + EAX*0x4],EBX
JNZ 0x001e68a0
ADD EAX,0x1
CMP EBP,EAX
JNZ 0x001e5d18
MOV ECX,dword ptr [EDI + 0x8]
MOV EDX,dword ptr [EDI + 0x4]
MOV EAX,ECX
MOV dword ptr [ESP + 0x18],EDX
AND EAX,EDX
MOV dword ptr [ESP + 0x1c],ECX
CMP EAX,-0x1
JZ 0x001e67c7
MOV EAX,dword ptr [EDI + 0x10]
CMP EAX,0x2
JZ 0x001e6388
CMP EAX,0x3
JNZ 0x001e6338
MOV EAX,dword ptr [ESP + 0x18]
MOV EDX,dword ptr [ESP + 0x1c]
ADD EAX,-0x4
ADC EDX,-0x1
SUB EAX,dword ptr [ESP + 0x20]
SBB EDX,dword ptr [ESP + 0x24]
MOV dword ptr [ESI + 0x10],EAX
MOV dword ptr [ESI + 0x14],EDX
MOV EAX,dword ptr [ESP + 0x10]
MOV EAX,dword ptr [EAX]
MOV dword ptr [ESP + 0x10],EAX
TEST EAX,EAX
JZ 0x001e66e8
MOV EAX,dword ptr [ESP + 0x10]
MOV EDI,dword ptr [EAX + 0x14]
MOV ESI,dword ptr [EDI + 0xc]
CMP ESI,-0x1
JNZ 0x001e5c7a
SUB ESP,0x4
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe9561c]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x370
PUSH EAX
CALL 0x002446e0
CMP dword ptr [ESP + 0x64],0x1
JBE 0x001e5adf
MOV EAX,dword ptr [ESP + 0xc0]
MOV EDX,dword ptr [EAX + 0x13c]
MOV EAX,dword ptr [EAX + 0x140]
MOV dword ptr [ESP],EAX
SUB EAX,EDX
CMP EAX,0x7
JBE 0x001e6318
LEA EAX,[ESP + 0x88]
MOV dword ptr [ESP + 0x60],0x1
MOV dword ptr [ESP + 0x80],EAX
LEA ESI,[ESI]
MOV EAX,dword ptr [ESP + 0x60]
LEA EBX,[EAX*0x4 + 0x0]
MOV EAX,dword ptr [EDX + EAX*0x4]
MOV dword ptr [ESP + 0x4],EAX
TEST EAX,EAX
JZ 0x001e62e0
SUB ESP,0xc
MOV EDI,dword ptr [ESP + 0x6c]
PUSH EDI
MOV EDX,dword ptr [ESP + 0x14]
MOV EAX,dword ptr [ESP + 0x90]
MOV ECX,dword ptr [ESP + 0xd0]
CALL 0x001d6d60
MOV EAX,dword ptr [ESP + 0x9c]
MOV EDX,EDI
MOV ESI,dword ptr [ESP + 0x98]
MOV dword ptr [ESP + 0x5c],EAX
IMUL EAX,EDI,0x1c
MOV EDI,dword ptr [ESP + 0xe4]
MOV dword ptr [ESP + 0x50],ESI
ADD EAX,dword ptr [EDI]
MOV dword ptr [ESP + 0x10],EAX
ADD ESP,0x10
CMP byte ptr [EAX + 0x18],0x0
JZ 0x001e6360
MOV EAX,EDX
CMP EDX,0xfeff
JA 0x001e6694
SUB ESP,0x4
PUSH EAX
PUSH dword ptr [ESP + 0xc8]
MOV EAX,dword ptr [ESP + 0xcc]
MOV EAX,dword ptr [EAX + 0x38]
PUSH dword ptr [EAX + EBX*0x1]
MOV EBX,dword ptr [ESP + 0x58]
CALL 0x002cd8b0
ADD ESP,0x10
TEST EAX,EAX
JZ 0x001e698c
TEST byte ptr [EAX + 0x1c],0x1
JZ 0x001e670d
MOV EDI,dword ptr [ESP]
MOV EDX,dword ptr [EAX + 0x8]
MOV EAX,dword ptr [EAX + 0x4]
SUB EAX,dword ptr [EDI + 0x4]
SBB EDX,dword ptr [EDI + 0x8]
MOV dword ptr [ESP + 0x8],EAX
MOV dword ptr [ESP + 0xc],EDX
CMP ESI,dword ptr [ESP + 0x4c]
JZ 0x001e62e0
MOV EAX,dword ptr [ESP]
MOV EBP,dword ptr [ESI + 0x10]
MOV EDX,dword ptr [EAX + 0x8]
MOV EAX,dword ptr [EAX + 0x4]
MOV ECX,dword ptr [EBP + 0x1c]
MOV ESI,EAX
MOV dword ptr [ESP + 0x50],EAX
MOV EAX,dword ptr [ESP + 0x8]
MOV EDI,EDX
MOV dword ptr [ESP + 0x54],EDX
MOV EDX,dword ptr [ESP + 0xc]
ADD EAX,ESI
MOV ESI,ECX
ADC EDX,EDI
MOV dword ptr [ESP + 0x28],EAX
XOR EDI,EDI
ADD ESI,EAX
MOV EAX,dword ptr [EBP + 0x24]
ADC EDI,EDX
MOV dword ptr [ESP + 0x2c],EDX
MOV dword ptr [ESP + 0x44],EAX
MOV EDX,EAX
MOV EAX,dword ptr [EBP + 0x28]
AND EDX,EAX
CMP EDX,-0x1
JZ 0x001e674b
MOV EDX,dword ptr [ESP + 0x44]
XOR EAX,EDI
XOR EDX,ESI
OR EAX,EDX
JNZ 0x001e6234
MOV EAX,dword ptr [ESP]
MOV ESI,dword ptr [ESP + 0x8]
MOV EDI,dword ptr [ESP + 0x2c]
MOV EAX,dword ptr [EAX]
MOV dword ptr [ESP + 0x38],ESI
MOV dword ptr [ESP + 0x34],EDI
MOV dword ptr [ESP],EAX
ADD EAX,ESI
MOV ESI,dword ptr [ESP + 0x28]
MOV dword ptr [ESP + 0x5c],EAX
MOV dword ptr [ESP + 0x30],ESI
NOP
MOV EAX,dword ptr [ESP + 0x38]
ADD ECX,dword ptr [ESP]
MOV EDX,dword ptr [ECX + EAX*0x1]
MOV EAX,dword ptr [EBP + 0x20]
CMP EAX,-0x1
JZ 0x001e676a
MOV ECX,dword ptr [EBP + 0x10]
CMP ECX,0x4
JNZ 0x001e6258
MOV ECX,EDX
AND ECX,0x3b000000
CMP ECX,0x39000000
JNZ 0x001e6843
MOV ECX,EAX
AND ECX,0x3b000000
CMP ECX,0x39000000
JNZ 0x001e6862
MOV EBX,EDX
MOV ECX,EAX
AND EBX,0x1f
AND ECX,0x1f
CMP EBX,ECX
JNZ 0x001e6881
MOV ECX,EDX
SHR EAX,0x5
SHR ECX,0x5
AND EAX,0x1f
AND ECX,0x1f
CMP ECX,EAX
JNZ 0x001e6805
MOV EAX,dword ptr [EBP + 0x2c]
MOV EBX,dword ptr [ESP]
MOV dword ptr [EBP + 0x20],EDX
MOV EDX,dword ptr [ESP + 0x38]
ADD EDX,EAX
ADD EBX,EDX
MOV dword ptr [ESP + 0x58],EBX
MOV EBX,dword ptr [EBX]
MOV ECX,EBX
MOV dword ptr [ESP + 0x8],EBX
AND ECX,0xffffffe0
CMP ECX,0xd53bd040
JZ 0x001e611f
MOV ECX,dword ptr [ESP + 0x8]
AND ECX,0x9f000000
CMP ECX,0x90000000
JZ 0x001e6040
TEST EAX,EAX
JNZ 0x001e62c0
SUB ESP,0x4
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe95000]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x842
PUSH EAX
CALL 0x002446e0
MOV ECX,EAX
MOV EAX,dword ptr [ESP + 0x8]
XOR EBX,EBX
ADD ECX,ESI
MOV ESI,EAX
ADC EBX,EDI
SHR EAX,0x1d
XOR EDI,EDI
SHR ESI,0x3
AND EAX,0x3
MOV dword ptr [ESP + 0x2c],EDI
AND ESI,0x1ffffc
MOV dword ptr [ESP + 0x24],EBX
MOV EDX,dword ptr [ESP + 0x24]
OR ESI,EAX
MOV EAX,ESI
MOV dword ptr [ESP + 0x28],ESI
SHRD EAX,EDI,0x14
MOV EDI,dword ptr [ESP + 0x2c]
MOV ESI,EAX
XOR EAX,EAX
SUB EAX,ESI
MOV ESI,dword ptr [ESP + 0x28]
ADD EAX,EAX
SHLD EDI,ESI,0xc
SHL ESI,0xc
OR EAX,EDI
MOV dword ptr [ESP + 0x18],ESI
MOV ESI,0x1fffff
MOV dword ptr [ESP + 0x1c],EAX
MOV EAX,ECX
AND EAX,0xfffff000
MOV dword ptr [ESP + 0x20],EAX
MOV EAX,dword ptr [ESP + 0x20]
SUB EAX,ECX
SBB EDX,EBX
ADD EAX,dword ptr [ESP + 0x18]
ADC EDX,dword ptr [ESP + 0x1c]
MOV ECX,EAX
MOV EBX,EDX
ADD ECX,0x100000
ADC EBX,0x0
MOV dword ptr [ESP + 0x28],ECX
MOV ECX,0x0
CMP ESI,dword ptr [ESP + 0x28]
MOV dword ptr [ESP + 0x2c],EBX
SBB ECX,dword ptr [ESP + 0x2c]
JC 0x001e6269
MOV EDX,dword ptr [ESP + 0x8]
AND EDX,0x1f000000
CMP EDX,0x10000000
JNZ 0x001e68bf
LEA EDX,[EAX*0x8 + 0x0]
MOV ECX,dword ptr [ESP + 0x8]
SHL EAX,0x1d
MOV ESI,dword ptr [ESP + 0x58]
AND EDX,0xffffe0
AND EAX,0x60000000
AND ECX,0x1f00001f
OR EAX,EDX
OR EAX,ECX
MOV dword ptr [ESI],EAX
MOV EAX,dword ptr [ESP + 0x4]
TEST byte ptr [EAX + 0x1c],0x1
JZ 0x001e670d
MOV EDX,dword ptr [EAX + 0x8]
MOV EAX,dword ptr [EAX + 0x4]
MOV EBX,dword ptr [EBP + 0x20]
MOV ESI,EAX
MOV ECX,EAX
SUB ESI,dword ptr [ESP + 0x50]
ADD ESI,dword ptr [ESP]
CMP EBX,-0x1
JZ 0x001e67a8
MOV EDI,dword ptr [ESP + 0x4]
ADD EAX,dword ptr [EDI + 0x58]
ADC EDX,dword ptr [EDI + 0x5c]
ADD EAX,0x3
MOV EDI,EAX
MOV EAX,dword ptr [EBP + 0xc]
ADC EDX,0x0
AND EDI,0xfffffffc
MOV dword ptr [ESP + 0x14],EDX
MOV dword ptr [ESP + 0x10],EDI
CMP EAX,-0x1
JZ 0x001e5d9c
MOV EDI,dword ptr [EBP + 0x10]
ADD EAX,dword ptr [ESP + 0x10]
SUB EDI,0x4
CMP EDI,0x1
JA 0x001e6789
MOV EDI,EAX
SUB EDI,ECX
ADD EAX,0x4
MOV dword ptr [ESI + EDI*0x1],EBX
MOV EBX,dword ptr [EBP + 0x4]
MOV EDI,dword ptr [EBP + 0x8]
AND EDI,EBX
CMP EDI,-0x1
JZ 0x001e67c7
SUB EBX,EAX
MOV EDX,EAX
SHR EBX,0x2
SUB EDX,ECX
AND EBX,0x3ffffff
OR EBX,0x14000000
MOV dword ptr [ESI + EDX*0x1],EBX
CMP dword ptr [EBP + 0x20],-0x1
JZ 0x001e67e6
SUB ESP,0xc
MOV dword ptr [EBP + 0x20],0xffffffff
PUSH dword ptr [ESP + 0x4c]
MOV EBX,dword ptr [ESP + 0x58]
CALL 0x003af6b0
ADD ESP,0x10
MOV dword ptr [ESP + 0x40],EAX
CMP dword ptr [ESP + 0x4c],EAX
JZ 0x001e62e0
MOV EAX,dword ptr [ESP + 0x40]
MOV ESI,dword ptr [ESP + 0x30]
XOR EDX,EDX
MOV EDI,dword ptr [ESP + 0x34]
MOV EBP,dword ptr [EAX + 0x10]
MOV ECX,dword ptr [EBP + 0x1c]
MOV EBX,dword ptr [EBP + 0x28]
MOV EAX,ECX
ADD EAX,ESI
MOV dword ptr [ESP + 0x8],EAX
MOV EAX,dword ptr [EBP + 0x24]
ADC EDX,EDI
MOV dword ptr [ESP + 0xc],EDX
MOV EDX,EAX
MOV dword ptr [ESP + 0x44],EAX
AND EDX,EBX
CMP EDX,-0x1
JZ 0x001e674b
XOR EAX,dword ptr [ESP + 0x8]
XOR EBX,dword ptr [ESP + 0xc]
OR EBX,EAX
JZ 0x001e5f60
SUB ESP,0x4
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe95040]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x7e9
PUSH EAX
CALL 0x002446e0
CMP ECX,0x5
JNZ 0x001e672c
CMP EDX,EAX
JNZ 0x001e6824
MOV EDI,dword ptr [ESP + 0x4]
TEST byte ptr [EDI + 0x1c],0x1
JZ 0x001e670d
MOV EAX,dword ptr [EDI + 0x4]
MOV EBX,dword ptr [EBP + 0xc]
MOV EDX,dword ptr [EDI + 0x8]
MOV ECX,EAX
ADD ECX,0x3
ADD ECX,dword ptr [EDI + 0x58]
AND ECX,0xfffffffc
CMP EBX,-0x1
JZ 0x001e5d9c
SUB EBX,dword ptr [ESP + 0x44]
MOV ESI,dword ptr [ESP + 0x5c]
ADD ECX,EBX
ADD ESI,dword ptr [EBP + 0x1c]
SHR ECX,0x2
AND ECX,0x3ffffff
OR ECX,0x14000000
MOV dword ptr [ESI],ECX
JMP 0x001e6133
MOV EAX,dword ptr [ESP]
MOV EAX,dword ptr [EAX + EDX*0x1 + -0x4]
AND EAX,0xffffffe0
CMP EAX,0xd53bd040
JNZ 0x001e6018
JMP 0x001e611f
ADD dword ptr [ESP + 0x60],0x1
MOV EAX,dword ptr [ESP + 0x60]
CMP EAX,dword ptr [ESP + 0x64]
JZ 0x001e66f1
MOV EAX,dword ptr [ESP + 0xc0]
MOV EDX,dword ptr [EAX + 0x13c]
MOV EAX,dword ptr [EAX + 0x140]
MOV dword ptr [ESP],EAX
SUB EAX,EDX
SAR EAX,0x2
CMP EAX,dword ptr [ESP + 0x60]
JA 0x001e5e08
PUSH EBX
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe95628]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x6f6
PUSH EAX
CALL 0x002446e0
CMP EAX,0x1
JZ 0x001e63a0
PUSH EAX
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe94f44]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x1060
PUSH EAX
CALL 0x002446e0
MOV dword ptr [ESP + 0x8],0x0
MOV dword ptr [ESP + 0xc],0x0
JMP 0x001e5ed1
ADD ESP,0xac
POP EBX
POP ESI
POP EDI
POP EBP
RET
MOV EAX,dword ptr [ESP + 0x18]
MOV EDX,dword ptr [ESP + 0x1c]
MOV dword ptr [ESI + 0x8],EAX
MOV dword ptr [ESI + 0xc],EDX
JMP 0x001e5d77
MOV EAX,EDX
MOV EDX,dword ptr [ESP + 0x24]
MOV dword ptr [ESP + 0x74],ECX
AND EAX,0xfffff000
MOV EBP,dword ptr [ESP + 0x74]
MOV dword ptr [ESP + 0x6c],0x0
MOV dword ptr [ESP + 0x70],EAX
MOV EAX,dword ptr [ESP + 0x20]
MOV dword ptr [ESP + 0x7c],EDX
MOV EBX,dword ptr [ESP + 0x6c]
MOV EDI,EAX
AND EDI,0xfffff000
MOV dword ptr [ESP + 0x78],EDI
MOV EDI,dword ptr [ESP + 0x70]
SUB EDI,dword ptr [ESP + 0x78]
SBB EBP,dword ptr [ESP + 0x7c]
MOV EAX,EDI
SHRD EAX,EBP,0xc
ADD EBP,0x1
AND EAX,0x1fffff
MOV dword ptr [ESP + 0x68],EAX
MOV ECX,dword ptr [ESP + 0x68]
MOV EAX,ECX
SHRD ECX,EBX,0x2
SHL EAX,0x1d
SHL ECX,0x5
AND EAX,0x60000000
OR ECX,EAX
MOV EAX,dword ptr [ESI]
AND EAX,0x9f00001f
OR ECX,EAX
MOV dword ptr [ESI],ECX
CMP EBP,0x1
JA 0x001e66c9
MOV EAX,dword ptr [ESP + 0x48]
MOV EAX,dword ptr [EAX + 0x1634]
MOV EBX,dword ptr [EAX + 0x54]
TEST EBX,EBX
JZ 0x001e68de
SUB ESP,0x8
PUSH dword ptr [ESP + 0x24]
PUSH dword ptr [ESP + 0x24]
CALL dword ptr [EBX + 0x40]
MOV ECX,dword ptr [EBX + 0x38]
MOV EDI,dword ptr [ESP + 0x58]
SHL ECX,0x4
ADD ESP,0x10
LEA EDI,[EDI + ECX*0x1 + 0xffe968a0]
CMP dword ptr [EDI + 0xc],-0x1
JNZ 0x001e6952
MOV ECX,dword ptr [EDI + 0x8]
CMP ECX,-0x1
JZ 0x001e6952
MOV EDI,dword ptr [EDI]
SHL EAX,CL
NOT EDI
AND EDI,dword ptr [ESI + 0x4]
MOV dword ptr [ESP + 0x20],EDI
XOR EDI,EDI
TEST CL,0x20
CMOVNZ EAX,EDI
MOV EDI,dword ptr [ESP + 0x20]
SUB ESP,0x8
OR EDI,EAX
MOV dword ptr [ESI + 0x4],EDI
PUSH dword ptr [ESP + 0x24]
PUSH dword ptr [ESP + 0x24]
CALL dword ptr [EBX + 0x3c]
ADD ESP,0x10
TEST AL,AL
JNZ 0x001e5d77
SUB ESP,0x4
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe94f44]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x104d
PUSH EAX
CALL 0x002446e0
SUB ESP,0xc
PUSH dword ptr [ESP + 0x34]
MOV EBX,dword ptr [ESP + 0x58]
CALL 0x003ac660
ADD ESP,0x10
TEST EAX,EAX
JZ 0x001e5c90
MOV EDX,dword ptr [ESP + 0x48]
MOV EBX,dword ptr [ESP + 0x58]
SUB ESP,0xc
MOV EAX,dword ptr [ESP + 0x5c]
MOV dword ptr [EBX + EDX*0x1],EAX
LEA EAX,[EDX + 0xfffebc20]
MOV dword ptr [EBX + EDX*0x1 + 0x4],EAX
LEA EAX,[EDX + 0xfffebc18]
MOV dword ptr [EBX + EDX*0x1 + 0x8],EAX
LEA EAX,[EDX + 0xfffebc10]
MOV dword ptr [EBX + EDX*0x1 + 0xc],EAX
LEA EAX,[EDX + 0xfffebc08]
MOV dword ptr [EBX + EDX*0x1 + 0x10],EAX
LEA EAX,[EDX + 0xfffebc00]
MOV dword ptr [EBX + EDX*0x1 + 0x14],EAX
MOV EBX,EDX
PUSH dword ptr [ESP + 0x34]
MOV dword ptr [ESP + 0x58],EDX
CALL 0x003ac7d0
ADD ESP,0xc
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0x2e4]
PUSH EAX
LEA EAX,[EBX + 0xffbe7240]
PUSH dword ptr [ESP + 0xc]
PUSH EAX
CALL 0x000393c0
ADD ESP,0x10
JMP 0x001e5c90
MOV dword ptr [ESP + 0x18],EDX
SUB ESP,0xc
PUSH dword ptr [ESP + 0x34]
MOV EBX,dword ptr [ESP + 0x58]
CALL 0x003ac660
ADD ESP,0x10
MOV EDX,dword ptr [ESP + 0x18]
TEST EAX,EAX
JZ 0x001e5cf9
MOV EDX,dword ptr [ESP + 0x48]
MOV EBX,dword ptr [ESP + 0x58]
SUB ESP,0xc
MOV EAX,dword ptr [ESP + 0x5c]
MOV dword ptr [EBX + EDX*0x1],EAX
LEA EAX,[EDX + 0xfffebc20]
MOV dword ptr [EBX + EDX*0x1 + 0x4],EAX
LEA EAX,[EDX + 0xfffebc18]
MOV dword ptr [EBX + EDX*0x1 + 0x8],EAX
LEA EAX,[EDX + 0xfffebc10]
MOV dword ptr [EBX + EDX*0x1 + 0xc],EAX
LEA EAX,[EDX + 0xfffebc08]
MOV dword ptr [EBX + EDX*0x1 + 0x10],EAX
LEA EAX,[EDX + 0xfffebc00]
MOV dword ptr [EBX + EDX*0x1 + 0x14],EAX
MOV EBX,EDX
PUSH dword ptr [ESP + 0x34]
MOV dword ptr [ESP + 0x58],EDX
CALL 0x003ac7d0
ADD ESP,0xc
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0x2e4]
PUSH EAX
LEA EAX,[EBX + 0xffbe7240]
PUSH dword ptr [ESP + 0xc]
PUSH EAX
CALL 0x000393c0
ADD ESP,0x10
MOV EDX,dword ptr [ESP + 0x18]
JMP 0x001e5cf9
SUB ESP,0xc
PUSH dword ptr [ESP + 0x34]
MOV EBX,dword ptr [ESP + 0x58]
CALL 0x003ac660
ADD ESP,0x10
TEST EAX,EAX
JZ 0x001e5cd9
MOV EDX,dword ptr [ESP + 0x48]
MOV EBX,dword ptr [ESP + 0x58]
SUB ESP,0xc
MOV EAX,dword ptr [ESP + 0x5c]
MOV dword ptr [EBX + EDX*0x1],EAX
LEA EAX,[EDX + 0xfffebc20]
MOV dword ptr [EBX + EDX*0x1 + 0x4],EAX
LEA EAX,[EDX + 0xfffebc18]
MOV dword ptr [EBX + EDX*0x1 + 0x8],EAX
LEA EAX,[EDX + 0xfffebc10]
MOV dword ptr [EBX + EDX*0x1 + 0xc],EAX
LEA EAX,[EDX + 0xfffebc08]
MOV dword ptr [EBX + EDX*0x1 + 0x10],EAX
LEA EAX,[EDX + 0xfffebc00]
MOV dword ptr [EBX + EDX*0x1 + 0x14],EAX
MOV EBX,EDX
PUSH dword ptr [ESP + 0x34]
MOV dword ptr [ESP + 0x58],EDX
CALL 0x003ac7d0
ADD ESP,0xc
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0x2e4]
PUSH EAX
LEA EAX,[EBX + 0xffbe7240]
PUSH dword ptr [ESP + 0xc]
PUSH EAX
CALL 0x000393c0
ADD ESP,0x10
JMP 0x001e5cd9
SUB ESP,0xc
MOV EAX,dword ptr [ESP + 0xcc]
ADD EAX,0x90
PUSH EAX
CALL 0x00108090
MOV EDX,dword ptr [ESP + 0xd0]
MOV EAX,dword ptr [ESP + 0x70]
ADD ESP,0x10
ADD EAX,dword ptr [EDX + 0xa4]
LEA EBX,[EAX*0x4 + 0x0]
JMP 0x001e5e84
SUB ESP,0x4
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe94f44]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x1043
PUSH EAX
CALL 0x002446e0
MOV EBP,dword ptr [ESP + 0x5c]
JMP 0x001e5b50
MOV EAX,dword ptr [ESP + 0xc0]
MOV EAX,dword ptr [EAX + 0x28]
MOV dword ptr [ESP + 0x64],EAX
MOV EAX,dword ptr [ESP + 0x84]
MOV EDX,dword ptr [EAX]
JMP 0x001e5adf
SUB ESP,0x4
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe95a60]
PUSH EAX
LEA EAX,[EBX + 0xffe6335d]
PUSH 0xc5
PUSH EAX
CALL 0x002446e0
SUB ESP,0x4
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe95024]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x3f8
PUSH EAX
CALL 0x002446e0
SUB ESP,0x4
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe94fc0]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x401
PUSH EAX
CALL 0x002446e0
SUB ESP,0x4
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe95024]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x3e7
PUSH EAX
CALL 0x002446e0
SUB ESP,0x4
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe94fa8]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x67c
PUSH EAX
CALL 0x002446e0
SUB ESP,0x4
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe94fa8]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x663
PUSH EAX
CALL 0x002446e0
SUB ESP,0x4
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe94f94]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x359
PUSH EAX
CALL 0x002446e0
SUB ESP,0x4
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe94f7c]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x42b
PUSH EAX
CALL 0x002446e0
SUB ESP,0x4
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe95024]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x3f0
PUSH EAX
CALL 0x002446e0
SUB ESP,0x4
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe95024]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x3f5
PUSH EAX
CALL 0x002446e0
SUB ESP,0x4
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe95024]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x3eb
PUSH EAX
CALL 0x002446e0
SUB ESP,0x4
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe95024]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x3ec
PUSH EAX
CALL 0x002446e0
SUB ESP,0x4
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe95024]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x3ee
PUSH EAX
CALL 0x002446e0
SUB ESP,0x4
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe94f44]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x1035
PUSH EAX
CALL 0x002446e0
SUB ESP,0x4
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe94fd0]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x8d
PUSH EAX
CALL 0x002446e0
PUSH EAX
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe94f44]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x1049
PUSH EAX
CALL 0x002446e0
PUSH EAX
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe958cc]
PUSH EAX
LEA EAX,[EBX + 0xffe63385]
PUSH 0x5c8
PUSH EAX
CALL 0x002446e0
PUSH EAX
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe95068]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x889
PUSH EAX
CALL 0x002446e0
PUSH EAX
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe95068]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x892
PUSH EAX
CALL 0x002446e0
PUSH EBP
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe9560c]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x1484
PUSH EAX
CALL 0x002446e0
PUSH EBP
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe94f58]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x6ac
PUSH EAX
CALL 0x002446e0
PUSH ECX
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe95040]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0x7df
PUSH EAX
CALL 0x002446e0
PUSH ESI
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe9593c]
PUSH EAX
LEA EAX,[EBX + 0xffe5e26d]
PUSH 0x5c
PUSH EAX
CALL 0x002446e0
PUSH EAX
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe95a88]
PUSH EAX
LEA EAX,[EBX + 0xffe6335d]
PUSH 0xcf
PUSH EAX
CALL 0x002446e0
PUSH ESI
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe95538]
PUSH EAX
LEA EAX,[EBX + 0xffe5e26d]
PUSH 0x69
PUSH EAX
CALL 0x002446e0
PUSH EBX
MOV EBX,dword ptr [ESP + 0x4c]
LEA EAX,[EBX + 0xffe94f6c]
PUSH EAX
LEA EAX,[EBX + 0xffe923cf]
PUSH 0xc2e
PUSH EAX
CALL 0x002446e0
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.si replaced with injection: get_pc_thunk_si */\n\nvoid FUN_001e5a30(uint param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4,\n                 undefined4 param_5,int *param_6)\n\n{\n  char cVar1;\n  int iVar2;\n  int *piVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  int *piVar7;\n  int iVar8;\n  uint uVar9;\n  int iVar10;\n  uint uVar11;\n  uint *puVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 extraout_ECX;\n  int iVar15;\n  uint *puVar16;\n  int iVar17;\n  uint uVar18;\n  int iVar19;\n  uint uVar20;\n  undefined **ppuVar21;\n  uint *puVar22;\n  uint uVar23;\n  undefined4 *puVar24;\n  int local_b0;\n  int *local_ac;\n  uint local_7c;\n  uint *local_78;\n  undefined **local_74;\n  uint local_5c;\n  uint local_58;\n  uint local_34;\n  uint local_30;\n  uint local_24;\n  uint local_20;\n  \n  ppuVar21 = &__DT_PLTGOT;\n  iVar2 = *(int *)(param_1 + 0x28) + -1;\n  FUN_00325a00(param_1,param_2,param_3,param_4,param_5,param_6,1,iVar2,*(int *)(param_1 + 0x28));\n  iVar8 = *(int *)(DAT_005ea7c8 + 8);\n  if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n    FUN_002446e0("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT);\n  }\n  if (*(char *)(iVar8 + 0x318d) == '\0') {\n    local_58 = *(uint *)(param_1 + 0x28);\n    uVar18 = local_58;\n    if (((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58)) {\n      iVar8 = *(int *)(param_1 + 0x13c);\n      iVar19 = *(int *)(param_1 + 0x140);\n      if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);\n    }\nLAB_001e5adf:\n    piVar7 = *(int **)(DAT_005ea7c8 + 0xc);\n    if (piVar7 == (int *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);\n    }\n    piVar3 = (int *)piVar7[1];\n    if (((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0')) {\n                    /* WARNING: Subroutine does not return */\n      FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);\n    }\n    if (1 < local_58) {\n      uVar18 = 1;\n      puVar12 = &local_24;\n      do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);\n    }\n  }\n  return;\n}\n\n" comment (function_definition "void FUN_001e5a30(uint param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4,\n                 undefined4 param_5,int *param_6)\n\n{\n  char cVar1;\n  int iVar2;\n  int *piVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  int *piVar7;\n  int iVar8;\n  uint uVar9;\n  int iVar10;\n  uint uVar11;\n  uint *puVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 extraout_ECX;\n  int iVar15;\n  uint *puVar16;\n  int iVar17;\n  uint uVar18;\n  int iVar19;\n  uint uVar20;\n  undefined **ppuVar21;\n  uint *puVar22;\n  uint uVar23;\n  undefined4 *puVar24;\n  int local_b0;\n  int *local_ac;\n  uint local_7c;\n  uint *local_78;\n  undefined **local_74;\n  uint local_5c;\n  uint local_58;\n  uint local_34;\n  uint local_30;\n  uint local_24;\n  uint local_20;\n  \n  ppuVar21 = &__DT_PLTGOT;\n  iVar2 = *(int *)(param_1 + 0x28) + -1;\n  FUN_00325a00(param_1,param_2,param_3,param_4,param_5,param_6,1,iVar2,*(int *)(param_1 + 0x28));\n  iVar8 = *(int *)(DAT_005ea7c8 + 8);\n  if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n    FUN_002446e0("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT);\n  }\n  if (*(char *)(iVar8 + 0x318d) == '\0') {\n    local_58 = *(uint *)(param_1 + 0x28);\n    uVar18 = local_58;\n    if (((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58)) {\n      iVar8 = *(int *)(param_1 + 0x13c);\n      iVar19 = *(int *)(param_1 + 0x140);\n      if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);\n    }\nLAB_001e5adf:\n    piVar7 = *(int **)(DAT_005ea7c8 + 0xc);\n    if (piVar7 == (int *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);\n    }\n    piVar3 = (int *)piVar7[1];\n    if (((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0')) {\n                    /* WARNING: Subroutine does not return */\n      FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);\n    }\n    if (1 < local_58) {\n      uVar18 = 1;\n      puVar12 = &local_24;\n      do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);\n    }\n  }\n  return;\n}" primitive_type (function_declarator "FUN_001e5a30(uint param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4,\n                 undefined4 param_5,int *param_6)" identifier (parameter_list "(uint param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4,\n                 undefined4 param_5,int *param_6)" ( (parameter_declaration "uint param_1" type_identifier identifier) , (parameter_declaration "undefined4 param_2" type_identifier identifier) , (parameter_declaration "undefined4 param_3" type_identifier identifier) , (parameter_declaration "undefined4 param_4" type_identifier identifier) , (parameter_declaration "undefined4 param_5" type_identifier identifier) , (parameter_declaration "int *param_6" primitive_type (pointer_declarator "*param_6" * identifier)) ))) (compound_statement "{\n  char cVar1;\n  int iVar2;\n  int *piVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  int *piVar7;\n  int iVar8;\n  uint uVar9;\n  int iVar10;\n  uint uVar11;\n  uint *puVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 extraout_ECX;\n  int iVar15;\n  uint *puVar16;\n  int iVar17;\n  uint uVar18;\n  int iVar19;\n  uint uVar20;\n  undefined **ppuVar21;\n  uint *puVar22;\n  uint uVar23;\n  undefined4 *puVar24;\n  int local_b0;\n  int *local_ac;\n  uint local_7c;\n  uint *local_78;\n  undefined **local_74;\n  uint local_5c;\n  uint local_58;\n  uint local_34;\n  uint local_30;\n  uint local_24;\n  uint local_20;\n  \n  ppuVar21 = &__DT_PLTGOT;\n  iVar2 = *(int *)(param_1 + 0x28) + -1;\n  FUN_00325a00(param_1,param_2,param_3,param_4,param_5,param_6,1,iVar2,*(int *)(param_1 + 0x28));\n  iVar8 = *(int *)(DAT_005ea7c8 + 8);\n  if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n    FUN_002446e0("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT);\n  }\n  if (*(char *)(iVar8 + 0x318d) == '\0') {\n    local_58 = *(uint *)(param_1 + 0x28);\n    uVar18 = local_58;\n    if (((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58)) {\n      iVar8 = *(int *)(param_1 + 0x13c);\n      iVar19 = *(int *)(param_1 + 0x140);\n      if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);\n    }\nLAB_001e5adf:\n    piVar7 = *(int **)(DAT_005ea7c8 + 0xc);\n    if (piVar7 == (int *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);\n    }\n    piVar3 = (int *)piVar7[1];\n    if (((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0')) {\n                    /* WARNING: Subroutine does not return */\n      FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);\n    }\n    if (1 < local_58) {\n      uVar18 = 1;\n      puVar12 = &local_24;\n      do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);\n    }\n  }\n  return;\n}" { (declaration "char cVar1;" primitive_type identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int *piVar3;" primitive_type (pointer_declarator "*piVar3" * identifier) ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "int *piVar7;" primitive_type (pointer_declarator "*piVar7" * identifier) ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "uint uVar11;" type_identifier identifier ;) (declaration "uint *puVar12;" type_identifier (pointer_declarator "*puVar12" * identifier) ;) (declaration "int iVar13;" primitive_type identifier ;) (declaration "int iVar14;" primitive_type identifier ;) (declaration "undefined4 extraout_ECX;" type_identifier identifier ;) (declaration "int iVar15;" primitive_type identifier ;) (declaration "uint *puVar16;" type_identifier (pointer_declarator "*puVar16" * identifier) ;) (declaration "int iVar17;" primitive_type identifier ;) (declaration "uint uVar18;" type_identifier identifier ;) (declaration "int iVar19;" primitive_type identifier ;) (declaration "uint uVar20;" type_identifier identifier ;) (declaration "undefined **ppuVar21;" type_identifier (pointer_declarator "**ppuVar21" * (pointer_declarator "*ppuVar21" * identifier)) ;) (declaration "uint *puVar22;" type_identifier (pointer_declarator "*puVar22" * identifier) ;) (declaration "uint uVar23;" type_identifier identifier ;) (declaration "undefined4 *puVar24;" type_identifier (pointer_declarator "*puVar24" * identifier) ;) (declaration "int local_b0;" primitive_type identifier ;) (declaration "int *local_ac;" primitive_type (pointer_declarator "*local_ac" * identifier) ;) (declaration "uint local_7c;" type_identifier identifier ;) (declaration "uint *local_78;" type_identifier (pointer_declarator "*local_78" * identifier) ;) (declaration "undefined **local_74;" type_identifier (pointer_declarator "**local_74" * (pointer_declarator "*local_74" * identifier)) ;) (declaration "uint local_5c;" type_identifier identifier ;) (declaration "uint local_58;" type_identifier identifier ;) (declaration "uint local_34;" type_identifier identifier ;) (declaration "uint local_30;" type_identifier identifier ;) (declaration "uint local_24;" type_identifier identifier ;) (declaration "uint local_20;" type_identifier identifier ;) (expression_statement "ppuVar21 = &__DT_PLTGOT;" (assignment_expression "ppuVar21 = &__DT_PLTGOT" identifier = (pointer_expression "&__DT_PLTGOT" & identifier)) ;) (expression_statement "iVar2 = *(int *)(param_1 + 0x28) + -1;" (assignment_expression "iVar2 = *(int *)(param_1 + 0x28) + -1" identifier = (binary_expression "*(int *)(param_1 + 0x28) + -1" (pointer_expression "*(int *)(param_1 + 0x28)" * (cast_expression "(int *)(param_1 + 0x28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x28)" ( (binary_expression "param_1 + 0x28" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "FUN_00325a00(param_1,param_2,param_3,param_4,param_5,param_6,1,iVar2,*(int *)(param_1 + 0x28));" (call_expression "FUN_00325a00(param_1,param_2,param_3,param_4,param_5,param_6,1,iVar2,*(int *)(param_1 + 0x28))" identifier (argument_list "(param_1,param_2,param_3,param_4,param_5,param_6,1,iVar2,*(int *)(param_1 + 0x28))" ( identifier , identifier , identifier , identifier , identifier , identifier , number_literal , identifier , (pointer_expression "*(int *)(param_1 + 0x28)" * (cast_expression "(int *)(param_1 + 0x28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x28)" ( (binary_expression "param_1 + 0x28" identifier + number_literal) )))) ))) ;) (expression_statement "iVar8 = *(int *)(DAT_005ea7c8 + 8);" (assignment_expression "iVar8 = *(int *)(DAT_005ea7c8 + 8)" identifier = (pointer_expression "*(int *)(DAT_005ea7c8 + 8)" * (cast_expression "(int *)(DAT_005ea7c8 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_005ea7c8 + 8)" ( (binary_expression "DAT_005ea7c8 + 8" identifier + number_literal) ))))) ;) (if_statement "if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n    FUN_002446e0("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT);\n  }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    FUN_002446e0("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT);\n  }" { comment (expression_statement "FUN_002446e0("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT);" (call_expression "FUN_002446e0("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT)" identifier (argument_list "("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT)" ( (string_literal ""../../gold/parameters.h"" " string_content ") , number_literal , (string_literal ""options"" " string_content ") , (pointer_expression "&__DT_PLTGOT" & identifier) ))) ;) })) (if_statement "if (*(char *)(iVar8 + 0x318d) == '\0') {\n    local_58 = *(uint *)(param_1 + 0x28);\n    uVar18 = local_58;\n    if (((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58)) {\n      iVar8 = *(int *)(param_1 + 0x13c);\n      iVar19 = *(int *)(param_1 + 0x140);\n      if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);\n    }\nLAB_001e5adf:\n    piVar7 = *(int **)(DAT_005ea7c8 + 0xc);\n    if (piVar7 == (int *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);\n    }\n    piVar3 = (int *)piVar7[1];\n    if (((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0')) {\n                    /* WARNING: Subroutine does not return */\n      FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);\n    }\n    if (1 < local_58) {\n      uVar18 = 1;\n      puVar12 = &local_24;\n      do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);\n    }\n  }" if (parenthesized_expression "(*(char *)(iVar8 + 0x318d) == '\0')" ( (binary_expression "*(char *)(iVar8 + 0x318d) == '\0'" (pointer_expression "*(char *)(iVar8 + 0x318d)" * (cast_expression "(char *)(iVar8 + 0x318d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x318d)" ( (binary_expression "iVar8 + 0x318d" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    local_58 = *(uint *)(param_1 + 0x28);\n    uVar18 = local_58;\n    if (((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58)) {\n      iVar8 = *(int *)(param_1 + 0x13c);\n      iVar19 = *(int *)(param_1 + 0x140);\n      if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);\n    }\nLAB_001e5adf:\n    piVar7 = *(int **)(DAT_005ea7c8 + 0xc);\n    if (piVar7 == (int *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);\n    }\n    piVar3 = (int *)piVar7[1];\n    if (((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0')) {\n                    /* WARNING: Subroutine does not return */\n      FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);\n    }\n    if (1 < local_58) {\n      uVar18 = 1;\n      puVar12 = &local_24;\n      do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);\n    }\n  }" { (expression_statement "local_58 = *(uint *)(param_1 + 0x28);" (assignment_expression "local_58 = *(uint *)(param_1 + 0x28)" identifier = (pointer_expression "*(uint *)(param_1 + 0x28)" * (cast_expression "(uint *)(param_1 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x28)" ( (binary_expression "param_1 + 0x28" identifier + number_literal) ))))) ;) (expression_statement "uVar18 = local_58;" (assignment_expression "uVar18 = local_58" identifier = identifier) ;) (if_statement "if (((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58)) {\n      iVar8 = *(int *)(param_1 + 0x13c);\n      iVar19 = *(int *)(param_1 + 0x140);\n      if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);\n    }" if (parenthesized_expression "(((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58))" ( (binary_expression "((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58)" (parenthesized_expression "((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0'))" ( (binary_expression "(*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')" (parenthesized_expression "(*(char *)(iVar8 + 0x1671) != '\0')" ( (binary_expression "*(char *)(iVar8 + 0x1671) != '\0'" (pointer_expression "*(char *)(iVar8 + 0x1671)" * (cast_expression "(char *)(iVar8 + 0x1671)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1671)" ( (binary_expression "iVar8 + 0x1671" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(*(char *)(iVar8 + 0x16ed) != '\0')" ( (binary_expression "*(char *)(iVar8 + 0x16ed) != '\0'" (pointer_expression "*(char *)(iVar8 + 0x16ed)" * (cast_expression "(char *)(iVar8 + 0x16ed)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x16ed)" ( (binary_expression "iVar8 + 0x16ed" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) )) && (parenthesized_expression "(1 < local_58)" ( (binary_expression "1 < local_58" number_literal < identifier) ))) )) (compound_statement "{\n      iVar8 = *(int *)(param_1 + 0x13c);\n      iVar19 = *(int *)(param_1 + 0x140);\n      if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);\n    }" { (expression_statement "iVar8 = *(int *)(param_1 + 0x13c);" (assignment_expression "iVar8 = *(int *)(param_1 + 0x13c)" identifier = (pointer_expression "*(int *)(param_1 + 0x13c)" * (cast_expression "(int *)(param_1 + 0x13c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x13c)" ( (binary_expression "param_1 + 0x13c" identifier + number_literal) ))))) ;) (expression_statement "iVar19 = *(int *)(param_1 + 0x140);" (assignment_expression "iVar19 = *(int *)(param_1 + 0x140)" identifier = (pointer_expression "*(int *)(param_1 + 0x140)" * (cast_expression "(int *)(param_1 + 0x140)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x140)" ( (binary_expression "param_1 + 0x140" identifier + number_literal) ))))) ;) (if_statement "if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }" if (parenthesized_expression "(7 < (uint)(iVar19 - iVar8))" ( (binary_expression "7 < (uint)(iVar19 - iVar8)" number_literal < (call_expression "(uint)(iVar19 - iVar8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(iVar19 - iVar8)" ( (binary_expression "iVar19 - iVar8" identifier - identifier) )))) )) (compound_statement "{\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }" { (expression_statement "local_5c = 1;" (assignment_expression "local_5c = 1" identifier = number_literal) ;) (do_statement "do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));" do (compound_statement "{\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        }" { (expression_statement "ppuVar21 = (undefined **)(local_5c * 4);" (assignment_expression "ppuVar21 = (undefined **)(local_5c * 4)" identifier = (cast_expression "(undefined **)(local_5c * 4)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_5c * 4)" ( (binary_expression "local_5c * 4" identifier * number_literal) )))) ;) (expression_statement "puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);" (assignment_expression "puVar24 = *(undefined4 **)(iVar8 + local_5c * 4)" identifier = (pointer_expression "*(undefined4 **)(iVar8 + local_5c * 4)" * (cast_expression "(undefined4 **)(iVar8 + local_5c * 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar8 + local_5c * 4)" ( (binary_expression "iVar8 + local_5c * 4" identifier + (binary_expression "local_5c * 4" identifier * number_literal)) ))))) ;) (if_statement "if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }" if (parenthesized_expression "(puVar24 != (undefined4 *)0x0)" ( (binary_expression "puVar24 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }" { (expression_statement "FUN_001d6d60(local_5c);" (call_expression "FUN_001d6d60(local_5c)" identifier (argument_list "(local_5c)" ( identifier ))) ;) (expression_statement "local_7c = local_34;" (assignment_expression "local_7c = local_34" identifier = identifier) ;) (expression_statement "piVar7 = (int *)(local_5c * 0x1c + *param_6);" (assignment_expression "piVar7 = (int *)(local_5c * 0x1c + *param_6)" identifier = (cast_expression "(int *)(local_5c * 0x1c + *param_6)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_5c * 0x1c + *param_6)" ( (binary_expression "local_5c * 0x1c + *param_6" (binary_expression "local_5c * 0x1c" identifier * number_literal) + (pointer_expression "*param_6" * identifier)) )))) ;) (if_statement "if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }" if (parenthesized_expression "((char)piVar7[6] == '\0')" ( (binary_expression "(char)piVar7[6] == '\0'" (cast_expression "(char)piVar7[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "piVar7[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }" { (expression_statement "puVar22 = (uint *)0x0;" (assignment_expression "puVar22 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" identifier = number_literal) ;) }) (else_clause "else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }" else (compound_statement "{\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }" { (expression_statement "uVar18 = local_5c;" (assignment_expression "uVar18 = local_5c" identifier = identifier) ;) (if_statement "if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }" if (parenthesized_expression "(0xfeff < local_5c)" ( (binary_expression "0xfeff < local_5c" number_literal < identifier) )) (compound_statement "{\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }" { (expression_statement "FUN_00108090(param_1 + 0x90);" (call_expression "FUN_00108090(param_1 + 0x90)" identifier (argument_list "(param_1 + 0x90)" ( (binary_expression "param_1 + 0x90" identifier + number_literal) ))) ;) (expression_statement "uVar18 = local_5c + *(int *)(param_1 + 0xa4);" (assignment_expression "uVar18 = local_5c + *(int *)(param_1 + 0xa4)" identifier = (binary_expression "local_5c + *(int *)(param_1 + 0xa4)" identifier + (pointer_expression "*(int *)(param_1 + 0xa4)" * (cast_expression "(int *)(param_1 + 0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xa4)" ( (binary_expression "param_1 + 0xa4" identifier + number_literal) )))))) ;) (expression_statement "ppuVar21 = (undefined **)(uVar18 * 4);" (assignment_expression "ppuVar21 = (undefined **)(uVar18 * 4)" identifier = (cast_expression "(undefined **)(uVar18 * 4)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(uVar18 * 4)" ( (binary_expression "uVar18 * 4" identifier * number_literal) )))) ;) })) (expression_statement "local_74 = &__DT_PLTGOT;" (assignment_expression "local_74 = &__DT_PLTGOT" identifier = (pointer_expression "&__DT_PLTGOT" & identifier)) ;) (expression_statement "iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);" (assignment_expression "iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18)" identifier = (call_expression "FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18)" identifier (argument_list "(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18)" ( (pointer_expression "*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21)" * (cast_expression "(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_1 + 0x38) + (int)ppuVar21)" ( (binary_expression "*(int *)(param_1 + 0x38) + (int)ppuVar21" (pointer_expression "*(int *)(param_1 + 0x38)" * (cast_expression "(int *)(param_1 + 0x38)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x38)" ( (binary_expression "param_1 + 0x38" identifier + number_literal) )))) + (cast_expression "(int)ppuVar21" ( (type_descriptor "int" primitive_type) ) identifier)) )))) , identifier , identifier )))) ;) (if_statement "if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }" { comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX)" identifier (argument_list "("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX)" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""fix_errata_and_relocate_erratum_stubs"" " string_content ") , identifier ))) ;) })) (if_statement "if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;" if (parenthesized_expression "((*(byte *)(iVar8 + 0x1c) & 1) == 0)" ( (binary_expression "(*(byte *)(iVar8 + 0x1c) & 1) == 0" (parenthesized_expression "(*(byte *)(iVar8 + 0x1c) & 1)" ( (binary_expression "*(byte *)(iVar8 + 0x1c) & 1" (pointer_expression "*(byte *)(iVar8 + 0x1c)" * (cast_expression "(byte *)(iVar8 + 0x1c)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1c)" ( (binary_expression "iVar8 + 0x1c" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_001e670d;" goto statement_identifier ;)) (expression_statement "puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);" (assignment_expression "puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1])" identifier = (cast_expression "(uint *)(*(uint *)(iVar8 + 4) - piVar7[1])" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(uint *)(iVar8 + 4) - piVar7[1])" ( (binary_expression "*(uint *)(iVar8 + 4) - piVar7[1]" (pointer_expression "*(uint *)(iVar8 + 4)" * (cast_expression "(uint *)(iVar8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 4)" ( (binary_expression "iVar8 + 4" identifier + number_literal) )))) - (subscript_expression "piVar7[1]" identifier [ number_literal ])) )))) ;) (expression_statement "local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);" (assignment_expression "local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1])" identifier = (binary_expression "(*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1])" (parenthesized_expression "(*(int *)(iVar8 + 8) - piVar7[2])" ( (binary_expression "*(int *)(iVar8 + 8) - piVar7[2]" (pointer_expression "*(int *)(iVar8 + 8)" * (cast_expression "(int *)(iVar8 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 8)" ( (binary_expression "iVar8 + 8" identifier + number_literal) )))) - (subscript_expression "piVar7[2]" identifier [ number_literal ])) )) - (call_expression "(uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1])" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(uint *)(iVar8 + 4) < (uint)piVar7[1])" ( (binary_expression "*(uint *)(iVar8 + 4) < (uint)piVar7[1]" (pointer_expression "*(uint *)(iVar8 + 4)" * (cast_expression "(uint *)(iVar8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 4)" ( (binary_expression "iVar8 + 4" identifier + number_literal) )))) < (cast_expression "(uint)piVar7[1]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "piVar7[1]" identifier [ number_literal ]))) ))))) ;) (expression_statement "ppuVar21 = local_74;" (assignment_expression "ppuVar21 = local_74" identifier = identifier) ;) }))) (expression_statement "local_74 = &__DT_PLTGOT;" (assignment_expression "local_74 = &__DT_PLTGOT" identifier = (pointer_expression "&__DT_PLTGOT" & identifier)) ;) (expression_statement "uVar18 = local_34;" (assignment_expression "uVar18 = local_34" identifier = identifier) ;) (if_statement "if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }" if (parenthesized_expression "(local_34 != local_30)" ( (binary_expression "local_34 != local_30" identifier != identifier) )) (compound_statement "{\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }" { (expression_statement "iVar8 = *(int *)(local_34 + 0x10);" (assignment_expression "iVar8 = *(int *)(local_34 + 0x10)" identifier = (pointer_expression "*(int *)(local_34 + 0x10)" * (cast_expression "(int *)(local_34 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_34 + 0x10)" ( (binary_expression "local_34 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "uVar4 = piVar7[1];" (assignment_expression "uVar4 = piVar7[1]" identifier = (subscript_expression "piVar7[1]" identifier [ number_literal ])) ;) (expression_statement "uVar18 = *(uint *)(iVar8 + 0x1c);" (assignment_expression "uVar18 = *(uint *)(iVar8 + 0x1c)" identifier = (pointer_expression "*(uint *)(iVar8 + 0x1c)" * (cast_expression "(uint *)(iVar8 + 0x1c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1c)" ( (binary_expression "iVar8 + 0x1c" identifier + number_literal) ))))) ;) (expression_statement "uVar9 = (int)puVar22 + uVar4;" (assignment_expression "uVar9 = (int)puVar22 + uVar4" identifier = (binary_expression "(int)puVar22 + uVar4" (cast_expression "(int)puVar22" ( (type_descriptor "int" primitive_type) ) identifier) + identifier)) ;) (expression_statement "iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);" (assignment_expression "iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4)" identifier = (binary_expression "local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4)" (binary_expression "local_b0 + piVar7[2]" identifier + (subscript_expression "piVar7[2]" identifier [ number_literal ])) + (cast_expression "(uint)CARRY4((uint)puVar22,uVar4)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4((uint)puVar22,uVar4)" identifier (argument_list "((uint)puVar22,uVar4)" ( (cast_expression "(uint)puVar22" ( (type_descriptor "uint" type_identifier) ) identifier) , identifier )))))) ;) (expression_statement "local_78 = *(uint **)(iVar8 + 0x24);" (assignment_expression "local_78 = *(uint **)(iVar8 + 0x24)" identifier = (pointer_expression "*(uint **)(iVar8 + 0x24)" * (cast_expression "(uint **)(iVar8 + 0x24)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar8 + 0x24)" ( (binary_expression "iVar8 + 0x24" identifier + number_literal) ))))) ;) (if_statement "if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }" if (parenthesized_expression "(((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff)" ( (binary_expression "((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff" (parenthesized_expression "((uint)local_78 & *(uint *)(iVar8 + 0x28))" ( (binary_expression "(uint)local_78 & *(uint *)(iVar8 + 0x28)" (cast_expression "(uint)local_78" ( (type_descriptor "uint" type_identifier) ) identifier) & (pointer_expression "*(uint *)(iVar8 + 0x28)" * (cast_expression "(uint *)(iVar8 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x28)" ( (binary_expression "iVar8 + 0x28" identifier + number_literal) ))))) )) == number_literal) )) (compound_statement "{\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }" { (labeled_statement "LAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");" statement_identifier : comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address")" identifier (argument_list "("../../gold/aarch64.cc",0x401,"erratum_address")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""erratum_address"" " string_content ") ))) ;)) })) (if_statement "if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }" if (parenthesized_expression "(*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9))" ( (binary_expression "*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)" (binary_expression "*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9)" (pointer_expression "*(uint *)(iVar8 + 0x28)" * (cast_expression "(uint *)(iVar8 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x28)" ( (binary_expression "iVar8 + 0x28" identifier + number_literal) )))) != (binary_expression "iVar19 + (uint)CARRY4(uVar18,uVar9)" identifier + (cast_expression "(uint)CARRY4(uVar18,uVar9)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(uVar18,uVar9)" identifier (argument_list "(uVar18,uVar9)" ( identifier , identifier )))))) || (binary_expression "local_78 != (uint *)(uVar18 + uVar9)" identifier != (cast_expression "(uint *)(uVar18 + uVar9)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar18 + uVar9)" ( (binary_expression "uVar18 + uVar9" identifier + identifier) ))))) )) (compound_statement "{\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }" { (labeled_statement "LAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");" statement_identifier : comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs")" identifier (argument_list "("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""fix_errata_and_relocate_erratum_stubs"" " string_content ") ))) ;)) })) (expression_statement "piVar7 = (int *)*piVar7;" (assignment_expression "piVar7 = (int *)*piVar7" identifier = (cast_expression "(int *)*piVar7" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar7" * identifier))) ;) (expression_statement "iVar10 = (int)piVar7 + (int)puVar22;" (assignment_expression "iVar10 = (int)piVar7 + (int)puVar22" identifier = (binary_expression "(int)piVar7 + (int)puVar22" (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)puVar22" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "puVar12 = puVar22;" (assignment_expression "puVar12 = puVar22" identifier = identifier) ;) (do_statement "do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );" do (compound_statement "{\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              }" { (expression_statement "uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);" (assignment_expression "uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22)" identifier = (pointer_expression "*(uint *)(uVar18 + (int)piVar7 + (int)puVar22)" * (cast_expression "(uint *)(uVar18 + (int)piVar7 + (int)puVar22)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar18 + (int)piVar7 + (int)puVar22)" ( (binary_expression "uVar18 + (int)piVar7 + (int)puVar22" (binary_expression "uVar18 + (int)piVar7" identifier + (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier)) + (cast_expression "(int)puVar22" ( (type_descriptor "int" primitive_type) ) identifier)) ))))) ;) (expression_statement "uVar11 = *(uint *)(iVar8 + 0x20);" (assignment_expression "uVar11 = *(uint *)(iVar8 + 0x20)" identifier = (pointer_expression "*(uint *)(iVar8 + 0x20)" * (cast_expression "(uint *)(iVar8 + 0x20)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x20)" ( (binary_expression "iVar8 + 0x20" identifier + number_literal) ))))) ;) (if_statement "if (uVar11 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }" if (parenthesized_expression "(uVar11 == 0xffffffff)" ( (binary_expression "uVar11 == 0xffffffff" identifier == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }" { comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn")" identifier (argument_list "("../../gold/aarch64.cc",999,"update_erratum_insn")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""update_erratum_insn"" " string_content ") ))) ;) })) (if_statement "if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }" if (parenthesized_expression "(*(int *)(iVar8 + 0x10) == 4)" ( (binary_expression "*(int *)(iVar8 + 0x10) == 4" (pointer_expression "*(int *)(iVar8 + 0x10)" * (cast_expression "(int *)(iVar8 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x10)" ( (binary_expression "iVar8 + 0x10" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }" { (if_statement "if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }" if (parenthesized_expression "((uVar18 & 0x3b000000) != 0x39000000)" ( (binary_expression "(uVar18 & 0x3b000000) != 0x39000000" (parenthesized_expression "(uVar18 & 0x3b000000)" ( (binary_expression "uVar18 & 0x3b000000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }" { comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn")" identifier (argument_list "("../../gold/aarch64.cc",0x3eb,"update_erratum_insn")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""update_erratum_insn"" " string_content ") ))) ;) })) (if_statement "if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }" if (parenthesized_expression "((uVar11 & 0x3b000000) != 0x39000000)" ( (binary_expression "(uVar11 & 0x3b000000) != 0x39000000" (parenthesized_expression "(uVar11 & 0x3b000000)" ( (binary_expression "uVar11 & 0x3b000000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }" { comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn")" identifier (argument_list "("../../gold/aarch64.cc",0x3ec,"update_erratum_insn")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""update_erratum_insn"" " string_content ") ))) ;) })) (if_statement "if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }" if (parenthesized_expression "((uVar18 & 0x1f) != (uVar11 & 0x1f))" ( (binary_expression "(uVar18 & 0x1f) != (uVar11 & 0x1f)" (parenthesized_expression "(uVar18 & 0x1f)" ( (binary_expression "uVar18 & 0x1f" identifier & number_literal) )) != (parenthesized_expression "(uVar11 & 0x1f)" ( (binary_expression "uVar11 & 0x1f" identifier & number_literal) ))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }" { comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn")" identifier (argument_list "("../../gold/aarch64.cc",0x3ee,"update_erratum_insn")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""update_erratum_insn"" " string_content ") ))) ;) })) (if_statement "if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }" if (parenthesized_expression "((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f))" ( (binary_expression "(uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)" (parenthesized_expression "(uVar18 >> 5 & 0x1f)" ( (binary_expression "uVar18 >> 5 & 0x1f" (binary_expression "uVar18 >> 5" identifier >> number_literal) & number_literal) )) != (parenthesized_expression "(uVar11 >> 5 & 0x1f)" ( (binary_expression "uVar11 >> 5 & 0x1f" (binary_expression "uVar11 >> 5" identifier >> number_literal) & number_literal) ))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }" { comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn")" identifier (argument_list "("../../gold/aarch64.cc",0x3f0,"update_erratum_insn")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""update_erratum_insn"" " string_content ") ))) ;) })) (expression_statement "iVar17 = *(int *)(iVar8 + 0x2c);" (assignment_expression "iVar17 = *(int *)(iVar8 + 0x2c)" identifier = (pointer_expression "*(int *)(iVar8 + 0x2c)" * (cast_expression "(int *)(iVar8 + 0x2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x2c)" ( (binary_expression "iVar8 + 0x2c" identifier + number_literal) ))))) ;) (expression_statement "*(uint *)(iVar8 + 0x20) = uVar18;" (assignment_expression "*(uint *)(iVar8 + 0x20) = uVar18" (pointer_expression "*(uint *)(iVar8 + 0x20)" * (cast_expression "(uint *)(iVar8 + 0x20)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x20)" ( (binary_expression "iVar8 + 0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);" (assignment_expression "puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17)" identifier = (cast_expression "(uint *)((int)piVar7 + (int)puVar22 + iVar17)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar7 + (int)puVar22 + iVar17)" ( (binary_expression "(int)piVar7 + (int)puVar22 + iVar17" (binary_expression "(int)piVar7 + (int)puVar22" (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)puVar22" ( (type_descriptor "int" primitive_type) ) identifier)) + identifier) )))) ;) (expression_statement "puVar12 = (uint *)*puVar16;" (assignment_expression "puVar12 = (uint *)*puVar16" identifier = (cast_expression "(uint *)*puVar16" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar16" * identifier))) ;) (if_statement "if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }" if (parenthesized_expression "(((uint)puVar12 & 0xffffffe0) != 0xd53bd040)" ( (binary_expression "((uint)puVar12 & 0xffffffe0) != 0xd53bd040" (parenthesized_expression "((uint)puVar12 & 0xffffffe0)" ( (binary_expression "(uint)puVar12 & 0xffffffe0" (cast_expression "(uint)puVar12" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }" { (if_statement "if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }" if (parenthesized_expression "(((uint)puVar12 & 0x9f000000) == 0x90000000)" ( (binary_expression "((uint)puVar12 & 0x9f000000) == 0x90000000" (parenthesized_expression "((uint)puVar12 & 0x9f000000)" ( (binary_expression "(uint)puVar12 & 0x9f000000" (cast_expression "(uint)puVar12" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }" { (expression_statement "uVar5 = iVar17 + uVar9;" (assignment_expression "uVar5 = iVar17 + uVar9" identifier = (binary_expression "iVar17 + uVar9" identifier + identifier)) ;) (expression_statement "uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;" (assignment_expression "uVar23 = (uint)puVar12 >> 3 & 0x1ffffc" identifier = (binary_expression "(uint)puVar12 >> 3 & 0x1ffffc" (binary_expression "(uint)puVar12 >> 3" (cast_expression "(uint)puVar12" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) & number_literal)) ;) (expression_statement "uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;" (assignment_expression "uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000" identifier = (binary_expression "(uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000" (parenthesized_expression "(uVar23 | (uint)puVar12 >> 0x1d & 3)" ( (binary_expression "uVar23 | (uint)puVar12 >> 0x1d & 3" identifier | (binary_expression "(uint)puVar12 >> 0x1d & 3" (binary_expression "(uint)puVar12 >> 0x1d" (cast_expression "(uint)puVar12" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) & number_literal)) )) * number_literal)) ;) (expression_statement "uVar18 = (uVar5 & 0xfffff000) - uVar5;" (assignment_expression "uVar18 = (uVar5 & 0xfffff000) - uVar5" identifier = (binary_expression "(uVar5 & 0xfffff000) - uVar5" (parenthesized_expression "(uVar5 & 0xfffff000)" ( (binary_expression "uVar5 & 0xfffff000" identifier & number_literal) )) - identifier)) ;) (expression_statement "uVar11 = uVar18 + uVar20;" (assignment_expression "uVar11 = uVar18 + uVar20" identifier = (binary_expression "uVar18 + uVar20" identifier + identifier)) ;) (expression_statement "iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);" (assignment_expression "iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11)" identifier = (binary_expression "(((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11)" (binary_expression "(((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20)" (parenthesized_expression "(((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5))" ( (binary_expression "((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)" (parenthesized_expression "((uVar23 >> 0x14) * -2 | uVar23 >> 0x14)" ( (binary_expression "(uVar23 >> 0x14) * -2 | uVar23 >> 0x14" (binary_expression "(uVar23 >> 0x14) * -2" (parenthesized_expression "(uVar23 >> 0x14)" ( (binary_expression "uVar23 >> 0x14" identifier >> number_literal) )) * number_literal) | (binary_expression "uVar23 >> 0x14" identifier >> number_literal)) )) - (call_expression "(uint)((uVar5 & 0xfffff000) < uVar5)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((uVar5 & 0xfffff000) < uVar5)" ( (binary_expression "(uVar5 & 0xfffff000) < uVar5" (parenthesized_expression "(uVar5 & 0xfffff000)" ( (binary_expression "uVar5 & 0xfffff000" identifier & number_literal) )) < identifier) )))) )) + (cast_expression "(uint)CARRY4(uVar18,uVar20)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(uVar18,uVar20)" identifier (argument_list "(uVar18,uVar20)" ( identifier , identifier ))))) + (call_expression "(uint)(0xffefffff < uVar11)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0xffefffff < uVar11)" ( (binary_expression "0xffefffff < uVar11" number_literal < identifier) ))))) ;) (if_statement "if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;" if (parenthesized_expression "(iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))" ( (binary_expression "iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000)" (binary_expression "iVar17 != 0" identifier != number_literal) || (binary_expression "(uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000)" (binary_expression "(uint)-iVar17" (parenthesized_expression "(uint)" ( identifier )) - identifier) < (call_expression "(uint)(0x1fffff < uVar11 + 0x100000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0x1fffff < uVar11 + 0x100000)" ( (binary_expression "0x1fffff < uVar11 + 0x100000" number_literal < (binary_expression "uVar11 + 0x100000" identifier + number_literal)) ))))) )) (goto_statement "goto LAB_001e6269;" goto statement_identifier ;)) (if_statement "if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }" if (parenthesized_expression "(((uint)puVar12 & 0x1f000000) != 0x10000000)" ( (binary_expression "((uint)puVar12 & 0x1f000000) != 0x10000000" (parenthesized_expression "((uint)puVar12 & 0x1f000000)" ( (binary_expression "(uint)puVar12 & 0x1f000000" (cast_expression "(uint)puVar12" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }" { comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm")" identifier (argument_list "("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""aarch64_adr_encode_imm"" " string_content ") ))) ;) })) (expression_statement "*puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;" (assignment_expression "*puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f" (pointer_expression "*puVar16" * identifier) = (binary_expression "(uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f" (binary_expression "(uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0" (binary_expression "(uVar11 & 3) << 0x1d" (parenthesized_expression "(uVar11 & 3)" ( (binary_expression "uVar11 & 3" identifier & number_literal) )) << number_literal) | (binary_expression "uVar11 * 8 & 0xffffe0" (binary_expression "uVar11 * 8" identifier * number_literal) & number_literal)) | (binary_expression "(uint)puVar12 & 0x1f00001f" (cast_expression "(uint)puVar12" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal))) ;) }) (else_clause "else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }" else (if_statement "if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }" if (parenthesized_expression "((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040))" ( (binary_expression "(iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)" (parenthesized_expression "(iVar17 == 0)" ( (binary_expression "iVar17 == 0" identifier == number_literal) )) || (parenthesized_expression "((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)" ( (binary_expression "(*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040" (parenthesized_expression "(*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0)" ( (binary_expression "*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0" (pointer_expression "*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4)" * (cast_expression "(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar7 + (int)puVar22 + iVar17 + -4)" ( (binary_expression "(int)piVar7 + (int)puVar22 + iVar17 + -4" (binary_expression "(int)piVar7 + (int)puVar22 + iVar17" (binary_expression "(int)piVar7 + (int)puVar22" (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)puVar22" ( (type_descriptor "int" primitive_type) ) identifier)) + identifier) + number_literal) )))) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }" { comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")" identifier (argument_list "("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""try_fix_erratum_843419_optimized"" " string_content ") ))) ;) })))) })) (if_statement "if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;" if (parenthesized_expression "((*(byte *)(puVar24 + 7) & 1) == 0)" ( (binary_expression "(*(byte *)(puVar24 + 7) & 1) == 0" (parenthesized_expression "(*(byte *)(puVar24 + 7) & 1)" ( (binary_expression "*(byte *)(puVar24 + 7) & 1" (pointer_expression "*(byte *)(puVar24 + 7)" * (cast_expression "(byte *)(puVar24 + 7)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 7)" ( (binary_expression "puVar24 + 7" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_001e670d;" goto statement_identifier ;)) (expression_statement "iVar17 = puVar24[1];" (assignment_expression "iVar17 = puVar24[1]" identifier = (subscript_expression "puVar24[1]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }" else (compound_statement "{\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }" { (if_statement "if (*(int *)(iVar8 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }" if (parenthesized_expression "(*(int *)(iVar8 + 0x10) != 5)" ( (binary_expression "*(int *)(iVar8 + 0x10) != 5" (pointer_expression "*(int *)(iVar8 + 0x10)" * (cast_expression "(int *)(iVar8 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x10)" ( (binary_expression "iVar8 + 0x10" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }" { comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn")" identifier (argument_list "("../../gold/aarch64.cc",0x3f8,"update_erratum_insn")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""update_erratum_insn"" " string_content ") ))) ;) })) (if_statement "if (uVar18 != uVar11) {\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }" if (parenthesized_expression "(uVar18 != uVar11)" ( (binary_expression "uVar18 != uVar11" identifier != identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }" { comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn")" identifier (argument_list "("../../gold/aarch64.cc",0x3f5,"update_erratum_insn")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""update_erratum_insn"" " string_content ") ))) ;) })) (labeled_statement "LAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;" statement_identifier : (if_statement "if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;" if (parenthesized_expression "((*(byte *)(puVar24 + 7) & 1) == 0)" ( (binary_expression "(*(byte *)(puVar24 + 7) & 1) == 0" (parenthesized_expression "(*(byte *)(puVar24 + 7) & 1)" ( (binary_expression "*(byte *)(puVar24 + 7) & 1" (pointer_expression "*(byte *)(puVar24 + 7)" * (cast_expression "(byte *)(puVar24 + 7)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 7)" ( (binary_expression "puVar24 + 7" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_001e670d;" goto statement_identifier ;))) (expression_statement "iVar17 = puVar24[1];" (assignment_expression "iVar17 = puVar24[1]" identifier = (subscript_expression "puVar24[1]" identifier [ number_literal ])) ;) (if_statement "if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;" if (parenthesized_expression "(*(int *)(iVar8 + 0xc) == -1)" ( (binary_expression "*(int *)(iVar8 + 0xc) == -1" (pointer_expression "*(int *)(iVar8 + 0xc)" * (cast_expression "(int *)(iVar8 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0xc)" ( (binary_expression "iVar8 + 0xc" identifier + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_001e5d9c;" goto statement_identifier ;)) (expression_statement "*(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;" (assignment_expression "*(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000" (pointer_expression "*(uint *)(iVar10 + *(int *)(iVar8 + 0x1c))" * (cast_expression "(uint *)(iVar10 + *(int *)(iVar8 + 0x1c))" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + *(int *)(iVar8 + 0x1c))" ( (binary_expression "iVar10 + *(int *)(iVar8 + 0x1c)" identifier + (pointer_expression "*(int *)(iVar8 + 0x1c)" * (cast_expression "(int *)(iVar8 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1c)" ( (binary_expression "iVar8 + 0x1c" identifier + number_literal) ))))) )))) = (binary_expression "(iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000" (binary_expression "(iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff" (binary_expression "(iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2" (binary_expression "(iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78)" (parenthesized_expression "(iVar17 + 3 + puVar24[0x16] & 0xfffffffcU)" ( (binary_expression "iVar17 + 3 + puVar24[0x16] & 0xfffffffcU" (binary_expression "iVar17 + 3 + puVar24[0x16]" (binary_expression "iVar17 + 3" identifier + number_literal) + (subscript_expression "puVar24[0x16]" identifier [ number_literal ])) & number_literal) )) + (parenthesized_expression "(*(int *)(iVar8 + 0xc) - (int)local_78)" ( (binary_expression "*(int *)(iVar8 + 0xc) - (int)local_78" (pointer_expression "*(int *)(iVar8 + 0xc)" * (cast_expression "(int *)(iVar8 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0xc)" ( (binary_expression "iVar8 + 0xc" identifier + number_literal) )))) - (cast_expression "(int)local_78" ( (type_descriptor "int" primitive_type) ) identifier)) ))) >> number_literal) & number_literal) | number_literal)) ;) }))) (expression_statement "uVar18 = (iVar17 - uVar4) + (int)piVar7;" (assignment_expression "uVar18 = (iVar17 - uVar4) + (int)piVar7" identifier = (binary_expression "(iVar17 - uVar4) + (int)piVar7" (parenthesized_expression "(iVar17 - uVar4)" ( (binary_expression "iVar17 - uVar4" identifier - identifier) )) + (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }" if (parenthesized_expression "(*(int *)(iVar8 + 0x20) == -1)" ( (binary_expression "*(int *)(iVar8 + 0x20) == -1" (pointer_expression "*(int *)(iVar8 + 0x20)" * (cast_expression "(int *)(iVar8 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x20)" ( (binary_expression "iVar8 + 0x20" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }" { comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub")" identifier (argument_list "("../../gold/aarch64.cc",0x663,"relocate_erratum_stub")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_erratum_stub"" " string_content ") ))) ;) })) (if_statement "if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;" if (parenthesized_expression "(*(int *)(iVar8 + 0xc) == -1)" ( (binary_expression "*(int *)(iVar8 + 0xc) == -1" (pointer_expression "*(int *)(iVar8 + 0xc)" * (cast_expression "(int *)(iVar8 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0xc)" ( (binary_expression "iVar8 + 0xc" identifier + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_001e5d9c;" goto statement_identifier ;)) (expression_statement "iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);" (assignment_expression "iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc)" identifier = (binary_expression "*(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc)" (pointer_expression "*(int *)(iVar8 + 0xc)" * (cast_expression "(int *)(iVar8 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0xc)" ( (binary_expression "iVar8 + 0xc" identifier + number_literal) )))) + (parenthesized_expression "(iVar17 + puVar24[0x16] + 3U & 0xfffffffc)" ( (binary_expression "iVar17 + puVar24[0x16] + 3U & 0xfffffffc" (binary_expression "iVar17 + puVar24[0x16] + 3U" (binary_expression "iVar17 + puVar24[0x16]" identifier + (subscript_expression "puVar24[0x16]" identifier [ number_literal ])) + number_literal) & number_literal) )))) ;) (if_statement "if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }" if (parenthesized_expression "(1 < *(int *)(iVar8 + 0x10) - 4U)" ( (binary_expression "1 < *(int *)(iVar8 + 0x10) - 4U" number_literal < (binary_expression "*(int *)(iVar8 + 0x10) - 4U" (pointer_expression "*(int *)(iVar8 + 0x10)" * (cast_expression "(int *)(iVar8 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x10)" ( (binary_expression "iVar8 + 0x10" identifier + number_literal) )))) - number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }" { comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub")" identifier (argument_list "("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_erratum_stub"" " string_content ") ))) ;) })) (expression_statement "iVar15 = iVar13 + 4;" (assignment_expression "iVar15 = iVar13 + 4" identifier = (binary_expression "iVar13 + 4" identifier + number_literal)) ;) (expression_statement "*(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);" (assignment_expression "*(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20)" (pointer_expression "*(int *)(uVar18 + (iVar13 - iVar17))" * (cast_expression "(int *)(uVar18 + (iVar13 - iVar17))" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar18 + (iVar13 - iVar17))" ( (binary_expression "uVar18 + (iVar13 - iVar17)" identifier + (parenthesized_expression "(iVar13 - iVar17)" ( (binary_expression "iVar13 - iVar17" identifier - identifier) ))) )))) = (pointer_expression "*(int *)(iVar8 + 0x20)" * (cast_expression "(int *)(iVar8 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x20)" ( (binary_expression "iVar8 + 0x20" identifier + number_literal) ))))) ;) (if_statement "if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;" if (parenthesized_expression "((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff)" ( (binary_expression "(*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff" (parenthesized_expression "(*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4))" ( (binary_expression "*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)" (pointer_expression "*(uint *)(iVar8 + 8)" * (cast_expression "(uint *)(iVar8 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 8)" ( (binary_expression "iVar8 + 8" identifier + number_literal) )))) & (pointer_expression "*(uint *)(iVar8 + 4)" * (cast_expression "(uint *)(iVar8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 4)" ( (binary_expression "iVar8 + 4" identifier + number_literal) ))))) )) == number_literal) )) (goto_statement "goto LAB_001e67c7;" goto statement_identifier ;)) (expression_statement "*(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;" (assignment_expression "*(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000" (pointer_expression "*(uint *)(uVar18 + (iVar15 - iVar17))" * (cast_expression "(uint *)(uVar18 + (iVar15 - iVar17))" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar18 + (iVar15 - iVar17))" ( (binary_expression "uVar18 + (iVar15 - iVar17)" identifier + (parenthesized_expression "(iVar15 - iVar17)" ( (binary_expression "iVar15 - iVar17" identifier - identifier) ))) )))) = (binary_expression "*(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000" (binary_expression "*(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff" (binary_expression "*(uint *)(iVar8 + 4) - iVar15 >> 2" (binary_expression "*(uint *)(iVar8 + 4) - iVar15" (pointer_expression "*(uint *)(iVar8 + 4)" * (cast_expression "(uint *)(iVar8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 4)" ( (binary_expression "iVar8 + 4" identifier + number_literal) )))) - identifier) >> number_literal) & number_literal) | number_literal)) ;) (if_statement "if (*(int *)(iVar8 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }" if (parenthesized_expression "(*(int *)(iVar8 + 0x20) == -1)" ( (binary_expression "*(int *)(iVar8 + 0x20) == -1" (pointer_expression "*(int *)(iVar8 + 0x20)" * (cast_expression "(int *)(iVar8 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x20)" ( (binary_expression "iVar8 + 0x20" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }" { comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")" identifier (argument_list "("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""invalidate_erratum_stub"" " string_content ") ))) ;) })) (expression_statement "*(undefined4 *)(iVar8 + 0x20) = 0xffffffff;" (assignment_expression "*(undefined4 *)(iVar8 + 0x20) = 0xffffffff" (pointer_expression "*(undefined4 *)(iVar8 + 0x20)" * (cast_expression "(undefined4 *)(iVar8 + 0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x20)" ( (binary_expression "iVar8 + 0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_7c = thunk_FUN_003af660(local_7c);" (assignment_expression "local_7c = thunk_FUN_003af660(local_7c)" identifier = (call_expression "thunk_FUN_003af660(local_7c)" identifier (argument_list "(local_7c)" ( identifier )))) ;) (expression_statement "ppuVar21 = local_74;" (assignment_expression "ppuVar21 = local_74" identifier = identifier) ;) (if_statement "if (local_30 == local_7c) break;" if (parenthesized_expression "(local_30 == local_7c)" ( (binary_expression "local_30 == local_7c" identifier == identifier) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = *(int *)(local_7c + 0x10);" (assignment_expression "iVar8 = *(int *)(local_7c + 0x10)" identifier = (pointer_expression "*(int *)(local_7c + 0x10)" * (cast_expression "(int *)(local_7c + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_7c + 0x10)" ( (binary_expression "local_7c + 0x10" identifier + number_literal) ))))) ;) (expression_statement "uVar18 = *(uint *)(iVar8 + 0x1c);" (assignment_expression "uVar18 = *(uint *)(iVar8 + 0x1c)" identifier = (pointer_expression "*(uint *)(iVar8 + 0x1c)" * (cast_expression "(uint *)(iVar8 + 0x1c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1c)" ( (binary_expression "iVar8 + 0x1c" identifier + number_literal) ))))) ;) (expression_statement "puVar12 = (uint *)(uVar18 + uVar9);" (assignment_expression "puVar12 = (uint *)(uVar18 + uVar9)" identifier = (cast_expression "(uint *)(uVar18 + uVar9)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar18 + uVar9)" ( (binary_expression "uVar18 + uVar9" identifier + identifier) )))) ;) (expression_statement "local_78 = *(uint **)(iVar8 + 0x24);" (assignment_expression "local_78 = *(uint **)(iVar8 + 0x24)" identifier = (pointer_expression "*(uint **)(iVar8 + 0x24)" * (cast_expression "(uint **)(iVar8 + 0x24)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar8 + 0x24)" ( (binary_expression "iVar8 + 0x24" identifier + number_literal) ))))) ;) (if_statement "if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;" if (parenthesized_expression "(((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff)" ( (binary_expression "((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff" (parenthesized_expression "((uint)local_78 & *(uint *)(iVar8 + 0x28))" ( (binary_expression "(uint)local_78 & *(uint *)(iVar8 + 0x28)" (cast_expression "(uint)local_78" ( (type_descriptor "uint" type_identifier) ) identifier) & (pointer_expression "*(uint *)(iVar8 + 0x28)" * (cast_expression "(uint *)(iVar8 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x28)" ( (binary_expression "iVar8 + 0x28" identifier + number_literal) ))))) )) == number_literal) )) (goto_statement "goto LAB_001e674b;" goto statement_identifier ;)) (if_statement "if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;" if (parenthesized_expression "(*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12)" ( (binary_expression "*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12" (binary_expression "*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9)" (pointer_expression "*(uint *)(iVar8 + 0x28)" * (cast_expression "(uint *)(iVar8 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x28)" ( (binary_expression "iVar8 + 0x28" identifier + number_literal) )))) != (binary_expression "iVar19 + (uint)CARRY4(uVar18,uVar9)" identifier + (cast_expression "(uint)CARRY4(uVar18,uVar9)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(uVar18,uVar9)" identifier (argument_list "(uVar18,uVar9)" ( identifier , identifier )))))) || (binary_expression "local_78 != puVar12" identifier != identifier)) )) (goto_statement "goto LAB_001e6234;" goto statement_identifier ;)) }) while (parenthesized_expression "( true )" ( true )) ;) })) })) (expression_statement "local_5c = local_5c + 1;" (assignment_expression "local_5c = local_5c + 1" identifier = (binary_expression "local_5c + 1" identifier + number_literal)) ;) (if_statement "if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }" if (parenthesized_expression "(local_5c == local_58)" ( (binary_expression "local_5c == local_58" identifier == identifier) )) (compound_statement "{\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }" { (expression_statement "local_58 = *(uint *)(param_1 + 0x28);" (assignment_expression "local_58 = *(uint *)(param_1 + 0x28)" identifier = (pointer_expression "*(uint *)(param_1 + 0x28)" * (cast_expression "(uint *)(param_1 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x28)" ( (binary_expression "param_1 + 0x28" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_001e5adf;" goto statement_identifier ;) })) (expression_statement "iVar8 = *(int *)(param_1 + 0x13c);" (assignment_expression "iVar8 = *(int *)(param_1 + 0x13c)" identifier = (pointer_expression "*(int *)(param_1 + 0x13c)" * (cast_expression "(int *)(param_1 + 0x13c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x13c)" ( (binary_expression "param_1 + 0x13c" identifier + number_literal) ))))) ;) (expression_statement "iVar19 = *(int *)(param_1 + 0x140);" (assignment_expression "iVar19 = *(int *)(param_1 + 0x140)" identifier = (pointer_expression "*(int *)(param_1 + 0x140)" * (cast_expression "(int *)(param_1 + 0x140)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x140)" ( (binary_expression "param_1 + 0x140" identifier + number_literal) ))))) ;) }) while (parenthesized_expression "(local_5c < (uint)(iVar19 - iVar8 >> 2))" ( (binary_expression "local_5c < (uint)(iVar19 - iVar8 >> 2)" identifier < (call_expression "(uint)(iVar19 - iVar8 >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(iVar19 - iVar8 >> 2)" ( (binary_expression "iVar19 - iVar8 >> 2" (binary_expression "iVar19 - iVar8" identifier - identifier) >> number_literal) )))) )) ;) })) comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19)" identifier (argument_list "("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19)" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""stub_table"" " string_content ") , identifier , identifier ))) ;) })) (labeled_statement "LAB_001e5adf:\n    piVar7 = *(int **)(DAT_005ea7c8 + 0xc);" statement_identifier : (expression_statement "piVar7 = *(int **)(DAT_005ea7c8 + 0xc);" (assignment_expression "piVar7 = *(int **)(DAT_005ea7c8 + 0xc)" identifier = (pointer_expression "*(int **)(DAT_005ea7c8 + 0xc)" * (cast_expression "(int **)(DAT_005ea7c8 + 0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(DAT_005ea7c8 + 0xc)" ( (binary_expression "DAT_005ea7c8 + 0xc" identifier + number_literal) ))))) ;)) (if_statement "if (piVar7 == (int *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);\n    }" if (parenthesized_expression "(piVar7 == (int *)0x0)" ( (binary_expression "piVar7 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);\n    }" { comment (expression_statement "FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);" (call_expression "FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18)" identifier (argument_list "("../../gold/parameters.h",0x69,"target",uVar18)" ( (string_literal ""../../gold/parameters.h"" " string_content ") , number_literal , (string_literal ""target"" " string_content ") , identifier ))) ;) })) (expression_statement "piVar3 = (int *)piVar7[1];" (assignment_expression "piVar3 = (int *)piVar7[1]" identifier = (cast_expression "(int *)piVar7[1]" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar7[1]" identifier [ number_literal ]))) ;) (if_statement "if (((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0')) {\n                    /* WARNING: Subroutine does not return */\n      FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);\n    }" if (parenthesized_expression "(((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0'))" ( (binary_expression "((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0')" (parenthesized_expression "((piVar3[2] != 0xb7) || (*piVar3 != 0x40))" ( (binary_expression "(piVar3[2] != 0xb7) || (*piVar3 != 0x40)" (parenthesized_expression "(piVar3[2] != 0xb7)" ( (binary_expression "piVar3[2] != 0xb7" (subscript_expression "piVar3[2]" identifier [ number_literal ]) != number_literal) )) || (parenthesized_expression "(*piVar3 != 0x40)" ( (binary_expression "*piVar3 != 0x40" (pointer_expression "*piVar3" * identifier) != number_literal) ))) )) || (parenthesized_expression "((char)piVar3[1] != '\0')" ( (binary_expression "(char)piVar3[1] != '\0'" (cast_expression "(char)piVar3[1]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "piVar3[1]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);\n    }" { comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21)" identifier (argument_list "("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21)" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""current_target"" " string_content ") , identifier ))) ;) })) (if_statement "if (1 < local_58) {\n      uVar18 = 1;\n      puVar12 = &local_24;\n      do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);\n    }" if (parenthesized_expression "(1 < local_58)" ( (binary_expression "1 < local_58" number_literal < identifier) )) (compound_statement "{\n      uVar18 = 1;\n      puVar12 = &local_24;\n      do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);\n    }" { (expression_statement "uVar18 = 1;" (assignment_expression "uVar18 = 1" identifier = number_literal) ;) (expression_statement "puVar12 = &local_24;" (assignment_expression "puVar12 = &local_24" identifier = (pointer_expression "&local_24" & identifier)) ;) (do_statement "do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);" do (compound_statement "{\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      }" { (expression_statement "local_24 = param_1;" (assignment_expression "local_24 = param_1" identifier = identifier) ;) (expression_statement "local_20 = uVar18;" (assignment_expression "local_20 = uVar18" identifier = identifier) ;) (expression_statement "piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);" (assignment_expression "piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1)" identifier = (cast_expression "(int *)FUN_001d1150(uVar18 ^ param_1)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_001d1150(uVar18 ^ param_1)" identifier (argument_list "(uVar18 ^ param_1)" ( (binary_expression "uVar18 ^ param_1" identifier ^ identifier) ))))) ;) (if_statement "if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }" if (parenthesized_expression "(((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0))))" ( (binary_expression "((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))" (parenthesized_expression "((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))" ( (binary_expression "(((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20))))" (parenthesized_expression "(((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0))" ( (binary_expression "((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)" (parenthesized_expression "((piVar3 != (int *)0x0) && (*piVar3 != 0))" ( (binary_expression "(piVar3 != (int *)0x0) && (*piVar3 != 0)" (parenthesized_expression "(piVar3 != (int *)0x0)" ( (binary_expression "piVar3 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(*piVar3 != 0)" ( (binary_expression "*piVar3 != 0" (pointer_expression "*piVar3" * identifier) != number_literal) ))) )) && (parenthesized_expression "(iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)" ( (comma_expression "iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0" (assignment_expression "iVar8 = *(int *)(*piVar3 + 0xc)" identifier = (pointer_expression "*(int *)(*piVar3 + 0xc)" * (cast_expression "(int *)(*piVar3 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*piVar3 + 0xc)" ( (binary_expression "*piVar3 + 0xc" (pointer_expression "*piVar3" * identifier) + number_literal) ))))) , (binary_expression "iVar8 != 0" identifier != number_literal)) ))) )) && (parenthesized_expression "((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20))))" ( (parenthesized_expression "(iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))" ( (comma_expression "iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20))" (assignment_expression "iVar19 = *(int *)(iVar8 + 0x34)" identifier = (pointer_expression "*(int *)(iVar8 + 0x34)" * (cast_expression "(int *)(iVar8 + 0x34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x34)" ( (binary_expression "iVar8 + 0x34" identifier + number_literal) ))))) , (binary_expression "iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20))" (binary_expression "iVar19 != 0" identifier != number_literal) && (parenthesized_expression "(iVar8 == *(int *)(iVar19 + 0x20))" ( (binary_expression "iVar8 == *(int *)(iVar19 + 0x20)" identifier == (pointer_expression "*(int *)(iVar19 + 0x20)" * (cast_expression "(int *)(iVar19 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x20)" ( (binary_expression "iVar19 + 0x20" identifier + number_literal) ))))) )))) )) ))) )) && (parenthesized_expression "((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))" ( (parenthesized_expression "(*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0))" ( (binary_expression "*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)" (binary_expression "*(int *)(iVar19 + 0x30) != 0" (pointer_expression "*(int *)(iVar19 + 0x30)" * (cast_expression "(int *)(iVar19 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x30)" ( (binary_expression "iVar19 + 0x30" identifier + number_literal) )))) != number_literal) || (parenthesized_expression "(*(int *)(iVar19 + 0x54) != 0)" ( (binary_expression "*(int *)(iVar19 + 0x54) != 0" (pointer_expression "*(int *)(iVar19 + 0x54)" * (cast_expression "(int *)(iVar19 + 0x54)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x54)" ( (binary_expression "iVar19 + 0x54" identifier + number_literal) )))) != number_literal) ))) )) ))) )) (compound_statement "{\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }" { (expression_statement "puVar24 = *(undefined4 **)(param_1 + 0x3c);" (assignment_expression "puVar24 = *(undefined4 **)(param_1 + 0x3c)" identifier = (pointer_expression "*(undefined4 **)(param_1 + 0x3c)" * (cast_expression "(undefined4 **)(param_1 + 0x3c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x3c)" ( (binary_expression "param_1 + 0x3c" identifier + number_literal) ))))) ;) (expression_statement "uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;" (assignment_expression "uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2" identifier = (binary_expression "(int)puVar24 - *(int *)(param_1 + 0x38) >> 2" (binary_expression "(int)puVar24 - *(int *)(param_1 + 0x38)" (cast_expression "(int)puVar24" ( (type_descriptor "int" primitive_type) ) identifier) - (pointer_expression "*(int *)(param_1 + 0x38)" * (cast_expression "(int *)(param_1 + 0x38)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x38)" ( (binary_expression "param_1 + 0x38" identifier + number_literal) ))))) >> number_literal)) ;) (if_statement "if (uVar4 <= uVar18) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }" if (parenthesized_expression "(uVar4 <= uVar18)" ( (binary_expression "uVar4 <= uVar18" identifier <= identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }" { comment (expression_statement "FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);" (call_expression "FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12)" identifier (argument_list "("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12)" ( (string_literal ""../../gold/object.h"" " string_content ") , number_literal , (string_literal ""do_output_section"" " string_content ") , identifier , identifier , identifier , identifier ))) ;) })) (if_statement "if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }" if (parenthesized_expression "(*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0)" ( (binary_expression "*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0" (pointer_expression "*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4)" * (cast_expression "(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_1 + 0x38) + uVar18 * 4)" ( (binary_expression "*(int *)(param_1 + 0x38) + uVar18 * 4" (pointer_expression "*(int *)(param_1 + 0x38)" * (cast_expression "(int *)(param_1 + 0x38)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x38)" ( (binary_expression "param_1 + 0x38" identifier + number_literal) )))) + (binary_expression "uVar18 * 4" identifier * number_literal)) )))) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }" { comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12)" identifier (argument_list "("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12)" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""do_relocate_sections"" " string_content ") , number_literal , identifier , identifier , identifier ))) ;) })) (expression_statement "piVar3 = (int *)(uVar18 * 0x1c + *param_6);" (assignment_expression "piVar3 = (int *)(uVar18 * 0x1c + *param_6)" identifier = (cast_expression "(int *)(uVar18 * 0x1c + *param_6)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar18 * 0x1c + *param_6)" ( (binary_expression "uVar18 * 0x1c + *param_6" (binary_expression "uVar18 * 0x1c" identifier * number_literal) + (pointer_expression "*param_6" * identifier)) )))) ;) (expression_statement "iVar8 = *piVar3;" (assignment_expression "iVar8 = *piVar3" identifier = (pointer_expression "*piVar3" * identifier)) ;) (if_statement "if (iVar8 == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }" { comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12)" identifier (argument_list "("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12)" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""do_relocate_sections"" " string_content ") , identifier , identifier , identifier , identifier ))) ;) })) (if_statement "if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }" if (parenthesized_expression "((*(byte *)(iVar19 + 0x1c) & 1) == 0)" ( (binary_expression "(*(byte *)(iVar19 + 0x1c) & 1) == 0" (parenthesized_expression "(*(byte *)(iVar19 + 0x1c) & 1)" ( (binary_expression "*(byte *)(iVar19 + 0x1c) & 1" (pointer_expression "*(byte *)(iVar19 + 0x1c)" * (cast_expression "(byte *)(iVar19 + 0x1c)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x1c)" ( (binary_expression "iVar19 + 0x1c" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }" { (labeled_statement "LAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);" statement_identifier : comment (expression_statement "FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);" (call_expression "FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24)" identifier (argument_list "("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24)" ( (string_literal ""../../gold/output.h"" " string_content ") , number_literal , (string_literal ""address"" " string_content ") , identifier , identifier , identifier ))) ;)) })) (expression_statement "uVar4 = *(uint *)(iVar19 + 4);" (assignment_expression "uVar4 = *(uint *)(iVar19 + 4)" identifier = (pointer_expression "*(uint *)(iVar19 + 4)" * (cast_expression "(uint *)(iVar19 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 4)" ( (binary_expression "iVar19 + 4" identifier + number_literal) ))))) ;) (expression_statement "iVar10 = *(int *)(iVar19 + 8);" (assignment_expression "iVar10 = *(int *)(iVar19 + 8)" identifier = (pointer_expression "*(int *)(iVar19 + 8)" * (cast_expression "(int *)(iVar19 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 8)" ( (binary_expression "iVar19 + 8" identifier + number_literal) ))))) ;) (expression_statement "iVar17 = piVar3[1];" (assignment_expression "iVar17 = piVar3[1]" identifier = (subscript_expression "piVar3[1]" identifier [ number_literal ])) ;) (if_statement "if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }" if (parenthesized_expression "((*(byte *)(iVar19 + 0x1c) & 2) == 0)" ( (binary_expression "(*(byte *)(iVar19 + 0x1c) & 2) == 0" (parenthesized_expression "(*(byte *)(iVar19 + 0x1c) & 2)" ( (binary_expression "*(byte *)(iVar19 + 0x1c) & 2" (pointer_expression "*(byte *)(iVar19 + 0x1c)" * (cast_expression "(byte *)(iVar19 + 0x1c)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x1c)" ( (binary_expression "iVar19 + 0x1c" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }" { comment (expression_statement "FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);" (call_expression "FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12)" identifier (argument_list "("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12)" ( (string_literal ""../../gold/output.h"" " string_content ") , number_literal , (string_literal ""data_size"" " string_content ") , identifier , identifier , identifier , identifier ))) ;) })) (expression_statement "uVar9 = *(uint *)(iVar19 + 0xc);" (assignment_expression "uVar9 = *(uint *)(iVar19 + 0xc)" identifier = (pointer_expression "*(uint *)(iVar19 + 0xc)" * (cast_expression "(uint *)(iVar19 + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0xc)" ( (binary_expression "iVar19 + 0xc" identifier + number_literal) ))))) ;) (expression_statement "local_ac = *(int **)(iVar19 + 0x2c);" (assignment_expression "local_ac = *(int **)(iVar19 + 0x2c)" identifier = (pointer_expression "*(int **)(iVar19 + 0x2c)" * (cast_expression "(int **)(iVar19 + 0x2c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar19 + 0x2c)" ( (binary_expression "iVar19 + 0x2c" identifier + number_literal) ))))) ;) (if_statement "if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }" if (parenthesized_expression "(local_ac != (int *)0x0)" ( (binary_expression "local_ac != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }" { (expression_statement "iVar19 = local_ac[5];" (assignment_expression "iVar19 = local_ac[5]" identifier = (subscript_expression "local_ac[5]" identifier [ number_literal ])) ;) (expression_statement "uVar11 = *(uint *)(iVar19 + 0xc);" (assignment_expression "uVar11 = *(uint *)(iVar19 + 0xc)" identifier = (pointer_expression "*(uint *)(iVar19 + 0xc)" * (cast_expression "(uint *)(iVar19 + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0xc)" ( (binary_expression "iVar19 + 0xc" identifier + number_literal) ))))) ;) (if_statement "if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }" if (parenthesized_expression "(uVar11 == 0xffffffff)" ( (binary_expression "uVar11 == 0xffffffff" identifier == number_literal) )) (compound_statement "{\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }" { (labeled_statement "LAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);" statement_identifier : comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12)" identifier (argument_list "("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12)" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""offset"" " string_content ") , identifier , identifier , identifier , identifier ))) ;)) })) (expression_statement "puVar24 = &DAT_005eb508;" (assignment_expression "puVar24 = &DAT_005eb508" identifier = (pointer_expression "&DAT_005eb508" & identifier)) ;) (do_statement "do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );" do (compound_statement "{\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            }" { (expression_statement "iVar13 = *(int *)(iVar19 + 0x10);" (assignment_expression "iVar13 = *(int *)(iVar19 + 0x10)" identifier = (pointer_expression "*(int *)(iVar19 + 0x10)" * (cast_expression "(int *)(iVar19 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x10)" ( (binary_expression "iVar19 + 0x10" identifier + number_literal) ))))) ;) (if_statement "if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }" if (parenthesized_expression "((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0))" ( (binary_expression "(DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)" (parenthesized_expression "(DAT_005eb500 == '\0')" ( (binary_expression "DAT_005eb500 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)" ( (comma_expression "iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0" (assignment_expression "iVar15 = FUN_003ac660(&DAT_005eb500)" identifier = (call_expression "FUN_003ac660(&DAT_005eb500)" identifier (argument_list "(&DAT_005eb500)" ( (pointer_expression "&DAT_005eb500" & identifier) )))) , (binary_expression "iVar15 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }" { (expression_statement "DAT_005eb508 = &PTR_DAT_005d5c28;" (assignment_expression "DAT_005eb508 = &PTR_DAT_005d5c28" identifier = (pointer_expression "&PTR_DAT_005d5c28" & identifier)) ;) (expression_statement "DAT_005eb50c = &PTR_DAT_005d5c20;" (assignment_expression "DAT_005eb50c = &PTR_DAT_005d5c20" identifier = (pointer_expression "&PTR_DAT_005d5c20" & identifier)) ;) (expression_statement "DAT_005eb510 = &PTR_DAT_005d5c18;" (assignment_expression "DAT_005eb510 = &PTR_DAT_005d5c18" identifier = (pointer_expression "&PTR_DAT_005d5c18" & identifier)) ;) (expression_statement "DAT_005eb514 = &PTR_DAT_005d5c10;" (assignment_expression "DAT_005eb514 = &PTR_DAT_005d5c10" identifier = (pointer_expression "&PTR_DAT_005d5c10" & identifier)) ;) (expression_statement "DAT_005eb518 = &PTR_DAT_005d5c08;" (assignment_expression "DAT_005eb518 = &PTR_DAT_005d5c08" identifier = (pointer_expression "&PTR_DAT_005d5c08" & identifier)) ;) (expression_statement "DAT_005eb51c = &PTR_DAT_005d5c00;" (assignment_expression "DAT_005eb51c = &PTR_DAT_005d5c00" identifier = (pointer_expression "&PTR_DAT_005d5c00" & identifier)) ;) (expression_statement "FUN_003ac7d0(&DAT_005eb500);" (call_expression "FUN_003ac7d0(&DAT_005eb500)" identifier (argument_list "(&DAT_005eb500)" ( (pointer_expression "&DAT_005eb500" & identifier) ))) ;) (expression_statement "__cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);" (call_expression "__cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4)" identifier (argument_list "(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4)" ( identifier , identifier , (pointer_expression "&PTR_LOOP_005ea2e4" & identifier) ))) ;) })) (if_statement "if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }" if (parenthesized_expression "(uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4)" ( (binary_expression "uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4" identifier < (binary_expression "uVar11 + *(int *)(puVar24[iVar13] + 4) * 4" identifier + (binary_expression "*(int *)(puVar24[iVar13] + 4) * 4" (pointer_expression "*(int *)(puVar24[iVar13] + 4)" * (cast_expression "(int *)(puVar24[iVar13] + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24[iVar13] + 4)" ( (binary_expression "puVar24[iVar13] + 4" (subscript_expression "puVar24[iVar13]" identifier [ identifier ]) + number_literal) )))) * number_literal))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }" { comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12)" identifier (argument_list "("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12)" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_reloc_stub"" " string_content ") , identifier , identifier , identifier , identifier ))) ;) })) (expression_statement "uVar5 = uVar11 + uVar4;" (assignment_expression "uVar5 = uVar11 + uVar4" identifier = (binary_expression "uVar11 + uVar4" identifier + identifier)) ;) (expression_statement "iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);" (assignment_expression "iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4)" identifier = (binary_expression "iVar10 + (uint)CARRY4(uVar11,uVar4)" identifier + (cast_expression "(uint)CARRY4(uVar11,uVar4)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(uVar11,uVar4)" identifier (argument_list "(uVar11,uVar4)" ( identifier , identifier )))))) ;) (expression_statement "iVar13 = *(int *)(iVar19 + 0x10);" (assignment_expression "iVar13 = *(int *)(iVar19 + 0x10)" identifier = (pointer_expression "*(int *)(iVar19 + 0x10)" * (cast_expression "(int *)(iVar19 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x10)" ( (binary_expression "iVar19 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);" (assignment_expression "puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8)" identifier = (cast_expression "(uint *)(uVar11 + (uVar4 - iVar17) + iVar8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar11 + (uVar4 - iVar17) + iVar8)" ( (binary_expression "uVar11 + (uVar4 - iVar17) + iVar8" (binary_expression "uVar11 + (uVar4 - iVar17)" identifier + (parenthesized_expression "(uVar4 - iVar17)" ( (binary_expression "uVar4 - iVar17" identifier - identifier) ))) + identifier) )))) ;) (if_statement "if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }" if (parenthesized_expression "((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0))" ( (binary_expression "(DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)" (parenthesized_expression "(DAT_005eb500 == '\0')" ( (binary_expression "DAT_005eb500 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)" ( (comma_expression "iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0" (assignment_expression "iVar14 = FUN_003ac660(&DAT_005eb500)" identifier = (call_expression "FUN_003ac660(&DAT_005eb500)" identifier (argument_list "(&DAT_005eb500)" ( (pointer_expression "&DAT_005eb500" & identifier) )))) , (binary_expression "iVar14 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }" { (expression_statement "DAT_005eb508 = &PTR_DAT_005d5c28;" (assignment_expression "DAT_005eb508 = &PTR_DAT_005d5c28" identifier = (pointer_expression "&PTR_DAT_005d5c28" & identifier)) ;) (expression_statement "DAT_005eb50c = &PTR_DAT_005d5c20;" (assignment_expression "DAT_005eb50c = &PTR_DAT_005d5c20" identifier = (pointer_expression "&PTR_DAT_005d5c20" & identifier)) ;) (expression_statement "DAT_005eb510 = &PTR_DAT_005d5c18;" (assignment_expression "DAT_005eb510 = &PTR_DAT_005d5c18" identifier = (pointer_expression "&PTR_DAT_005d5c18" & identifier)) ;) (expression_statement "DAT_005eb514 = &PTR_DAT_005d5c10;" (assignment_expression "DAT_005eb514 = &PTR_DAT_005d5c10" identifier = (pointer_expression "&PTR_DAT_005d5c10" & identifier)) ;) (expression_statement "DAT_005eb518 = &PTR_DAT_005d5c08;" (assignment_expression "DAT_005eb518 = &PTR_DAT_005d5c08" identifier = (pointer_expression "&PTR_DAT_005d5c08" & identifier)) ;) (expression_statement "DAT_005eb51c = &PTR_DAT_005d5c00;" (assignment_expression "DAT_005eb51c = &PTR_DAT_005d5c00" identifier = (pointer_expression "&PTR_DAT_005d5c00" & identifier)) ;) (expression_statement "FUN_003ac7d0(&DAT_005eb500);" (call_expression "FUN_003ac7d0(&DAT_005eb500)" identifier (argument_list "(&DAT_005eb500)" ( (pointer_expression "&DAT_005eb500" & identifier) ))) ;) (expression_statement "__cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);" (call_expression "__cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4)" identifier (argument_list "(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4)" ( identifier , identifier , (pointer_expression "&PTR_LOOP_005ea2e4" & identifier) ))) ;) })) (expression_statement "iVar14 = *(int *)(iVar19 + 0x10);" (assignment_expression "iVar14 = *(int *)(iVar19 + 0x10)" identifier = (pointer_expression "*(int *)(iVar19 + 0x10)" * (cast_expression "(int *)(iVar19 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x10)" ( (binary_expression "iVar19 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "iVar13 = *(int *)(puVar24[iVar13] + 4);" (assignment_expression "iVar13 = *(int *)(puVar24[iVar13] + 4)" identifier = (pointer_expression "*(int *)(puVar24[iVar13] + 4)" * (cast_expression "(int *)(puVar24[iVar13] + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24[iVar13] + 4)" ( (binary_expression "puVar24[iVar13] + 4" (subscript_expression "puVar24[iVar13]" identifier [ identifier ]) + number_literal) ))))) ;) (if_statement "if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }" if (parenthesized_expression "((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0))" ( (binary_expression "(DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)" (parenthesized_expression "(DAT_005eb500 == '\0')" ( (binary_expression "DAT_005eb500 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)" ( (comma_expression "iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0" (assignment_expression "iVar6 = FUN_003ac660(&DAT_005eb500)" identifier = (call_expression "FUN_003ac660(&DAT_005eb500)" identifier (argument_list "(&DAT_005eb500)" ( (pointer_expression "&DAT_005eb500" & identifier) )))) , (binary_expression "iVar6 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }" { (expression_statement "DAT_005eb508 = &PTR_DAT_005d5c28;" (assignment_expression "DAT_005eb508 = &PTR_DAT_005d5c28" identifier = (pointer_expression "&PTR_DAT_005d5c28" & identifier)) ;) (expression_statement "DAT_005eb50c = &PTR_DAT_005d5c20;" (assignment_expression "DAT_005eb50c = &PTR_DAT_005d5c20" identifier = (pointer_expression "&PTR_DAT_005d5c20" & identifier)) ;) (expression_statement "DAT_005eb510 = &PTR_DAT_005d5c18;" (assignment_expression "DAT_005eb510 = &PTR_DAT_005d5c18" identifier = (pointer_expression "&PTR_DAT_005d5c18" & identifier)) ;) (expression_statement "DAT_005eb514 = &PTR_DAT_005d5c10;" (assignment_expression "DAT_005eb514 = &PTR_DAT_005d5c10" identifier = (pointer_expression "&PTR_DAT_005d5c10" & identifier)) ;) (expression_statement "DAT_005eb518 = &PTR_DAT_005d5c08;" (assignment_expression "DAT_005eb518 = &PTR_DAT_005d5c08" identifier = (pointer_expression "&PTR_DAT_005d5c08" & identifier)) ;) (expression_statement "DAT_005eb51c = &PTR_DAT_005d5c00;" (assignment_expression "DAT_005eb51c = &PTR_DAT_005d5c00" identifier = (pointer_expression "&PTR_DAT_005d5c00" & identifier)) ;) (expression_statement "FUN_003ac7d0(&DAT_005eb500);" (call_expression "FUN_003ac7d0(&DAT_005eb500)" identifier (argument_list "(&DAT_005eb500)" ( (pointer_expression "&DAT_005eb500" & identifier) ))) ;) (expression_statement "__cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);" (call_expression "__cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4)" identifier (argument_list "(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4)" ( identifier , identifier , (pointer_expression "&PTR_LOOP_005ea2e4" & identifier) ))) ;) })) (if_statement "if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }" if (parenthesized_expression "(0 < iVar13)" ( (binary_expression "0 < iVar13" number_literal < identifier) )) (compound_statement "{\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }" { (if_statement "if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }" if (parenthesized_expression "(*puVar22 != **(uint **)puVar24[iVar14])" ( (binary_expression "*puVar22 != **(uint **)puVar24[iVar14]" (pointer_expression "*puVar22" * identifier) != (pointer_expression "**(uint **)puVar24[iVar14]" * (pointer_expression "*(uint **)puVar24[iVar14]" * (cast_expression "(uint **)puVar24[iVar14]" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (subscript_expression "puVar24[iVar14]" identifier [ identifier ]))))) )) (compound_statement "{\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }" { (labeled_statement "LAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");" statement_identifier : comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub")" identifier (argument_list "("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_reloc_stub"" " string_content ") ))) ;)) })) (expression_statement "iVar6 = 0;" (assignment_expression "iVar6 = 0" identifier = number_literal) ;) (while_statement "while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }" while (parenthesized_expression "(iVar6 = iVar6 + 1, iVar13 != iVar6)" ( (comma_expression "iVar6 = iVar6 + 1, iVar13 != iVar6" (assignment_expression "iVar6 = iVar6 + 1" identifier = (binary_expression "iVar6 + 1" identifier + number_literal)) , (binary_expression "iVar13 != iVar6" identifier != identifier)) )) (compound_statement "{\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }" { (if_statement "if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;" if (parenthesized_expression "(puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6])" ( (binary_expression "puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]" (subscript_expression "puVar22[iVar6]" identifier [ identifier ]) != (subscript_expression "(*(uint **)puVar24[iVar14])[iVar6]" (parenthesized_expression "(*(uint **)puVar24[iVar14])" ( (pointer_expression "*(uint **)puVar24[iVar14]" * (cast_expression "(uint **)puVar24[iVar14]" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (subscript_expression "puVar24[iVar14]" identifier [ identifier ]))) )) [ identifier ])) )) (goto_statement "goto LAB_001e68a0;" goto statement_identifier ;)) })) })) (expression_statement "uVar11 = *(uint *)(iVar19 + 8);" (assignment_expression "uVar11 = *(uint *)(iVar19 + 8)" identifier = (pointer_expression "*(uint *)(iVar19 + 8)" * (cast_expression "(uint *)(iVar19 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 8)" ( (binary_expression "iVar19 + 8" identifier + number_literal) ))))) ;) (expression_statement "uVar23 = *(uint *)(iVar19 + 4);" (assignment_expression "uVar23 = *(uint *)(iVar19 + 4)" identifier = (pointer_expression "*(uint *)(iVar19 + 4)" * (cast_expression "(uint *)(iVar19 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 4)" ( (binary_expression "iVar19 + 4" identifier + number_literal) ))))) ;) (if_statement "if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }" if (parenthesized_expression "((uVar11 & uVar23) == 0xffffffff)" ( (binary_expression "(uVar11 & uVar23) == 0xffffffff" (parenthesized_expression "(uVar11 & uVar23)" ( (binary_expression "uVar11 & uVar23" identifier & identifier) )) == number_literal) )) (compound_statement "{\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }" { (labeled_statement "LAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");" statement_identifier : comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address")" identifier (argument_list "("../../gold/aarch64.cc",0x359,"destination_address")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""destination_address"" " string_content ") ))) ;)) })) (expression_statement "iVar19 = *(int *)(iVar19 + 0x10);" (assignment_expression "iVar19 = *(int *)(iVar19 + 0x10)" identifier = (pointer_expression "*(int *)(iVar19 + 0x10)" * (cast_expression "(int *)(iVar19 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x10)" ( (binary_expression "iVar19 + 0x10" identifier + number_literal) ))))) ;) (if_statement "if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }" if (parenthesized_expression "(iVar19 == 2)" ( (binary_expression "iVar19 == 2" identifier == number_literal) )) (compound_statement "{\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }" { (expression_statement "puVar22[2] = uVar23;" (assignment_expression "puVar22[2] = uVar23" (subscript_expression "puVar22[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar22[3] = uVar11;" (assignment_expression "puVar22[3] = uVar11" (subscript_expression "puVar22[3]" identifier [ number_literal ]) = identifier) ;) }) (else_clause "else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }" else (if_statement "if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }" if (parenthesized_expression "(iVar19 == 3)" ( (binary_expression "iVar19 == 3" identifier == number_literal) )) (compound_statement "{\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }" { (expression_statement "puVar22[4] = (uVar23 - 4) - uVar5;" (assignment_expression "puVar22[4] = (uVar23 - 4) - uVar5" (subscript_expression "puVar22[4]" identifier [ number_literal ]) = (binary_expression "(uVar23 - 4) - uVar5" (parenthesized_expression "(uVar23 - 4)" ( (binary_expression "uVar23 - 4" identifier - number_literal) )) - identifier)) ;) (expression_statement "puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);" (assignment_expression "puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5)" (subscript_expression "puVar22[5]" identifier [ number_literal ]) = (binary_expression "(((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5)" (parenthesized_expression "(((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15)" ( (binary_expression "((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15" (parenthesized_expression "((uVar11 - 1) + (uint)(3 < uVar23))" ( (binary_expression "(uVar11 - 1) + (uint)(3 < uVar23)" (parenthesized_expression "(uVar11 - 1)" ( (binary_expression "uVar11 - 1" identifier - number_literal) )) + (call_expression "(uint)(3 < uVar23)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(3 < uVar23)" ( (binary_expression "3 < uVar23" number_literal < identifier) )))) )) - identifier) )) - (call_expression "(uint)(uVar23 - 4 < uVar5)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar23 - 4 < uVar5)" ( (binary_expression "uVar23 - 4 < uVar5" (binary_expression "uVar23 - 4" identifier - number_literal) < identifier) ))))) ;) }) (else_clause "else {\n                if (iVar19 != 1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }" else (compound_statement "{\n                if (iVar19 != 1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }" { (if_statement "if (iVar19 != 1) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }" if (parenthesized_expression "(iVar19 != 1)" ( (binary_expression "iVar19 != 1" identifier != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }" { comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19)" identifier (argument_list "("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19)" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_reloc_stub"" " string_content ") , identifier ))) ;) })) (expression_statement "iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));" (assignment_expression "iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000))" identifier = (binary_expression "(uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000))" (parenthesized_expression "(uVar11 - iVar15)" ( (binary_expression "uVar11 - iVar15" identifier - identifier) )) - (call_expression "(uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000))" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000))" ( (binary_expression "(uVar23 & 0xfffff000) < (uVar5 & 0xfffff000)" (parenthesized_expression "(uVar23 & 0xfffff000)" ( (binary_expression "uVar23 & 0xfffff000" identifier & number_literal) )) < (parenthesized_expression "(uVar5 & 0xfffff000)" ( (binary_expression "uVar5 & 0xfffff000" identifier & number_literal) ))) ))))) ;) (expression_statement "uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;" (assignment_expression "uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc" identifier = (binary_expression "(uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc" (binary_expression "(uVar23 & 0xfffff000) - (uVar5 & 0xfffff000)" (parenthesized_expression "(uVar23 & 0xfffff000)" ( (binary_expression "uVar23 & 0xfffff000" identifier & number_literal) )) - (parenthesized_expression "(uVar5 & 0xfffff000)" ( (binary_expression "uVar5 & 0xfffff000" identifier & number_literal) ))) >> number_literal)) ;) (expression_statement "uVar20 = iVar19 + 1;" (assignment_expression "uVar20 = iVar19 + 1" identifier = (binary_expression "iVar19 + 1" identifier + number_literal)) ;) (expression_statement "*puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;" (assignment_expression "*puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f" (pointer_expression "*puVar22" * identifier) = (binary_expression "((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f" (binary_expression "((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d" (binary_expression "((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5" (parenthesized_expression "((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2)" ( (binary_expression "(uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2" (parenthesized_expression "(uVar5 | iVar19 * 0x100000 & 0x1fffffU)" ( (binary_expression "uVar5 | iVar19 * 0x100000 & 0x1fffffU" identifier | (binary_expression "iVar19 * 0x100000 & 0x1fffffU" (binary_expression "iVar19 * 0x100000" identifier * number_literal) & number_literal)) )) >> number_literal) )) << number_literal) | (binary_expression "(uVar5 & 3) << 0x1d" (parenthesized_expression "(uVar5 & 3)" ( (binary_expression "uVar5 & 3" identifier & number_literal) )) << number_literal)) | (binary_expression "*puVar22 & 0x9f00001f" (pointer_expression "*puVar22" * identifier) & number_literal))) ;) (if_statement "if (1 < uVar20) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }" if (parenthesized_expression "(1 < uVar20)" ( (binary_expression "1 < uVar20" number_literal < identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }" { comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub")" identifier (argument_list "("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_reloc_stub"" " string_content ") ))) ;) })) (expression_statement "iVar19 = *(int *)(DAT_005eb634 + 0x54);" (assignment_expression "iVar19 = *(int *)(DAT_005eb634 + 0x54)" identifier = (pointer_expression "*(int *)(DAT_005eb634 + 0x54)" * (cast_expression "(int *)(DAT_005eb634 + 0x54)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_005eb634 + 0x54)" ( (binary_expression "DAT_005eb634 + 0x54" identifier + number_literal) ))))) ;) (if_statement "if (iVar19 == 0) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }" { comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634)" identifier (argument_list "("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634)" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_reloc_stub"" " string_content ") , identifier ))) ;) })) (expression_statement "iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);" (assignment_expression "iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11)" identifier = (call_expression "(**(code **)(iVar19 + 0x40))(uVar23,uVar11)" (parenthesized_expression "(**(code **)(iVar19 + 0x40))" ( (pointer_expression "**(code **)(iVar19 + 0x40)" * (pointer_expression "*(code **)(iVar19 + 0x40)" * (cast_expression "(code **)(iVar19 + 0x40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar19 + 0x40)" ( (binary_expression "iVar19 + 0x40" identifier + number_literal) ))))) )) (argument_list "(uVar23,uVar11)" ( identifier , identifier )))) ;) (expression_statement "iVar15 = *(int *)(iVar19 + 0x38) * 0x10;" (assignment_expression "iVar15 = *(int *)(iVar19 + 0x38) * 0x10" identifier = (binary_expression "*(int *)(iVar19 + 0x38) * 0x10" (pointer_expression "*(int *)(iVar19 + 0x38)" * (cast_expression "(int *)(iVar19 + 0x38)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x38)" ( (binary_expression "iVar19 + 0x38" identifier + number_literal) )))) * number_literal)) ;) (if_statement "if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }" if (parenthesized_expression "((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff))" ( (binary_expression "(*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)" (parenthesized_expression "(*(int *)(&DAT_004808ac + iVar15) != -1)" ( (binary_expression "*(int *)(&DAT_004808ac + iVar15) != -1" (pointer_expression "*(int *)(&DAT_004808ac + iVar15)" * (cast_expression "(int *)(&DAT_004808ac + iVar15)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_004808ac + iVar15)" ( (binary_expression "&DAT_004808ac + iVar15" (pointer_expression "&DAT_004808ac" & identifier) + identifier) )))) != number_literal) )) || (parenthesized_expression "(uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)" ( (comma_expression "uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff" (assignment_expression "uVar5 = *(uint *)(&DAT_004808a8 + iVar15)" identifier = (pointer_expression "*(uint *)(&DAT_004808a8 + iVar15)" * (cast_expression "(uint *)(&DAT_004808a8 + iVar15)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_004808a8 + iVar15)" ( (binary_expression "&DAT_004808a8 + iVar15" (pointer_expression "&DAT_004808a8" & identifier) + identifier) ))))) , (binary_expression "uVar5 == 0xffffffff" identifier == number_literal)) ))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }" { comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20)" identifier (argument_list "("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20)" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""reloc_common"" " string_content ") , identifier ))) ;) })) (expression_statement "uVar20 = iVar13 << ((byte)uVar5 & 0x1f);" (assignment_expression "uVar20 = iVar13 << ((byte)uVar5 & 0x1f)" identifier = (binary_expression "iVar13 << ((byte)uVar5 & 0x1f)" identifier << (parenthesized_expression "((byte)uVar5 & 0x1f)" ( (binary_expression "(byte)uVar5 & 0x1f" (cast_expression "(byte)uVar5" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )))) ;) (if_statement "if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }" if (parenthesized_expression "((uVar5 & 0x20) != 0)" ( (binary_expression "(uVar5 & 0x20) != 0" (parenthesized_expression "(uVar5 & 0x20)" ( (binary_expression "uVar5 & 0x20" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                  uVar20 = 0;\n                }" { (expression_statement "uVar20 = 0;" (assignment_expression "uVar20 = 0" identifier = number_literal) ;) })) (expression_statement "puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;" (assignment_expression "puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20" (subscript_expression "puVar22[1]" identifier [ number_literal ]) = (binary_expression "~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20" (binary_expression "~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1]" (unary_expression "~*(uint *)(&DAT_004808a0 + iVar15)" ~ (pointer_expression "*(uint *)(&DAT_004808a0 + iVar15)" * (cast_expression "(uint *)(&DAT_004808a0 + iVar15)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_004808a0 + iVar15)" ( (binary_expression "&DAT_004808a0 + iVar15" (pointer_expression "&DAT_004808a0" & identifier) + identifier) ))))) & (subscript_expression "puVar22[1]" identifier [ number_literal ])) | identifier)) ;) (expression_statement "cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);" (assignment_expression "cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11)" identifier = (call_expression "(**(code **)(iVar19 + 0x3c))(uVar23,uVar11)" (parenthesized_expression "(**(code **)(iVar19 + 0x3c))" ( (pointer_expression "**(code **)(iVar19 + 0x3c)" * (pointer_expression "*(code **)(iVar19 + 0x3c)" * (cast_expression "(code **)(iVar19 + 0x3c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar19 + 0x3c)" ( (binary_expression "iVar19 + 0x3c" identifier + number_literal) ))))) )) (argument_list "(uVar23,uVar11)" ( identifier , identifier )))) ;) (if_statement "if (cVar1 == '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }" if (parenthesized_expression "(cVar1 == '\0')" ( (binary_expression "cVar1 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }" { comment (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub")" identifier (argument_list "("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_reloc_stub"" " string_content ") ))) ;) })) }))))) (expression_statement "local_ac = (int *)*local_ac;" (assignment_expression "local_ac = (int *)*local_ac" identifier = (cast_expression "(int *)*local_ac" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_ac" * identifier))) ;) (if_statement "if (local_ac == (int *)0x0) break;" if (parenthesized_expression "(local_ac == (int *)0x0)" ( (binary_expression "local_ac == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "iVar19 = local_ac[5];" (assignment_expression "iVar19 = local_ac[5]" identifier = (subscript_expression "local_ac[5]" identifier [ number_literal ])) ;) (expression_statement "uVar11 = *(uint *)(iVar19 + 0xc);" (assignment_expression "uVar11 = *(uint *)(iVar19 + 0xc)" identifier = (pointer_expression "*(uint *)(iVar19 + 0xc)" * (cast_expression "(uint *)(iVar19 + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0xc)" ( (binary_expression "iVar19 + 0xc" identifier + number_literal) ))))) ;) (if_statement "if (uVar11 == 0xffffffff) goto LAB_001e5d9c;" if (parenthesized_expression "(uVar11 == 0xffffffff)" ( (binary_expression "uVar11 == 0xffffffff" identifier == number_literal) )) (goto_statement "goto LAB_001e5d9c;" goto statement_identifier ;)) }) while (parenthesized_expression "( true )" ( true )) ;) })) })) (expression_statement "uVar18 = uVar18 + 1;" (assignment_expression "uVar18 = uVar18 + 1" identifier = (binary_expression "uVar18 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar18 != local_58)" ( (binary_expression "uVar18 != local_58" identifier != identifier) )) ;) })) })) (return_statement "return;" return ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.si replaced with injection: get_pc_thunk_si */\n/* WARNING: Enum "DT": Some values do not have unique names */\n/* WARNING: Enum "ELFOSABI": Some values do not have unique names */\n/* DWARF original prototype: void do_relocate_sections(AArch64_relobj<64,_false> * this,\n   Symbol_table * symtab, Layout * layout, uchar * pshdrs, Output_file * of, Views * pviews) */\n\nvoid __thiscall\nanon_unknown.dwarf_109b185::AArch64_relobj<64,_false>::do_relocate_sections\n          (AArch64_relobj<64,_false> *this,Symbol_table *symtab,Layout *layout,uchar *pshdrs,\n          Output_file *of,Views *pviews)\n\n{\n  General_options *pGVar1;\n  Target_info *pTVar2;\n  _Hash_node_base *p_Var3;\n  uchar *puVar4;\n  _Hash_node_base *p_Var5;\n  _Hash_node_base *p_Var6;\n  _Hash_node_base *p_Var7;\n  undefined *puVar8;\n  AArch64_reloc_property *pAVar9;\n  uint uVar10;\n  uint64_t uVar11;\n  Elf_Addr EVar12;\n  bool bVar13;\n  uint end_shndx;\n  __node_base *p_Var14;\n  pointer pVVar15;\n  _Hash_node_base *p_Var16;\n  undefined *puVar17;\n  Output_relaxed_input_section *pOVar18;\n  uint uVar19;\n  uint uVar20;\n  uint uVar21;\n  int iVar22;\n  int iVar23;\n  uint uVar24;\n  int iVar25;\n  uint uVar26;\n  pointer_conflict ppSVar27;\n  Stub_table<64,_false> *pSVar28;\n  _Rb_tree_color _Var29;\n  int iVar30;\n  _Hash_node_base *p_Var31;\n  uint *puVar32;\n  uint uVar33;\n  uint uVar34;\n  _Hash_node_base *p_Var35;\n  uint64_t uVar36;\n  AArch64_relobj<64,_false> *a64relobj;\n  AArch64_relobj<64,_false> *pAVar37;\n  undefined **__k;\n  uint local_b4;\n  int local_b0;\n  _Hash_node_base *local_ac;\n  _Rb_tree_node_base *local_7c;\n  uint local_78;\n  Stub_table<64,_false> *local_5c;\n  Stub_table<64,_false> *local_58;\n  _Rb_tree_node_base *local_34;\n  _Rb_tree_node_base *local_30;\n  Section_id sid;\n  \n  end_shndx = *(int *)&this->field_0x28 - 1;\n  __k = (undefined **)0x1;\n  a64relobj = (AArch64_relobj<64,_false> *)pviews;\n  gold::Sized_relobj_file<64,_false>::relocate_section_range\n            ((Sized_relobj_file<64,_false> *)this,symtab,layout,pshdrs,of,pviews,1,end_shndx);\n  pGVar1 = gold::parameters->options_;\n  if (pGVar1 == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    gold::do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n  }\n  if ((pGVar1->relocatable_).value == false) {\n    local_58 = *(Stub_table<64,_false> **)&this->field_0x28;\n    if ((((pGVar1->fix_cortex_a53_843419_).value != false) ||\n        ((pGVar1->fix_cortex_a53_835769_).value != false)) &&\n       ((Stub_table<64,_false> *)0x1 < local_58)) {\n      ppSVar27 = (this->stub_tables_).\n                 super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                 ._M_impl._M_start;\n      if (7 < (uint)((int)(this->stub_tables_).\n                          super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                          ._M_impl._M_finish - (int)ppSVar27)) {\n        local_5c = (Stub_table<64,_false> *)0x1;\n        do {\n          pSVar28 = ppSVar27[(int)local_5c];\n          if (pSVar28 != (Stub_table<64,_false> *)0x0) {\n            Stub_table<64,_false>::find_erratum_stubs_for_input_section\n                      (local_5c,a64relobj,(uint)__k);\n            local_7c = local_34;\n            pVVar15 = (pviews->\n                      super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                      )._M_impl._M_start + (int)local_5c;\n            if (pVVar15->is_input_output_view == false) {\n              local_b4 = 0;\n              local_b0 = 0;\n            }\n            else {\n              __k = (undefined **)local_5c;\n              if ((Stub_table<64,_false> *)0xfeff < local_5c) {\n                elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                          ((Elf_file<64,_false,_gold::Object> *)&this->field_0x90);\n                __k = (undefined **)\n                      ((int)&(local_5c->super_Output_data)._vptr_Output_data +\n                      *(int *)&this->field_0xa4);\n              }\n              a64relobj = this;\n              pOVar18 = gold::Output_section::find_relaxed_input_section\n                                  (*(Output_section **)(*(int *)&this->field_0x38 + (int)__k * 4),\n                                   (Relobj *)this,(uint)__k);\n              if (pOVar18 == (Output_relaxed_input_section *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs");\n              }\n              if (((pOVar18->super_Output_section_data_build).super_Output_section_data.\n                   super_Output_data.field_0x1c & 1) == 0) goto LAB_001e670d;\n              uVar10 = (uint)(pOVar18->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.address_;\n              local_b4 = uVar10 - (int)pVVar15->address;\n              local_b0 = (*(int *)((int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4) -\n                         *(int *)((int)&pVVar15->address + 4)) -\n                         (uint)(uVar10 < (uint)pVVar15->address);\n            }\n            if (local_34 != local_30) {\n              _Var29 = local_34[1]._M_color;\n              uVar10 = (uint)pVVar15->address;\n              uVar24 = *(uint *)(_Var29 + 0x1c);\n              uVar19 = local_b4 + uVar10;\n              iVar30 = local_b0 + *(int *)((int)&pVVar15->address + 4) +\n                       (uint)CARRY4(local_b4,uVar10);\n              local_78 = *(uint *)(_Var29 + 0x24);\n              if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                  local_78 != uVar24 + uVar19) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              puVar4 = pVVar15->view;\n              do {\n                uVar24 = *(uint *)(puVar4 + local_b4 + uVar24);\n                uVar20 = *(uint *)(_Var29 + 0x20);\n                if (uVar20 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(_Var29 + 0x10) == 4) {\n                  if ((uVar24 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar20 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar24 & 0x1f) != (uVar20 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar24 >> 5 & 0x1f) != (uVar20 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar25 = *(int *)(_Var29 + 0x2c);\n                  *(uint *)(_Var29 + 0x20) = uVar24;\n                  uVar24 = *(uint *)(puVar4 + local_b4 + iVar25);\n                  if ((uVar24 & 0xffffffe0) != 0xd53bd040) {\n                    if ((uVar24 & 0x9f000000) == 0x90000000) {\n                      uVar26 = iVar25 + uVar19;\n                      uVar33 = uVar24 >> 3 & 0x1ffffc;\n                      uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;\n                      uVar20 = (uVar26 & 0xfffff000) - uVar26;\n                      uVar21 = uVar20 + uVar34;\n                      iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21);\n                      if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))\n                      goto LAB_001e6269;\n                      if ((uVar24 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;\n                    }\n                    else if ((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )) {\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }\n                  }\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                }\n                else {\n                  if (*(int *)(_Var29 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar24 != uVar20) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                  if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4) =\n                       (iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar22 = *(int *)(_Var29 + 0xc) +\n                         (iVar25 + (int)pSVar28->reloc_stubs_size_ + 3U & 0xfffffffc);\n                if (1 < *(int *)(_Var29 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar23 = iVar22 + 4;\n                *(int *)(puVar4 + (iVar22 - iVar25) + (iVar25 - uVar10)) = *(int *)(_Var29 + 0x20);\n                if ((*(uint *)(_Var29 + 8) & *(uint *)(_Var29 + 4)) == 0xffffffff)\n                goto LAB_001e67c7;\n                *(uint *)(puVar4 + (iVar23 - iVar25) + (iVar25 - uVar10)) =\n                     *(uint *)(_Var29 + 4) - iVar23 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")\n                  ;\n                }\n                *(undefined4 *)(_Var29 + 0x20) = 0xffffffff;\n                local_7c = (_Rb_tree_node_base *)std::_Rb_tree_increment(local_7c);\n                if (local_30 == local_7c) break;\n                _Var29 = local_7c[1]._M_color;\n                uVar24 = *(uint *)(_Var29 + 0x1c);\n                local_78 = *(uint *)(_Var29 + 0x24);\n                if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                    local_78 != uVar24 + uVar19) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = (Stub_table<64,_false> *)\n                     ((int)&(local_5c->super_Output_data)._vptr_Output_data + 1);\n          if (local_5c == local_58) {\n            local_58 = *(Stub_table<64,_false> **)&this->field_0x28;\n            goto LAB_001e5adf;\n          }\n          ppSVar27 = (this->stub_tables_).\n                     super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                     ._M_impl._M_start;\n        } while (local_5c <\n                 (Stub_table<64,_false> *)\n                 ((int)(this->stub_tables_).\n                       super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                       ._M_impl._M_finish - (int)ppSVar27 >> 2));\n      }\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/aarch64.cc",0x6f6,"stub_table");\n    }\nLAB_001e5adf:\n    if (gold::parameters->target_ == (Target *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/parameters.h",0x69,"target");\n    }\n    pTVar2 = gold::parameters->target_->pti_;\n    if (((pTVar2->machine_code != EM_AARCH64) || (pTVar2->size != 0x40)) ||\n       (pTVar2->is_big_endian != false)) {\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/aarch64.cc",0xc2e,"current_target");\n    }\n    if ((Stub_table<64,_false> *)0x1 < local_58) {\n      pSVar28 = (Stub_table<64,_false> *)0x1;\n      do {\n        p_Var14 = std::\n                  _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                  ::_M_find_before_node\n                            ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                              *)((uint)pSVar28 ^ (uint)this),(size_type)a64relobj,(key_type *)__k,\n                             end_shndx);\n        if (((((p_Var14 != (__node_base *)0x0) && (p_Var14->_M_nxt != (_Hash_node_base *)0x0)) &&\n             (p_Var3 = p_Var14->_M_nxt[3]._M_nxt, p_Var3 != (_Hash_node_base *)0x0)) &&\n            ((p_Var35 = p_Var3[0xd]._M_nxt, p_Var35 != (_Hash_node_base *)0x0 &&\n             (p_Var3 == p_Var35[8]._M_nxt)))) &&\n           ((p_Var35[0xc]._M_nxt != (_Hash_node_base *)0x0 ||\n            (p_Var35[0x15]._M_nxt != (_Hash_node_base *)0x0)))) {\n          if ((Stub_table<64,_false> *)(*(int *)&this->field_0x3c - *(int *)&this->field_0x38 >> 2)\n              <= pSVar28) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n          }\n          if (*(int *)(*(int *)&this->field_0x38 + (int)pSVar28 * 4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/aarch64.cc",0x889,"do_relocate_sections");\n          }\n          pVVar15 = (pviews->\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                    )._M_impl._M_start + (int)pSVar28;\n          puVar4 = pVVar15->view;\n          if (puVar4 == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/aarch64.cc",0x892,"do_relocate_sections");\n          }\n          if (((uint)p_Var35[7]._M_nxt & 1) == 0) {\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xc5,"address");\n          }\n          p_Var3 = p_Var35[1]._M_nxt;\n          p_Var5 = p_Var35[2]._M_nxt;\n          EVar12 = pVVar15->address;\n          if (((uint)p_Var35[7]._M_nxt & 2) == 0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xcf,"data_size");\n          }\n          p_Var6 = p_Var35[3]._M_nxt;\n          local_ac = p_Var35[0xb]._M_nxt;\n          if (local_ac != (_Hash_node_base *)0x0) {\n            p_Var35 = local_ac[5]._M_nxt;\n            p_Var31 = p_Var35[3]._M_nxt;\n            if (p_Var31 == (_Hash_node_base *)0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/aarch64.cc",0x370,"offset");\n            }\n            do {\n              p_Var7 = p_Var35[4]._M_nxt;\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar30 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar30 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (p_Var6 < p_Var31 + (int)(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                            get_stub_template(int)::singleton)[(int)p_Var7][1]) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub");\n              }\n              p_Var16 = (_Hash_node_base *)((int)&p_Var3->_M_nxt + (int)&p_Var31->_M_nxt);\n              iVar30 = (int)&p_Var5->_M_nxt + (uint)CARRY4((uint)p_Var31,(uint)p_Var3);\n              p_Var7 = p_Var35[4]._M_nxt;\n              puVar32 = (uint *)((int)p_Var31 + (int)p_Var3 + ((int)puVar4 - (int)EVar12));\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              p_Var31 = p_Var35[4]._M_nxt;\n              puVar8 = (&(anonymous_namespace)::Stub_template_repertoire<false>::\n                         get_stub_template(int)::singleton)[(int)p_Var7][1];\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (0 < (int)puVar8) {\n                if (*puVar32 !=\n                    *(uint *)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)[(int)p_Var31]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                puVar17 = (undefined *)0x0;\n                while (puVar17 = puVar17 + 1, puVar8 != puVar17) {\n                  if (puVar32[(int)puVar17] !=\n                      *(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4)) goto LAB_001e68a0;\n                }\n              }\n              pAVar37 = (AArch64_relobj<64,_false> *)p_Var35[2]._M_nxt;\n              p_Var31 = p_Var35 + 1;\n              p_Var7 = p_Var31->_M_nxt;\n              uVar11 = *(uint64_t *)p_Var31;\n              uVar36 = *(uint64_t *)p_Var31;\n              if (((uint)pAVar37 & (uint)p_Var7) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              p_Var35 = p_Var35[4]._M_nxt;\n              if (p_Var35 == (_Hash_node_base *)0x2) {\n                puVar32[2] = (uint)p_Var7;\n                puVar32[3] = (uint)pAVar37;\n              }\n              else if (p_Var35 == (_Hash_node_base *)0x3) {\n                puVar32[4] = (int)(p_Var7 + -1) - (int)p_Var16;\n                puVar32[5] = (int)pAVar37 +\n                             (((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -\n                             (uint)(p_Var7 + -1 < p_Var16));\n              }\n              else {\n                if (p_Var35 != (_Hash_node_base *)0x1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");\n                }\n                iVar30 = (int)pAVar37 +\n                         (-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30);\n                uVar10 = ((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000) >> 0xc;\n                *puVar32 = ((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |\n                           (uVar10 & 3) << 0x1d | *puVar32 & 0x9f00001f;\n                if (1 < iVar30 + 1U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                pAVar9 = aarch64_reloc_property_table->table_[0x15];\n                if (pAVar9 == (AArch64_reloc_property *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");\n                }\n                uVar36 = (*pAVar9->rvalue_bit_select_func_)(uVar36);\n                iVar30 = pAVar9->reloc_inst_ * 0x10;\n                if ((*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1) ||\n                   (uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");\n                }\n                uVar24 = (int)uVar36 << ((byte)uVar10 & 0x1f);\n                if ((uVar10 & 0x20) != 0) {\n                  uVar24 = 0;\n                }\n                puVar32[1] = ~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]\n                             | uVar24;\n                bVar13 = (*pAVar9->rvalue_checkup_func_)(uVar11);\n                a64relobj = pAVar37;\n                if (!bVar13) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = local_ac->_M_nxt;\n              if (local_ac == (_Hash_node_base *)0x0) break;\n              p_Var35 = local_ac[5]._M_nxt;\n              p_Var31 = p_Var35[3]._M_nxt;\n              if (p_Var31 == (_Hash_node_base *)0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        pSVar28 = (Stub_table<64,_false> *)\n                  ((int)&(pSVar28->super_Output_data)._vptr_Output_data + 1);\n      } while (pSVar28 != local_58);\n    }\n  }\n  return;\n}\n\n" comment comment comment comment (declaration "void __thiscall\nanon_unknown.dwarf_109b185::AArch64_relobj<64,_false>::do_relocate_sections\n          (AArch64_relobj<64,_false> *this,Symbol_table *symtab,Layout *layout,uchar *pshdrs,\n          Output_file *of,Views *pviews)\n\n{\n  General_options *pGVar1;" primitive_type (ms_call_modifier "__thiscall" __thiscall) (ERROR "anon_unknown.dwarf_109b185::" identifier . identifier : :) identifier (ERROR "<64" < number_literal) , (ERROR "_false>::do_relocate_sections\n          (AArch64_relobj<64,_false> *this,Symbol_table *symtab,Layout *layout,uchar *pshdrs,\n          Output_file *of,Views *pviews)\n\n{\n  General_options" identifier > : : (function_declarator "do_relocate_sections\n          (AArch64_relobj<64,_false> *this,Symbol_table *symtab,Layout *layout,uchar *pshdrs,\n          Output_file *of,Views *pviews)" identifier (parameter_list "(AArch64_relobj<64,_false> *this,Symbol_table *symtab,Layout *layout,uchar *pshdrs,\n          Output_file *of,Views *pviews)" ( (parameter_declaration "AArch64_relobj" type_identifier) (ERROR "<64" < number_literal) , (parameter_declaration "_false> *this" type_identifier (ERROR ">" >) (pointer_declarator "*this" * identifier)) , (parameter_declaration "Symbol_table *symtab" type_identifier (pointer_declarator "*symtab" * identifier)) , (parameter_declaration "Layout *layout" type_identifier (pointer_declarator "*layout" * identifier)) , (parameter_declaration "uchar *pshdrs" type_identifier (pointer_declarator "*pshdrs" * identifier)) , (parameter_declaration "Output_file *of" type_identifier (pointer_declarator "*of" * identifier)) , (parameter_declaration "Views *pviews" type_identifier (pointer_declarator "*pviews" * identifier)) ))) { identifier) (pointer_declarator "*pGVar1" * identifier) ;) (declaration "Target_info *pTVar2;" type_identifier (pointer_declarator "*pTVar2" * identifier) ;) (declaration "_Hash_node_base *p_Var3;" type_identifier (pointer_declarator "*p_Var3" * identifier) ;) (declaration "uchar *puVar4;" type_identifier (pointer_declarator "*puVar4" * identifier) ;) (declaration "_Hash_node_base *p_Var5;" type_identifier (pointer_declarator "*p_Var5" * identifier) ;) (declaration "_Hash_node_base *p_Var6;" type_identifier (pointer_declarator "*p_Var6" * identifier) ;) (declaration "_Hash_node_base *p_Var7;" type_identifier (pointer_declarator "*p_Var7" * identifier) ;) (declaration "undefined *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "AArch64_reloc_property *pAVar9;" type_identifier (pointer_declarator "*pAVar9" * identifier) ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "uint64_t uVar11;" primitive_type identifier ;) (declaration "Elf_Addr EVar12;" type_identifier identifier ;) (declaration "bool bVar13;" primitive_type identifier ;) (declaration "uint end_shndx;" type_identifier identifier ;) (declaration "__node_base *p_Var14;" type_identifier (pointer_declarator "*p_Var14" * identifier) ;) (declaration "pointer pVVar15;" type_identifier identifier ;) (declaration "_Hash_node_base *p_Var16;" type_identifier (pointer_declarator "*p_Var16" * identifier) ;) (declaration "undefined *puVar17;" type_identifier (pointer_declarator "*puVar17" * identifier) ;) (declaration "Output_relaxed_input_section *pOVar18;" type_identifier (pointer_declarator "*pOVar18" * identifier) ;) (declaration "uint uVar19;" type_identifier identifier ;) (declaration "uint uVar20;" type_identifier identifier ;) (declaration "uint uVar21;" type_identifier identifier ;) (declaration "int iVar22;" primitive_type identifier ;) (declaration "int iVar23;" primitive_type identifier ;) (declaration "uint uVar24;" type_identifier identifier ;) (declaration "int iVar25;" primitive_type identifier ;) (declaration "uint uVar26;" type_identifier identifier ;) (declaration "pointer_conflict ppSVar27;" type_identifier identifier ;) (expression_statement "Stub_table<64,_false> *pSVar28;" (update_expression "Stub_table<64,_false> *pSVar28" (binary_expression "Stub_table<64,_false> *pSVar28" (binary_expression "Stub_table<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*pSVar28" * identifier)) --) ;) (declaration "_Rb_tree_color _Var29;" type_identifier identifier ;) (declaration "int iVar30;" primitive_type identifier ;) (declaration "_Hash_node_base *p_Var31;" type_identifier (pointer_declarator "*p_Var31" * identifier) ;) (declaration "uint *puVar32;" type_identifier (pointer_declarator "*puVar32" * identifier) ;) (declaration "uint uVar33;" type_identifier identifier ;) (declaration "uint uVar34;" type_identifier identifier ;) (declaration "_Hash_node_base *p_Var35;" type_identifier (pointer_declarator "*p_Var35" * identifier) ;) (declaration "uint64_t uVar36;" primitive_type identifier ;) (expression_statement "AArch64_relobj<64,_false> *a64relobj;" (update_expression "AArch64_relobj<64,_false> *a64relobj" (binary_expression "AArch64_relobj<64,_false> *a64relobj" (binary_expression "AArch64_relobj<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*a64relobj" * identifier)) --) ;) (expression_statement "AArch64_relobj<64,_false> *pAVar37;" (update_expression "AArch64_relobj<64,_false> *pAVar37" (binary_expression "AArch64_relobj<64,_false> *pAVar37" (binary_expression "AArch64_relobj<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*pAVar37" * identifier)) --) ;) (declaration "undefined **__k;" type_identifier (pointer_declarator "**__k" * (pointer_declarator "*__k" * identifier)) ;) (declaration "uint local_b4;" type_identifier identifier ;) (declaration "int local_b0;" primitive_type identifier ;) (declaration "_Hash_node_base *local_ac;" type_identifier (pointer_declarator "*local_ac" * identifier) ;) (declaration "_Rb_tree_node_base *local_7c;" type_identifier (pointer_declarator "*local_7c" * identifier) ;) (declaration "uint local_78;" type_identifier identifier ;) (expression_statement "Stub_table<64,_false> *local_5c;" (update_expression "Stub_table<64,_false> *local_5c" (binary_expression "Stub_table<64,_false> *local_5c" (binary_expression "Stub_table<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*local_5c" * identifier)) --) ;) (expression_statement "Stub_table<64,_false> *local_58;" (update_expression "Stub_table<64,_false> *local_58" (binary_expression "Stub_table<64,_false> *local_58" (binary_expression "Stub_table<64" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*local_58" * identifier)) --) ;) (declaration "_Rb_tree_node_base *local_34;" type_identifier (pointer_declarator "*local_34" * identifier) ;) (declaration "_Rb_tree_node_base *local_30;" type_identifier (pointer_declarator "*local_30" * identifier) ;) (declaration "Section_id sid;" type_identifier identifier ;) (expression_statement "end_shndx = *(int *)&this->field_0x28 - 1;" (assignment_expression "end_shndx = *(int *)&this->field_0x28 - 1" identifier = (binary_expression "*(int *)&this->field_0x28 - 1" (pointer_expression "*(int *)&this->field_0x28" * (cast_expression "(int *)&this->field_0x28" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this->field_0x28" & (field_expression "this->field_0x28" identifier -> field_identifier)))) - number_literal)) ;) (expression_statement "__k = (undefined **)0x1;" (assignment_expression "__k = (undefined **)0x1" identifier = (cast_expression "(undefined **)0x1" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (expression_statement "a64relobj = (AArch64_relobj<64,_false> *)pviews;" (assignment_expression "a64relobj = (AArch64_relobj<64,_false> *)pviews" identifier = (parenthesized_expression "(AArch64_relobj<64,_false> *)pviews" ( (comma_expression "AArch64_relobj<64,_false> *)pviews" (binary_expression "AArch64_relobj<64" identifier < number_literal) , (binary_expression "_false> *)pviews" identifier > (pointer_expression "*)pviews" * (ERROR ")" )) identifier))) ))) ;) (labeled_statement "gold::Sized_relobj_file<64,_false>::relocate_section_range\n            ((Sized_relobj_file<64,_false> *)this,symtab,layout,pshdrs,of,pviews,1,end_shndx);" statement_identifier : (ERROR ":" :) (expression_statement "Sized_relobj_file<64,_false>::relocate_section_range\n            ((Sized_relobj_file<64,_false> *)this,symtab,layout,pshdrs,of,pviews,1,end_shndx);" (comma_expression "Sized_relobj_file<64,_false>::relocate_section_range\n            ((Sized_relobj_file<64,_false> *)this,symtab,layout,pshdrs,of,pviews,1,end_shndx)" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false>::relocate_section_range\n            ((Sized_relobj_file<64,_false> *)this,symtab,layout,pshdrs,of,pviews,1,end_shndx)" identifier > (ERROR "::" : :) (call_expression "relocate_section_range\n            ((Sized_relobj_file<64,_false> *)this,symtab,layout,pshdrs,of,pviews,1,end_shndx)" identifier (argument_list "((Sized_relobj_file<64,_false> *)this,symtab,layout,pshdrs,of,pviews,1,end_shndx)" ( (parenthesized_expression "(Sized_relobj_file<64,_false> *)this,symtab,layout,pshdrs,of,pviews,1,end_shndx)" ( (comma_expression "Sized_relobj_file<64,_false> *)this,symtab,layout,pshdrs,of,pviews,1,end_shndx" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (comma_expression "_false> *)this,symtab,layout,pshdrs,of,pviews,1,end_shndx" (binary_expression "_false> *)this" identifier > (pointer_expression "*)this" * (ERROR ")" )) identifier)) , (comma_expression "symtab,layout,pshdrs,of,pviews,1,end_shndx" identifier , (comma_expression "layout,pshdrs,of,pviews,1,end_shndx" identifier , (comma_expression "pshdrs,of,pviews,1,end_shndx" identifier , (comma_expression "of,pviews,1,end_shndx" identifier , (comma_expression "pviews,1,end_shndx" identifier , (comma_expression "1,end_shndx" number_literal , identifier)))))))) )) ))))) ;)) (expression_statement "pGVar1 = gold::parameters->options_;" (field_expression "pGVar1 = gold::parameters->options_" (assignment_expression "pGVar1 = gold" identifier = identifier) (ERROR "::parameters" : : identifier) -> field_identifier) ;) (if_statement "if (pGVar1 == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    gold::do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n  }" if (parenthesized_expression "(pGVar1 == (General_options *)0x0)" ( (binary_expression "pGVar1 == (General_options *)0x0" identifier == (cast_expression "(General_options *)0x0" ( (type_descriptor "General_options *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    gold::do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n  }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/parameters.h",0x5c,"options");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/parameters.h",0x5c,"options");" (call_expression "do_gold_unreachable("../../gold/parameters.h",0x5c,"options")" identifier (argument_list "("../../gold/parameters.h",0x5c,"options")" ( (string_literal ""../../gold/parameters.h"" " string_content ") , number_literal , (string_literal ""options"" " string_content ") ))) ;)) })) (if_statement "if ((pGVar1->relocatable_).value == false) {\n    local_58 = *(Stub_table<64,_false> **)&this->field_0x28;\n    if ((((pGVar1->fix_cortex_a53_843419_).value != false) ||\n        ((pGVar1->fix_cortex_a53_835769_).value != false)) &&\n       ((Stub_table<64,_false> *)0x1 < local_58)) {\n      ppSVar27 = (this->stub_tables_).\n                 super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                 ._M_impl._M_start;\n      if (7 < (uint)((int)(this->stub_tables_).\n                          super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                          ._M_impl._M_finish - (int)ppSVar27)) {\n        local_5c = (Stub_table<64,_false> *)0x1;\n        do {\n          pSVar28 = ppSVar27[(int)local_5c];\n          if (pSVar28 != (Stub_table<64,_false> *)0x0) {\n            Stub_table<64,_false>::find_erratum_stubs_for_input_section\n                      (local_5c,a64relobj,(uint)__k);\n            local_7c = local_34;\n            pVVar15 = (pviews->\n                      super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                      )._M_impl._M_start + (int)local_5c;\n            if (pVVar15->is_input_output_view == false) {\n              local_b4 = 0;\n              local_b0 = 0;\n            }\n            else {\n              __k = (undefined **)local_5c;\n              if ((Stub_table<64,_false> *)0xfeff < local_5c) {\n                elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                          ((Elf_file<64,_false,_gold::Object> *)&this->field_0x90);\n                __k = (undefined **)\n                      ((int)&(local_5c->super_Output_data)._vptr_Output_data +\n                      *(int *)&this->field_0xa4);\n              }\n              a64relobj = this;\n              pOVar18 = gold::Output_section::find_relaxed_input_section\n                                  (*(Output_section **)(*(int *)&this->field_0x38 + (int)__k * 4),\n                                   (Relobj *)this,(uint)__k);\n              if (pOVar18 == (Output_relaxed_input_section *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs");\n              }\n              if (((pOVar18->super_Output_section_data_build).super_Output_section_data.\n                   super_Output_data.field_0x1c & 1) == 0) goto LAB_001e670d;\n              uVar10 = (uint)(pOVar18->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.address_;\n              local_b4 = uVar10 - (int)pVVar15->address;\n              local_b0 = (*(int *)((int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4) -\n                         *(int *)((int)&pVVar15->address + 4)) -\n                         (uint)(uVar10 < (uint)pVVar15->address);\n            }\n            if (local_34 != local_30) {\n              _Var29 = local_34[1]._M_color;\n              uVar10 = (uint)pVVar15->address;\n              uVar24 = *(uint *)(_Var29 + 0x1c);\n              uVar19 = local_b4 + uVar10;\n              iVar30 = local_b0 + *(int *)((int)&pVVar15->address + 4) +\n                       (uint)CARRY4(local_b4,uVar10);\n              local_78 = *(uint *)(_Var29 + 0x24);\n              if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                  local_78 != uVar24 + uVar19) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              puVar4 = pVVar15->view;\n              do {\n                uVar24 = *(uint *)(puVar4 + local_b4 + uVar24);\n                uVar20 = *(uint *)(_Var29 + 0x20);\n                if (uVar20 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(_Var29 + 0x10) == 4) {\n                  if ((uVar24 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar20 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar24 & 0x1f) != (uVar20 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar24 >> 5 & 0x1f) != (uVar20 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar25 = *(int *)(_Var29 + 0x2c);\n                  *(uint *)(_Var29 + 0x20) = uVar24;\n                  uVar24 = *(uint *)(puVar4 + local_b4 + iVar25);\n                  if ((uVar24 & 0xffffffe0) != 0xd53bd040) {\n                    if ((uVar24 & 0x9f000000) == 0x90000000) {\n                      uVar26 = iVar25 + uVar19;\n                      uVar33 = uVar24 >> 3 & 0x1ffffc;\n                      uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;\n                      uVar20 = (uVar26 & 0xfffff000) - uVar26;\n                      uVar21 = uVar20 + uVar34;\n                      iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21);\n                      if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))\n                      goto LAB_001e6269;\n                      if ((uVar24 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;\n                    }\n                    else if ((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )) {\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }\n                  }\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                }\n                else {\n                  if (*(int *)(_Var29 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar24 != uVar20) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                  if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4) =\n                       (iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar22 = *(int *)(_Var29 + 0xc) +\n                         (iVar25 + (int)pSVar28->reloc_stubs_size_ + 3U & 0xfffffffc);\n                if (1 < *(int *)(_Var29 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar23 = iVar22 + 4;\n                *(int *)(puVar4 + (iVar22 - iVar25) + (iVar25 - uVar10)) = *(int *)(_Var29 + 0x20);\n                if ((*(uint *)(_Var29 + 8) & *(uint *)(_Var29 + 4)) == 0xffffffff)\n                goto LAB_001e67c7;\n                *(uint *)(puVar4 + (iVar23 - iVar25) + (iVar25 - uVar10)) =\n                     *(uint *)(_Var29 + 4) - iVar23 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")\n                  ;\n                }\n                *(undefined4 *)(_Var29 + 0x20) = 0xffffffff;\n                local_7c = (_Rb_tree_node_base *)std::_Rb_tree_increment(local_7c);\n                if (local_30 == local_7c) break;\n                _Var29 = local_7c[1]._M_color;\n                uVar24 = *(uint *)(_Var29 + 0x1c);\n                local_78 = *(uint *)(_Var29 + 0x24);\n                if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                    local_78 != uVar24 + uVar19) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = (Stub_table<64,_false> *)\n                     ((int)&(local_5c->super_Output_data)._vptr_Output_data + 1);\n          if (local_5c == local_58) {\n            local_58 = *(Stub_table<64,_false> **)&this->field_0x28;\n            goto LAB_001e5adf;\n          }\n          ppSVar27 = (this->stub_tables_).\n                     super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                     ._M_impl._M_start;\n        } while (local_5c <\n                 (Stub_table<64,_false> *)\n                 ((int)(this->stub_tables_).\n                       super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                       ._M_impl._M_finish - (int)ppSVar27 >> 2));\n      }\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/aarch64.cc",0x6f6,"stub_table");\n    }\nLAB_001e5adf:\n    if (gold::parameters->target_ == (Target *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/parameters.h",0x69,"target");\n    }\n    pTVar2 = gold::parameters->target_->pti_;\n    if (((pTVar2->machine_code != EM_AARCH64) || (pTVar2->size != 0x40)) ||\n       (pTVar2->is_big_endian != false)) {\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/aarch64.cc",0xc2e,"current_target");\n    }\n    if ((Stub_table<64,_false> *)0x1 < local_58) {\n      pSVar28 = (Stub_table<64,_false> *)0x1;\n      do {\n        p_Var14 = std::\n                  _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                  ::_M_find_before_node\n                            ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                              *)((uint)pSVar28 ^ (uint)this),(size_type)a64relobj,(key_type *)__k,\n                             end_shndx);\n        if (((((p_Var14 != (__node_base *)0x0) && (p_Var14->_M_nxt != (_Hash_node_base *)0x0)) &&\n             (p_Var3 = p_Var14->_M_nxt[3]._M_nxt, p_Var3 != (_Hash_node_base *)0x0)) &&\n            ((p_Var35 = p_Var3[0xd]._M_nxt, p_Var35 != (_Hash_node_base *)0x0 &&\n             (p_Var3 == p_Var35[8]._M_nxt)))) &&\n           ((p_Var35[0xc]._M_nxt != (_Hash_node_base *)0x0 ||\n            (p_Var35[0x15]._M_nxt != (_Hash_node_base *)0x0)))) {\n          if ((Stub_table<64,_false> *)(*(int *)&this->field_0x3c - *(int *)&this->field_0x38 >> 2)\n              <= pSVar28) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n          }\n          if (*(int *)(*(int *)&this->field_0x38 + (int)pSVar28 * 4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/aarch64.cc",0x889,"do_relocate_sections");\n          }\n          pVVar15 = (pviews->\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                    )._M_impl._M_start + (int)pSVar28;\n          puVar4 = pVVar15->view;\n          if (puVar4 == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/aarch64.cc",0x892,"do_relocate_sections");\n          }\n          if (((uint)p_Var35[7]._M_nxt & 1) == 0) {\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xc5,"address");\n          }\n          p_Var3 = p_Var35[1]._M_nxt;\n          p_Var5 = p_Var35[2]._M_nxt;\n          EVar12 = pVVar15->address;\n          if (((uint)p_Var35[7]._M_nxt & 2) == 0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xcf,"data_size");\n          }\n          p_Var6 = p_Var35[3]._M_nxt;\n          local_ac = p_Var35[0xb]._M_nxt;\n          if (local_ac != (_Hash_node_base *)0x0) {\n            p_Var35 = local_ac[5]._M_nxt;\n            p_Var31 = p_Var35[3]._M_nxt;\n            if (p_Var31 == (_Hash_node_base *)0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/aarch64.cc",0x370,"offset");\n            }\n            do {\n              p_Var7 = p_Var35[4]._M_nxt;\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar30 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar30 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (p_Var6 < p_Var31 + (int)(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                            get_stub_template(int)::singleton)[(int)p_Var7][1]) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub");\n              }\n              p_Var16 = (_Hash_node_base *)((int)&p_Var3->_M_nxt + (int)&p_Var31->_M_nxt);\n              iVar30 = (int)&p_Var5->_M_nxt + (uint)CARRY4((uint)p_Var31,(uint)p_Var3);\n              p_Var7 = p_Var35[4]._M_nxt;\n              puVar32 = (uint *)((int)p_Var31 + (int)p_Var3 + ((int)puVar4 - (int)EVar12));\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              p_Var31 = p_Var35[4]._M_nxt;\n              puVar8 = (&(anonymous_namespace)::Stub_template_repertoire<false>::\n                         get_stub_template(int)::singleton)[(int)p_Var7][1];\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (0 < (int)puVar8) {\n                if (*puVar32 !=\n                    *(uint *)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)[(int)p_Var31]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                puVar17 = (undefined *)0x0;\n                while (puVar17 = puVar17 + 1, puVar8 != puVar17) {\n                  if (puVar32[(int)puVar17] !=\n                      *(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4)) goto LAB_001e68a0;\n                }\n              }\n              pAVar37 = (AArch64_relobj<64,_false> *)p_Var35[2]._M_nxt;\n              p_Var31 = p_Var35 + 1;\n              p_Var7 = p_Var31->_M_nxt;\n              uVar11 = *(uint64_t *)p_Var31;\n              uVar36 = *(uint64_t *)p_Var31;\n              if (((uint)pAVar37 & (uint)p_Var7) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              p_Var35 = p_Var35[4]._M_nxt;\n              if (p_Var35 == (_Hash_node_base *)0x2) {\n                puVar32[2] = (uint)p_Var7;\n                puVar32[3] = (uint)pAVar37;\n              }\n              else if (p_Var35 == (_Hash_node_base *)0x3) {\n                puVar32[4] = (int)(p_Var7 + -1) - (int)p_Var16;\n                puVar32[5] = (int)pAVar37 +\n                             (((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -\n                             (uint)(p_Var7 + -1 < p_Var16));\n              }\n              else {\n                if (p_Var35 != (_Hash_node_base *)0x1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");\n                }\n                iVar30 = (int)pAVar37 +\n                         (-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30);\n                uVar10 = ((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000) >> 0xc;\n                *puVar32 = ((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |\n                           (uVar10 & 3) << 0x1d | *puVar32 & 0x9f00001f;\n                if (1 < iVar30 + 1U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                pAVar9 = aarch64_reloc_property_table->table_[0x15];\n                if (pAVar9 == (AArch64_reloc_property *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");\n                }\n                uVar36 = (*pAVar9->rvalue_bit_select_func_)(uVar36);\n                iVar30 = pAVar9->reloc_inst_ * 0x10;\n                if ((*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1) ||\n                   (uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");\n                }\n                uVar24 = (int)uVar36 << ((byte)uVar10 & 0x1f);\n                if ((uVar10 & 0x20) != 0) {\n                  uVar24 = 0;\n                }\n                puVar32[1] = ~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]\n                             | uVar24;\n                bVar13 = (*pAVar9->rvalue_checkup_func_)(uVar11);\n                a64relobj = pAVar37;\n                if (!bVar13) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = local_ac->_M_nxt;\n              if (local_ac == (_Hash_node_base *)0x0) break;\n              p_Var35 = local_ac[5]._M_nxt;\n              p_Var31 = p_Var35[3]._M_nxt;\n              if (p_Var31 == (_Hash_node_base *)0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        pSVar28 = (Stub_table<64,_false> *)\n                  ((int)&(pSVar28->super_Output_data)._vptr_Output_data + 1);\n      } while (pSVar28 != local_58);\n    }\n  }" if (parenthesized_expression "((pGVar1->relocatable_).value == false)" ( (binary_expression "(pGVar1->relocatable_).value == false" (field_expression "(pGVar1->relocatable_).value" (parenthesized_expression "(pGVar1->relocatable_)" ( (field_expression "pGVar1->relocatable_" identifier -> field_identifier) )) . field_identifier) == false) )) (compound_statement "{\n    local_58 = *(Stub_table<64,_false> **)&this->field_0x28;\n    if ((((pGVar1->fix_cortex_a53_843419_).value != false) ||\n        ((pGVar1->fix_cortex_a53_835769_).value != false)) &&\n       ((Stub_table<64,_false> *)0x1 < local_58)) {\n      ppSVar27 = (this->stub_tables_).\n                 super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                 ._M_impl._M_start;\n      if (7 < (uint)((int)(this->stub_tables_).\n                          super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                          ._M_impl._M_finish - (int)ppSVar27)) {\n        local_5c = (Stub_table<64,_false> *)0x1;\n        do {\n          pSVar28 = ppSVar27[(int)local_5c];\n          if (pSVar28 != (Stub_table<64,_false> *)0x0) {\n            Stub_table<64,_false>::find_erratum_stubs_for_input_section\n                      (local_5c,a64relobj,(uint)__k);\n            local_7c = local_34;\n            pVVar15 = (pviews->\n                      super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                      )._M_impl._M_start + (int)local_5c;\n            if (pVVar15->is_input_output_view == false) {\n              local_b4 = 0;\n              local_b0 = 0;\n            }\n            else {\n              __k = (undefined **)local_5c;\n              if ((Stub_table<64,_false> *)0xfeff < local_5c) {\n                elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                          ((Elf_file<64,_false,_gold::Object> *)&this->field_0x90);\n                __k = (undefined **)\n                      ((int)&(local_5c->super_Output_data)._vptr_Output_data +\n                      *(int *)&this->field_0xa4);\n              }\n              a64relobj = this;\n              pOVar18 = gold::Output_section::find_relaxed_input_section\n                                  (*(Output_section **)(*(int *)&this->field_0x38 + (int)__k * 4),\n                                   (Relobj *)this,(uint)__k);\n              if (pOVar18 == (Output_relaxed_input_section *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs");\n              }\n              if (((pOVar18->super_Output_section_data_build).super_Output_section_data.\n                   super_Output_data.field_0x1c & 1) == 0) goto LAB_001e670d;\n              uVar10 = (uint)(pOVar18->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.address_;\n              local_b4 = uVar10 - (int)pVVar15->address;\n              local_b0 = (*(int *)((int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4) -\n                         *(int *)((int)&pVVar15->address + 4)) -\n                         (uint)(uVar10 < (uint)pVVar15->address);\n            }\n            if (local_34 != local_30) {\n              _Var29 = local_34[1]._M_color;\n              uVar10 = (uint)pVVar15->address;\n              uVar24 = *(uint *)(_Var29 + 0x1c);\n              uVar19 = local_b4 + uVar10;\n              iVar30 = local_b0 + *(int *)((int)&pVVar15->address + 4) +\n                       (uint)CARRY4(local_b4,uVar10);\n              local_78 = *(uint *)(_Var29 + 0x24);\n              if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                  local_78 != uVar24 + uVar19) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              puVar4 = pVVar15->view;\n              do {\n                uVar24 = *(uint *)(puVar4 + local_b4 + uVar24);\n                uVar20 = *(uint *)(_Var29 + 0x20);\n                if (uVar20 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(_Var29 + 0x10) == 4) {\n                  if ((uVar24 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar20 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar24 & 0x1f) != (uVar20 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar24 >> 5 & 0x1f) != (uVar20 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar25 = *(int *)(_Var29 + 0x2c);\n                  *(uint *)(_Var29 + 0x20) = uVar24;\n                  uVar24 = *(uint *)(puVar4 + local_b4 + iVar25);\n                  if ((uVar24 & 0xffffffe0) != 0xd53bd040) {\n                    if ((uVar24 & 0x9f000000) == 0x90000000) {\n                      uVar26 = iVar25 + uVar19;\n                      uVar33 = uVar24 >> 3 & 0x1ffffc;\n                      uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;\n                      uVar20 = (uVar26 & 0xfffff000) - uVar26;\n                      uVar21 = uVar20 + uVar34;\n                      iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21);\n                      if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))\n                      goto LAB_001e6269;\n                      if ((uVar24 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;\n                    }\n                    else if ((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )) {\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }\n                  }\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                }\n                else {\n                  if (*(int *)(_Var29 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar24 != uVar20) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                  if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4) =\n                       (iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar22 = *(int *)(_Var29 + 0xc) +\n                         (iVar25 + (int)pSVar28->reloc_stubs_size_ + 3U & 0xfffffffc);\n                if (1 < *(int *)(_Var29 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar23 = iVar22 + 4;\n                *(int *)(puVar4 + (iVar22 - iVar25) + (iVar25 - uVar10)) = *(int *)(_Var29 + 0x20);\n                if ((*(uint *)(_Var29 + 8) & *(uint *)(_Var29 + 4)) == 0xffffffff)\n                goto LAB_001e67c7;\n                *(uint *)(puVar4 + (iVar23 - iVar25) + (iVar25 - uVar10)) =\n                     *(uint *)(_Var29 + 4) - iVar23 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")\n                  ;\n                }\n                *(undefined4 *)(_Var29 + 0x20) = 0xffffffff;\n                local_7c = (_Rb_tree_node_base *)std::_Rb_tree_increment(local_7c);\n                if (local_30 == local_7c) break;\n                _Var29 = local_7c[1]._M_color;\n                uVar24 = *(uint *)(_Var29 + 0x1c);\n                local_78 = *(uint *)(_Var29 + 0x24);\n                if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                    local_78 != uVar24 + uVar19) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = (Stub_table<64,_false> *)\n                     ((int)&(local_5c->super_Output_data)._vptr_Output_data + 1);\n          if (local_5c == local_58) {\n            local_58 = *(Stub_table<64,_false> **)&this->field_0x28;\n            goto LAB_001e5adf;\n          }\n          ppSVar27 = (this->stub_tables_).\n                     super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                     ._M_impl._M_start;\n        } while (local_5c <\n                 (Stub_table<64,_false> *)\n                 ((int)(this->stub_tables_).\n                       super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                       ._M_impl._M_finish - (int)ppSVar27 >> 2));\n      }\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/aarch64.cc",0x6f6,"stub_table");\n    }\nLAB_001e5adf:\n    if (gold::parameters->target_ == (Target *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/parameters.h",0x69,"target");\n    }\n    pTVar2 = gold::parameters->target_->pti_;\n    if (((pTVar2->machine_code != EM_AARCH64) || (pTVar2->size != 0x40)) ||\n       (pTVar2->is_big_endian != false)) {\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/aarch64.cc",0xc2e,"current_target");\n    }\n    if ((Stub_table<64,_false> *)0x1 < local_58) {\n      pSVar28 = (Stub_table<64,_false> *)0x1;\n      do {\n        p_Var14 = std::\n                  _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                  ::_M_find_before_node\n                            ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                              *)((uint)pSVar28 ^ (uint)this),(size_type)a64relobj,(key_type *)__k,\n                             end_shndx);\n        if (((((p_Var14 != (__node_base *)0x0) && (p_Var14->_M_nxt != (_Hash_node_base *)0x0)) &&\n             (p_Var3 = p_Var14->_M_nxt[3]._M_nxt, p_Var3 != (_Hash_node_base *)0x0)) &&\n            ((p_Var35 = p_Var3[0xd]._M_nxt, p_Var35 != (_Hash_node_base *)0x0 &&\n             (p_Var3 == p_Var35[8]._M_nxt)))) &&\n           ((p_Var35[0xc]._M_nxt != (_Hash_node_base *)0x0 ||\n            (p_Var35[0x15]._M_nxt != (_Hash_node_base *)0x0)))) {\n          if ((Stub_table<64,_false> *)(*(int *)&this->field_0x3c - *(int *)&this->field_0x38 >> 2)\n              <= pSVar28) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n          }\n          if (*(int *)(*(int *)&this->field_0x38 + (int)pSVar28 * 4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/aarch64.cc",0x889,"do_relocate_sections");\n          }\n          pVVar15 = (pviews->\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                    )._M_impl._M_start + (int)pSVar28;\n          puVar4 = pVVar15->view;\n          if (puVar4 == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/aarch64.cc",0x892,"do_relocate_sections");\n          }\n          if (((uint)p_Var35[7]._M_nxt & 1) == 0) {\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xc5,"address");\n          }\n          p_Var3 = p_Var35[1]._M_nxt;\n          p_Var5 = p_Var35[2]._M_nxt;\n          EVar12 = pVVar15->address;\n          if (((uint)p_Var35[7]._M_nxt & 2) == 0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xcf,"data_size");\n          }\n          p_Var6 = p_Var35[3]._M_nxt;\n          local_ac = p_Var35[0xb]._M_nxt;\n          if (local_ac != (_Hash_node_base *)0x0) {\n            p_Var35 = local_ac[5]._M_nxt;\n            p_Var31 = p_Var35[3]._M_nxt;\n            if (p_Var31 == (_Hash_node_base *)0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/aarch64.cc",0x370,"offset");\n            }\n            do {\n              p_Var7 = p_Var35[4]._M_nxt;\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar30 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar30 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (p_Var6 < p_Var31 + (int)(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                            get_stub_template(int)::singleton)[(int)p_Var7][1]) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub");\n              }\n              p_Var16 = (_Hash_node_base *)((int)&p_Var3->_M_nxt + (int)&p_Var31->_M_nxt);\n              iVar30 = (int)&p_Var5->_M_nxt + (uint)CARRY4((uint)p_Var31,(uint)p_Var3);\n              p_Var7 = p_Var35[4]._M_nxt;\n              puVar32 = (uint *)((int)p_Var31 + (int)p_Var3 + ((int)puVar4 - (int)EVar12));\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              p_Var31 = p_Var35[4]._M_nxt;\n              puVar8 = (&(anonymous_namespace)::Stub_template_repertoire<false>::\n                         get_stub_template(int)::singleton)[(int)p_Var7][1];\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (0 < (int)puVar8) {\n                if (*puVar32 !=\n                    *(uint *)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)[(int)p_Var31]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                puVar17 = (undefined *)0x0;\n                while (puVar17 = puVar17 + 1, puVar8 != puVar17) {\n                  if (puVar32[(int)puVar17] !=\n                      *(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4)) goto LAB_001e68a0;\n                }\n              }\n              pAVar37 = (AArch64_relobj<64,_false> *)p_Var35[2]._M_nxt;\n              p_Var31 = p_Var35 + 1;\n              p_Var7 = p_Var31->_M_nxt;\n              uVar11 = *(uint64_t *)p_Var31;\n              uVar36 = *(uint64_t *)p_Var31;\n              if (((uint)pAVar37 & (uint)p_Var7) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              p_Var35 = p_Var35[4]._M_nxt;\n              if (p_Var35 == (_Hash_node_base *)0x2) {\n                puVar32[2] = (uint)p_Var7;\n                puVar32[3] = (uint)pAVar37;\n              }\n              else if (p_Var35 == (_Hash_node_base *)0x3) {\n                puVar32[4] = (int)(p_Var7 + -1) - (int)p_Var16;\n                puVar32[5] = (int)pAVar37 +\n                             (((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -\n                             (uint)(p_Var7 + -1 < p_Var16));\n              }\n              else {\n                if (p_Var35 != (_Hash_node_base *)0x1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");\n                }\n                iVar30 = (int)pAVar37 +\n                         (-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30);\n                uVar10 = ((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000) >> 0xc;\n                *puVar32 = ((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |\n                           (uVar10 & 3) << 0x1d | *puVar32 & 0x9f00001f;\n                if (1 < iVar30 + 1U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                pAVar9 = aarch64_reloc_property_table->table_[0x15];\n                if (pAVar9 == (AArch64_reloc_property *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");\n                }\n                uVar36 = (*pAVar9->rvalue_bit_select_func_)(uVar36);\n                iVar30 = pAVar9->reloc_inst_ * 0x10;\n                if ((*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1) ||\n                   (uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");\n                }\n                uVar24 = (int)uVar36 << ((byte)uVar10 & 0x1f);\n                if ((uVar10 & 0x20) != 0) {\n                  uVar24 = 0;\n                }\n                puVar32[1] = ~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]\n                             | uVar24;\n                bVar13 = (*pAVar9->rvalue_checkup_func_)(uVar11);\n                a64relobj = pAVar37;\n                if (!bVar13) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = local_ac->_M_nxt;\n              if (local_ac == (_Hash_node_base *)0x0) break;\n              p_Var35 = local_ac[5]._M_nxt;\n              p_Var31 = p_Var35[3]._M_nxt;\n              if (p_Var31 == (_Hash_node_base *)0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        pSVar28 = (Stub_table<64,_false> *)\n                  ((int)&(pSVar28->super_Output_data)._vptr_Output_data + 1);\n      } while (pSVar28 != local_58);\n    }\n  }" { (expression_statement "local_58 = *(Stub_table<64,_false> **)&this->field_0x28;" (assignment_expression "local_58 = *(Stub_table<64,_false> **)&this->field_0x28" identifier = (binary_expression "*(Stub_table<64,_false> **)&this->field_0x28" (pointer_expression "*(Stub_table<64,_false> **)" * (parenthesized_expression "(Stub_table<64,_false> **)" ( (comma_expression "Stub_table<64,_false> **" (binary_expression "Stub_table<64" identifier < number_literal) , (binary_expression "_false> **" identifier > (pointer_expression "**" * (pointer_expression "*" * identifier)))) ))) & (field_expression "this->field_0x28" identifier -> field_identifier))) ;) (if_statement "if ((((pGVar1->fix_cortex_a53_843419_).value != false) ||\n        ((pGVar1->fix_cortex_a53_835769_).value != false)) &&\n       ((Stub_table<64,_false> *)0x1 < local_58)) {\n      ppSVar27 = (this->stub_tables_).\n                 super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                 ._M_impl._M_start;\n      if (7 < (uint)((int)(this->stub_tables_).\n                          super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                          ._M_impl._M_finish - (int)ppSVar27)) {\n        local_5c = (Stub_table<64,_false> *)0x1;\n        do {\n          pSVar28 = ppSVar27[(int)local_5c];\n          if (pSVar28 != (Stub_table<64,_false> *)0x0) {\n            Stub_table<64,_false>::find_erratum_stubs_for_input_section\n                      (local_5c,a64relobj,(uint)__k);\n            local_7c = local_34;\n            pVVar15 = (pviews->\n                      super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                      )._M_impl._M_start + (int)local_5c;\n            if (pVVar15->is_input_output_view == false) {\n              local_b4 = 0;\n              local_b0 = 0;\n            }\n            else {\n              __k = (undefined **)local_5c;\n              if ((Stub_table<64,_false> *)0xfeff < local_5c) {\n                elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                          ((Elf_file<64,_false,_gold::Object> *)&this->field_0x90);\n                __k = (undefined **)\n                      ((int)&(local_5c->super_Output_data)._vptr_Output_data +\n                      *(int *)&this->field_0xa4);\n              }\n              a64relobj = this;\n              pOVar18 = gold::Output_section::find_relaxed_input_section\n                                  (*(Output_section **)(*(int *)&this->field_0x38 + (int)__k * 4),\n                                   (Relobj *)this,(uint)__k);\n              if (pOVar18 == (Output_relaxed_input_section *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs");\n              }\n              if (((pOVar18->super_Output_section_data_build).super_Output_section_data.\n                   super_Output_data.field_0x1c & 1) == 0) goto LAB_001e670d;\n              uVar10 = (uint)(pOVar18->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.address_;\n              local_b4 = uVar10 - (int)pVVar15->address;\n              local_b0 = (*(int *)((int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4) -\n                         *(int *)((int)&pVVar15->address + 4)) -\n                         (uint)(uVar10 < (uint)pVVar15->address);\n            }\n            if (local_34 != local_30) {\n              _Var29 = local_34[1]._M_color;\n              uVar10 = (uint)pVVar15->address;\n              uVar24 = *(uint *)(_Var29 + 0x1c);\n              uVar19 = local_b4 + uVar10;\n              iVar30 = local_b0 + *(int *)((int)&pVVar15->address + 4) +\n                       (uint)CARRY4(local_b4,uVar10);\n              local_78 = *(uint *)(_Var29 + 0x24);\n              if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                  local_78 != uVar24 + uVar19) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              puVar4 = pVVar15->view;\n              do {\n                uVar24 = *(uint *)(puVar4 + local_b4 + uVar24);\n                uVar20 = *(uint *)(_Var29 + 0x20);\n                if (uVar20 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(_Var29 + 0x10) == 4) {\n                  if ((uVar24 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar20 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar24 & 0x1f) != (uVar20 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar24 >> 5 & 0x1f) != (uVar20 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar25 = *(int *)(_Var29 + 0x2c);\n                  *(uint *)(_Var29 + 0x20) = uVar24;\n                  uVar24 = *(uint *)(puVar4 + local_b4 + iVar25);\n                  if ((uVar24 & 0xffffffe0) != 0xd53bd040) {\n                    if ((uVar24 & 0x9f000000) == 0x90000000) {\n                      uVar26 = iVar25 + uVar19;\n                      uVar33 = uVar24 >> 3 & 0x1ffffc;\n                      uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;\n                      uVar20 = (uVar26 & 0xfffff000) - uVar26;\n                      uVar21 = uVar20 + uVar34;\n                      iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21);\n                      if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))\n                      goto LAB_001e6269;\n                      if ((uVar24 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;\n                    }\n                    else if ((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )) {\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }\n                  }\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                }\n                else {\n                  if (*(int *)(_Var29 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar24 != uVar20) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                  if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4) =\n                       (iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar22 = *(int *)(_Var29 + 0xc) +\n                         (iVar25 + (int)pSVar28->reloc_stubs_size_ + 3U & 0xfffffffc);\n                if (1 < *(int *)(_Var29 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar23 = iVar22 + 4;\n                *(int *)(puVar4 + (iVar22 - iVar25) + (iVar25 - uVar10)) = *(int *)(_Var29 + 0x20);\n                if ((*(uint *)(_Var29 + 8) & *(uint *)(_Var29 + 4)) == 0xffffffff)\n                goto LAB_001e67c7;\n                *(uint *)(puVar4 + (iVar23 - iVar25) + (iVar25 - uVar10)) =\n                     *(uint *)(_Var29 + 4) - iVar23 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")\n                  ;\n                }\n                *(undefined4 *)(_Var29 + 0x20) = 0xffffffff;\n                local_7c = (_Rb_tree_node_base *)std::_Rb_tree_increment(local_7c);\n                if (local_30 == local_7c) break;\n                _Var29 = local_7c[1]._M_color;\n                uVar24 = *(uint *)(_Var29 + 0x1c);\n                local_78 = *(uint *)(_Var29 + 0x24);\n                if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                    local_78 != uVar24 + uVar19) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = (Stub_table<64,_false> *)\n                     ((int)&(local_5c->super_Output_data)._vptr_Output_data + 1);\n          if (local_5c == local_58) {\n            local_58 = *(Stub_table<64,_false> **)&this->field_0x28;\n            goto LAB_001e5adf;\n          }\n          ppSVar27 = (this->stub_tables_).\n                     super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                     ._M_impl._M_start;\n        } while (local_5c <\n                 (Stub_table<64,_false> *)\n                 ((int)(this->stub_tables_).\n                       super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                       ._M_impl._M_finish - (int)ppSVar27 >> 2));\n      }\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/aarch64.cc",0x6f6,"stub_table");\n    }" if (parenthesized_expression "((((pGVar1->fix_cortex_a53_843419_).value != false) ||\n        ((pGVar1->fix_cortex_a53_835769_).value != false)) &&\n       ((Stub_table<64,_false> *)0x1 < local_58))" ( (binary_expression "(((pGVar1->fix_cortex_a53_843419_).value != false) ||\n        ((pGVar1->fix_cortex_a53_835769_).value != false)) &&\n       ((Stub_table<64,_false> *)0x1 < local_58))" (parenthesized_expression "(((pGVar1->fix_cortex_a53_843419_).value != false) ||\n        ((pGVar1->fix_cortex_a53_835769_).value != false))" ( (binary_expression "((pGVar1->fix_cortex_a53_843419_).value != false) ||\n        ((pGVar1->fix_cortex_a53_835769_).value != false)" (parenthesized_expression "((pGVar1->fix_cortex_a53_843419_).value != false)" ( (binary_expression "(pGVar1->fix_cortex_a53_843419_).value != false" (field_expression "(pGVar1->fix_cortex_a53_843419_).value" (parenthesized_expression "(pGVar1->fix_cortex_a53_843419_)" ( (field_expression "pGVar1->fix_cortex_a53_843419_" identifier -> field_identifier) )) . field_identifier) != false) )) || (parenthesized_expression "((pGVar1->fix_cortex_a53_835769_).value != false)" ( (binary_expression "(pGVar1->fix_cortex_a53_835769_).value != false" (field_expression "(pGVar1->fix_cortex_a53_835769_).value" (parenthesized_expression "(pGVar1->fix_cortex_a53_835769_)" ( (field_expression "pGVar1->fix_cortex_a53_835769_" identifier -> field_identifier) )) . field_identifier) != false) ))) )) && (parenthesized_expression "((Stub_table<64,_false> *)0x1 < local_58))" ( (parenthesized_expression "(Stub_table<64,_false> *)0x1 < local_58)" ( (comma_expression "Stub_table<64,_false> *)0x1 < local_58" (binary_expression "Stub_table<64" identifier < number_literal) , (binary_expression "_false> *)0x1 < local_58" (binary_expression "_false> *)0x1" identifier > (pointer_expression "*)0x1" * (ERROR ")" )) number_literal)) < identifier)) )) ))) )) (compound_statement "{\n      ppSVar27 = (this->stub_tables_).\n                 super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                 ._M_impl._M_start;\n      if (7 < (uint)((int)(this->stub_tables_).\n                          super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                          ._M_impl._M_finish - (int)ppSVar27)) {\n        local_5c = (Stub_table<64,_false> *)0x1;\n        do {\n          pSVar28 = ppSVar27[(int)local_5c];\n          if (pSVar28 != (Stub_table<64,_false> *)0x0) {\n            Stub_table<64,_false>::find_erratum_stubs_for_input_section\n                      (local_5c,a64relobj,(uint)__k);\n            local_7c = local_34;\n            pVVar15 = (pviews->\n                      super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                      )._M_impl._M_start + (int)local_5c;\n            if (pVVar15->is_input_output_view == false) {\n              local_b4 = 0;\n              local_b0 = 0;\n            }\n            else {\n              __k = (undefined **)local_5c;\n              if ((Stub_table<64,_false> *)0xfeff < local_5c) {\n                elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                          ((Elf_file<64,_false,_gold::Object> *)&this->field_0x90);\n                __k = (undefined **)\n                      ((int)&(local_5c->super_Output_data)._vptr_Output_data +\n                      *(int *)&this->field_0xa4);\n              }\n              a64relobj = this;\n              pOVar18 = gold::Output_section::find_relaxed_input_section\n                                  (*(Output_section **)(*(int *)&this->field_0x38 + (int)__k * 4),\n                                   (Relobj *)this,(uint)__k);\n              if (pOVar18 == (Output_relaxed_input_section *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs");\n              }\n              if (((pOVar18->super_Output_section_data_build).super_Output_section_data.\n                   super_Output_data.field_0x1c & 1) == 0) goto LAB_001e670d;\n              uVar10 = (uint)(pOVar18->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.address_;\n              local_b4 = uVar10 - (int)pVVar15->address;\n              local_b0 = (*(int *)((int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4) -\n                         *(int *)((int)&pVVar15->address + 4)) -\n                         (uint)(uVar10 < (uint)pVVar15->address);\n            }\n            if (local_34 != local_30) {\n              _Var29 = local_34[1]._M_color;\n              uVar10 = (uint)pVVar15->address;\n              uVar24 = *(uint *)(_Var29 + 0x1c);\n              uVar19 = local_b4 + uVar10;\n              iVar30 = local_b0 + *(int *)((int)&pVVar15->address + 4) +\n                       (uint)CARRY4(local_b4,uVar10);\n              local_78 = *(uint *)(_Var29 + 0x24);\n              if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                  local_78 != uVar24 + uVar19) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              puVar4 = pVVar15->view;\n              do {\n                uVar24 = *(uint *)(puVar4 + local_b4 + uVar24);\n                uVar20 = *(uint *)(_Var29 + 0x20);\n                if (uVar20 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(_Var29 + 0x10) == 4) {\n                  if ((uVar24 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar20 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar24 & 0x1f) != (uVar20 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar24 >> 5 & 0x1f) != (uVar20 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar25 = *(int *)(_Var29 + 0x2c);\n                  *(uint *)(_Var29 + 0x20) = uVar24;\n                  uVar24 = *(uint *)(puVar4 + local_b4 + iVar25);\n                  if ((uVar24 & 0xffffffe0) != 0xd53bd040) {\n                    if ((uVar24 & 0x9f000000) == 0x90000000) {\n                      uVar26 = iVar25 + uVar19;\n                      uVar33 = uVar24 >> 3 & 0x1ffffc;\n                      uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;\n                      uVar20 = (uVar26 & 0xfffff000) - uVar26;\n                      uVar21 = uVar20 + uVar34;\n                      iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21);\n                      if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))\n                      goto LAB_001e6269;\n                      if ((uVar24 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;\n                    }\n                    else if ((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )) {\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }\n                  }\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                }\n                else {\n                  if (*(int *)(_Var29 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar24 != uVar20) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                  if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4) =\n                       (iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar22 = *(int *)(_Var29 + 0xc) +\n                         (iVar25 + (int)pSVar28->reloc_stubs_size_ + 3U & 0xfffffffc);\n                if (1 < *(int *)(_Var29 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar23 = iVar22 + 4;\n                *(int *)(puVar4 + (iVar22 - iVar25) + (iVar25 - uVar10)) = *(int *)(_Var29 + 0x20);\n                if ((*(uint *)(_Var29 + 8) & *(uint *)(_Var29 + 4)) == 0xffffffff)\n                goto LAB_001e67c7;\n                *(uint *)(puVar4 + (iVar23 - iVar25) + (iVar25 - uVar10)) =\n                     *(uint *)(_Var29 + 4) - iVar23 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")\n                  ;\n                }\n                *(undefined4 *)(_Var29 + 0x20) = 0xffffffff;\n                local_7c = (_Rb_tree_node_base *)std::_Rb_tree_increment(local_7c);\n                if (local_30 == local_7c) break;\n                _Var29 = local_7c[1]._M_color;\n                uVar24 = *(uint *)(_Var29 + 0x1c);\n                local_78 = *(uint *)(_Var29 + 0x24);\n                if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                    local_78 != uVar24 + uVar19) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = (Stub_table<64,_false> *)\n                     ((int)&(local_5c->super_Output_data)._vptr_Output_data + 1);\n          if (local_5c == local_58) {\n            local_58 = *(Stub_table<64,_false> **)&this->field_0x28;\n            goto LAB_001e5adf;\n          }\n          ppSVar27 = (this->stub_tables_).\n                     super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                     ._M_impl._M_start;\n        } while (local_5c <\n                 (Stub_table<64,_false> *)\n                 ((int)(this->stub_tables_).\n                       super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                       ._M_impl._M_finish - (int)ppSVar27 >> 2));\n      }\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/aarch64.cc",0x6f6,"stub_table");\n    }" { (ERROR "ppSVar27 = (this->stub_tables_).\n                 super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::" (comma_expression "ppSVar27 = (this->stub_tables_).\n                 super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std" (binary_expression "ppSVar27 = (this->stub_tables_).\n                 super__Vector_base<(anonymous_namespace)::Stub_table<64" (assignment_expression "ppSVar27 = (this->stub_tables_).\n                 super__Vector_base<(anonymous_namespace)" identifier = (binary_expression "(this->stub_tables_).\n                 super__Vector_base<(anonymous_namespace)" (field_expression "(this->stub_tables_).\n                 super__Vector_base" (parenthesized_expression "(this->stub_tables_)" ( (field_expression "this->stub_tables_" identifier -> field_identifier) )) . field_identifier) < (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Stub_table" : : identifier) < number_literal) , (binary_expression "_false>*,_std" identifier > (pointer_expression "*,_std" * (ERROR "," ,) identifier))) : : (binary_expression "allocator<(anonymous_namespace)" identifier < (parenthesized_expression "(anonymous_namespace)" ( identifier ))) : :) (expression_statement "Stub_table<64,_false>*>_>\n                 ._M_impl._M_start;" (comma_expression "Stub_table<64,_false>*>_>\n                 ._M_impl._M_start" (binary_expression "Stub_table<64" identifier < number_literal) , (field_expression "_false>*>_>\n                 ._M_impl._M_start" (field_expression "_false>*>_>\n                 ._M_impl" (binary_expression "_false>*>_" identifier > (pointer_expression "*>_" * (ERROR ">" >) identifier)) (ERROR ">" >) . field_identifier) . field_identifier)) ;) (if_statement "if (7 < (uint)((int)(this->stub_tables_).\n                          super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                          ._M_impl._M_finish - (int)ppSVar27)) {\n        local_5c = (Stub_table<64,_false> *)0x1;\n        do {\n          pSVar28 = ppSVar27[(int)local_5c];\n          if (pSVar28 != (Stub_table<64,_false> *)0x0) {\n            Stub_table<64,_false>::find_erratum_stubs_for_input_section\n                      (local_5c,a64relobj,(uint)__k);\n            local_7c = local_34;\n            pVVar15 = (pviews->\n                      super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                      )._M_impl._M_start + (int)local_5c;\n            if (pVVar15->is_input_output_view == false) {\n              local_b4 = 0;\n              local_b0 = 0;\n            }\n            else {\n              __k = (undefined **)local_5c;\n              if ((Stub_table<64,_false> *)0xfeff < local_5c) {\n                elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                          ((Elf_file<64,_false,_gold::Object> *)&this->field_0x90);\n                __k = (undefined **)\n                      ((int)&(local_5c->super_Output_data)._vptr_Output_data +\n                      *(int *)&this->field_0xa4);\n              }\n              a64relobj = this;\n              pOVar18 = gold::Output_section::find_relaxed_input_section\n                                  (*(Output_section **)(*(int *)&this->field_0x38 + (int)__k * 4),\n                                   (Relobj *)this,(uint)__k);\n              if (pOVar18 == (Output_relaxed_input_section *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs");\n              }\n              if (((pOVar18->super_Output_section_data_build).super_Output_section_data.\n                   super_Output_data.field_0x1c & 1) == 0) goto LAB_001e670d;\n              uVar10 = (uint)(pOVar18->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.address_;\n              local_b4 = uVar10 - (int)pVVar15->address;\n              local_b0 = (*(int *)((int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4) -\n                         *(int *)((int)&pVVar15->address + 4)) -\n                         (uint)(uVar10 < (uint)pVVar15->address);\n            }\n            if (local_34 != local_30) {\n              _Var29 = local_34[1]._M_color;\n              uVar10 = (uint)pVVar15->address;\n              uVar24 = *(uint *)(_Var29 + 0x1c);\n              uVar19 = local_b4 + uVar10;\n              iVar30 = local_b0 + *(int *)((int)&pVVar15->address + 4) +\n                       (uint)CARRY4(local_b4,uVar10);\n              local_78 = *(uint *)(_Var29 + 0x24);\n              if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                  local_78 != uVar24 + uVar19) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              puVar4 = pVVar15->view;\n              do {\n                uVar24 = *(uint *)(puVar4 + local_b4 + uVar24);\n                uVar20 = *(uint *)(_Var29 + 0x20);\n                if (uVar20 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(_Var29 + 0x10) == 4) {\n                  if ((uVar24 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar20 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar24 & 0x1f) != (uVar20 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar24 >> 5 & 0x1f) != (uVar20 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar25 = *(int *)(_Var29 + 0x2c);\n                  *(uint *)(_Var29 + 0x20) = uVar24;\n                  uVar24 = *(uint *)(puVar4 + local_b4 + iVar25);\n                  if ((uVar24 & 0xffffffe0) != 0xd53bd040) {\n                    if ((uVar24 & 0x9f000000) == 0x90000000) {\n                      uVar26 = iVar25 + uVar19;\n                      uVar33 = uVar24 >> 3 & 0x1ffffc;\n                      uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;\n                      uVar20 = (uVar26 & 0xfffff000) - uVar26;\n                      uVar21 = uVar20 + uVar34;\n                      iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21);\n                      if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))\n                      goto LAB_001e6269;\n                      if ((uVar24 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;\n                    }\n                    else if ((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )) {\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }\n                  }\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                }\n                else {\n                  if (*(int *)(_Var29 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar24 != uVar20) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                  if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4) =\n                       (iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar22 = *(int *)(_Var29 + 0xc) +\n                         (iVar25 + (int)pSVar28->reloc_stubs_size_ + 3U & 0xfffffffc);\n                if (1 < *(int *)(_Var29 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar23 = iVar22 + 4;\n                *(int *)(puVar4 + (iVar22 - iVar25) + (iVar25 - uVar10)) = *(int *)(_Var29 + 0x20);\n                if ((*(uint *)(_Var29 + 8) & *(uint *)(_Var29 + 4)) == 0xffffffff)\n                goto LAB_001e67c7;\n                *(uint *)(puVar4 + (iVar23 - iVar25) + (iVar25 - uVar10)) =\n                     *(uint *)(_Var29 + 4) - iVar23 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")\n                  ;\n                }\n                *(undefined4 *)(_Var29 + 0x20) = 0xffffffff;\n                local_7c = (_Rb_tree_node_base *)std::_Rb_tree_increment(local_7c);\n                if (local_30 == local_7c) break;\n                _Var29 = local_7c[1]._M_color;\n                uVar24 = *(uint *)(_Var29 + 0x1c);\n                local_78 = *(uint *)(_Var29 + 0x24);\n                if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                    local_78 != uVar24 + uVar19) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = (Stub_table<64,_false> *)\n                     ((int)&(local_5c->super_Output_data)._vptr_Output_data + 1);\n          if (local_5c == local_58) {\n            local_58 = *(Stub_table<64,_false> **)&this->field_0x28;\n            goto LAB_001e5adf;\n          }\n          ppSVar27 = (this->stub_tables_).\n                     super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                     ._M_impl._M_start;\n        } while (local_5c <\n                 (Stub_table<64,_false> *)\n                 ((int)(this->stub_tables_).\n                       super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                       ._M_impl._M_finish - (int)ppSVar27 >> 2));\n      }" if (parenthesized_expression "(7 < (uint)((int)(this->stub_tables_).\n                          super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                          ._M_impl._M_finish - (int)ppSVar27)" ( (ERROR "7 < (uint)((int)(this->stub_tables_).\n                          super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::" (comma_expression "7 < (uint)((int)(this->stub_tables_).\n                          super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std" (binary_expression "7 < (uint)((int)(this->stub_tables_).\n                          super__Vector_base<(anonymous_namespace)::Stub_table<64" (binary_expression "7 < (uint)" number_literal < (parenthesized_expression "(uint)" ( identifier ))) (ERROR "((int)(this->stub_tables_).\n                          super__Vector_base<(anonymous_namespace)::Stub_table" ( (binary_expression "(int)(this->stub_tables_).\n                          super__Vector_base<(anonymous_namespace)" (cast_expression "(int)(this->stub_tables_).\n                          super__Vector_base" ( (type_descriptor "int" primitive_type) ) (field_expression "(this->stub_tables_).\n                          super__Vector_base" (parenthesized_expression "(this->stub_tables_)" ( (field_expression "this->stub_tables_" identifier -> field_identifier) )) . field_identifier)) < (parenthesized_expression "(anonymous_namespace)" ( identifier ))) : : identifier) < number_literal) , (binary_expression "_false>*,_std" identifier > (pointer_expression "*,_std" * (ERROR "," ,) identifier))) : : (binary_expression "allocator<(anonymous_namespace)" identifier < (parenthesized_expression "(anonymous_namespace)" ( identifier ))) : :) (comma_expression "Stub_table<64,_false>*>_>\n                          ._M_impl._M_finish - (int)ppSVar27" (binary_expression "Stub_table<64" identifier < number_literal) , (binary_expression "_false>*>_>\n                          ._M_impl._M_finish - (int)ppSVar27" (field_expression "_false>*>_>\n                          ._M_impl._M_finish" (field_expression "_false>*>_>\n                          ._M_impl" (binary_expression "_false>*>_" identifier > (pointer_expression "*>_" * (ERROR ">" >) identifier)) (ERROR ">" >) . field_identifier) . field_identifier) - (cast_expression "(int)ppSVar27" ( (type_descriptor "int" primitive_type) ) identifier))) )) (ERROR ")" )) (compound_statement "{\n        local_5c = (Stub_table<64,_false> *)0x1;\n        do {\n          pSVar28 = ppSVar27[(int)local_5c];\n          if (pSVar28 != (Stub_table<64,_false> *)0x0) {\n            Stub_table<64,_false>::find_erratum_stubs_for_input_section\n                      (local_5c,a64relobj,(uint)__k);\n            local_7c = local_34;\n            pVVar15 = (pviews->\n                      super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                      )._M_impl._M_start + (int)local_5c;\n            if (pVVar15->is_input_output_view == false) {\n              local_b4 = 0;\n              local_b0 = 0;\n            }\n            else {\n              __k = (undefined **)local_5c;\n              if ((Stub_table<64,_false> *)0xfeff < local_5c) {\n                elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                          ((Elf_file<64,_false,_gold::Object> *)&this->field_0x90);\n                __k = (undefined **)\n                      ((int)&(local_5c->super_Output_data)._vptr_Output_data +\n                      *(int *)&this->field_0xa4);\n              }\n              a64relobj = this;\n              pOVar18 = gold::Output_section::find_relaxed_input_section\n                                  (*(Output_section **)(*(int *)&this->field_0x38 + (int)__k * 4),\n                                   (Relobj *)this,(uint)__k);\n              if (pOVar18 == (Output_relaxed_input_section *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs");\n              }\n              if (((pOVar18->super_Output_section_data_build).super_Output_section_data.\n                   super_Output_data.field_0x1c & 1) == 0) goto LAB_001e670d;\n              uVar10 = (uint)(pOVar18->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.address_;\n              local_b4 = uVar10 - (int)pVVar15->address;\n              local_b0 = (*(int *)((int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4) -\n                         *(int *)((int)&pVVar15->address + 4)) -\n                         (uint)(uVar10 < (uint)pVVar15->address);\n            }\n            if (local_34 != local_30) {\n              _Var29 = local_34[1]._M_color;\n              uVar10 = (uint)pVVar15->address;\n              uVar24 = *(uint *)(_Var29 + 0x1c);\n              uVar19 = local_b4 + uVar10;\n              iVar30 = local_b0 + *(int *)((int)&pVVar15->address + 4) +\n                       (uint)CARRY4(local_b4,uVar10);\n              local_78 = *(uint *)(_Var29 + 0x24);\n              if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                  local_78 != uVar24 + uVar19) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              puVar4 = pVVar15->view;\n              do {\n                uVar24 = *(uint *)(puVar4 + local_b4 + uVar24);\n                uVar20 = *(uint *)(_Var29 + 0x20);\n                if (uVar20 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(_Var29 + 0x10) == 4) {\n                  if ((uVar24 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar20 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar24 & 0x1f) != (uVar20 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar24 >> 5 & 0x1f) != (uVar20 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar25 = *(int *)(_Var29 + 0x2c);\n                  *(uint *)(_Var29 + 0x20) = uVar24;\n                  uVar24 = *(uint *)(puVar4 + local_b4 + iVar25);\n                  if ((uVar24 & 0xffffffe0) != 0xd53bd040) {\n                    if ((uVar24 & 0x9f000000) == 0x90000000) {\n                      uVar26 = iVar25 + uVar19;\n                      uVar33 = uVar24 >> 3 & 0x1ffffc;\n                      uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;\n                      uVar20 = (uVar26 & 0xfffff000) - uVar26;\n                      uVar21 = uVar20 + uVar34;\n                      iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21);\n                      if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))\n                      goto LAB_001e6269;\n                      if ((uVar24 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;\n                    }\n                    else if ((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )) {\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }\n                  }\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                }\n                else {\n                  if (*(int *)(_Var29 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar24 != uVar20) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                  if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4) =\n                       (iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar22 = *(int *)(_Var29 + 0xc) +\n                         (iVar25 + (int)pSVar28->reloc_stubs_size_ + 3U & 0xfffffffc);\n                if (1 < *(int *)(_Var29 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar23 = iVar22 + 4;\n                *(int *)(puVar4 + (iVar22 - iVar25) + (iVar25 - uVar10)) = *(int *)(_Var29 + 0x20);\n                if ((*(uint *)(_Var29 + 8) & *(uint *)(_Var29 + 4)) == 0xffffffff)\n                goto LAB_001e67c7;\n                *(uint *)(puVar4 + (iVar23 - iVar25) + (iVar25 - uVar10)) =\n                     *(uint *)(_Var29 + 4) - iVar23 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")\n                  ;\n                }\n                *(undefined4 *)(_Var29 + 0x20) = 0xffffffff;\n                local_7c = (_Rb_tree_node_base *)std::_Rb_tree_increment(local_7c);\n                if (local_30 == local_7c) break;\n                _Var29 = local_7c[1]._M_color;\n                uVar24 = *(uint *)(_Var29 + 0x1c);\n                local_78 = *(uint *)(_Var29 + 0x24);\n                if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                    local_78 != uVar24 + uVar19) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = (Stub_table<64,_false> *)\n                     ((int)&(local_5c->super_Output_data)._vptr_Output_data + 1);\n          if (local_5c == local_58) {\n            local_58 = *(Stub_table<64,_false> **)&this->field_0x28;\n            goto LAB_001e5adf;\n          }\n          ppSVar27 = (this->stub_tables_).\n                     super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                     ._M_impl._M_start;\n        } while (local_5c <\n                 (Stub_table<64,_false> *)\n                 ((int)(this->stub_tables_).\n                       super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                       ._M_impl._M_finish - (int)ppSVar27 >> 2));\n      }" { (expression_statement "local_5c = (Stub_table<64,_false> *)0x1;" (assignment_expression "local_5c = (Stub_table<64,_false> *)0x1" identifier = (parenthesized_expression "(Stub_table<64,_false> *)0x1" ( (comma_expression "Stub_table<64,_false> *)0x1" (binary_expression "Stub_table<64" identifier < number_literal) , (binary_expression "_false> *)0x1" identifier > (pointer_expression "*)0x1" * (ERROR ")" )) number_literal))) ))) ;) (do_statement "do {\n          pSVar28 = ppSVar27[(int)local_5c];\n          if (pSVar28 != (Stub_table<64,_false> *)0x0) {\n            Stub_table<64,_false>::find_erratum_stubs_for_input_section\n                      (local_5c,a64relobj,(uint)__k);\n            local_7c = local_34;\n            pVVar15 = (pviews->\n                      super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                      )._M_impl._M_start + (int)local_5c;\n            if (pVVar15->is_input_output_view == false) {\n              local_b4 = 0;\n              local_b0 = 0;\n            }\n            else {\n              __k = (undefined **)local_5c;\n              if ((Stub_table<64,_false> *)0xfeff < local_5c) {\n                elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                          ((Elf_file<64,_false,_gold::Object> *)&this->field_0x90);\n                __k = (undefined **)\n                      ((int)&(local_5c->super_Output_data)._vptr_Output_data +\n                      *(int *)&this->field_0xa4);\n              }\n              a64relobj = this;\n              pOVar18 = gold::Output_section::find_relaxed_input_section\n                                  (*(Output_section **)(*(int *)&this->field_0x38 + (int)__k * 4),\n                                   (Relobj *)this,(uint)__k);\n              if (pOVar18 == (Output_relaxed_input_section *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs");\n              }\n              if (((pOVar18->super_Output_section_data_build).super_Output_section_data.\n                   super_Output_data.field_0x1c & 1) == 0) goto LAB_001e670d;\n              uVar10 = (uint)(pOVar18->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.address_;\n              local_b4 = uVar10 - (int)pVVar15->address;\n              local_b0 = (*(int *)((int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4) -\n                         *(int *)((int)&pVVar15->address + 4)) -\n                         (uint)(uVar10 < (uint)pVVar15->address);\n            }\n            if (local_34 != local_30) {\n              _Var29 = local_34[1]._M_color;\n              uVar10 = (uint)pVVar15->address;\n              uVar24 = *(uint *)(_Var29 + 0x1c);\n              uVar19 = local_b4 + uVar10;\n              iVar30 = local_b0 + *(int *)((int)&pVVar15->address + 4) +\n                       (uint)CARRY4(local_b4,uVar10);\n              local_78 = *(uint *)(_Var29 + 0x24);\n              if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                  local_78 != uVar24 + uVar19) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              puVar4 = pVVar15->view;\n              do {\n                uVar24 = *(uint *)(puVar4 + local_b4 + uVar24);\n                uVar20 = *(uint *)(_Var29 + 0x20);\n                if (uVar20 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(_Var29 + 0x10) == 4) {\n                  if ((uVar24 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar20 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar24 & 0x1f) != (uVar20 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar24 >> 5 & 0x1f) != (uVar20 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar25 = *(int *)(_Var29 + 0x2c);\n                  *(uint *)(_Var29 + 0x20) = uVar24;\n                  uVar24 = *(uint *)(puVar4 + local_b4 + iVar25);\n                  if ((uVar24 & 0xffffffe0) != 0xd53bd040) {\n                    if ((uVar24 & 0x9f000000) == 0x90000000) {\n                      uVar26 = iVar25 + uVar19;\n                      uVar33 = uVar24 >> 3 & 0x1ffffc;\n                      uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;\n                      uVar20 = (uVar26 & 0xfffff000) - uVar26;\n                      uVar21 = uVar20 + uVar34;\n                      iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21);\n                      if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))\n                      goto LAB_001e6269;\n                      if ((uVar24 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;\n                    }\n                    else if ((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )) {\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }\n                  }\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                }\n                else {\n                  if (*(int *)(_Var29 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar24 != uVar20) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                  if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4) =\n                       (iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar22 = *(int *)(_Var29 + 0xc) +\n                         (iVar25 + (int)pSVar28->reloc_stubs_size_ + 3U & 0xfffffffc);\n                if (1 < *(int *)(_Var29 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar23 = iVar22 + 4;\n                *(int *)(puVar4 + (iVar22 - iVar25) + (iVar25 - uVar10)) = *(int *)(_Var29 + 0x20);\n                if ((*(uint *)(_Var29 + 8) & *(uint *)(_Var29 + 4)) == 0xffffffff)\n                goto LAB_001e67c7;\n                *(uint *)(puVar4 + (iVar23 - iVar25) + (iVar25 - uVar10)) =\n                     *(uint *)(_Var29 + 4) - iVar23 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")\n                  ;\n                }\n                *(undefined4 *)(_Var29 + 0x20) = 0xffffffff;\n                local_7c = (_Rb_tree_node_base *)std::_Rb_tree_increment(local_7c);\n                if (local_30 == local_7c) break;\n                _Var29 = local_7c[1]._M_color;\n                uVar24 = *(uint *)(_Var29 + 0x1c);\n                local_78 = *(uint *)(_Var29 + 0x24);\n                if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                    local_78 != uVar24 + uVar19) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = (Stub_table<64,_false> *)\n                     ((int)&(local_5c->super_Output_data)._vptr_Output_data + 1);\n          if (local_5c == local_58) {\n            local_58 = *(Stub_table<64,_false> **)&this->field_0x28;\n            goto LAB_001e5adf;\n          }\n          ppSVar27 = (this->stub_tables_).\n                     super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                     ._M_impl._M_start;\n        } while (local_5c <\n                 (Stub_table<64,_false> *)\n                 ((int)(this->stub_tables_).\n                       super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                       ._M_impl._M_finish - (int)ppSVar27 >> 2));" do (compound_statement "{\n          pSVar28 = ppSVar27[(int)local_5c];\n          if (pSVar28 != (Stub_table<64,_false> *)0x0) {\n            Stub_table<64,_false>::find_erratum_stubs_for_input_section\n                      (local_5c,a64relobj,(uint)__k);\n            local_7c = local_34;\n            pVVar15 = (pviews->\n                      super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                      )._M_impl._M_start + (int)local_5c;\n            if (pVVar15->is_input_output_view == false) {\n              local_b4 = 0;\n              local_b0 = 0;\n            }\n            else {\n              __k = (undefined **)local_5c;\n              if ((Stub_table<64,_false> *)0xfeff < local_5c) {\n                elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                          ((Elf_file<64,_false,_gold::Object> *)&this->field_0x90);\n                __k = (undefined **)\n                      ((int)&(local_5c->super_Output_data)._vptr_Output_data +\n                      *(int *)&this->field_0xa4);\n              }\n              a64relobj = this;\n              pOVar18 = gold::Output_section::find_relaxed_input_section\n                                  (*(Output_section **)(*(int *)&this->field_0x38 + (int)__k * 4),\n                                   (Relobj *)this,(uint)__k);\n              if (pOVar18 == (Output_relaxed_input_section *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs");\n              }\n              if (((pOVar18->super_Output_section_data_build).super_Output_section_data.\n                   super_Output_data.field_0x1c & 1) == 0) goto LAB_001e670d;\n              uVar10 = (uint)(pOVar18->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.address_;\n              local_b4 = uVar10 - (int)pVVar15->address;\n              local_b0 = (*(int *)((int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4) -\n                         *(int *)((int)&pVVar15->address + 4)) -\n                         (uint)(uVar10 < (uint)pVVar15->address);\n            }\n            if (local_34 != local_30) {\n              _Var29 = local_34[1]._M_color;\n              uVar10 = (uint)pVVar15->address;\n              uVar24 = *(uint *)(_Var29 + 0x1c);\n              uVar19 = local_b4 + uVar10;\n              iVar30 = local_b0 + *(int *)((int)&pVVar15->address + 4) +\n                       (uint)CARRY4(local_b4,uVar10);\n              local_78 = *(uint *)(_Var29 + 0x24);\n              if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                  local_78 != uVar24 + uVar19) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              puVar4 = pVVar15->view;\n              do {\n                uVar24 = *(uint *)(puVar4 + local_b4 + uVar24);\n                uVar20 = *(uint *)(_Var29 + 0x20);\n                if (uVar20 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(_Var29 + 0x10) == 4) {\n                  if ((uVar24 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar20 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar24 & 0x1f) != (uVar20 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar24 >> 5 & 0x1f) != (uVar20 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar25 = *(int *)(_Var29 + 0x2c);\n                  *(uint *)(_Var29 + 0x20) = uVar24;\n                  uVar24 = *(uint *)(puVar4 + local_b4 + iVar25);\n                  if ((uVar24 & 0xffffffe0) != 0xd53bd040) {\n                    if ((uVar24 & 0x9f000000) == 0x90000000) {\n                      uVar26 = iVar25 + uVar19;\n                      uVar33 = uVar24 >> 3 & 0x1ffffc;\n                      uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;\n                      uVar20 = (uVar26 & 0xfffff000) - uVar26;\n                      uVar21 = uVar20 + uVar34;\n                      iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21);\n                      if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))\n                      goto LAB_001e6269;\n                      if ((uVar24 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;\n                    }\n                    else if ((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )) {\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }\n                  }\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                }\n                else {\n                  if (*(int *)(_Var29 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar24 != uVar20) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                  if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4) =\n                       (iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar22 = *(int *)(_Var29 + 0xc) +\n                         (iVar25 + (int)pSVar28->reloc_stubs_size_ + 3U & 0xfffffffc);\n                if (1 < *(int *)(_Var29 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar23 = iVar22 + 4;\n                *(int *)(puVar4 + (iVar22 - iVar25) + (iVar25 - uVar10)) = *(int *)(_Var29 + 0x20);\n                if ((*(uint *)(_Var29 + 8) & *(uint *)(_Var29 + 4)) == 0xffffffff)\n                goto LAB_001e67c7;\n                *(uint *)(puVar4 + (iVar23 - iVar25) + (iVar25 - uVar10)) =\n                     *(uint *)(_Var29 + 4) - iVar23 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")\n                  ;\n                }\n                *(undefined4 *)(_Var29 + 0x20) = 0xffffffff;\n                local_7c = (_Rb_tree_node_base *)std::_Rb_tree_increment(local_7c);\n                if (local_30 == local_7c) break;\n                _Var29 = local_7c[1]._M_color;\n                uVar24 = *(uint *)(_Var29 + 0x1c);\n                local_78 = *(uint *)(_Var29 + 0x24);\n                if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                    local_78 != uVar24 + uVar19) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = (Stub_table<64,_false> *)\n                     ((int)&(local_5c->super_Output_data)._vptr_Output_data + 1);\n          if (local_5c == local_58) {\n            local_58 = *(Stub_table<64,_false> **)&this->field_0x28;\n            goto LAB_001e5adf;\n          }\n          ppSVar27 = (this->stub_tables_).\n                     super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                     ._M_impl._M_start;\n        }" { (expression_statement "pSVar28 = ppSVar27[(int)local_5c];" (assignment_expression "pSVar28 = ppSVar27[(int)local_5c]" identifier = (subscript_expression "ppSVar27[(int)local_5c]" identifier [ (cast_expression "(int)local_5c" ( (type_descriptor "int" primitive_type) ) identifier) ])) ;) (if_statement "if (pSVar28 != (Stub_table<64,_false> *)0x0) {\n            Stub_table<64,_false>::find_erratum_stubs_for_input_section\n                      (local_5c,a64relobj,(uint)__k);\n            local_7c = local_34;\n            pVVar15 = (pviews->\n                      super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                      )._M_impl._M_start + (int)local_5c;\n            if (pVVar15->is_input_output_view == false) {\n              local_b4 = 0;\n              local_b0 = 0;\n            }\n            else {\n              __k = (undefined **)local_5c;\n              if ((Stub_table<64,_false> *)0xfeff < local_5c) {\n                elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                          ((Elf_file<64,_false,_gold::Object> *)&this->field_0x90);\n                __k = (undefined **)\n                      ((int)&(local_5c->super_Output_data)._vptr_Output_data +\n                      *(int *)&this->field_0xa4);\n              }\n              a64relobj = this;\n              pOVar18 = gold::Output_section::find_relaxed_input_section\n                                  (*(Output_section **)(*(int *)&this->field_0x38 + (int)__k * 4),\n                                   (Relobj *)this,(uint)__k);\n              if (pOVar18 == (Output_relaxed_input_section *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs");\n              }\n              if (((pOVar18->super_Output_section_data_build).super_Output_section_data.\n                   super_Output_data.field_0x1c & 1) == 0) goto LAB_001e670d;\n              uVar10 = (uint)(pOVar18->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.address_;\n              local_b4 = uVar10 - (int)pVVar15->address;\n              local_b0 = (*(int *)((int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4) -\n                         *(int *)((int)&pVVar15->address + 4)) -\n                         (uint)(uVar10 < (uint)pVVar15->address);\n            }\n            if (local_34 != local_30) {\n              _Var29 = local_34[1]._M_color;\n              uVar10 = (uint)pVVar15->address;\n              uVar24 = *(uint *)(_Var29 + 0x1c);\n              uVar19 = local_b4 + uVar10;\n              iVar30 = local_b0 + *(int *)((int)&pVVar15->address + 4) +\n                       (uint)CARRY4(local_b4,uVar10);\n              local_78 = *(uint *)(_Var29 + 0x24);\n              if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                  local_78 != uVar24 + uVar19) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              puVar4 = pVVar15->view;\n              do {\n                uVar24 = *(uint *)(puVar4 + local_b4 + uVar24);\n                uVar20 = *(uint *)(_Var29 + 0x20);\n                if (uVar20 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(_Var29 + 0x10) == 4) {\n                  if ((uVar24 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar20 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar24 & 0x1f) != (uVar20 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar24 >> 5 & 0x1f) != (uVar20 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar25 = *(int *)(_Var29 + 0x2c);\n                  *(uint *)(_Var29 + 0x20) = uVar24;\n                  uVar24 = *(uint *)(puVar4 + local_b4 + iVar25);\n                  if ((uVar24 & 0xffffffe0) != 0xd53bd040) {\n                    if ((uVar24 & 0x9f000000) == 0x90000000) {\n                      uVar26 = iVar25 + uVar19;\n                      uVar33 = uVar24 >> 3 & 0x1ffffc;\n                      uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;\n                      uVar20 = (uVar26 & 0xfffff000) - uVar26;\n                      uVar21 = uVar20 + uVar34;\n                      iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21);\n                      if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))\n                      goto LAB_001e6269;\n                      if ((uVar24 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;\n                    }\n                    else if ((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )) {\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }\n                  }\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                }\n                else {\n                  if (*(int *)(_Var29 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar24 != uVar20) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                  if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4) =\n                       (iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar22 = *(int *)(_Var29 + 0xc) +\n                         (iVar25 + (int)pSVar28->reloc_stubs_size_ + 3U & 0xfffffffc);\n                if (1 < *(int *)(_Var29 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar23 = iVar22 + 4;\n                *(int *)(puVar4 + (iVar22 - iVar25) + (iVar25 - uVar10)) = *(int *)(_Var29 + 0x20);\n                if ((*(uint *)(_Var29 + 8) & *(uint *)(_Var29 + 4)) == 0xffffffff)\n                goto LAB_001e67c7;\n                *(uint *)(puVar4 + (iVar23 - iVar25) + (iVar25 - uVar10)) =\n                     *(uint *)(_Var29 + 4) - iVar23 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")\n                  ;\n                }\n                *(undefined4 *)(_Var29 + 0x20) = 0xffffffff;\n                local_7c = (_Rb_tree_node_base *)std::_Rb_tree_increment(local_7c);\n                if (local_30 == local_7c) break;\n                _Var29 = local_7c[1]._M_color;\n                uVar24 = *(uint *)(_Var29 + 0x1c);\n                local_78 = *(uint *)(_Var29 + 0x24);\n                if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                    local_78 != uVar24 + uVar19) goto LAB_001e6234;\n              } while( true );\n            }\n          }" if (parenthesized_expression "(pSVar28 != (Stub_table<64,_false> *)0x0)" ( (binary_expression "pSVar28 != (Stub_table<64,_false> *)0x0)" identifier != (parenthesized_expression "(Stub_table<64,_false> *)0x0)" ( (comma_expression "Stub_table<64,_false> *)0x0" (binary_expression "Stub_table<64" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) (compound_statement "{\n            Stub_table<64,_false>::find_erratum_stubs_for_input_section\n                      (local_5c,a64relobj,(uint)__k);\n            local_7c = local_34;\n            pVVar15 = (pviews->\n                      super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                      )._M_impl._M_start + (int)local_5c;\n            if (pVVar15->is_input_output_view == false) {\n              local_b4 = 0;\n              local_b0 = 0;\n            }\n            else {\n              __k = (undefined **)local_5c;\n              if ((Stub_table<64,_false> *)0xfeff < local_5c) {\n                elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                          ((Elf_file<64,_false,_gold::Object> *)&this->field_0x90);\n                __k = (undefined **)\n                      ((int)&(local_5c->super_Output_data)._vptr_Output_data +\n                      *(int *)&this->field_0xa4);\n              }\n              a64relobj = this;\n              pOVar18 = gold::Output_section::find_relaxed_input_section\n                                  (*(Output_section **)(*(int *)&this->field_0x38 + (int)__k * 4),\n                                   (Relobj *)this,(uint)__k);\n              if (pOVar18 == (Output_relaxed_input_section *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs");\n              }\n              if (((pOVar18->super_Output_section_data_build).super_Output_section_data.\n                   super_Output_data.field_0x1c & 1) == 0) goto LAB_001e670d;\n              uVar10 = (uint)(pOVar18->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.address_;\n              local_b4 = uVar10 - (int)pVVar15->address;\n              local_b0 = (*(int *)((int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4) -\n                         *(int *)((int)&pVVar15->address + 4)) -\n                         (uint)(uVar10 < (uint)pVVar15->address);\n            }\n            if (local_34 != local_30) {\n              _Var29 = local_34[1]._M_color;\n              uVar10 = (uint)pVVar15->address;\n              uVar24 = *(uint *)(_Var29 + 0x1c);\n              uVar19 = local_b4 + uVar10;\n              iVar30 = local_b0 + *(int *)((int)&pVVar15->address + 4) +\n                       (uint)CARRY4(local_b4,uVar10);\n              local_78 = *(uint *)(_Var29 + 0x24);\n              if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                  local_78 != uVar24 + uVar19) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              puVar4 = pVVar15->view;\n              do {\n                uVar24 = *(uint *)(puVar4 + local_b4 + uVar24);\n                uVar20 = *(uint *)(_Var29 + 0x20);\n                if (uVar20 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(_Var29 + 0x10) == 4) {\n                  if ((uVar24 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar20 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar24 & 0x1f) != (uVar20 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar24 >> 5 & 0x1f) != (uVar20 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar25 = *(int *)(_Var29 + 0x2c);\n                  *(uint *)(_Var29 + 0x20) = uVar24;\n                  uVar24 = *(uint *)(puVar4 + local_b4 + iVar25);\n                  if ((uVar24 & 0xffffffe0) != 0xd53bd040) {\n                    if ((uVar24 & 0x9f000000) == 0x90000000) {\n                      uVar26 = iVar25 + uVar19;\n                      uVar33 = uVar24 >> 3 & 0x1ffffc;\n                      uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;\n                      uVar20 = (uVar26 & 0xfffff000) - uVar26;\n                      uVar21 = uVar20 + uVar34;\n                      iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21);\n                      if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))\n                      goto LAB_001e6269;\n                      if ((uVar24 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;\n                    }\n                    else if ((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )) {\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }\n                  }\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                }\n                else {\n                  if (*(int *)(_Var29 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar24 != uVar20) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                  if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4) =\n                       (iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar22 = *(int *)(_Var29 + 0xc) +\n                         (iVar25 + (int)pSVar28->reloc_stubs_size_ + 3U & 0xfffffffc);\n                if (1 < *(int *)(_Var29 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar23 = iVar22 + 4;\n                *(int *)(puVar4 + (iVar22 - iVar25) + (iVar25 - uVar10)) = *(int *)(_Var29 + 0x20);\n                if ((*(uint *)(_Var29 + 8) & *(uint *)(_Var29 + 4)) == 0xffffffff)\n                goto LAB_001e67c7;\n                *(uint *)(puVar4 + (iVar23 - iVar25) + (iVar25 - uVar10)) =\n                     *(uint *)(_Var29 + 4) - iVar23 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")\n                  ;\n                }\n                *(undefined4 *)(_Var29 + 0x20) = 0xffffffff;\n                local_7c = (_Rb_tree_node_base *)std::_Rb_tree_increment(local_7c);\n                if (local_30 == local_7c) break;\n                _Var29 = local_7c[1]._M_color;\n                uVar24 = *(uint *)(_Var29 + 0x1c);\n                local_78 = *(uint *)(_Var29 + 0x24);\n                if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                    local_78 != uVar24 + uVar19) goto LAB_001e6234;\n              } while( true );\n            }\n          }" { (expression_statement "Stub_table<64,_false>::find_erratum_stubs_for_input_section\n                      (local_5c,a64relobj,(uint)__k);" (comma_expression "Stub_table<64,_false>::find_erratum_stubs_for_input_section\n                      (local_5c,a64relobj,(uint)__k)" (binary_expression "Stub_table<64" identifier < number_literal) , (binary_expression "_false>::find_erratum_stubs_for_input_section\n                      (local_5c,a64relobj,(uint)__k)" identifier > (ERROR "::" : :) (call_expression "find_erratum_stubs_for_input_section\n                      (local_5c,a64relobj,(uint)__k)" identifier (argument_list "(local_5c,a64relobj,(uint)__k)" ( identifier , identifier , (cast_expression "(uint)__k" ( (type_descriptor "uint" type_identifier) ) identifier) ))))) ;) (expression_statement "local_7c = local_34;" (assignment_expression "local_7c = local_34" identifier = identifier) ;) (expression_statement "pVVar15 = (pviews->\n                      super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                      )._M_impl._M_start + (int)local_5c;" (assignment_expression "pVVar15 = (pviews->\n                      super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                      )._M_impl._M_start + (int)local_5c" identifier = (binary_expression "(pviews->\n                      super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                      )._M_impl._M_start + (int)local_5c" (field_expression "(pviews->\n                      super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                      )._M_impl._M_start" (field_expression "(pviews->\n                      super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                      )._M_impl" (parenthesized_expression "(pviews->\n                      super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                      )" ( (ERROR "pviews->\n                      super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::" (comma_expression "pviews->\n                      super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std" (binary_expression "pviews->\n                      super__Vector_base<gold::Sized_relobj_file<64" (binary_expression "pviews->\n                      super__Vector_base<gold" (field_expression "pviews->\n                      super__Vector_base" identifier -> field_identifier) < identifier) (ERROR "::Sized_relobj_file" : : identifier) < number_literal) , (comma_expression "_false>::View_size,_std" (binary_expression "_false>::View_size" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<gold" identifier < identifier) : :) (comma_expression "Sized_relobj_file<64,_false>::View_size>_" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false>::View_size>_" (binary_expression "_false>::View_size" identifier > (ERROR "::" : :) identifier) > identifier)) (ERROR ">" >) )) . field_identifier) . field_identifier) + (cast_expression "(int)local_5c" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (pVVar15->is_input_output_view == false) {\n              local_b4 = 0;\n              local_b0 = 0;\n            }\n            else {\n              __k = (undefined **)local_5c;\n              if ((Stub_table<64,_false> *)0xfeff < local_5c) {\n                elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                          ((Elf_file<64,_false,_gold::Object> *)&this->field_0x90);\n                __k = (undefined **)\n                      ((int)&(local_5c->super_Output_data)._vptr_Output_data +\n                      *(int *)&this->field_0xa4);\n              }\n              a64relobj = this;\n              pOVar18 = gold::Output_section::find_relaxed_input_section\n                                  (*(Output_section **)(*(int *)&this->field_0x38 + (int)__k * 4),\n                                   (Relobj *)this,(uint)__k);\n              if (pOVar18 == (Output_relaxed_input_section *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs");\n              }\n              if (((pOVar18->super_Output_section_data_build).super_Output_section_data.\n                   super_Output_data.field_0x1c & 1) == 0) goto LAB_001e670d;\n              uVar10 = (uint)(pOVar18->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.address_;\n              local_b4 = uVar10 - (int)pVVar15->address;\n              local_b0 = (*(int *)((int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4) -\n                         *(int *)((int)&pVVar15->address + 4)) -\n                         (uint)(uVar10 < (uint)pVVar15->address);\n            }" if (parenthesized_expression "(pVVar15->is_input_output_view == false)" ( (binary_expression "pVVar15->is_input_output_view == false" (field_expression "pVVar15->is_input_output_view" identifier -> field_identifier) == false) )) (compound_statement "{\n              local_b4 = 0;\n              local_b0 = 0;\n            }" { (expression_statement "local_b4 = 0;" (assignment_expression "local_b4 = 0" identifier = number_literal) ;) (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" identifier = number_literal) ;) }) (else_clause "else {\n              __k = (undefined **)local_5c;\n              if ((Stub_table<64,_false> *)0xfeff < local_5c) {\n                elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                          ((Elf_file<64,_false,_gold::Object> *)&this->field_0x90);\n                __k = (undefined **)\n                      ((int)&(local_5c->super_Output_data)._vptr_Output_data +\n                      *(int *)&this->field_0xa4);\n              }\n              a64relobj = this;\n              pOVar18 = gold::Output_section::find_relaxed_input_section\n                                  (*(Output_section **)(*(int *)&this->field_0x38 + (int)__k * 4),\n                                   (Relobj *)this,(uint)__k);\n              if (pOVar18 == (Output_relaxed_input_section *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs");\n              }\n              if (((pOVar18->super_Output_section_data_build).super_Output_section_data.\n                   super_Output_data.field_0x1c & 1) == 0) goto LAB_001e670d;\n              uVar10 = (uint)(pOVar18->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.address_;\n              local_b4 = uVar10 - (int)pVVar15->address;\n              local_b0 = (*(int *)((int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4) -\n                         *(int *)((int)&pVVar15->address + 4)) -\n                         (uint)(uVar10 < (uint)pVVar15->address);\n            }" else (compound_statement "{\n              __k = (undefined **)local_5c;\n              if ((Stub_table<64,_false> *)0xfeff < local_5c) {\n                elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                          ((Elf_file<64,_false,_gold::Object> *)&this->field_0x90);\n                __k = (undefined **)\n                      ((int)&(local_5c->super_Output_data)._vptr_Output_data +\n                      *(int *)&this->field_0xa4);\n              }\n              a64relobj = this;\n              pOVar18 = gold::Output_section::find_relaxed_input_section\n                                  (*(Output_section **)(*(int *)&this->field_0x38 + (int)__k * 4),\n                                   (Relobj *)this,(uint)__k);\n              if (pOVar18 == (Output_relaxed_input_section *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs");\n              }\n              if (((pOVar18->super_Output_section_data_build).super_Output_section_data.\n                   super_Output_data.field_0x1c & 1) == 0) goto LAB_001e670d;\n              uVar10 = (uint)(pOVar18->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.address_;\n              local_b4 = uVar10 - (int)pVVar15->address;\n              local_b0 = (*(int *)((int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4) -\n                         *(int *)((int)&pVVar15->address + 4)) -\n                         (uint)(uVar10 < (uint)pVVar15->address);\n            }" { (expression_statement "__k = (undefined **)local_5c;" (assignment_expression "__k = (undefined **)local_5c" identifier = (cast_expression "(undefined **)local_5c" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (if_statement "if ((Stub_table<64,_false> *)0xfeff < local_5c) {\n                elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                          ((Elf_file<64,_false,_gold::Object> *)&this->field_0x90);\n                __k = (undefined **)\n                      ((int)&(local_5c->super_Output_data)._vptr_Output_data +\n                      *(int *)&this->field_0xa4);\n              }" if (parenthesized_expression "((Stub_table<64,_false> *)0xfeff < local_5c)" ( (parenthesized_expression "(Stub_table<64,_false> *)0xfeff < local_5c)" ( (comma_expression "Stub_table<64,_false> *)0xfeff < local_5c" (binary_expression "Stub_table<64" identifier < number_literal) , (binary_expression "_false> *)0xfeff < local_5c" (binary_expression "_false> *)0xfeff" identifier > (pointer_expression "*)0xfeff" * (ERROR ")" )) number_literal)) < identifier)) )) )) (compound_statement "{\n                elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                          ((Elf_file<64,_false,_gold::Object> *)&this->field_0x90);\n                __k = (undefined **)\n                      ((int)&(local_5c->super_Output_data)._vptr_Output_data +\n                      *(int *)&this->field_0xa4);\n              }" { (labeled_statement "elfcpp::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                          ((Elf_file<64,_false,_gold::Object> *)&this->field_0x90);" statement_identifier (ERROR "::Elf_file<64,_false,_gold::Object>::initialize_shnum\n                          ((Elf_file<64,_false,_gold:" : : (comma_expression "Elf_file<64,_false,_gold" (binary_expression "Elf_file<64" identifier < number_literal) , (comma_expression "_false,_gold" identifier , identifier)) : : identifier > : : identifier ( ( (comma_expression "Elf_file<64,_false,_gold" (binary_expression "Elf_file<64" identifier < number_literal) , (comma_expression "_false,_gold" identifier , identifier)) :) : (expression_statement "Object> *)&this->field_0x90);" (binary_expression "Object> *)&this->field_0x90" identifier > (pointer_expression "*)&this->field_0x90" * (ERROR ")" )) (pointer_expression "&this->field_0x90" & (field_expression "this->field_0x90" identifier -> field_identifier)))) (ERROR ")" )) ;)) (expression_statement "__k = (undefined **)\n                      ((int)&(local_5c->super_Output_data)._vptr_Output_data +\n                      *(int *)&this->field_0xa4);" (assignment_expression "__k = (undefined **)\n                      ((int)&(local_5c->super_Output_data)._vptr_Output_data +\n                      *(int *)&this->field_0xa4)" identifier = (cast_expression "(undefined **)\n                      ((int)&(local_5c->super_Output_data)._vptr_Output_data +\n                      *(int *)&this->field_0xa4)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&(local_5c->super_Output_data)._vptr_Output_data +\n                      *(int *)&this->field_0xa4)" ( (binary_expression "(int)&(local_5c->super_Output_data)._vptr_Output_data +\n                      *(int *)&this->field_0xa4" (cast_expression "(int)&(local_5c->super_Output_data)._vptr_Output_data" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(local_5c->super_Output_data)._vptr_Output_data" & (field_expression "(local_5c->super_Output_data)._vptr_Output_data" (parenthesized_expression "(local_5c->super_Output_data)" ( (field_expression "local_5c->super_Output_data" identifier -> field_identifier) )) . field_identifier))) + (pointer_expression "*(int *)&this->field_0xa4" * (cast_expression "(int *)&this->field_0xa4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this->field_0xa4" & (field_expression "this->field_0xa4" identifier -> field_identifier))))) )))) ;) })) (expression_statement "a64relobj = this;" (assignment_expression "a64relobj = this" identifier = identifier) ;) (ERROR "pOVar18 = gold::" (assignment_expression "pOVar18 = gold" identifier = identifier) : :) (labeled_statement "Output_section::find_relaxed_input_section\n                                  (*(Output_section **)(*(int *)&this->field_0x38 + (int)__k * 4),\n                                   (Relobj *)this,(uint)__k);" statement_identifier : (ERROR ":" :) (expression_statement "find_relaxed_input_section\n                                  (*(Output_section **)(*(int *)&this->field_0x38 + (int)__k * 4),\n                                   (Relobj *)this,(uint)__k);" (call_expression "find_relaxed_input_section\n                                  (*(Output_section **)(*(int *)&this->field_0x38 + (int)__k * 4),\n                                   (Relobj *)this,(uint)__k)" identifier (argument_list "(*(Output_section **)(*(int *)&this->field_0x38 + (int)__k * 4),\n                                   (Relobj *)this,(uint)__k)" ( (pointer_expression "*(Output_section **)(*(int *)&this->field_0x38 + (int)__k * 4)" * (cast_expression "(Output_section **)(*(int *)&this->field_0x38 + (int)__k * 4)" ( (type_descriptor "Output_section **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)&this->field_0x38 + (int)__k * 4)" ( (binary_expression "*(int *)&this->field_0x38 + (int)__k * 4" (pointer_expression "*(int *)&this->field_0x38" * (cast_expression "(int *)&this->field_0x38" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this->field_0x38" & (field_expression "this->field_0x38" identifier -> field_identifier)))) + (binary_expression "(int)__k * 4" (cast_expression "(int)__k" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )))) , (cast_expression "(Relobj *)this" ( (type_descriptor "Relobj *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(uint)__k" ( (type_descriptor "uint" type_identifier) ) identifier) ))) ;)) (if_statement "if (pOVar18 == (Output_relaxed_input_section *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs");\n              }" if (parenthesized_expression "(pOVar18 == (Output_relaxed_input_section *)0x0)" ( (binary_expression "pOVar18 == (Output_relaxed_input_section *)0x0" identifier == (cast_expression "(Output_relaxed_input_section *)0x0" ( (type_descriptor "Output_relaxed_input_section *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs");\n              }" { comment (labeled_statement "gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs");" (call_expression "do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs")" identifier (argument_list "("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""fix_errata_and_relocate_erratum_stubs"" " string_content ") ))) ;)) })) (if_statement "if (((pOVar18->super_Output_section_data_build).super_Output_section_data.\n                   super_Output_data.field_0x1c & 1) == 0) goto LAB_001e670d;" if (parenthesized_expression "(((pOVar18->super_Output_section_data_build).super_Output_section_data.\n                   super_Output_data.field_0x1c & 1) == 0)" ( (binary_expression "((pOVar18->super_Output_section_data_build).super_Output_section_data.\n                   super_Output_data.field_0x1c & 1) == 0" (parenthesized_expression "((pOVar18->super_Output_section_data_build).super_Output_section_data.\n                   super_Output_data.field_0x1c & 1)" ( (binary_expression "(pOVar18->super_Output_section_data_build).super_Output_section_data.\n                   super_Output_data.field_0x1c & 1" (field_expression "(pOVar18->super_Output_section_data_build).super_Output_section_data.\n                   super_Output_data.field_0x1c" (field_expression "(pOVar18->super_Output_section_data_build).super_Output_section_data.\n                   super_Output_data" (field_expression "(pOVar18->super_Output_section_data_build).super_Output_section_data" (parenthesized_expression "(pOVar18->super_Output_section_data_build)" ( (field_expression "pOVar18->super_Output_section_data_build" identifier -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_001e670d;" goto statement_identifier ;)) (expression_statement "uVar10 = (uint)(pOVar18->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.address_;" (assignment_expression "uVar10 = (uint)(pOVar18->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.address_" identifier = (field_expression "(uint)(pOVar18->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data.address_" (field_expression "(uint)(pOVar18->super_Output_section_data_build).super_Output_section_data.\n                             super_Output_data" (field_expression "(uint)(pOVar18->super_Output_section_data_build).super_Output_section_data" (call_expression "(uint)(pOVar18->super_Output_section_data_build)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(pOVar18->super_Output_section_data_build)" ( (field_expression "pOVar18->super_Output_section_data_build" identifier -> field_identifier) ))) . field_identifier) . field_identifier) . field_identifier)) ;) (expression_statement "local_b4 = uVar10 - (int)pVVar15->address;" (assignment_expression "local_b4 = uVar10 - (int)pVVar15->address" identifier = (binary_expression "uVar10 - (int)pVVar15->address" identifier - (cast_expression "(int)pVVar15->address" ( (type_descriptor "int" primitive_type) ) (field_expression "pVVar15->address" identifier -> field_identifier)))) ;) (expression_statement "local_b0 = (*(int *)((int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4) -\n                         *(int *)((int)&pVVar15->address + 4)) -\n                         (uint)(uVar10 < (uint)pVVar15->address);" (assignment_expression "local_b0 = (*(int *)((int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4) -\n                         *(int *)((int)&pVVar15->address + 4)) -\n                         (uint)(uVar10 < (uint)pVVar15->address)" identifier = (binary_expression "(*(int *)((int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4) -\n                         *(int *)((int)&pVVar15->address + 4)) -\n                         (uint)(uVar10 < (uint)pVVar15->address)" (parenthesized_expression "(*(int *)((int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4) -\n                         *(int *)((int)&pVVar15->address + 4))" ( (binary_expression "*(int *)((int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4) -\n                         *(int *)((int)&pVVar15->address + 4)" (pointer_expression "*(int *)((int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4)" * (cast_expression "(int *)((int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4)" ( (binary_expression "(int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_ + 4" (cast_expression "(int)&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_" & (field_expression "(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data.address_" (field_expression "(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data.super_Output_data" (field_expression "(pOVar18->super_Output_section_data_build).\n                                         super_Output_section_data" (parenthesized_expression "(pOVar18->super_Output_section_data_build)" ( (field_expression "pOVar18->super_Output_section_data_build" identifier -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier))) + number_literal) )))) - (pointer_expression "*(int *)((int)&pVVar15->address + 4)" * (cast_expression "(int *)((int)&pVVar15->address + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pVVar15->address + 4)" ( (binary_expression "(int)&pVVar15->address + 4" (cast_expression "(int)&pVVar15->address" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pVVar15->address" & (field_expression "pVVar15->address" identifier -> field_identifier))) + number_literal) ))))) )) - (call_expression "(uint)(uVar10 < (uint)pVVar15->address)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar10 < (uint)pVVar15->address)" ( (binary_expression "uVar10 < (uint)pVVar15->address" identifier < (cast_expression "(uint)pVVar15->address" ( (type_descriptor "uint" type_identifier) ) (field_expression "pVVar15->address" identifier -> field_identifier))) ))))) ;) }))) (if_statement "if (local_34 != local_30) {\n              _Var29 = local_34[1]._M_color;\n              uVar10 = (uint)pVVar15->address;\n              uVar24 = *(uint *)(_Var29 + 0x1c);\n              uVar19 = local_b4 + uVar10;\n              iVar30 = local_b0 + *(int *)((int)&pVVar15->address + 4) +\n                       (uint)CARRY4(local_b4,uVar10);\n              local_78 = *(uint *)(_Var29 + 0x24);\n              if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                  local_78 != uVar24 + uVar19) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              puVar4 = pVVar15->view;\n              do {\n                uVar24 = *(uint *)(puVar4 + local_b4 + uVar24);\n                uVar20 = *(uint *)(_Var29 + 0x20);\n                if (uVar20 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(_Var29 + 0x10) == 4) {\n                  if ((uVar24 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar20 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar24 & 0x1f) != (uVar20 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar24 >> 5 & 0x1f) != (uVar20 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar25 = *(int *)(_Var29 + 0x2c);\n                  *(uint *)(_Var29 + 0x20) = uVar24;\n                  uVar24 = *(uint *)(puVar4 + local_b4 + iVar25);\n                  if ((uVar24 & 0xffffffe0) != 0xd53bd040) {\n                    if ((uVar24 & 0x9f000000) == 0x90000000) {\n                      uVar26 = iVar25 + uVar19;\n                      uVar33 = uVar24 >> 3 & 0x1ffffc;\n                      uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;\n                      uVar20 = (uVar26 & 0xfffff000) - uVar26;\n                      uVar21 = uVar20 + uVar34;\n                      iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21);\n                      if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))\n                      goto LAB_001e6269;\n                      if ((uVar24 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;\n                    }\n                    else if ((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )) {\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }\n                  }\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                }\n                else {\n                  if (*(int *)(_Var29 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar24 != uVar20) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                  if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4) =\n                       (iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar22 = *(int *)(_Var29 + 0xc) +\n                         (iVar25 + (int)pSVar28->reloc_stubs_size_ + 3U & 0xfffffffc);\n                if (1 < *(int *)(_Var29 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar23 = iVar22 + 4;\n                *(int *)(puVar4 + (iVar22 - iVar25) + (iVar25 - uVar10)) = *(int *)(_Var29 + 0x20);\n                if ((*(uint *)(_Var29 + 8) & *(uint *)(_Var29 + 4)) == 0xffffffff)\n                goto LAB_001e67c7;\n                *(uint *)(puVar4 + (iVar23 - iVar25) + (iVar25 - uVar10)) =\n                     *(uint *)(_Var29 + 4) - iVar23 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")\n                  ;\n                }\n                *(undefined4 *)(_Var29 + 0x20) = 0xffffffff;\n                local_7c = (_Rb_tree_node_base *)std::_Rb_tree_increment(local_7c);\n                if (local_30 == local_7c) break;\n                _Var29 = local_7c[1]._M_color;\n                uVar24 = *(uint *)(_Var29 + 0x1c);\n                local_78 = *(uint *)(_Var29 + 0x24);\n                if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                    local_78 != uVar24 + uVar19) goto LAB_001e6234;\n              } while( true );\n            }" if (parenthesized_expression "(local_34 != local_30)" ( (binary_expression "local_34 != local_30" identifier != identifier) )) (compound_statement "{\n              _Var29 = local_34[1]._M_color;\n              uVar10 = (uint)pVVar15->address;\n              uVar24 = *(uint *)(_Var29 + 0x1c);\n              uVar19 = local_b4 + uVar10;\n              iVar30 = local_b0 + *(int *)((int)&pVVar15->address + 4) +\n                       (uint)CARRY4(local_b4,uVar10);\n              local_78 = *(uint *)(_Var29 + 0x24);\n              if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                  local_78 != uVar24 + uVar19) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              puVar4 = pVVar15->view;\n              do {\n                uVar24 = *(uint *)(puVar4 + local_b4 + uVar24);\n                uVar20 = *(uint *)(_Var29 + 0x20);\n                if (uVar20 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(_Var29 + 0x10) == 4) {\n                  if ((uVar24 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar20 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar24 & 0x1f) != (uVar20 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar24 >> 5 & 0x1f) != (uVar20 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar25 = *(int *)(_Var29 + 0x2c);\n                  *(uint *)(_Var29 + 0x20) = uVar24;\n                  uVar24 = *(uint *)(puVar4 + local_b4 + iVar25);\n                  if ((uVar24 & 0xffffffe0) != 0xd53bd040) {\n                    if ((uVar24 & 0x9f000000) == 0x90000000) {\n                      uVar26 = iVar25 + uVar19;\n                      uVar33 = uVar24 >> 3 & 0x1ffffc;\n                      uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;\n                      uVar20 = (uVar26 & 0xfffff000) - uVar26;\n                      uVar21 = uVar20 + uVar34;\n                      iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21);\n                      if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))\n                      goto LAB_001e6269;\n                      if ((uVar24 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;\n                    }\n                    else if ((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )) {\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }\n                  }\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                }\n                else {\n                  if (*(int *)(_Var29 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar24 != uVar20) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                  if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4) =\n                       (iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar22 = *(int *)(_Var29 + 0xc) +\n                         (iVar25 + (int)pSVar28->reloc_stubs_size_ + 3U & 0xfffffffc);\n                if (1 < *(int *)(_Var29 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar23 = iVar22 + 4;\n                *(int *)(puVar4 + (iVar22 - iVar25) + (iVar25 - uVar10)) = *(int *)(_Var29 + 0x20);\n                if ((*(uint *)(_Var29 + 8) & *(uint *)(_Var29 + 4)) == 0xffffffff)\n                goto LAB_001e67c7;\n                *(uint *)(puVar4 + (iVar23 - iVar25) + (iVar25 - uVar10)) =\n                     *(uint *)(_Var29 + 4) - iVar23 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")\n                  ;\n                }\n                *(undefined4 *)(_Var29 + 0x20) = 0xffffffff;\n                local_7c = (_Rb_tree_node_base *)std::_Rb_tree_increment(local_7c);\n                if (local_30 == local_7c) break;\n                _Var29 = local_7c[1]._M_color;\n                uVar24 = *(uint *)(_Var29 + 0x1c);\n                local_78 = *(uint *)(_Var29 + 0x24);\n                if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                    local_78 != uVar24 + uVar19) goto LAB_001e6234;\n              } while( true );\n            }" { (expression_statement "_Var29 = local_34[1]._M_color;" (assignment_expression "_Var29 = local_34[1]._M_color" identifier = (field_expression "local_34[1]._M_color" (subscript_expression "local_34[1]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "uVar10 = (uint)pVVar15->address;" (assignment_expression "uVar10 = (uint)pVVar15->address" identifier = (cast_expression "(uint)pVVar15->address" ( (type_descriptor "uint" type_identifier) ) (field_expression "pVVar15->address" identifier -> field_identifier))) ;) (expression_statement "uVar24 = *(uint *)(_Var29 + 0x1c);" (assignment_expression "uVar24 = *(uint *)(_Var29 + 0x1c)" identifier = (pointer_expression "*(uint *)(_Var29 + 0x1c)" * (cast_expression "(uint *)(_Var29 + 0x1c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0x1c)" ( (binary_expression "_Var29 + 0x1c" identifier + number_literal) ))))) ;) (expression_statement "uVar19 = local_b4 + uVar10;" (assignment_expression "uVar19 = local_b4 + uVar10" identifier = (binary_expression "local_b4 + uVar10" identifier + identifier)) ;) (expression_statement "iVar30 = local_b0 + *(int *)((int)&pVVar15->address + 4) +\n                       (uint)CARRY4(local_b4,uVar10);" (assignment_expression "iVar30 = local_b0 + *(int *)((int)&pVVar15->address + 4) +\n                       (uint)CARRY4(local_b4,uVar10)" identifier = (binary_expression "local_b0 + *(int *)((int)&pVVar15->address + 4) +\n                       (uint)CARRY4(local_b4,uVar10)" (binary_expression "local_b0 + *(int *)((int)&pVVar15->address + 4)" identifier + (pointer_expression "*(int *)((int)&pVVar15->address + 4)" * (cast_expression "(int *)((int)&pVVar15->address + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pVVar15->address + 4)" ( (binary_expression "(int)&pVVar15->address + 4" (cast_expression "(int)&pVVar15->address" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pVVar15->address" & (field_expression "pVVar15->address" identifier -> field_identifier))) + number_literal) ))))) + (cast_expression "(uint)CARRY4(local_b4,uVar10)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(local_b4,uVar10)" identifier (argument_list "(local_b4,uVar10)" ( identifier , identifier )))))) ;) (expression_statement "local_78 = *(uint *)(_Var29 + 0x24);" (assignment_expression "local_78 = *(uint *)(_Var29 + 0x24)" identifier = (pointer_expression "*(uint *)(_Var29 + 0x24)" * (cast_expression "(uint *)(_Var29 + 0x24)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0x24)" ( (binary_expression "_Var29 + 0x24" identifier + number_literal) ))))) ;) (if_statement "if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x401,"erratum_address");\n              }" if (parenthesized_expression "((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff)" ( (binary_expression "(local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff" (parenthesized_expression "(local_78 & *(uint *)(_Var29 + 0x28))" ( (binary_expression "local_78 & *(uint *)(_Var29 + 0x28)" identifier & (pointer_expression "*(uint *)(_Var29 + 0x28)" * (cast_expression "(uint *)(_Var29 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0x28)" ( (binary_expression "_Var29 + 0x28" identifier + number_literal) ))))) )) == number_literal) )) (compound_statement "{\nLAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x401,"erratum_address");\n              }" { (labeled_statement "LAB_001e674b:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x401,"erratum_address");" statement_identifier : comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x401,"erratum_address");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x401,"erratum_address");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x401,"erratum_address")" identifier (argument_list "("../../gold/aarch64.cc",0x401,"erratum_address")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""erratum_address"" " string_content ") ))) ;))) })) (if_statement "if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                  local_78 != uVar24 + uVar19) {\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }" if (parenthesized_expression "(*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                  local_78 != uVar24 + uVar19)" ( (binary_expression "*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                  local_78 != uVar24 + uVar19" (binary_expression "*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19)" (pointer_expression "*(uint *)(_Var29 + 0x28)" * (cast_expression "(uint *)(_Var29 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0x28)" ( (binary_expression "_Var29 + 0x28" identifier + number_literal) )))) != (binary_expression "iVar30 + (uint)CARRY4(uVar24,uVar19)" identifier + (cast_expression "(uint)CARRY4(uVar24,uVar19)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(uVar24,uVar19)" identifier (argument_list "(uVar24,uVar19)" ( identifier , identifier )))))) || (binary_expression "local_78 != uVar24 + uVar19" identifier != (binary_expression "uVar24 + uVar19" identifier + identifier))) )) (compound_statement "{\nLAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }" { (labeled_statement "LAB_001e6234:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");" statement_identifier : comment (labeled_statement "gold::do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");" (call_expression "do_gold_unreachable\n                          ("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs")" identifier (argument_list "("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""fix_errata_and_relocate_erratum_stubs"" " string_content ") ))) ;))) })) (expression_statement "puVar4 = pVVar15->view;" (assignment_expression "puVar4 = pVVar15->view" identifier = (field_expression "pVVar15->view" identifier -> field_identifier)) ;) (do_statement "do {\n                uVar24 = *(uint *)(puVar4 + local_b4 + uVar24);\n                uVar20 = *(uint *)(_Var29 + 0x20);\n                if (uVar20 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(_Var29 + 0x10) == 4) {\n                  if ((uVar24 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar20 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar24 & 0x1f) != (uVar20 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar24 >> 5 & 0x1f) != (uVar20 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar25 = *(int *)(_Var29 + 0x2c);\n                  *(uint *)(_Var29 + 0x20) = uVar24;\n                  uVar24 = *(uint *)(puVar4 + local_b4 + iVar25);\n                  if ((uVar24 & 0xffffffe0) != 0xd53bd040) {\n                    if ((uVar24 & 0x9f000000) == 0x90000000) {\n                      uVar26 = iVar25 + uVar19;\n                      uVar33 = uVar24 >> 3 & 0x1ffffc;\n                      uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;\n                      uVar20 = (uVar26 & 0xfffff000) - uVar26;\n                      uVar21 = uVar20 + uVar34;\n                      iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21);\n                      if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))\n                      goto LAB_001e6269;\n                      if ((uVar24 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;\n                    }\n                    else if ((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )) {\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }\n                  }\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                }\n                else {\n                  if (*(int *)(_Var29 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar24 != uVar20) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                  if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4) =\n                       (iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar22 = *(int *)(_Var29 + 0xc) +\n                         (iVar25 + (int)pSVar28->reloc_stubs_size_ + 3U & 0xfffffffc);\n                if (1 < *(int *)(_Var29 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar23 = iVar22 + 4;\n                *(int *)(puVar4 + (iVar22 - iVar25) + (iVar25 - uVar10)) = *(int *)(_Var29 + 0x20);\n                if ((*(uint *)(_Var29 + 8) & *(uint *)(_Var29 + 4)) == 0xffffffff)\n                goto LAB_001e67c7;\n                *(uint *)(puVar4 + (iVar23 - iVar25) + (iVar25 - uVar10)) =\n                     *(uint *)(_Var29 + 4) - iVar23 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")\n                  ;\n                }\n                *(undefined4 *)(_Var29 + 0x20) = 0xffffffff;\n                local_7c = (_Rb_tree_node_base *)std::_Rb_tree_increment(local_7c);\n                if (local_30 == local_7c) break;\n                _Var29 = local_7c[1]._M_color;\n                uVar24 = *(uint *)(_Var29 + 0x1c);\n                local_78 = *(uint *)(_Var29 + 0x24);\n                if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                    local_78 != uVar24 + uVar19) goto LAB_001e6234;\n              } while( true );" do (compound_statement "{\n                uVar24 = *(uint *)(puVar4 + local_b4 + uVar24);\n                uVar20 = *(uint *)(_Var29 + 0x20);\n                if (uVar20 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(_Var29 + 0x10) == 4) {\n                  if ((uVar24 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar20 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar24 & 0x1f) != (uVar20 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar24 >> 5 & 0x1f) != (uVar20 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar25 = *(int *)(_Var29 + 0x2c);\n                  *(uint *)(_Var29 + 0x20) = uVar24;\n                  uVar24 = *(uint *)(puVar4 + local_b4 + iVar25);\n                  if ((uVar24 & 0xffffffe0) != 0xd53bd040) {\n                    if ((uVar24 & 0x9f000000) == 0x90000000) {\n                      uVar26 = iVar25 + uVar19;\n                      uVar33 = uVar24 >> 3 & 0x1ffffc;\n                      uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;\n                      uVar20 = (uVar26 & 0xfffff000) - uVar26;\n                      uVar21 = uVar20 + uVar34;\n                      iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21);\n                      if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))\n                      goto LAB_001e6269;\n                      if ((uVar24 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;\n                    }\n                    else if ((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )) {\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }\n                  }\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                }\n                else {\n                  if (*(int *)(_Var29 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar24 != uVar20) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                  if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4) =\n                       (iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar22 = *(int *)(_Var29 + 0xc) +\n                         (iVar25 + (int)pSVar28->reloc_stubs_size_ + 3U & 0xfffffffc);\n                if (1 < *(int *)(_Var29 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar23 = iVar22 + 4;\n                *(int *)(puVar4 + (iVar22 - iVar25) + (iVar25 - uVar10)) = *(int *)(_Var29 + 0x20);\n                if ((*(uint *)(_Var29 + 8) & *(uint *)(_Var29 + 4)) == 0xffffffff)\n                goto LAB_001e67c7;\n                *(uint *)(puVar4 + (iVar23 - iVar25) + (iVar25 - uVar10)) =\n                     *(uint *)(_Var29 + 4) - iVar23 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")\n                  ;\n                }\n                *(undefined4 *)(_Var29 + 0x20) = 0xffffffff;\n                local_7c = (_Rb_tree_node_base *)std::_Rb_tree_increment(local_7c);\n                if (local_30 == local_7c) break;\n                _Var29 = local_7c[1]._M_color;\n                uVar24 = *(uint *)(_Var29 + 0x1c);\n                local_78 = *(uint *)(_Var29 + 0x24);\n                if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                    local_78 != uVar24 + uVar19) goto LAB_001e6234;\n              }" { (expression_statement "uVar24 = *(uint *)(puVar4 + local_b4 + uVar24);" (assignment_expression "uVar24 = *(uint *)(puVar4 + local_b4 + uVar24)" identifier = (pointer_expression "*(uint *)(puVar4 + local_b4 + uVar24)" * (cast_expression "(uint *)(puVar4 + local_b4 + uVar24)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar4 + local_b4 + uVar24)" ( (binary_expression "puVar4 + local_b4 + uVar24" (binary_expression "puVar4 + local_b4" identifier + identifier) + identifier) ))))) ;) (expression_statement "uVar20 = *(uint *)(_Var29 + 0x20);" (assignment_expression "uVar20 = *(uint *)(_Var29 + 0x20)" identifier = (pointer_expression "*(uint *)(_Var29 + 0x20)" * (cast_expression "(uint *)(_Var29 + 0x20)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0x20)" ( (binary_expression "_Var29 + 0x20" identifier + number_literal) ))))) ;) (if_statement "if (uVar20 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }" if (parenthesized_expression "(uVar20 == 0xffffffff)" ( (binary_expression "uVar20 == 0xffffffff" identifier == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",999,"update_erratum_insn");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",999,"update_erratum_insn");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",999,"update_erratum_insn")" identifier (argument_list "("../../gold/aarch64.cc",999,"update_erratum_insn")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""update_erratum_insn"" " string_content ") ))) ;)) })) (if_statement "if (*(int *)(_Var29 + 0x10) == 4) {\n                  if ((uVar24 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar20 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar24 & 0x1f) != (uVar20 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar24 >> 5 & 0x1f) != (uVar20 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar25 = *(int *)(_Var29 + 0x2c);\n                  *(uint *)(_Var29 + 0x20) = uVar24;\n                  uVar24 = *(uint *)(puVar4 + local_b4 + iVar25);\n                  if ((uVar24 & 0xffffffe0) != 0xd53bd040) {\n                    if ((uVar24 & 0x9f000000) == 0x90000000) {\n                      uVar26 = iVar25 + uVar19;\n                      uVar33 = uVar24 >> 3 & 0x1ffffc;\n                      uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;\n                      uVar20 = (uVar26 & 0xfffff000) - uVar26;\n                      uVar21 = uVar20 + uVar34;\n                      iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21);\n                      if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))\n                      goto LAB_001e6269;\n                      if ((uVar24 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;\n                    }\n                    else if ((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )) {\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }\n                  }\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                }\n                else {\n                  if (*(int *)(_Var29 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar24 != uVar20) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                  if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4) =\n                       (iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }" if (parenthesized_expression "(*(int *)(_Var29 + 0x10) == 4)" ( (binary_expression "*(int *)(_Var29 + 0x10) == 4" (pointer_expression "*(int *)(_Var29 + 0x10)" * (cast_expression "(int *)(_Var29 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0x10)" ( (binary_expression "_Var29 + 0x10" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                  if ((uVar24 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar20 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar24 & 0x1f) != (uVar20 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar24 >> 5 & 0x1f) != (uVar20 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar25 = *(int *)(_Var29 + 0x2c);\n                  *(uint *)(_Var29 + 0x20) = uVar24;\n                  uVar24 = *(uint *)(puVar4 + local_b4 + iVar25);\n                  if ((uVar24 & 0xffffffe0) != 0xd53bd040) {\n                    if ((uVar24 & 0x9f000000) == 0x90000000) {\n                      uVar26 = iVar25 + uVar19;\n                      uVar33 = uVar24 >> 3 & 0x1ffffc;\n                      uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;\n                      uVar20 = (uVar26 & 0xfffff000) - uVar26;\n                      uVar21 = uVar20 + uVar34;\n                      iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21);\n                      if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))\n                      goto LAB_001e6269;\n                      if ((uVar24 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;\n                    }\n                    else if ((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )) {\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }\n                  }\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                }" { (if_statement "if ((uVar24 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }" if (parenthesized_expression "((uVar24 & 0x3b000000) != 0x39000000)" ( (binary_expression "(uVar24 & 0x3b000000) != 0x39000000" (parenthesized_expression "(uVar24 & 0x3b000000)" ( (binary_expression "uVar24 & 0x3b000000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x3eb,"update_erratum_insn")" identifier (argument_list "("../../gold/aarch64.cc",0x3eb,"update_erratum_insn")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""update_erratum_insn"" " string_content ") ))) ;)) })) (if_statement "if ((uVar20 & 0x3b000000) != 0x39000000) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }" if (parenthesized_expression "((uVar20 & 0x3b000000) != 0x39000000)" ( (binary_expression "(uVar20 & 0x3b000000) != 0x39000000" (parenthesized_expression "(uVar20 & 0x3b000000)" ( (binary_expression "uVar20 & 0x3b000000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x3ec,"update_erratum_insn")" identifier (argument_list "("../../gold/aarch64.cc",0x3ec,"update_erratum_insn")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""update_erratum_insn"" " string_content ") ))) ;)) })) (if_statement "if ((uVar24 & 0x1f) != (uVar20 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }" if (parenthesized_expression "((uVar24 & 0x1f) != (uVar20 & 0x1f))" ( (binary_expression "(uVar24 & 0x1f) != (uVar20 & 0x1f)" (parenthesized_expression "(uVar24 & 0x1f)" ( (binary_expression "uVar24 & 0x1f" identifier & number_literal) )) != (parenthesized_expression "(uVar20 & 0x1f)" ( (binary_expression "uVar20 & 0x1f" identifier & number_literal) ))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x3ee,"update_erratum_insn")" identifier (argument_list "("../../gold/aarch64.cc",0x3ee,"update_erratum_insn")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""update_erratum_insn"" " string_content ") ))) ;)) })) (if_statement "if ((uVar24 >> 5 & 0x1f) != (uVar20 >> 5 & 0x1f)) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }" if (parenthesized_expression "((uVar24 >> 5 & 0x1f) != (uVar20 >> 5 & 0x1f))" ( (binary_expression "(uVar24 >> 5 & 0x1f) != (uVar20 >> 5 & 0x1f)" (parenthesized_expression "(uVar24 >> 5 & 0x1f)" ( (binary_expression "uVar24 >> 5 & 0x1f" (binary_expression "uVar24 >> 5" identifier >> number_literal) & number_literal) )) != (parenthesized_expression "(uVar20 >> 5 & 0x1f)" ( (binary_expression "uVar20 >> 5 & 0x1f" (binary_expression "uVar20 >> 5" identifier >> number_literal) & number_literal) ))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x3f0,"update_erratum_insn")" identifier (argument_list "("../../gold/aarch64.cc",0x3f0,"update_erratum_insn")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""update_erratum_insn"" " string_content ") ))) ;)) })) (expression_statement "iVar25 = *(int *)(_Var29 + 0x2c);" (assignment_expression "iVar25 = *(int *)(_Var29 + 0x2c)" identifier = (pointer_expression "*(int *)(_Var29 + 0x2c)" * (cast_expression "(int *)(_Var29 + 0x2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0x2c)" ( (binary_expression "_Var29 + 0x2c" identifier + number_literal) ))))) ;) (expression_statement "*(uint *)(_Var29 + 0x20) = uVar24;" (assignment_expression "*(uint *)(_Var29 + 0x20) = uVar24" (pointer_expression "*(uint *)(_Var29 + 0x20)" * (cast_expression "(uint *)(_Var29 + 0x20)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0x20)" ( (binary_expression "_Var29 + 0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar24 = *(uint *)(puVar4 + local_b4 + iVar25);" (assignment_expression "uVar24 = *(uint *)(puVar4 + local_b4 + iVar25)" identifier = (pointer_expression "*(uint *)(puVar4 + local_b4 + iVar25)" * (cast_expression "(uint *)(puVar4 + local_b4 + iVar25)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar4 + local_b4 + iVar25)" ( (binary_expression "puVar4 + local_b4 + iVar25" (binary_expression "puVar4 + local_b4" identifier + identifier) + identifier) ))))) ;) (if_statement "if ((uVar24 & 0xffffffe0) != 0xd53bd040) {\n                    if ((uVar24 & 0x9f000000) == 0x90000000) {\n                      uVar26 = iVar25 + uVar19;\n                      uVar33 = uVar24 >> 3 & 0x1ffffc;\n                      uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;\n                      uVar20 = (uVar26 & 0xfffff000) - uVar26;\n                      uVar21 = uVar20 + uVar34;\n                      iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21);\n                      if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))\n                      goto LAB_001e6269;\n                      if ((uVar24 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;\n                    }\n                    else if ((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )) {\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }\n                  }" if (parenthesized_expression "((uVar24 & 0xffffffe0) != 0xd53bd040)" ( (binary_expression "(uVar24 & 0xffffffe0) != 0xd53bd040" (parenthesized_expression "(uVar24 & 0xffffffe0)" ( (binary_expression "uVar24 & 0xffffffe0" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                    if ((uVar24 & 0x9f000000) == 0x90000000) {\n                      uVar26 = iVar25 + uVar19;\n                      uVar33 = uVar24 >> 3 & 0x1ffffc;\n                      uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;\n                      uVar20 = (uVar26 & 0xfffff000) - uVar26;\n                      uVar21 = uVar20 + uVar34;\n                      iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21);\n                      if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))\n                      goto LAB_001e6269;\n                      if ((uVar24 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;\n                    }\n                    else if ((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )) {\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }\n                  }" { (if_statement "if ((uVar24 & 0x9f000000) == 0x90000000) {\n                      uVar26 = iVar25 + uVar19;\n                      uVar33 = uVar24 >> 3 & 0x1ffffc;\n                      uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;\n                      uVar20 = (uVar26 & 0xfffff000) - uVar26;\n                      uVar21 = uVar20 + uVar34;\n                      iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21);\n                      if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))\n                      goto LAB_001e6269;\n                      if ((uVar24 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;\n                    }\n                    else if ((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )) {\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }" if (parenthesized_expression "((uVar24 & 0x9f000000) == 0x90000000)" ( (binary_expression "(uVar24 & 0x9f000000) == 0x90000000" (parenthesized_expression "(uVar24 & 0x9f000000)" ( (binary_expression "uVar24 & 0x9f000000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                      uVar26 = iVar25 + uVar19;\n                      uVar33 = uVar24 >> 3 & 0x1ffffc;\n                      uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;\n                      uVar20 = (uVar26 & 0xfffff000) - uVar26;\n                      uVar21 = uVar20 + uVar34;\n                      iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21);\n                      if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))\n                      goto LAB_001e6269;\n                      if ((uVar24 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;\n                    }" { (expression_statement "uVar26 = iVar25 + uVar19;" (assignment_expression "uVar26 = iVar25 + uVar19" identifier = (binary_expression "iVar25 + uVar19" identifier + identifier)) ;) (expression_statement "uVar33 = uVar24 >> 3 & 0x1ffffc;" (assignment_expression "uVar33 = uVar24 >> 3 & 0x1ffffc" identifier = (binary_expression "uVar24 >> 3 & 0x1ffffc" (binary_expression "uVar24 >> 3" identifier >> number_literal) & number_literal)) ;) (expression_statement "uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000;" (assignment_expression "uVar34 = (uVar33 | uVar24 >> 0x1d & 3) * 0x1000" identifier = (binary_expression "(uVar33 | uVar24 >> 0x1d & 3) * 0x1000" (parenthesized_expression "(uVar33 | uVar24 >> 0x1d & 3)" ( (binary_expression "uVar33 | uVar24 >> 0x1d & 3" identifier | (binary_expression "uVar24 >> 0x1d & 3" (binary_expression "uVar24 >> 0x1d" identifier >> number_literal) & number_literal)) )) * number_literal)) ;) (expression_statement "uVar20 = (uVar26 & 0xfffff000) - uVar26;" (assignment_expression "uVar20 = (uVar26 & 0xfffff000) - uVar26" identifier = (binary_expression "(uVar26 & 0xfffff000) - uVar26" (parenthesized_expression "(uVar26 & 0xfffff000)" ( (binary_expression "uVar26 & 0xfffff000" identifier & number_literal) )) - identifier)) ;) (expression_statement "uVar21 = uVar20 + uVar34;" (assignment_expression "uVar21 = uVar20 + uVar34" identifier = (binary_expression "uVar20 + uVar34" identifier + identifier)) ;) (expression_statement "iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21);" (assignment_expression "iVar22 = (((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21)" identifier = (binary_expression "(((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)\n                               + (uint)(0xffefffff < uVar21)" (binary_expression "(((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)) + (uint)CARRY4(uVar20,uVar34)" (parenthesized_expression "(((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26))" ( (binary_expression "((uVar33 >> 0x14) * -2 | uVar33 >> 0x14) -\n                               (uint)((uVar26 & 0xfffff000) < uVar26)" (parenthesized_expression "((uVar33 >> 0x14) * -2 | uVar33 >> 0x14)" ( (binary_expression "(uVar33 >> 0x14) * -2 | uVar33 >> 0x14" (binary_expression "(uVar33 >> 0x14) * -2" (parenthesized_expression "(uVar33 >> 0x14)" ( (binary_expression "uVar33 >> 0x14" identifier >> number_literal) )) * number_literal) | (binary_expression "uVar33 >> 0x14" identifier >> number_literal)) )) - (call_expression "(uint)((uVar26 & 0xfffff000) < uVar26)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((uVar26 & 0xfffff000) < uVar26)" ( (binary_expression "(uVar26 & 0xfffff000) < uVar26" (parenthesized_expression "(uVar26 & 0xfffff000)" ( (binary_expression "uVar26 & 0xfffff000" identifier & number_literal) )) < identifier) )))) )) + (cast_expression "(uint)CARRY4(uVar20,uVar34)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(uVar20,uVar34)" identifier (argument_list "(uVar20,uVar34)" ( identifier , identifier ))))) + (call_expression "(uint)(0xffefffff < uVar21)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0xffefffff < uVar21)" ( (binary_expression "0xffefffff < uVar21" number_literal < identifier) ))))) ;) (if_statement "if (iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))\n                      goto LAB_001e6269;" if (parenthesized_expression "(iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000))" ( (binary_expression "iVar22 != 0 || (uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000)" (binary_expression "iVar22 != 0" identifier != number_literal) || (binary_expression "(uint)-iVar22 < (uint)(0x1fffff < uVar21 + 0x100000)" (binary_expression "(uint)-iVar22" (parenthesized_expression "(uint)" ( identifier )) - identifier) < (call_expression "(uint)(0x1fffff < uVar21 + 0x100000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0x1fffff < uVar21 + 0x100000)" ( (binary_expression "0x1fffff < uVar21 + 0x100000" number_literal < (binary_expression "uVar21 + 0x100000" identifier + number_literal)) ))))) )) (goto_statement "goto LAB_001e6269;" goto statement_identifier ;)) (if_statement "if ((uVar24 & 0x1f000000) != 0x10000000) {\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }" if (parenthesized_expression "((uVar24 & 0x1f000000) != 0x10000000)" ( (binary_expression "(uVar24 & 0x1f000000) != 0x10000000" (parenthesized_expression "(uVar24 & 0x1f000000)" ( (binary_expression "uVar24 & 0x1f000000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                        gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }" { comment (labeled_statement "gold::do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");" (call_expression "do_gold_unreachable\n                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm")" identifier (argument_list "("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""aarch64_adr_encode_imm"" " string_content ") ))) ;)) })) (expression_statement "*(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f;" (assignment_expression "*(uint *)(puVar4 + local_b4 + iVar25) =\n                           (uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f" (pointer_expression "*(uint *)(puVar4 + local_b4 + iVar25)" * (cast_expression "(uint *)(puVar4 + local_b4 + iVar25)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar4 + local_b4 + iVar25)" ( (binary_expression "puVar4 + local_b4 + iVar25" (binary_expression "puVar4 + local_b4" identifier + identifier) + identifier) )))) = (binary_expression "(uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0 | uVar24 & 0x1f00001f" (binary_expression "(uVar21 & 3) << 0x1d | uVar21 * 8 & 0xffffe0" (binary_expression "(uVar21 & 3) << 0x1d" (parenthesized_expression "(uVar21 & 3)" ( (binary_expression "uVar21 & 3" identifier & number_literal) )) << number_literal) | (binary_expression "uVar21 * 8 & 0xffffe0" (binary_expression "uVar21 * 8" identifier * number_literal) & number_literal)) | (binary_expression "uVar24 & 0x1f00001f" identifier & number_literal))) ;) }) (else_clause "else if ((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )) {\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }" else (if_statement "if ((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )) {\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }" if (parenthesized_expression "((iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            ))" ( (binary_expression "(iVar25 == 0) ||\n                            ((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )" (parenthesized_expression "(iVar25 == 0)" ( (binary_expression "iVar25 == 0" identifier == number_literal) )) || (parenthesized_expression "((*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040\n                            )" ( (binary_expression "(*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0) != 0xd53bd040" (parenthesized_expression "(*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0)" ( (binary_expression "*(uint *)(puVar4 + local_b4 + iVar25 + -4) & 0xffffffe0" (pointer_expression "*(uint *)(puVar4 + local_b4 + iVar25 + -4)" * (cast_expression "(uint *)(puVar4 + local_b4 + iVar25 + -4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar4 + local_b4 + iVar25 + -4)" ( (binary_expression "puVar4 + local_b4 + iVar25 + -4" (binary_expression "puVar4 + local_b4 + iVar25" (binary_expression "puVar4 + local_b4" identifier + identifier) + identifier) + number_literal) )))) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                      gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");\n                    }" { comment (labeled_statement "gold::do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");" (call_expression "do_gold_unreachable\n                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")" identifier (argument_list "("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""try_fix_erratum_843419_optimized"" " string_content ") ))) ;)) })))) })) (if_statement "if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;" if (parenthesized_expression "(((pSVar28->super_Output_data).field_0x1c & 1) == 0)" ( (binary_expression "((pSVar28->super_Output_data).field_0x1c & 1) == 0" (parenthesized_expression "((pSVar28->super_Output_data).field_0x1c & 1)" ( (binary_expression "(pSVar28->super_Output_data).field_0x1c & 1" (field_expression "(pSVar28->super_Output_data).field_0x1c" (parenthesized_expression "(pSVar28->super_Output_data)" ( (field_expression "pSVar28->super_Output_data" identifier -> field_identifier) )) . field_identifier) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_001e670d;" goto statement_identifier ;)) (expression_statement "iVar25 = (int)(pSVar28->super_Output_data).address_;" (assignment_expression "iVar25 = (int)(pSVar28->super_Output_data).address_" identifier = (cast_expression "(int)(pSVar28->super_Output_data).address_" ( (type_descriptor "int" primitive_type) ) (field_expression "(pSVar28->super_Output_data).address_" (parenthesized_expression "(pSVar28->super_Output_data)" ( (field_expression "pSVar28->super_Output_data" identifier -> field_identifier) )) . field_identifier))) ;) }) (else_clause "else {\n                  if (*(int *)(_Var29 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar24 != uVar20) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                  if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4) =\n                       (iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }" else (compound_statement "{\n                  if (*(int *)(_Var29 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar24 != uVar20) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;\n                  iVar25 = (int)(pSVar28->super_Output_data).address_;\n                  if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4) =\n                       (iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }" { (if_statement "if (*(int *)(_Var29 + 0x10) != 5) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }" if (parenthesized_expression "(*(int *)(_Var29 + 0x10) != 5)" ( (binary_expression "*(int *)(_Var29 + 0x10) != 5" (pointer_expression "*(int *)(_Var29 + 0x10)" * (cast_expression "(int *)(_Var29 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0x10)" ( (binary_expression "_Var29 + 0x10" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x3f8,"update_erratum_insn")" identifier (argument_list "("../../gold/aarch64.cc",0x3f8,"update_erratum_insn")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""update_erratum_insn"" " string_content ") ))) ;)) })) (if_statement "if (uVar24 != uVar20) {\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }" if (parenthesized_expression "(uVar24 != uVar20)" ( (binary_expression "uVar24 != uVar20" identifier != identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x3f5,"update_erratum_insn")" identifier (argument_list "("../../gold/aarch64.cc",0x3f5,"update_erratum_insn")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""update_erratum_insn"" " string_content ") ))) ;)) })) (labeled_statement "LAB_001e6269:\n                  if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;" statement_identifier : (if_statement "if (((pSVar28->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;" if (parenthesized_expression "(((pSVar28->super_Output_data).field_0x1c & 1) == 0)" ( (binary_expression "((pSVar28->super_Output_data).field_0x1c & 1) == 0" (parenthesized_expression "((pSVar28->super_Output_data).field_0x1c & 1)" ( (binary_expression "(pSVar28->super_Output_data).field_0x1c & 1" (field_expression "(pSVar28->super_Output_data).field_0x1c" (parenthesized_expression "(pSVar28->super_Output_data)" ( (field_expression "pSVar28->super_Output_data" identifier -> field_identifier) )) . field_identifier) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_001e670d;" goto statement_identifier ;))) (expression_statement "iVar25 = (int)(pSVar28->super_Output_data).address_;" (assignment_expression "iVar25 = (int)(pSVar28->super_Output_data).address_" identifier = (cast_expression "(int)(pSVar28->super_Output_data).address_" ( (type_descriptor "int" primitive_type) ) (field_expression "(pSVar28->super_Output_data).address_" (parenthesized_expression "(pSVar28->super_Output_data)" ( (field_expression "pSVar28->super_Output_data" identifier -> field_identifier) )) . field_identifier))) ;) (if_statement "if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;" if (parenthesized_expression "(*(int *)(_Var29 + 0xc) == -1)" ( (binary_expression "*(int *)(_Var29 + 0xc) == -1" (pointer_expression "*(int *)(_Var29 + 0xc)" * (cast_expression "(int *)(_Var29 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0xc)" ( (binary_expression "_Var29 + 0xc" identifier + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_001e5d9c;" goto statement_identifier ;)) (expression_statement "*(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4) =\n                       (iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff | 0x14000000;" (assignment_expression "*(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4) =\n                       (iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff | 0x14000000" (pointer_expression "*(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4)" * (cast_expression "(uint *)(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar4 + *(int *)(_Var29 + 0x1c) + local_b4)" ( (binary_expression "puVar4 + *(int *)(_Var29 + 0x1c) + local_b4" (binary_expression "puVar4 + *(int *)(_Var29 + 0x1c)" identifier + (pointer_expression "*(int *)(_Var29 + 0x1c)" * (cast_expression "(int *)(_Var29 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0x1c)" ( (binary_expression "_Var29 + 0x1c" identifier + number_literal) ))))) + identifier) )))) = (binary_expression "(iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff | 0x14000000" (binary_expression "(iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2 & 0x3ffffff" (binary_expression "(iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78) >> 2" (binary_expression "(iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU) +\n                       (*(int *)(_Var29 + 0xc) - local_78)" (parenthesized_expression "(iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU)" ( (binary_expression "iVar25 + 3 + (int)pSVar28->reloc_stubs_size_ & 0xfffffffcU" (binary_expression "iVar25 + 3 + (int)pSVar28->reloc_stubs_size_" (binary_expression "iVar25 + 3" identifier + number_literal) + (cast_expression "(int)pSVar28->reloc_stubs_size_" ( (type_descriptor "int" primitive_type) ) (field_expression "pSVar28->reloc_stubs_size_" identifier -> field_identifier))) & number_literal) )) + (parenthesized_expression "(*(int *)(_Var29 + 0xc) - local_78)" ( (binary_expression "*(int *)(_Var29 + 0xc) - local_78" (pointer_expression "*(int *)(_Var29 + 0xc)" * (cast_expression "(int *)(_Var29 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0xc)" ( (binary_expression "_Var29 + 0xc" identifier + number_literal) )))) - identifier) ))) >> number_literal) & number_literal) | number_literal)) ;) }))) (if_statement "if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }" if (parenthesized_expression "(*(int *)(_Var29 + 0x20) == -1)" ( (binary_expression "*(int *)(_Var29 + 0x20) == -1" (pointer_expression "*(int *)(_Var29 + 0x20)" * (cast_expression "(int *)(_Var29 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0x20)" ( (binary_expression "_Var29 + 0x20" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x663,"relocate_erratum_stub")" identifier (argument_list "("../../gold/aarch64.cc",0x663,"relocate_erratum_stub")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_erratum_stub"" " string_content ") ))) ;)) })) (if_statement "if (*(int *)(_Var29 + 0xc) == -1) goto LAB_001e5d9c;" if (parenthesized_expression "(*(int *)(_Var29 + 0xc) == -1)" ( (binary_expression "*(int *)(_Var29 + 0xc) == -1" (pointer_expression "*(int *)(_Var29 + 0xc)" * (cast_expression "(int *)(_Var29 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0xc)" ( (binary_expression "_Var29 + 0xc" identifier + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_001e5d9c;" goto statement_identifier ;)) (expression_statement "iVar22 = *(int *)(_Var29 + 0xc) +\n                         (iVar25 + (int)pSVar28->reloc_stubs_size_ + 3U & 0xfffffffc);" (assignment_expression "iVar22 = *(int *)(_Var29 + 0xc) +\n                         (iVar25 + (int)pSVar28->reloc_stubs_size_ + 3U & 0xfffffffc)" identifier = (binary_expression "*(int *)(_Var29 + 0xc) +\n                         (iVar25 + (int)pSVar28->reloc_stubs_size_ + 3U & 0xfffffffc)" (pointer_expression "*(int *)(_Var29 + 0xc)" * (cast_expression "(int *)(_Var29 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0xc)" ( (binary_expression "_Var29 + 0xc" identifier + number_literal) )))) + (parenthesized_expression "(iVar25 + (int)pSVar28->reloc_stubs_size_ + 3U & 0xfffffffc)" ( (binary_expression "iVar25 + (int)pSVar28->reloc_stubs_size_ + 3U & 0xfffffffc" (binary_expression "iVar25 + (int)pSVar28->reloc_stubs_size_ + 3U" (binary_expression "iVar25 + (int)pSVar28->reloc_stubs_size_" identifier + (cast_expression "(int)pSVar28->reloc_stubs_size_" ( (type_descriptor "int" primitive_type) ) (field_expression "pSVar28->reloc_stubs_size_" identifier -> field_identifier))) + number_literal) & number_literal) )))) ;) (if_statement "if (1 < *(int *)(_Var29 + 0x10) - 4U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }" if (parenthesized_expression "(1 < *(int *)(_Var29 + 0x10) - 4U)" ( (binary_expression "1 < *(int *)(_Var29 + 0x10) - 4U" number_literal < (binary_expression "*(int *)(_Var29 + 0x10) - 4U" (pointer_expression "*(int *)(_Var29 + 0x10)" * (cast_expression "(int *)(_Var29 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0x10)" ( (binary_expression "_Var29 + 0x10" identifier + number_literal) )))) - number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub")" identifier (argument_list "("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_erratum_stub"" " string_content ") ))) ;)) })) (expression_statement "iVar23 = iVar22 + 4;" (assignment_expression "iVar23 = iVar22 + 4" identifier = (binary_expression "iVar22 + 4" identifier + number_literal)) ;) (expression_statement "*(int *)(puVar4 + (iVar22 - iVar25) + (iVar25 - uVar10)) = *(int *)(_Var29 + 0x20);" (assignment_expression "*(int *)(puVar4 + (iVar22 - iVar25) + (iVar25 - uVar10)) = *(int *)(_Var29 + 0x20)" (pointer_expression "*(int *)(puVar4 + (iVar22 - iVar25) + (iVar25 - uVar10))" * (cast_expression "(int *)(puVar4 + (iVar22 - iVar25) + (iVar25 - uVar10))" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar4 + (iVar22 - iVar25) + (iVar25 - uVar10))" ( (binary_expression "puVar4 + (iVar22 - iVar25) + (iVar25 - uVar10)" (binary_expression "puVar4 + (iVar22 - iVar25)" identifier + (parenthesized_expression "(iVar22 - iVar25)" ( (binary_expression "iVar22 - iVar25" identifier - identifier) ))) + (parenthesized_expression "(iVar25 - uVar10)" ( (binary_expression "iVar25 - uVar10" identifier - identifier) ))) )))) = (pointer_expression "*(int *)(_Var29 + 0x20)" * (cast_expression "(int *)(_Var29 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0x20)" ( (binary_expression "_Var29 + 0x20" identifier + number_literal) ))))) ;) (if_statement "if ((*(uint *)(_Var29 + 8) & *(uint *)(_Var29 + 4)) == 0xffffffff)\n                goto LAB_001e67c7;" if (parenthesized_expression "((*(uint *)(_Var29 + 8) & *(uint *)(_Var29 + 4)) == 0xffffffff)" ( (binary_expression "(*(uint *)(_Var29 + 8) & *(uint *)(_Var29 + 4)) == 0xffffffff" (parenthesized_expression "(*(uint *)(_Var29 + 8) & *(uint *)(_Var29 + 4))" ( (binary_expression "*(uint *)(_Var29 + 8) & *(uint *)(_Var29 + 4)" (pointer_expression "*(uint *)(_Var29 + 8)" * (cast_expression "(uint *)(_Var29 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 8)" ( (binary_expression "_Var29 + 8" identifier + number_literal) )))) & (pointer_expression "*(uint *)(_Var29 + 4)" * (cast_expression "(uint *)(_Var29 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 4)" ( (binary_expression "_Var29 + 4" identifier + number_literal) ))))) )) == number_literal) )) (goto_statement "goto LAB_001e67c7;" goto statement_identifier ;)) (expression_statement "*(uint *)(puVar4 + (iVar23 - iVar25) + (iVar25 - uVar10)) =\n                     *(uint *)(_Var29 + 4) - iVar23 >> 2 & 0x3ffffff | 0x14000000;" (assignment_expression "*(uint *)(puVar4 + (iVar23 - iVar25) + (iVar25 - uVar10)) =\n                     *(uint *)(_Var29 + 4) - iVar23 >> 2 & 0x3ffffff | 0x14000000" (pointer_expression "*(uint *)(puVar4 + (iVar23 - iVar25) + (iVar25 - uVar10))" * (cast_expression "(uint *)(puVar4 + (iVar23 - iVar25) + (iVar25 - uVar10))" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar4 + (iVar23 - iVar25) + (iVar25 - uVar10))" ( (binary_expression "puVar4 + (iVar23 - iVar25) + (iVar25 - uVar10)" (binary_expression "puVar4 + (iVar23 - iVar25)" identifier + (parenthesized_expression "(iVar23 - iVar25)" ( (binary_expression "iVar23 - iVar25" identifier - identifier) ))) + (parenthesized_expression "(iVar25 - uVar10)" ( (binary_expression "iVar25 - uVar10" identifier - identifier) ))) )))) = (binary_expression "*(uint *)(_Var29 + 4) - iVar23 >> 2 & 0x3ffffff | 0x14000000" (binary_expression "*(uint *)(_Var29 + 4) - iVar23 >> 2 & 0x3ffffff" (binary_expression "*(uint *)(_Var29 + 4) - iVar23 >> 2" (binary_expression "*(uint *)(_Var29 + 4) - iVar23" (pointer_expression "*(uint *)(_Var29 + 4)" * (cast_expression "(uint *)(_Var29 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 4)" ( (binary_expression "_Var29 + 4" identifier + number_literal) )))) - identifier) >> number_literal) & number_literal) | number_literal)) ;) (if_statement "if (*(int *)(_Var29 + 0x20) == -1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")\n                  ;\n                }" if (parenthesized_expression "(*(int *)(_Var29 + 0x20) == -1)" ( (binary_expression "*(int *)(_Var29 + 0x20) == -1" (pointer_expression "*(int *)(_Var29 + 0x20)" * (cast_expression "(int *)(_Var29 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0x20)" ( (binary_expression "_Var29 + 0x20" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")\n                  ;\n                }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")\n                  ;" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")\n                  ;" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")" identifier (argument_list "("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""invalidate_erratum_stub"" " string_content ") ))) ;)) })) (expression_statement "*(undefined4 *)(_Var29 + 0x20) = 0xffffffff;" (assignment_expression "*(undefined4 *)(_Var29 + 0x20) = 0xffffffff" (pointer_expression "*(undefined4 *)(_Var29 + 0x20)" * (cast_expression "(undefined4 *)(_Var29 + 0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0x20)" ( (binary_expression "_Var29 + 0x20" identifier + number_literal) )))) = number_literal) ;) (ERROR "local_7c = (_Rb_tree_node_base *)std::" (assignment_expression "local_7c = (_Rb_tree_node_base *)std" identifier = (cast_expression "(_Rb_tree_node_base *)std" ( (type_descriptor "_Rb_tree_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) : :) (expression_statement "_Rb_tree_increment(local_7c);" (call_expression "_Rb_tree_increment(local_7c)" identifier (argument_list "(local_7c)" ( identifier ))) ;) (if_statement "if (local_30 == local_7c) break;" if (parenthesized_expression "(local_30 == local_7c)" ( (binary_expression "local_30 == local_7c" identifier == identifier) )) (break_statement "break;" break ;)) (expression_statement "_Var29 = local_7c[1]._M_color;" (assignment_expression "_Var29 = local_7c[1]._M_color" identifier = (field_expression "local_7c[1]._M_color" (subscript_expression "local_7c[1]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "uVar24 = *(uint *)(_Var29 + 0x1c);" (assignment_expression "uVar24 = *(uint *)(_Var29 + 0x1c)" identifier = (pointer_expression "*(uint *)(_Var29 + 0x1c)" * (cast_expression "(uint *)(_Var29 + 0x1c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0x1c)" ( (binary_expression "_Var29 + 0x1c" identifier + number_literal) ))))) ;) (expression_statement "local_78 = *(uint *)(_Var29 + 0x24);" (assignment_expression "local_78 = *(uint *)(_Var29 + 0x24)" identifier = (pointer_expression "*(uint *)(_Var29 + 0x24)" * (cast_expression "(uint *)(_Var29 + 0x24)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0x24)" ( (binary_expression "_Var29 + 0x24" identifier + number_literal) ))))) ;) (if_statement "if ((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff) goto LAB_001e674b;" if (parenthesized_expression "((local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff)" ( (binary_expression "(local_78 & *(uint *)(_Var29 + 0x28)) == 0xffffffff" (parenthesized_expression "(local_78 & *(uint *)(_Var29 + 0x28))" ( (binary_expression "local_78 & *(uint *)(_Var29 + 0x28)" identifier & (pointer_expression "*(uint *)(_Var29 + 0x28)" * (cast_expression "(uint *)(_Var29 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0x28)" ( (binary_expression "_Var29 + 0x28" identifier + number_literal) ))))) )) == number_literal) )) (goto_statement "goto LAB_001e674b;" goto statement_identifier ;)) (if_statement "if (*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                    local_78 != uVar24 + uVar19) goto LAB_001e6234;" if (parenthesized_expression "(*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                    local_78 != uVar24 + uVar19)" ( (binary_expression "*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19) ||\n                    local_78 != uVar24 + uVar19" (binary_expression "*(uint *)(_Var29 + 0x28) != iVar30 + (uint)CARRY4(uVar24,uVar19)" (pointer_expression "*(uint *)(_Var29 + 0x28)" * (cast_expression "(uint *)(_Var29 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(_Var29 + 0x28)" ( (binary_expression "_Var29 + 0x28" identifier + number_literal) )))) != (binary_expression "iVar30 + (uint)CARRY4(uVar24,uVar19)" identifier + (cast_expression "(uint)CARRY4(uVar24,uVar19)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(uVar24,uVar19)" identifier (argument_list "(uVar24,uVar19)" ( identifier , identifier )))))) || (binary_expression "local_78 != uVar24 + uVar19" identifier != (binary_expression "uVar24 + uVar19" identifier + identifier))) )) (goto_statement "goto LAB_001e6234;" goto statement_identifier ;)) }) while (parenthesized_expression "( true )" ( true )) ;) })) })) (expression_statement "local_5c = (Stub_table<64,_false> *)\n                     ((int)&(local_5c->super_Output_data)._vptr_Output_data + 1);" (assignment_expression "local_5c = (Stub_table<64,_false> *)\n                     ((int)&(local_5c->super_Output_data)._vptr_Output_data + 1)" identifier = (call_expression "(Stub_table<64,_false> *)\n                     ((int)&(local_5c->super_Output_data)._vptr_Output_data + 1)" (parenthesized_expression "(Stub_table<64,_false> *)" ( (comma_expression "Stub_table<64,_false> *" (binary_expression "Stub_table<64" identifier < number_literal) , (binary_expression "_false> *" identifier > (pointer_expression "*" * identifier))) )) (argument_list "((int)&(local_5c->super_Output_data)._vptr_Output_data + 1)" ( (binary_expression "(int)&(local_5c->super_Output_data)._vptr_Output_data + 1" (cast_expression "(int)&(local_5c->super_Output_data)._vptr_Output_data" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(local_5c->super_Output_data)._vptr_Output_data" & (field_expression "(local_5c->super_Output_data)._vptr_Output_data" (parenthesized_expression "(local_5c->super_Output_data)" ( (field_expression "local_5c->super_Output_data" identifier -> field_identifier) )) . field_identifier))) + number_literal) )))) ;) (if_statement "if (local_5c == local_58) {\n            local_58 = *(Stub_table<64,_false> **)&this->field_0x28;\n            goto LAB_001e5adf;\n          }" if (parenthesized_expression "(local_5c == local_58)" ( (binary_expression "local_5c == local_58" identifier == identifier) )) (compound_statement "{\n            local_58 = *(Stub_table<64,_false> **)&this->field_0x28;\n            goto LAB_001e5adf;\n          }" { (expression_statement "local_58 = *(Stub_table<64,_false> **)&this->field_0x28;" (assignment_expression "local_58 = *(Stub_table<64,_false> **)&this->field_0x28" identifier = (binary_expression "*(Stub_table<64,_false> **)&this->field_0x28" (pointer_expression "*(Stub_table<64,_false> **)" * (parenthesized_expression "(Stub_table<64,_false> **)" ( (comma_expression "Stub_table<64,_false> **" (binary_expression "Stub_table<64" identifier < number_literal) , (binary_expression "_false> **" identifier > (pointer_expression "**" * (pointer_expression "*" * identifier)))) ))) & (field_expression "this->field_0x28" identifier -> field_identifier))) ;) (goto_statement "goto LAB_001e5adf;" goto statement_identifier ;) })) (ERROR "ppSVar27 = (this->stub_tables_).\n                     super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::" (comma_expression "ppSVar27 = (this->stub_tables_).\n                     super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std" (binary_expression "ppSVar27 = (this->stub_tables_).\n                     super__Vector_base<(anonymous_namespace)::Stub_table<64" (assignment_expression "ppSVar27 = (this->stub_tables_).\n                     super__Vector_base<(anonymous_namespace)" identifier = (binary_expression "(this->stub_tables_).\n                     super__Vector_base<(anonymous_namespace)" (field_expression "(this->stub_tables_).\n                     super__Vector_base" (parenthesized_expression "(this->stub_tables_)" ( (field_expression "this->stub_tables_" identifier -> field_identifier) )) . field_identifier) < (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Stub_table" : : identifier) < number_literal) , (binary_expression "_false>*,_std" identifier > (pointer_expression "*,_std" * (ERROR "," ,) identifier))) : : (binary_expression "allocator<(anonymous_namespace)" identifier < (parenthesized_expression "(anonymous_namespace)" ( identifier ))) : :) (expression_statement "Stub_table<64,_false>*>_>\n                     ._M_impl._M_start;" (comma_expression "Stub_table<64,_false>*>_>\n                     ._M_impl._M_start" (binary_expression "Stub_table<64" identifier < number_literal) , (field_expression "_false>*>_>\n                     ._M_impl._M_start" (field_expression "_false>*>_>\n                     ._M_impl" (binary_expression "_false>*>_" identifier > (pointer_expression "*>_" * (ERROR ">" >) identifier)) (ERROR ">" >) . field_identifier) . field_identifier)) ;) }) while (parenthesized_expression "(local_5c <\n                 (Stub_table<64,_false> *)\n                 ((int)(this->stub_tables_).\n                       super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                       ._M_impl._M_finish - (int)ppSVar27 >> 2))" ( (binary_expression "local_5c <\n                 (Stub_table<64,_false> *)\n                 ((int)(this->stub_tables_).\n                       super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                       ._M_impl._M_finish - (int)ppSVar27 >> 2))" identifier < (parenthesized_expression "(Stub_table<64,_false> *)\n                 ((int)(this->stub_tables_).\n                       super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                       ._M_impl._M_finish - (int)ppSVar27 >> 2))" ( (comma_expression "Stub_table<64,_false> *)\n                 ((int)(this->stub_tables_).\n                       super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                       ._M_impl._M_finish - (int)ppSVar27 >> 2)" (binary_expression "Stub_table<64" identifier < number_literal) , (binary_expression "_false> *)\n                 ((int)(this->stub_tables_).\n                       super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                       ._M_impl._M_finish - (int)ppSVar27 >> 2)" identifier > (pointer_expression "*)\n                 ((int)(this->stub_tables_).\n                       super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                       ._M_impl._M_finish - (int)ppSVar27 >> 2)" * (ERROR ")" )) (parenthesized_expression "((int)(this->stub_tables_).\n                       super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::Stub_table<64,_false>*>_>\n                       ._M_impl._M_finish - (int)ppSVar27 >> 2)" ( (ERROR "(int)(this->stub_tables_).\n                       super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std::allocator<(anonymous_namespace)::" (comma_expression "(int)(this->stub_tables_).\n                       super__Vector_base<(anonymous_namespace)::Stub_table<64,_false>*,_std" (binary_expression "(int)(this->stub_tables_).\n                       super__Vector_base<(anonymous_namespace)::Stub_table<64" (binary_expression "(int)(this->stub_tables_).\n                       super__Vector_base<(anonymous_namespace)" (cast_expression "(int)(this->stub_tables_).\n                       super__Vector_base" ( (type_descriptor "int" primitive_type) ) (field_expression "(this->stub_tables_).\n                       super__Vector_base" (parenthesized_expression "(this->stub_tables_)" ( (field_expression "this->stub_tables_" identifier -> field_identifier) )) . field_identifier)) < (parenthesized_expression "(anonymous_namespace)" ( identifier ))) (ERROR "::Stub_table" : : identifier) < number_literal) , (binary_expression "_false>*,_std" identifier > (pointer_expression "*,_std" * (ERROR "," ,) identifier))) : : (binary_expression "allocator<(anonymous_namespace)" identifier < (parenthesized_expression "(anonymous_namespace)" ( identifier ))) : :) (comma_expression "Stub_table<64,_false>*>_>\n                       ._M_impl._M_finish - (int)ppSVar27 >> 2" (binary_expression "Stub_table<64" identifier < number_literal) , (binary_expression "_false>*>_>\n                       ._M_impl._M_finish - (int)ppSVar27 >> 2" (binary_expression "_false>*>_>\n                       ._M_impl._M_finish - (int)ppSVar27" (field_expression "_false>*>_>\n                       ._M_impl._M_finish" (field_expression "_false>*>_>\n                       ._M_impl" (binary_expression "_false>*>_" identifier > (pointer_expression "*>_" * (ERROR ">" >) identifier)) (ERROR ">" >) . field_identifier) . field_identifier) - (cast_expression "(int)ppSVar27" ( (type_descriptor "int" primitive_type) ) identifier)) >> number_literal)) ))))) ))) )) ;) })) comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x6f6,"stub_table");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x6f6,"stub_table");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x6f6,"stub_table")" identifier (argument_list "("../../gold/aarch64.cc",0x6f6,"stub_table")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""stub_table"" " string_content ") ))) ;)) })) (labeled_statement "LAB_001e5adf:\n    if (gold::parameters->target_ == (Target *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/parameters.h",0x69,"target");\n    }" statement_identifier : (if_statement "if (gold::parameters->target_ == (Target *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/parameters.h",0x69,"target");\n    }" if (parenthesized_expression "(gold::parameters->target_ == (Target *)0x0)" ( (ERROR "gold::" identifier : :) (binary_expression "parameters->target_ == (Target *)0x0" (field_expression "parameters->target_" identifier -> field_identifier) == (cast_expression "(Target *)0x0" ( (type_descriptor "Target *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/parameters.h",0x69,"target");\n    }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/parameters.h",0x69,"target");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/parameters.h",0x69,"target");" (call_expression "do_gold_unreachable("../../gold/parameters.h",0x69,"target")" identifier (argument_list "("../../gold/parameters.h",0x69,"target")" ( (string_literal ""../../gold/parameters.h"" " string_content ") , number_literal , (string_literal ""target"" " string_content ") ))) ;)) }))) (expression_statement "pTVar2 = gold::parameters->target_->pti_;" (field_expression "pTVar2 = gold::parameters->target_->pti_" (field_expression "pTVar2 = gold::parameters->target_" (assignment_expression "pTVar2 = gold" identifier = identifier) (ERROR "::parameters" : : identifier) -> field_identifier) -> field_identifier) ;) (if_statement "if (((pTVar2->machine_code != EM_AARCH64) || (pTVar2->size != 0x40)) ||\n       (pTVar2->is_big_endian != false)) {\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/aarch64.cc",0xc2e,"current_target");\n    }" if (parenthesized_expression "(((pTVar2->machine_code != EM_AARCH64) || (pTVar2->size != 0x40)) ||\n       (pTVar2->is_big_endian != false))" ( (binary_expression "((pTVar2->machine_code != EM_AARCH64) || (pTVar2->size != 0x40)) ||\n       (pTVar2->is_big_endian != false)" (parenthesized_expression "((pTVar2->machine_code != EM_AARCH64) || (pTVar2->size != 0x40))" ( (binary_expression "(pTVar2->machine_code != EM_AARCH64) || (pTVar2->size != 0x40)" (parenthesized_expression "(pTVar2->machine_code != EM_AARCH64)" ( (binary_expression "pTVar2->machine_code != EM_AARCH64" (field_expression "pTVar2->machine_code" identifier -> field_identifier) != identifier) )) || (parenthesized_expression "(pTVar2->size != 0x40)" ( (binary_expression "pTVar2->size != 0x40" (field_expression "pTVar2->size" identifier -> field_identifier) != number_literal) ))) )) || (parenthesized_expression "(pTVar2->is_big_endian != false)" ( (binary_expression "pTVar2->is_big_endian != false" (field_expression "pTVar2->is_big_endian" identifier -> field_identifier) != false) ))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/aarch64.cc",0xc2e,"current_target");\n    }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0xc2e,"current_target");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0xc2e,"current_target");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0xc2e,"current_target")" identifier (argument_list "("../../gold/aarch64.cc",0xc2e,"current_target")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""current_target"" " string_content ") ))) ;)) })) (if_statement "if ((Stub_table<64,_false> *)0x1 < local_58) {\n      pSVar28 = (Stub_table<64,_false> *)0x1;\n      do {\n        p_Var14 = std::\n                  _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                  ::_M_find_before_node\n                            ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                              *)((uint)pSVar28 ^ (uint)this),(size_type)a64relobj,(key_type *)__k,\n                             end_shndx);\n        if (((((p_Var14 != (__node_base *)0x0) && (p_Var14->_M_nxt != (_Hash_node_base *)0x0)) &&\n             (p_Var3 = p_Var14->_M_nxt[3]._M_nxt, p_Var3 != (_Hash_node_base *)0x0)) &&\n            ((p_Var35 = p_Var3[0xd]._M_nxt, p_Var35 != (_Hash_node_base *)0x0 &&\n             (p_Var3 == p_Var35[8]._M_nxt)))) &&\n           ((p_Var35[0xc]._M_nxt != (_Hash_node_base *)0x0 ||\n            (p_Var35[0x15]._M_nxt != (_Hash_node_base *)0x0)))) {\n          if ((Stub_table<64,_false> *)(*(int *)&this->field_0x3c - *(int *)&this->field_0x38 >> 2)\n              <= pSVar28) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n          }\n          if (*(int *)(*(int *)&this->field_0x38 + (int)pSVar28 * 4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/aarch64.cc",0x889,"do_relocate_sections");\n          }\n          pVVar15 = (pviews->\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                    )._M_impl._M_start + (int)pSVar28;\n          puVar4 = pVVar15->view;\n          if (puVar4 == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/aarch64.cc",0x892,"do_relocate_sections");\n          }\n          if (((uint)p_Var35[7]._M_nxt & 1) == 0) {\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xc5,"address");\n          }\n          p_Var3 = p_Var35[1]._M_nxt;\n          p_Var5 = p_Var35[2]._M_nxt;\n          EVar12 = pVVar15->address;\n          if (((uint)p_Var35[7]._M_nxt & 2) == 0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xcf,"data_size");\n          }\n          p_Var6 = p_Var35[3]._M_nxt;\n          local_ac = p_Var35[0xb]._M_nxt;\n          if (local_ac != (_Hash_node_base *)0x0) {\n            p_Var35 = local_ac[5]._M_nxt;\n            p_Var31 = p_Var35[3]._M_nxt;\n            if (p_Var31 == (_Hash_node_base *)0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/aarch64.cc",0x370,"offset");\n            }\n            do {\n              p_Var7 = p_Var35[4]._M_nxt;\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar30 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar30 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (p_Var6 < p_Var31 + (int)(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                            get_stub_template(int)::singleton)[(int)p_Var7][1]) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub");\n              }\n              p_Var16 = (_Hash_node_base *)((int)&p_Var3->_M_nxt + (int)&p_Var31->_M_nxt);\n              iVar30 = (int)&p_Var5->_M_nxt + (uint)CARRY4((uint)p_Var31,(uint)p_Var3);\n              p_Var7 = p_Var35[4]._M_nxt;\n              puVar32 = (uint *)((int)p_Var31 + (int)p_Var3 + ((int)puVar4 - (int)EVar12));\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              p_Var31 = p_Var35[4]._M_nxt;\n              puVar8 = (&(anonymous_namespace)::Stub_template_repertoire<false>::\n                         get_stub_template(int)::singleton)[(int)p_Var7][1];\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (0 < (int)puVar8) {\n                if (*puVar32 !=\n                    *(uint *)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)[(int)p_Var31]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                puVar17 = (undefined *)0x0;\n                while (puVar17 = puVar17 + 1, puVar8 != puVar17) {\n                  if (puVar32[(int)puVar17] !=\n                      *(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4)) goto LAB_001e68a0;\n                }\n              }\n              pAVar37 = (AArch64_relobj<64,_false> *)p_Var35[2]._M_nxt;\n              p_Var31 = p_Var35 + 1;\n              p_Var7 = p_Var31->_M_nxt;\n              uVar11 = *(uint64_t *)p_Var31;\n              uVar36 = *(uint64_t *)p_Var31;\n              if (((uint)pAVar37 & (uint)p_Var7) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              p_Var35 = p_Var35[4]._M_nxt;\n              if (p_Var35 == (_Hash_node_base *)0x2) {\n                puVar32[2] = (uint)p_Var7;\n                puVar32[3] = (uint)pAVar37;\n              }\n              else if (p_Var35 == (_Hash_node_base *)0x3) {\n                puVar32[4] = (int)(p_Var7 + -1) - (int)p_Var16;\n                puVar32[5] = (int)pAVar37 +\n                             (((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -\n                             (uint)(p_Var7 + -1 < p_Var16));\n              }\n              else {\n                if (p_Var35 != (_Hash_node_base *)0x1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");\n                }\n                iVar30 = (int)pAVar37 +\n                         (-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30);\n                uVar10 = ((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000) >> 0xc;\n                *puVar32 = ((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |\n                           (uVar10 & 3) << 0x1d | *puVar32 & 0x9f00001f;\n                if (1 < iVar30 + 1U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                pAVar9 = aarch64_reloc_property_table->table_[0x15];\n                if (pAVar9 == (AArch64_reloc_property *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");\n                }\n                uVar36 = (*pAVar9->rvalue_bit_select_func_)(uVar36);\n                iVar30 = pAVar9->reloc_inst_ * 0x10;\n                if ((*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1) ||\n                   (uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");\n                }\n                uVar24 = (int)uVar36 << ((byte)uVar10 & 0x1f);\n                if ((uVar10 & 0x20) != 0) {\n                  uVar24 = 0;\n                }\n                puVar32[1] = ~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]\n                             | uVar24;\n                bVar13 = (*pAVar9->rvalue_checkup_func_)(uVar11);\n                a64relobj = pAVar37;\n                if (!bVar13) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = local_ac->_M_nxt;\n              if (local_ac == (_Hash_node_base *)0x0) break;\n              p_Var35 = local_ac[5]._M_nxt;\n              p_Var31 = p_Var35[3]._M_nxt;\n              if (p_Var31 == (_Hash_node_base *)0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        pSVar28 = (Stub_table<64,_false> *)\n                  ((int)&(pSVar28->super_Output_data)._vptr_Output_data + 1);\n      } while (pSVar28 != local_58);\n    }" if (parenthesized_expression "((Stub_table<64,_false> *)0x1 < local_58)" ( (parenthesized_expression "(Stub_table<64,_false> *)0x1 < local_58)" ( (comma_expression "Stub_table<64,_false> *)0x1 < local_58" (binary_expression "Stub_table<64" identifier < number_literal) , (binary_expression "_false> *)0x1 < local_58" (binary_expression "_false> *)0x1" identifier > (pointer_expression "*)0x1" * (ERROR ")" )) number_literal)) < identifier)) )) )) (compound_statement "{\n      pSVar28 = (Stub_table<64,_false> *)0x1;\n      do {\n        p_Var14 = std::\n                  _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                  ::_M_find_before_node\n                            ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                              *)((uint)pSVar28 ^ (uint)this),(size_type)a64relobj,(key_type *)__k,\n                             end_shndx);\n        if (((((p_Var14 != (__node_base *)0x0) && (p_Var14->_M_nxt != (_Hash_node_base *)0x0)) &&\n             (p_Var3 = p_Var14->_M_nxt[3]._M_nxt, p_Var3 != (_Hash_node_base *)0x0)) &&\n            ((p_Var35 = p_Var3[0xd]._M_nxt, p_Var35 != (_Hash_node_base *)0x0 &&\n             (p_Var3 == p_Var35[8]._M_nxt)))) &&\n           ((p_Var35[0xc]._M_nxt != (_Hash_node_base *)0x0 ||\n            (p_Var35[0x15]._M_nxt != (_Hash_node_base *)0x0)))) {\n          if ((Stub_table<64,_false> *)(*(int *)&this->field_0x3c - *(int *)&this->field_0x38 >> 2)\n              <= pSVar28) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n          }\n          if (*(int *)(*(int *)&this->field_0x38 + (int)pSVar28 * 4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/aarch64.cc",0x889,"do_relocate_sections");\n          }\n          pVVar15 = (pviews->\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                    )._M_impl._M_start + (int)pSVar28;\n          puVar4 = pVVar15->view;\n          if (puVar4 == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/aarch64.cc",0x892,"do_relocate_sections");\n          }\n          if (((uint)p_Var35[7]._M_nxt & 1) == 0) {\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xc5,"address");\n          }\n          p_Var3 = p_Var35[1]._M_nxt;\n          p_Var5 = p_Var35[2]._M_nxt;\n          EVar12 = pVVar15->address;\n          if (((uint)p_Var35[7]._M_nxt & 2) == 0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xcf,"data_size");\n          }\n          p_Var6 = p_Var35[3]._M_nxt;\n          local_ac = p_Var35[0xb]._M_nxt;\n          if (local_ac != (_Hash_node_base *)0x0) {\n            p_Var35 = local_ac[5]._M_nxt;\n            p_Var31 = p_Var35[3]._M_nxt;\n            if (p_Var31 == (_Hash_node_base *)0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/aarch64.cc",0x370,"offset");\n            }\n            do {\n              p_Var7 = p_Var35[4]._M_nxt;\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar30 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar30 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (p_Var6 < p_Var31 + (int)(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                            get_stub_template(int)::singleton)[(int)p_Var7][1]) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub");\n              }\n              p_Var16 = (_Hash_node_base *)((int)&p_Var3->_M_nxt + (int)&p_Var31->_M_nxt);\n              iVar30 = (int)&p_Var5->_M_nxt + (uint)CARRY4((uint)p_Var31,(uint)p_Var3);\n              p_Var7 = p_Var35[4]._M_nxt;\n              puVar32 = (uint *)((int)p_Var31 + (int)p_Var3 + ((int)puVar4 - (int)EVar12));\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              p_Var31 = p_Var35[4]._M_nxt;\n              puVar8 = (&(anonymous_namespace)::Stub_template_repertoire<false>::\n                         get_stub_template(int)::singleton)[(int)p_Var7][1];\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (0 < (int)puVar8) {\n                if (*puVar32 !=\n                    *(uint *)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)[(int)p_Var31]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                puVar17 = (undefined *)0x0;\n                while (puVar17 = puVar17 + 1, puVar8 != puVar17) {\n                  if (puVar32[(int)puVar17] !=\n                      *(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4)) goto LAB_001e68a0;\n                }\n              }\n              pAVar37 = (AArch64_relobj<64,_false> *)p_Var35[2]._M_nxt;\n              p_Var31 = p_Var35 + 1;\n              p_Var7 = p_Var31->_M_nxt;\n              uVar11 = *(uint64_t *)p_Var31;\n              uVar36 = *(uint64_t *)p_Var31;\n              if (((uint)pAVar37 & (uint)p_Var7) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              p_Var35 = p_Var35[4]._M_nxt;\n              if (p_Var35 == (_Hash_node_base *)0x2) {\n                puVar32[2] = (uint)p_Var7;\n                puVar32[3] = (uint)pAVar37;\n              }\n              else if (p_Var35 == (_Hash_node_base *)0x3) {\n                puVar32[4] = (int)(p_Var7 + -1) - (int)p_Var16;\n                puVar32[5] = (int)pAVar37 +\n                             (((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -\n                             (uint)(p_Var7 + -1 < p_Var16));\n              }\n              else {\n                if (p_Var35 != (_Hash_node_base *)0x1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");\n                }\n                iVar30 = (int)pAVar37 +\n                         (-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30);\n                uVar10 = ((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000) >> 0xc;\n                *puVar32 = ((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |\n                           (uVar10 & 3) << 0x1d | *puVar32 & 0x9f00001f;\n                if (1 < iVar30 + 1U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                pAVar9 = aarch64_reloc_property_table->table_[0x15];\n                if (pAVar9 == (AArch64_reloc_property *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");\n                }\n                uVar36 = (*pAVar9->rvalue_bit_select_func_)(uVar36);\n                iVar30 = pAVar9->reloc_inst_ * 0x10;\n                if ((*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1) ||\n                   (uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");\n                }\n                uVar24 = (int)uVar36 << ((byte)uVar10 & 0x1f);\n                if ((uVar10 & 0x20) != 0) {\n                  uVar24 = 0;\n                }\n                puVar32[1] = ~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]\n                             | uVar24;\n                bVar13 = (*pAVar9->rvalue_checkup_func_)(uVar11);\n                a64relobj = pAVar37;\n                if (!bVar13) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = local_ac->_M_nxt;\n              if (local_ac == (_Hash_node_base *)0x0) break;\n              p_Var35 = local_ac[5]._M_nxt;\n              p_Var31 = p_Var35[3]._M_nxt;\n              if (p_Var31 == (_Hash_node_base *)0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        pSVar28 = (Stub_table<64,_false> *)\n                  ((int)&(pSVar28->super_Output_data)._vptr_Output_data + 1);\n      } while (pSVar28 != local_58);\n    }" { (expression_statement "pSVar28 = (Stub_table<64,_false> *)0x1;" (assignment_expression "pSVar28 = (Stub_table<64,_false> *)0x1" identifier = (parenthesized_expression "(Stub_table<64,_false> *)0x1" ( (comma_expression "Stub_table<64,_false> *)0x1" (binary_expression "Stub_table<64" identifier < number_literal) , (binary_expression "_false> *)0x1" identifier > (pointer_expression "*)0x1" * (ERROR ")" )) number_literal))) ))) ;) (do_statement "do {\n        p_Var14 = std::\n                  _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                  ::_M_find_before_node\n                            ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                              *)((uint)pSVar28 ^ (uint)this),(size_type)a64relobj,(key_type *)__k,\n                             end_shndx);\n        if (((((p_Var14 != (__node_base *)0x0) && (p_Var14->_M_nxt != (_Hash_node_base *)0x0)) &&\n             (p_Var3 = p_Var14->_M_nxt[3]._M_nxt, p_Var3 != (_Hash_node_base *)0x0)) &&\n            ((p_Var35 = p_Var3[0xd]._M_nxt, p_Var35 != (_Hash_node_base *)0x0 &&\n             (p_Var3 == p_Var35[8]._M_nxt)))) &&\n           ((p_Var35[0xc]._M_nxt != (_Hash_node_base *)0x0 ||\n            (p_Var35[0x15]._M_nxt != (_Hash_node_base *)0x0)))) {\n          if ((Stub_table<64,_false> *)(*(int *)&this->field_0x3c - *(int *)&this->field_0x38 >> 2)\n              <= pSVar28) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n          }\n          if (*(int *)(*(int *)&this->field_0x38 + (int)pSVar28 * 4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/aarch64.cc",0x889,"do_relocate_sections");\n          }\n          pVVar15 = (pviews->\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                    )._M_impl._M_start + (int)pSVar28;\n          puVar4 = pVVar15->view;\n          if (puVar4 == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/aarch64.cc",0x892,"do_relocate_sections");\n          }\n          if (((uint)p_Var35[7]._M_nxt & 1) == 0) {\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xc5,"address");\n          }\n          p_Var3 = p_Var35[1]._M_nxt;\n          p_Var5 = p_Var35[2]._M_nxt;\n          EVar12 = pVVar15->address;\n          if (((uint)p_Var35[7]._M_nxt & 2) == 0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xcf,"data_size");\n          }\n          p_Var6 = p_Var35[3]._M_nxt;\n          local_ac = p_Var35[0xb]._M_nxt;\n          if (local_ac != (_Hash_node_base *)0x0) {\n            p_Var35 = local_ac[5]._M_nxt;\n            p_Var31 = p_Var35[3]._M_nxt;\n            if (p_Var31 == (_Hash_node_base *)0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/aarch64.cc",0x370,"offset");\n            }\n            do {\n              p_Var7 = p_Var35[4]._M_nxt;\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar30 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar30 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (p_Var6 < p_Var31 + (int)(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                            get_stub_template(int)::singleton)[(int)p_Var7][1]) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub");\n              }\n              p_Var16 = (_Hash_node_base *)((int)&p_Var3->_M_nxt + (int)&p_Var31->_M_nxt);\n              iVar30 = (int)&p_Var5->_M_nxt + (uint)CARRY4((uint)p_Var31,(uint)p_Var3);\n              p_Var7 = p_Var35[4]._M_nxt;\n              puVar32 = (uint *)((int)p_Var31 + (int)p_Var3 + ((int)puVar4 - (int)EVar12));\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              p_Var31 = p_Var35[4]._M_nxt;\n              puVar8 = (&(anonymous_namespace)::Stub_template_repertoire<false>::\n                         get_stub_template(int)::singleton)[(int)p_Var7][1];\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (0 < (int)puVar8) {\n                if (*puVar32 !=\n                    *(uint *)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)[(int)p_Var31]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                puVar17 = (undefined *)0x0;\n                while (puVar17 = puVar17 + 1, puVar8 != puVar17) {\n                  if (puVar32[(int)puVar17] !=\n                      *(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4)) goto LAB_001e68a0;\n                }\n              }\n              pAVar37 = (AArch64_relobj<64,_false> *)p_Var35[2]._M_nxt;\n              p_Var31 = p_Var35 + 1;\n              p_Var7 = p_Var31->_M_nxt;\n              uVar11 = *(uint64_t *)p_Var31;\n              uVar36 = *(uint64_t *)p_Var31;\n              if (((uint)pAVar37 & (uint)p_Var7) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              p_Var35 = p_Var35[4]._M_nxt;\n              if (p_Var35 == (_Hash_node_base *)0x2) {\n                puVar32[2] = (uint)p_Var7;\n                puVar32[3] = (uint)pAVar37;\n              }\n              else if (p_Var35 == (_Hash_node_base *)0x3) {\n                puVar32[4] = (int)(p_Var7 + -1) - (int)p_Var16;\n                puVar32[5] = (int)pAVar37 +\n                             (((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -\n                             (uint)(p_Var7 + -1 < p_Var16));\n              }\n              else {\n                if (p_Var35 != (_Hash_node_base *)0x1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");\n                }\n                iVar30 = (int)pAVar37 +\n                         (-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30);\n                uVar10 = ((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000) >> 0xc;\n                *puVar32 = ((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |\n                           (uVar10 & 3) << 0x1d | *puVar32 & 0x9f00001f;\n                if (1 < iVar30 + 1U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                pAVar9 = aarch64_reloc_property_table->table_[0x15];\n                if (pAVar9 == (AArch64_reloc_property *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");\n                }\n                uVar36 = (*pAVar9->rvalue_bit_select_func_)(uVar36);\n                iVar30 = pAVar9->reloc_inst_ * 0x10;\n                if ((*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1) ||\n                   (uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");\n                }\n                uVar24 = (int)uVar36 << ((byte)uVar10 & 0x1f);\n                if ((uVar10 & 0x20) != 0) {\n                  uVar24 = 0;\n                }\n                puVar32[1] = ~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]\n                             | uVar24;\n                bVar13 = (*pAVar9->rvalue_checkup_func_)(uVar11);\n                a64relobj = pAVar37;\n                if (!bVar13) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = local_ac->_M_nxt;\n              if (local_ac == (_Hash_node_base *)0x0) break;\n              p_Var35 = local_ac[5]._M_nxt;\n              p_Var31 = p_Var35[3]._M_nxt;\n              if (p_Var31 == (_Hash_node_base *)0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        pSVar28 = (Stub_table<64,_false> *)\n                  ((int)&(pSVar28->super_Output_data)._vptr_Output_data + 1);\n      } while (pSVar28 != local_58);" do (compound_statement "{\n        p_Var14 = std::\n                  _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                  ::_M_find_before_node\n                            ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                              *)((uint)pSVar28 ^ (uint)this),(size_type)a64relobj,(key_type *)__k,\n                             end_shndx);\n        if (((((p_Var14 != (__node_base *)0x0) && (p_Var14->_M_nxt != (_Hash_node_base *)0x0)) &&\n             (p_Var3 = p_Var14->_M_nxt[3]._M_nxt, p_Var3 != (_Hash_node_base *)0x0)) &&\n            ((p_Var35 = p_Var3[0xd]._M_nxt, p_Var35 != (_Hash_node_base *)0x0 &&\n             (p_Var3 == p_Var35[8]._M_nxt)))) &&\n           ((p_Var35[0xc]._M_nxt != (_Hash_node_base *)0x0 ||\n            (p_Var35[0x15]._M_nxt != (_Hash_node_base *)0x0)))) {\n          if ((Stub_table<64,_false> *)(*(int *)&this->field_0x3c - *(int *)&this->field_0x38 >> 2)\n              <= pSVar28) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n          }\n          if (*(int *)(*(int *)&this->field_0x38 + (int)pSVar28 * 4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/aarch64.cc",0x889,"do_relocate_sections");\n          }\n          pVVar15 = (pviews->\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                    )._M_impl._M_start + (int)pSVar28;\n          puVar4 = pVVar15->view;\n          if (puVar4 == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/aarch64.cc",0x892,"do_relocate_sections");\n          }\n          if (((uint)p_Var35[7]._M_nxt & 1) == 0) {\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xc5,"address");\n          }\n          p_Var3 = p_Var35[1]._M_nxt;\n          p_Var5 = p_Var35[2]._M_nxt;\n          EVar12 = pVVar15->address;\n          if (((uint)p_Var35[7]._M_nxt & 2) == 0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xcf,"data_size");\n          }\n          p_Var6 = p_Var35[3]._M_nxt;\n          local_ac = p_Var35[0xb]._M_nxt;\n          if (local_ac != (_Hash_node_base *)0x0) {\n            p_Var35 = local_ac[5]._M_nxt;\n            p_Var31 = p_Var35[3]._M_nxt;\n            if (p_Var31 == (_Hash_node_base *)0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/aarch64.cc",0x370,"offset");\n            }\n            do {\n              p_Var7 = p_Var35[4]._M_nxt;\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar30 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar30 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (p_Var6 < p_Var31 + (int)(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                            get_stub_template(int)::singleton)[(int)p_Var7][1]) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub");\n              }\n              p_Var16 = (_Hash_node_base *)((int)&p_Var3->_M_nxt + (int)&p_Var31->_M_nxt);\n              iVar30 = (int)&p_Var5->_M_nxt + (uint)CARRY4((uint)p_Var31,(uint)p_Var3);\n              p_Var7 = p_Var35[4]._M_nxt;\n              puVar32 = (uint *)((int)p_Var31 + (int)p_Var3 + ((int)puVar4 - (int)EVar12));\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              p_Var31 = p_Var35[4]._M_nxt;\n              puVar8 = (&(anonymous_namespace)::Stub_template_repertoire<false>::\n                         get_stub_template(int)::singleton)[(int)p_Var7][1];\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (0 < (int)puVar8) {\n                if (*puVar32 !=\n                    *(uint *)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)[(int)p_Var31]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                puVar17 = (undefined *)0x0;\n                while (puVar17 = puVar17 + 1, puVar8 != puVar17) {\n                  if (puVar32[(int)puVar17] !=\n                      *(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4)) goto LAB_001e68a0;\n                }\n              }\n              pAVar37 = (AArch64_relobj<64,_false> *)p_Var35[2]._M_nxt;\n              p_Var31 = p_Var35 + 1;\n              p_Var7 = p_Var31->_M_nxt;\n              uVar11 = *(uint64_t *)p_Var31;\n              uVar36 = *(uint64_t *)p_Var31;\n              if (((uint)pAVar37 & (uint)p_Var7) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              p_Var35 = p_Var35[4]._M_nxt;\n              if (p_Var35 == (_Hash_node_base *)0x2) {\n                puVar32[2] = (uint)p_Var7;\n                puVar32[3] = (uint)pAVar37;\n              }\n              else if (p_Var35 == (_Hash_node_base *)0x3) {\n                puVar32[4] = (int)(p_Var7 + -1) - (int)p_Var16;\n                puVar32[5] = (int)pAVar37 +\n                             (((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -\n                             (uint)(p_Var7 + -1 < p_Var16));\n              }\n              else {\n                if (p_Var35 != (_Hash_node_base *)0x1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");\n                }\n                iVar30 = (int)pAVar37 +\n                         (-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30);\n                uVar10 = ((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000) >> 0xc;\n                *puVar32 = ((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |\n                           (uVar10 & 3) << 0x1d | *puVar32 & 0x9f00001f;\n                if (1 < iVar30 + 1U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                pAVar9 = aarch64_reloc_property_table->table_[0x15];\n                if (pAVar9 == (AArch64_reloc_property *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");\n                }\n                uVar36 = (*pAVar9->rvalue_bit_select_func_)(uVar36);\n                iVar30 = pAVar9->reloc_inst_ * 0x10;\n                if ((*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1) ||\n                   (uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");\n                }\n                uVar24 = (int)uVar36 << ((byte)uVar10 & 0x1f);\n                if ((uVar10 & 0x20) != 0) {\n                  uVar24 = 0;\n                }\n                puVar32[1] = ~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]\n                             | uVar24;\n                bVar13 = (*pAVar9->rvalue_checkup_func_)(uVar11);\n                a64relobj = pAVar37;\n                if (!bVar13) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = local_ac->_M_nxt;\n              if (local_ac == (_Hash_node_base *)0x0) break;\n              p_Var35 = local_ac[5]._M_nxt;\n              p_Var31 = p_Var35[3]._M_nxt;\n              if (p_Var31 == (_Hash_node_base *)0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        pSVar28 = (Stub_table<64,_false> *)\n                  ((int)&(pSVar28->super_Output_data)._vptr_Output_data + 1);\n      }" { (ERROR "p_Var14 = std::\n                  _Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::" (assignment_expression "p_Var14 = std" identifier = identifier) : : (binary_expression "_Hashtable<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>,_std" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>,_(anonymous_namespace)" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > (ERROR "," ,) (call_expression "_(anonymous_namespace)" identifier (argument_list "(anonymous_namespace)" ( identifier )))) : : (comma_expression "AArch64_input_section<64,_false>*>,_std" (binary_expression "AArch64_input_section<64" identifier < number_literal) , (binary_expression "_false>*>,_std" identifier > (pointer_expression "*>,_std" * (ERROR ">," > ,) identifier))) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (binary_expression "Relobj*,_unsigned_int>,_(anonymous_namespace)" (binary_expression "Relobj*,_unsigned_int" identifier * (ERROR "," ,) identifier) > (ERROR "," ,) (call_expression "_(anonymous_namespace)" identifier (argument_list "(anonymous_namespace)" ( identifier )))) : : (comma_expression "AArch64_input_section<64,_false>*>_>,_std" (binary_expression "AArch64_input_section<64" identifier < number_literal) , (binary_expression "_false>*>_>,_std" (binary_expression "_false>*>_" identifier > (pointer_expression "*>_" * (ERROR ">" >) identifier)) > (ERROR "," ,) identifier)) : : (comma_expression "__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold" identifier (ERROR "::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>" : : (comma_expression "_Select1st,_std" identifier , identifier) : : (binary_expression "equal_to<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : identifier * , (binary_expression "_unsigned_int>_" identifier > identifier) >) , identifier) : : (comma_expression "Section_id_hash,_std" identifier , identifier) : :) (labeled_statement "__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                  ::_M_find_before_node\n                            ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                              *)((uint)pSVar28 ^ (uint)this),(size_type)a64relobj,(key_type *)__k,\n                             end_shndx);" statement_identifier (ERROR "::_Mod_range_hashing,_std:" : : (comma_expression "_Mod_range_hashing,_std" identifier , identifier) :) : (labeled_statement "__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                  ::_M_find_before_node\n                            ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                              *)((uint)pSVar28 ^ (uint)this),(size_type)a64relobj,(key_type *)__k,\n                             end_shndx);" statement_identifier (ERROR "::_Default_ranged_hash,_std:" : : (comma_expression "_Default_ranged_hash,_std" identifier , identifier) :) : (labeled_statement "__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                  ::_M_find_before_node\n                            ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                              *)((uint)pSVar28 ^ (uint)this),(size_type)a64relobj,(key_type *)__k,\n                             end_shndx);" statement_identifier (ERROR "::_Prime_rehash_policy,_std:" : : (comma_expression "_Prime_rehash_policy,_std" identifier , identifier) :) : (labeled_statement "__detail::_Hashtable_traits<true,_false,_true>_>\n                  ::_M_find_before_node\n                            ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                              *)((uint)pSVar28 ^ (uint)this),(size_type)a64relobj,(key_type *)__k,\n                             end_shndx);" statement_identifier : (ERROR ":" :) (expression_statement "_Hashtable_traits<true,_false,_true>_>\n                  ::_M_find_before_node\n                            ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                              *)((uint)pSVar28 ^ (uint)this),(size_type)a64relobj,(key_type *)__k,\n                             end_shndx);" (comma_expression "_Hashtable_traits<true,_false,_true>_>\n                  ::_M_find_before_node\n                            ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                              *)((uint)pSVar28 ^ (uint)this),(size_type)a64relobj,(key_type *)__k,\n                             end_shndx)" (binary_expression "_Hashtable_traits<true" identifier < true) , (comma_expression "_false,_true>_>\n                  ::_M_find_before_node\n                            ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                              *)((uint)pSVar28 ^ (uint)this),(size_type)a64relobj,(key_type *)__k,\n                             end_shndx)" identifier , (binary_expression "_true>_>\n                  ::_M_find_before_node\n                            ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                              *)((uint)pSVar28 ^ (uint)this),(size_type)a64relobj,(key_type *)__k,\n                             end_shndx)" (binary_expression "_true>_" identifier > identifier) > (ERROR "::" : :) (call_expression "_M_find_before_node\n                            ((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                              *)((uint)pSVar28 ^ (uint)this),(size_type)a64relobj,(key_type *)__k,\n                             end_shndx)" identifier (argument_list "((_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                              *)((uint)pSVar28 ^ (uint)this),(size_type)a64relobj,(key_type *)__k,\n                             end_shndx)" ( (call_expression "(_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                              *)((uint)pSVar28 ^ (uint)this)" (parenthesized_expression "(_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_false,_true>_>\n                              *)" ( (ERROR "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std::allocator<std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>_>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::Relobj*,_unsigned_int>_>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::" (comma_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64,_false>*>,_std" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)::AArch64_input_section<64" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int>,_(anonymous_namespace)" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold::Relobj*,_unsigned_int" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std::pair<gold" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std::pair<const_std" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int>,_std" (binary_expression "_Hashtable<std::pair<gold::Relobj*,_unsigned_int" (binary_expression "_Hashtable<std::pair<gold" (binary_expression "_Hashtable<std" identifier < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) > (ERROR "," ,) identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::pair" : : identifier) < identifier) (ERROR "::Relobj" : : identifier) * (ERROR "," ,) identifier) > (ERROR "," ,) (call_expression "_(anonymous_namespace)" identifier (argument_list "(anonymous_namespace)" ( identifier )))) (ERROR "::AArch64_input_section" : : identifier) < number_literal) , (binary_expression "_false>*>,_std" identifier > (pointer_expression "*>,_std" * (ERROR ">," > ,) identifier))) : : (binary_expression "allocator<std" identifier < identifier) : : (binary_expression "pair<const_std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (type_descriptor "Relobj*" type_identifier (abstract_pointer_declarator "*" *)) , (binary_expression "_unsigned_int>,_(anonymous_namespace)" identifier > (ERROR "," ,) (call_expression "_(anonymous_namespace)" identifier (argument_list "(anonymous_namespace)" ( identifier )))) : : (comma_expression "AArch64_input_section<64,_false>*>_>,_std" (binary_expression "AArch64_input_section<64" identifier < number_literal) , (binary_expression "_false>*>_>,_std" (binary_expression "_false>*>_" identifier > (pointer_expression "*>_" * (ERROR ">" >) identifier)) > (ERROR "," ,) identifier)) : : identifier : : (comma_expression "_Select1st,_std" identifier , identifier) : : (binary_expression "equal_to<std" identifier < identifier) : : (binary_expression "pair<gold" identifier < identifier) : : (type_descriptor "Relobj*" type_identifier (abstract_pointer_declarator "*" *)) , (binary_expression "_unsigned_int>_>,_gold" (binary_expression "_unsigned_int>_" identifier > identifier) > (ERROR "," ,) identifier) : : (comma_expression "Section_id_hash,_std" identifier , identifier) : : identifier : : (comma_expression "_Mod_range_hashing,_std" identifier , identifier) : : identifier : : (comma_expression "_Default_ranged_hash,_std" identifier , identifier) : : identifier : : (comma_expression "_Prime_rehash_policy,_std" identifier , identifier) : : identifier : :) (comma_expression "_Hashtable_traits<true,_false,_true>_>\n                              *" (binary_expression "_Hashtable_traits<true" identifier < true) , (comma_expression "_false,_true>_>\n                              *" identifier , (binary_expression "_true>_>\n                              *" (binary_expression "_true>_" identifier > identifier) > (pointer_expression "*" * identifier)))) )) (argument_list "((uint)pSVar28 ^ (uint)this)" ( (binary_expression "(uint)pSVar28 ^ (uint)this" (cast_expression "(uint)pSVar28" ( (type_descriptor "uint" type_identifier) ) identifier) ^ (cast_expression "(uint)this" ( (type_descriptor "uint" type_identifier) ) identifier)) ))) , (cast_expression "(size_type)a64relobj" ( (type_descriptor "size_type" type_identifier) ) identifier) , (cast_expression "(key_type *)__k" ( (type_descriptor "key_type *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))))) ;))))) (if_statement "if (((((p_Var14 != (__node_base *)0x0) && (p_Var14->_M_nxt != (_Hash_node_base *)0x0)) &&\n             (p_Var3 = p_Var14->_M_nxt[3]._M_nxt, p_Var3 != (_Hash_node_base *)0x0)) &&\n            ((p_Var35 = p_Var3[0xd]._M_nxt, p_Var35 != (_Hash_node_base *)0x0 &&\n             (p_Var3 == p_Var35[8]._M_nxt)))) &&\n           ((p_Var35[0xc]._M_nxt != (_Hash_node_base *)0x0 ||\n            (p_Var35[0x15]._M_nxt != (_Hash_node_base *)0x0)))) {\n          if ((Stub_table<64,_false> *)(*(int *)&this->field_0x3c - *(int *)&this->field_0x38 >> 2)\n              <= pSVar28) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n          }\n          if (*(int *)(*(int *)&this->field_0x38 + (int)pSVar28 * 4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/aarch64.cc",0x889,"do_relocate_sections");\n          }\n          pVVar15 = (pviews->\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                    )._M_impl._M_start + (int)pSVar28;\n          puVar4 = pVVar15->view;\n          if (puVar4 == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/aarch64.cc",0x892,"do_relocate_sections");\n          }\n          if (((uint)p_Var35[7]._M_nxt & 1) == 0) {\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xc5,"address");\n          }\n          p_Var3 = p_Var35[1]._M_nxt;\n          p_Var5 = p_Var35[2]._M_nxt;\n          EVar12 = pVVar15->address;\n          if (((uint)p_Var35[7]._M_nxt & 2) == 0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xcf,"data_size");\n          }\n          p_Var6 = p_Var35[3]._M_nxt;\n          local_ac = p_Var35[0xb]._M_nxt;\n          if (local_ac != (_Hash_node_base *)0x0) {\n            p_Var35 = local_ac[5]._M_nxt;\n            p_Var31 = p_Var35[3]._M_nxt;\n            if (p_Var31 == (_Hash_node_base *)0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/aarch64.cc",0x370,"offset");\n            }\n            do {\n              p_Var7 = p_Var35[4]._M_nxt;\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar30 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar30 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (p_Var6 < p_Var31 + (int)(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                            get_stub_template(int)::singleton)[(int)p_Var7][1]) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub");\n              }\n              p_Var16 = (_Hash_node_base *)((int)&p_Var3->_M_nxt + (int)&p_Var31->_M_nxt);\n              iVar30 = (int)&p_Var5->_M_nxt + (uint)CARRY4((uint)p_Var31,(uint)p_Var3);\n              p_Var7 = p_Var35[4]._M_nxt;\n              puVar32 = (uint *)((int)p_Var31 + (int)p_Var3 + ((int)puVar4 - (int)EVar12));\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              p_Var31 = p_Var35[4]._M_nxt;\n              puVar8 = (&(anonymous_namespace)::Stub_template_repertoire<false>::\n                         get_stub_template(int)::singleton)[(int)p_Var7][1];\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (0 < (int)puVar8) {\n                if (*puVar32 !=\n                    *(uint *)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)[(int)p_Var31]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                puVar17 = (undefined *)0x0;\n                while (puVar17 = puVar17 + 1, puVar8 != puVar17) {\n                  if (puVar32[(int)puVar17] !=\n                      *(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4)) goto LAB_001e68a0;\n                }\n              }\n              pAVar37 = (AArch64_relobj<64,_false> *)p_Var35[2]._M_nxt;\n              p_Var31 = p_Var35 + 1;\n              p_Var7 = p_Var31->_M_nxt;\n              uVar11 = *(uint64_t *)p_Var31;\n              uVar36 = *(uint64_t *)p_Var31;\n              if (((uint)pAVar37 & (uint)p_Var7) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              p_Var35 = p_Var35[4]._M_nxt;\n              if (p_Var35 == (_Hash_node_base *)0x2) {\n                puVar32[2] = (uint)p_Var7;\n                puVar32[3] = (uint)pAVar37;\n              }\n              else if (p_Var35 == (_Hash_node_base *)0x3) {\n                puVar32[4] = (int)(p_Var7 + -1) - (int)p_Var16;\n                puVar32[5] = (int)pAVar37 +\n                             (((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -\n                             (uint)(p_Var7 + -1 < p_Var16));\n              }\n              else {\n                if (p_Var35 != (_Hash_node_base *)0x1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");\n                }\n                iVar30 = (int)pAVar37 +\n                         (-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30);\n                uVar10 = ((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000) >> 0xc;\n                *puVar32 = ((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |\n                           (uVar10 & 3) << 0x1d | *puVar32 & 0x9f00001f;\n                if (1 < iVar30 + 1U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                pAVar9 = aarch64_reloc_property_table->table_[0x15];\n                if (pAVar9 == (AArch64_reloc_property *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");\n                }\n                uVar36 = (*pAVar9->rvalue_bit_select_func_)(uVar36);\n                iVar30 = pAVar9->reloc_inst_ * 0x10;\n                if ((*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1) ||\n                   (uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");\n                }\n                uVar24 = (int)uVar36 << ((byte)uVar10 & 0x1f);\n                if ((uVar10 & 0x20) != 0) {\n                  uVar24 = 0;\n                }\n                puVar32[1] = ~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]\n                             | uVar24;\n                bVar13 = (*pAVar9->rvalue_checkup_func_)(uVar11);\n                a64relobj = pAVar37;\n                if (!bVar13) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = local_ac->_M_nxt;\n              if (local_ac == (_Hash_node_base *)0x0) break;\n              p_Var35 = local_ac[5]._M_nxt;\n              p_Var31 = p_Var35[3]._M_nxt;\n              if (p_Var31 == (_Hash_node_base *)0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }" if (parenthesized_expression "(((((p_Var14 != (__node_base *)0x0) && (p_Var14->_M_nxt != (_Hash_node_base *)0x0)) &&\n             (p_Var3 = p_Var14->_M_nxt[3]._M_nxt, p_Var3 != (_Hash_node_base *)0x0)) &&\n            ((p_Var35 = p_Var3[0xd]._M_nxt, p_Var35 != (_Hash_node_base *)0x0 &&\n             (p_Var3 == p_Var35[8]._M_nxt)))) &&\n           ((p_Var35[0xc]._M_nxt != (_Hash_node_base *)0x0 ||\n            (p_Var35[0x15]._M_nxt != (_Hash_node_base *)0x0))))" ( (binary_expression "((((p_Var14 != (__node_base *)0x0) && (p_Var14->_M_nxt != (_Hash_node_base *)0x0)) &&\n             (p_Var3 = p_Var14->_M_nxt[3]._M_nxt, p_Var3 != (_Hash_node_base *)0x0)) &&\n            ((p_Var35 = p_Var3[0xd]._M_nxt, p_Var35 != (_Hash_node_base *)0x0 &&\n             (p_Var3 == p_Var35[8]._M_nxt)))) &&\n           ((p_Var35[0xc]._M_nxt != (_Hash_node_base *)0x0 ||\n            (p_Var35[0x15]._M_nxt != (_Hash_node_base *)0x0)))" (parenthesized_expression "((((p_Var14 != (__node_base *)0x0) && (p_Var14->_M_nxt != (_Hash_node_base *)0x0)) &&\n             (p_Var3 = p_Var14->_M_nxt[3]._M_nxt, p_Var3 != (_Hash_node_base *)0x0)) &&\n            ((p_Var35 = p_Var3[0xd]._M_nxt, p_Var35 != (_Hash_node_base *)0x0 &&\n             (p_Var3 == p_Var35[8]._M_nxt))))" ( (binary_expression "(((p_Var14 != (__node_base *)0x0) && (p_Var14->_M_nxt != (_Hash_node_base *)0x0)) &&\n             (p_Var3 = p_Var14->_M_nxt[3]._M_nxt, p_Var3 != (_Hash_node_base *)0x0)) &&\n            ((p_Var35 = p_Var3[0xd]._M_nxt, p_Var35 != (_Hash_node_base *)0x0 &&\n             (p_Var3 == p_Var35[8]._M_nxt)))" (parenthesized_expression "(((p_Var14 != (__node_base *)0x0) && (p_Var14->_M_nxt != (_Hash_node_base *)0x0)) &&\n             (p_Var3 = p_Var14->_M_nxt[3]._M_nxt, p_Var3 != (_Hash_node_base *)0x0))" ( (binary_expression "((p_Var14 != (__node_base *)0x0) && (p_Var14->_M_nxt != (_Hash_node_base *)0x0)) &&\n             (p_Var3 = p_Var14->_M_nxt[3]._M_nxt, p_Var3 != (_Hash_node_base *)0x0)" (parenthesized_expression "((p_Var14 != (__node_base *)0x0) && (p_Var14->_M_nxt != (_Hash_node_base *)0x0))" ( (binary_expression "(p_Var14 != (__node_base *)0x0) && (p_Var14->_M_nxt != (_Hash_node_base *)0x0)" (parenthesized_expression "(p_Var14 != (__node_base *)0x0)" ( (binary_expression "p_Var14 != (__node_base *)0x0" identifier != (cast_expression "(__node_base *)0x0" ( (type_descriptor "__node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(p_Var14->_M_nxt != (_Hash_node_base *)0x0)" ( (binary_expression "p_Var14->_M_nxt != (_Hash_node_base *)0x0" (field_expression "p_Var14->_M_nxt" identifier -> field_identifier) != (cast_expression "(_Hash_node_base *)0x0" ( (type_descriptor "_Hash_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) && (parenthesized_expression "(p_Var3 = p_Var14->_M_nxt[3]._M_nxt, p_Var3 != (_Hash_node_base *)0x0)" ( (comma_expression "p_Var3 = p_Var14->_M_nxt[3]._M_nxt, p_Var3 != (_Hash_node_base *)0x0" (assignment_expression "p_Var3 = p_Var14->_M_nxt[3]._M_nxt" identifier = (field_expression "p_Var14->_M_nxt[3]._M_nxt" (subscript_expression "p_Var14->_M_nxt[3]" (field_expression "p_Var14->_M_nxt" identifier -> field_identifier) [ number_literal ]) . field_identifier)) , (binary_expression "p_Var3 != (_Hash_node_base *)0x0" identifier != (cast_expression "(_Hash_node_base *)0x0" ( (type_descriptor "_Hash_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) && (parenthesized_expression "((p_Var35 = p_Var3[0xd]._M_nxt, p_Var35 != (_Hash_node_base *)0x0 &&\n             (p_Var3 == p_Var35[8]._M_nxt)))" ( (parenthesized_expression "(p_Var35 = p_Var3[0xd]._M_nxt, p_Var35 != (_Hash_node_base *)0x0 &&\n             (p_Var3 == p_Var35[8]._M_nxt))" ( (comma_expression "p_Var35 = p_Var3[0xd]._M_nxt, p_Var35 != (_Hash_node_base *)0x0 &&\n             (p_Var3 == p_Var35[8]._M_nxt)" (assignment_expression "p_Var35 = p_Var3[0xd]._M_nxt" identifier = (field_expression "p_Var3[0xd]._M_nxt" (subscript_expression "p_Var3[0xd]" identifier [ number_literal ]) . field_identifier)) , (binary_expression "p_Var35 != (_Hash_node_base *)0x0 &&\n             (p_Var3 == p_Var35[8]._M_nxt)" (binary_expression "p_Var35 != (_Hash_node_base *)0x0" identifier != (cast_expression "(_Hash_node_base *)0x0" ( (type_descriptor "_Hash_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) && (parenthesized_expression "(p_Var3 == p_Var35[8]._M_nxt)" ( (binary_expression "p_Var3 == p_Var35[8]._M_nxt" identifier == (field_expression "p_Var35[8]._M_nxt" (subscript_expression "p_Var35[8]" identifier [ number_literal ]) . field_identifier)) )))) )) ))) )) && (parenthesized_expression "((p_Var35[0xc]._M_nxt != (_Hash_node_base *)0x0 ||\n            (p_Var35[0x15]._M_nxt != (_Hash_node_base *)0x0)))" ( (parenthesized_expression "(p_Var35[0xc]._M_nxt != (_Hash_node_base *)0x0 ||\n            (p_Var35[0x15]._M_nxt != (_Hash_node_base *)0x0))" ( (binary_expression "p_Var35[0xc]._M_nxt != (_Hash_node_base *)0x0 ||\n            (p_Var35[0x15]._M_nxt != (_Hash_node_base *)0x0)" (binary_expression "p_Var35[0xc]._M_nxt != (_Hash_node_base *)0x0" (field_expression "p_Var35[0xc]._M_nxt" (subscript_expression "p_Var35[0xc]" identifier [ number_literal ]) . field_identifier) != (cast_expression "(_Hash_node_base *)0x0" ( (type_descriptor "_Hash_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "(p_Var35[0x15]._M_nxt != (_Hash_node_base *)0x0)" ( (binary_expression "p_Var35[0x15]._M_nxt != (_Hash_node_base *)0x0" (field_expression "p_Var35[0x15]._M_nxt" (subscript_expression "p_Var35[0x15]" identifier [ number_literal ]) . field_identifier) != (cast_expression "(_Hash_node_base *)0x0" ( (type_descriptor "_Hash_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) ))) )) (compound_statement "{\n          if ((Stub_table<64,_false> *)(*(int *)&this->field_0x3c - *(int *)&this->field_0x38 >> 2)\n              <= pSVar28) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n          }\n          if (*(int *)(*(int *)&this->field_0x38 + (int)pSVar28 * 4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/aarch64.cc",0x889,"do_relocate_sections");\n          }\n          pVVar15 = (pviews->\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                    )._M_impl._M_start + (int)pSVar28;\n          puVar4 = pVVar15->view;\n          if (puVar4 == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/aarch64.cc",0x892,"do_relocate_sections");\n          }\n          if (((uint)p_Var35[7]._M_nxt & 1) == 0) {\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xc5,"address");\n          }\n          p_Var3 = p_Var35[1]._M_nxt;\n          p_Var5 = p_Var35[2]._M_nxt;\n          EVar12 = pVVar15->address;\n          if (((uint)p_Var35[7]._M_nxt & 2) == 0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xcf,"data_size");\n          }\n          p_Var6 = p_Var35[3]._M_nxt;\n          local_ac = p_Var35[0xb]._M_nxt;\n          if (local_ac != (_Hash_node_base *)0x0) {\n            p_Var35 = local_ac[5]._M_nxt;\n            p_Var31 = p_Var35[3]._M_nxt;\n            if (p_Var31 == (_Hash_node_base *)0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/aarch64.cc",0x370,"offset");\n            }\n            do {\n              p_Var7 = p_Var35[4]._M_nxt;\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar30 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar30 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (p_Var6 < p_Var31 + (int)(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                            get_stub_template(int)::singleton)[(int)p_Var7][1]) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub");\n              }\n              p_Var16 = (_Hash_node_base *)((int)&p_Var3->_M_nxt + (int)&p_Var31->_M_nxt);\n              iVar30 = (int)&p_Var5->_M_nxt + (uint)CARRY4((uint)p_Var31,(uint)p_Var3);\n              p_Var7 = p_Var35[4]._M_nxt;\n              puVar32 = (uint *)((int)p_Var31 + (int)p_Var3 + ((int)puVar4 - (int)EVar12));\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              p_Var31 = p_Var35[4]._M_nxt;\n              puVar8 = (&(anonymous_namespace)::Stub_template_repertoire<false>::\n                         get_stub_template(int)::singleton)[(int)p_Var7][1];\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (0 < (int)puVar8) {\n                if (*puVar32 !=\n                    *(uint *)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)[(int)p_Var31]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                puVar17 = (undefined *)0x0;\n                while (puVar17 = puVar17 + 1, puVar8 != puVar17) {\n                  if (puVar32[(int)puVar17] !=\n                      *(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4)) goto LAB_001e68a0;\n                }\n              }\n              pAVar37 = (AArch64_relobj<64,_false> *)p_Var35[2]._M_nxt;\n              p_Var31 = p_Var35 + 1;\n              p_Var7 = p_Var31->_M_nxt;\n              uVar11 = *(uint64_t *)p_Var31;\n              uVar36 = *(uint64_t *)p_Var31;\n              if (((uint)pAVar37 & (uint)p_Var7) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              p_Var35 = p_Var35[4]._M_nxt;\n              if (p_Var35 == (_Hash_node_base *)0x2) {\n                puVar32[2] = (uint)p_Var7;\n                puVar32[3] = (uint)pAVar37;\n              }\n              else if (p_Var35 == (_Hash_node_base *)0x3) {\n                puVar32[4] = (int)(p_Var7 + -1) - (int)p_Var16;\n                puVar32[5] = (int)pAVar37 +\n                             (((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -\n                             (uint)(p_Var7 + -1 < p_Var16));\n              }\n              else {\n                if (p_Var35 != (_Hash_node_base *)0x1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");\n                }\n                iVar30 = (int)pAVar37 +\n                         (-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30);\n                uVar10 = ((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000) >> 0xc;\n                *puVar32 = ((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |\n                           (uVar10 & 3) << 0x1d | *puVar32 & 0x9f00001f;\n                if (1 < iVar30 + 1U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                pAVar9 = aarch64_reloc_property_table->table_[0x15];\n                if (pAVar9 == (AArch64_reloc_property *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");\n                }\n                uVar36 = (*pAVar9->rvalue_bit_select_func_)(uVar36);\n                iVar30 = pAVar9->reloc_inst_ * 0x10;\n                if ((*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1) ||\n                   (uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");\n                }\n                uVar24 = (int)uVar36 << ((byte)uVar10 & 0x1f);\n                if ((uVar10 & 0x20) != 0) {\n                  uVar24 = 0;\n                }\n                puVar32[1] = ~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]\n                             | uVar24;\n                bVar13 = (*pAVar9->rvalue_checkup_func_)(uVar11);\n                a64relobj = pAVar37;\n                if (!bVar13) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = local_ac->_M_nxt;\n              if (local_ac == (_Hash_node_base *)0x0) break;\n              p_Var35 = local_ac[5]._M_nxt;\n              p_Var31 = p_Var35[3]._M_nxt;\n              if (p_Var31 == (_Hash_node_base *)0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }" { (if_statement "if ((Stub_table<64,_false> *)(*(int *)&this->field_0x3c - *(int *)&this->field_0x38 >> 2)\n              <= pSVar28) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n          }" if (parenthesized_expression "((Stub_table<64,_false> *)(*(int *)&this->field_0x3c - *(int *)&this->field_0x38 >> 2)\n              <= pSVar28)" ( (binary_expression "(Stub_table<64,_false> *)(*(int *)&this->field_0x3c - *(int *)&this->field_0x38 >> 2)\n              <= pSVar28" (call_expression "(Stub_table<64,_false> *)(*(int *)&this->field_0x3c - *(int *)&this->field_0x38 >> 2)" (parenthesized_expression "(Stub_table<64,_false> *)" ( (comma_expression "Stub_table<64,_false> *" (binary_expression "Stub_table<64" identifier < number_literal) , (binary_expression "_false> *" identifier > (pointer_expression "*" * identifier))) )) (argument_list "(*(int *)&this->field_0x3c - *(int *)&this->field_0x38 >> 2)" ( (binary_expression "*(int *)&this->field_0x3c - *(int *)&this->field_0x38 >> 2" (binary_expression "*(int *)&this->field_0x3c - *(int *)&this->field_0x38" (pointer_expression "*(int *)&this->field_0x3c" * (cast_expression "(int *)&this->field_0x3c" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this->field_0x3c" & (field_expression "this->field_0x3c" identifier -> field_identifier)))) - (pointer_expression "*(int *)&this->field_0x38" * (cast_expression "(int *)&this->field_0x38" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this->field_0x38" & (field_expression "this->field_0x38" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");\n          }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section");" (call_expression "do_gold_unreachable("../../gold/object.h",0x5c8,"do_output_section")" identifier (argument_list "("../../gold/object.h",0x5c8,"do_output_section")" ( (string_literal ""../../gold/object.h"" " string_content ") , number_literal , (string_literal ""do_output_section"" " string_content ") ))) ;)) })) (if_statement "if (*(int *)(*(int *)&this->field_0x38 + (int)pSVar28 * 4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/aarch64.cc",0x889,"do_relocate_sections");\n          }" if (parenthesized_expression "(*(int *)(*(int *)&this->field_0x38 + (int)pSVar28 * 4) == 0)" ( (binary_expression "*(int *)(*(int *)&this->field_0x38 + (int)pSVar28 * 4) == 0" (pointer_expression "*(int *)(*(int *)&this->field_0x38 + (int)pSVar28 * 4)" * (cast_expression "(int *)(*(int *)&this->field_0x38 + (int)pSVar28 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&this->field_0x38 + (int)pSVar28 * 4)" ( (binary_expression "*(int *)&this->field_0x38 + (int)pSVar28 * 4" (pointer_expression "*(int *)&this->field_0x38" * (cast_expression "(int *)&this->field_0x38" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this->field_0x38" & (field_expression "this->field_0x38" identifier -> field_identifier)))) + (binary_expression "(int)pSVar28 * 4" (cast_expression "(int)pSVar28" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )))) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/aarch64.cc",0x889,"do_relocate_sections");\n          }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x889,"do_relocate_sections");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x889,"do_relocate_sections");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x889,"do_relocate_sections")" identifier (argument_list "("../../gold/aarch64.cc",0x889,"do_relocate_sections")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""do_relocate_sections"" " string_content ") ))) ;)) })) (expression_statement "pVVar15 = (pviews->\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                    )._M_impl._M_start + (int)pSVar28;" (assignment_expression "pVVar15 = (pviews->\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                    )._M_impl._M_start + (int)pSVar28" identifier = (binary_expression "(pviews->\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                    )._M_impl._M_start + (int)pSVar28" (field_expression "(pviews->\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                    )._M_impl._M_start" (field_expression "(pviews->\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                    )._M_impl" (parenthesized_expression "(pviews->\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::Sized_relobj_file<64,_false>::View_size>_>\n                    )" ( (ERROR "pviews->\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std::allocator<gold::" (comma_expression "pviews->\n                    super__Vector_base<gold::Sized_relobj_file<64,_false>::View_size,_std" (binary_expression "pviews->\n                    super__Vector_base<gold::Sized_relobj_file<64" (binary_expression "pviews->\n                    super__Vector_base<gold" (field_expression "pviews->\n                    super__Vector_base" identifier -> field_identifier) < identifier) (ERROR "::Sized_relobj_file" : : identifier) < number_literal) , (comma_expression "_false>::View_size,_std" (binary_expression "_false>::View_size" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<gold" identifier < identifier) : :) (comma_expression "Sized_relobj_file<64,_false>::View_size>_" (binary_expression "Sized_relobj_file<64" identifier < number_literal) , (binary_expression "_false>::View_size>_" (binary_expression "_false>::View_size" identifier > (ERROR "::" : :) identifier) > identifier)) (ERROR ">" >) )) . field_identifier) . field_identifier) + (cast_expression "(int)pSVar28" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "puVar4 = pVVar15->view;" (assignment_expression "puVar4 = pVVar15->view" identifier = (field_expression "pVVar15->view" identifier -> field_identifier)) ;) (if_statement "if (puVar4 == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/aarch64.cc",0x892,"do_relocate_sections");\n          }" if (parenthesized_expression "(puVar4 == (uchar *)0x0)" ( (binary_expression "puVar4 == (uchar *)0x0" identifier == (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/aarch64.cc",0x892,"do_relocate_sections");\n          }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x892,"do_relocate_sections");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x892,"do_relocate_sections");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x892,"do_relocate_sections")" identifier (argument_list "("../../gold/aarch64.cc",0x892,"do_relocate_sections")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""do_relocate_sections"" " string_content ") ))) ;)) })) (if_statement "if (((uint)p_Var35[7]._M_nxt & 1) == 0) {\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xc5,"address");\n          }" if (parenthesized_expression "(((uint)p_Var35[7]._M_nxt & 1) == 0)" ( (binary_expression "((uint)p_Var35[7]._M_nxt & 1) == 0" (parenthesized_expression "((uint)p_Var35[7]._M_nxt & 1)" ( (binary_expression "(uint)p_Var35[7]._M_nxt & 1" (cast_expression "(uint)p_Var35[7]._M_nxt" ( (type_descriptor "uint" type_identifier) ) (field_expression "p_Var35[7]._M_nxt" (subscript_expression "p_Var35[7]" identifier [ number_literal ]) . field_identifier)) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xc5,"address");\n          }" { (labeled_statement "LAB_001e670d:\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xc5,"address");" statement_identifier : comment (labeled_statement "gold::do_gold_unreachable("../../gold/output.h",0xc5,"address");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/output.h",0xc5,"address");" (call_expression "do_gold_unreachable("../../gold/output.h",0xc5,"address")" identifier (argument_list "("../../gold/output.h",0xc5,"address")" ( (string_literal ""../../gold/output.h"" " string_content ") , number_literal , (string_literal ""address"" " string_content ") ))) ;))) })) (expression_statement "p_Var3 = p_Var35[1]._M_nxt;" (assignment_expression "p_Var3 = p_Var35[1]._M_nxt" identifier = (field_expression "p_Var35[1]._M_nxt" (subscript_expression "p_Var35[1]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "p_Var5 = p_Var35[2]._M_nxt;" (assignment_expression "p_Var5 = p_Var35[2]._M_nxt" identifier = (field_expression "p_Var35[2]._M_nxt" (subscript_expression "p_Var35[2]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "EVar12 = pVVar15->address;" (assignment_expression "EVar12 = pVVar15->address" identifier = (field_expression "pVVar15->address" identifier -> field_identifier)) ;) (if_statement "if (((uint)p_Var35[7]._M_nxt & 2) == 0) {\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xcf,"data_size");\n          }" if (parenthesized_expression "(((uint)p_Var35[7]._M_nxt & 2) == 0)" ( (binary_expression "((uint)p_Var35[7]._M_nxt & 2) == 0" (parenthesized_expression "((uint)p_Var35[7]._M_nxt & 2)" ( (binary_expression "(uint)p_Var35[7]._M_nxt & 2" (cast_expression "(uint)p_Var35[7]._M_nxt" ( (type_descriptor "uint" type_identifier) ) (field_expression "p_Var35[7]._M_nxt" (subscript_expression "p_Var35[7]" identifier [ number_literal ]) . field_identifier)) & number_literal) )) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n            gold::do_gold_unreachable("../../gold/output.h",0xcf,"data_size");\n          }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/output.h",0xcf,"data_size");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/output.h",0xcf,"data_size");" (call_expression "do_gold_unreachable("../../gold/output.h",0xcf,"data_size")" identifier (argument_list "("../../gold/output.h",0xcf,"data_size")" ( (string_literal ""../../gold/output.h"" " string_content ") , number_literal , (string_literal ""data_size"" " string_content ") ))) ;)) })) (expression_statement "p_Var6 = p_Var35[3]._M_nxt;" (assignment_expression "p_Var6 = p_Var35[3]._M_nxt" identifier = (field_expression "p_Var35[3]._M_nxt" (subscript_expression "p_Var35[3]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "local_ac = p_Var35[0xb]._M_nxt;" (assignment_expression "local_ac = p_Var35[0xb]._M_nxt" identifier = (field_expression "p_Var35[0xb]._M_nxt" (subscript_expression "p_Var35[0xb]" identifier [ number_literal ]) . field_identifier)) ;) (if_statement "if (local_ac != (_Hash_node_base *)0x0) {\n            p_Var35 = local_ac[5]._M_nxt;\n            p_Var31 = p_Var35[3]._M_nxt;\n            if (p_Var31 == (_Hash_node_base *)0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/aarch64.cc",0x370,"offset");\n            }\n            do {\n              p_Var7 = p_Var35[4]._M_nxt;\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar30 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar30 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (p_Var6 < p_Var31 + (int)(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                            get_stub_template(int)::singleton)[(int)p_Var7][1]) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub");\n              }\n              p_Var16 = (_Hash_node_base *)((int)&p_Var3->_M_nxt + (int)&p_Var31->_M_nxt);\n              iVar30 = (int)&p_Var5->_M_nxt + (uint)CARRY4((uint)p_Var31,(uint)p_Var3);\n              p_Var7 = p_Var35[4]._M_nxt;\n              puVar32 = (uint *)((int)p_Var31 + (int)p_Var3 + ((int)puVar4 - (int)EVar12));\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              p_Var31 = p_Var35[4]._M_nxt;\n              puVar8 = (&(anonymous_namespace)::Stub_template_repertoire<false>::\n                         get_stub_template(int)::singleton)[(int)p_Var7][1];\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (0 < (int)puVar8) {\n                if (*puVar32 !=\n                    *(uint *)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)[(int)p_Var31]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                puVar17 = (undefined *)0x0;\n                while (puVar17 = puVar17 + 1, puVar8 != puVar17) {\n                  if (puVar32[(int)puVar17] !=\n                      *(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4)) goto LAB_001e68a0;\n                }\n              }\n              pAVar37 = (AArch64_relobj<64,_false> *)p_Var35[2]._M_nxt;\n              p_Var31 = p_Var35 + 1;\n              p_Var7 = p_Var31->_M_nxt;\n              uVar11 = *(uint64_t *)p_Var31;\n              uVar36 = *(uint64_t *)p_Var31;\n              if (((uint)pAVar37 & (uint)p_Var7) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              p_Var35 = p_Var35[4]._M_nxt;\n              if (p_Var35 == (_Hash_node_base *)0x2) {\n                puVar32[2] = (uint)p_Var7;\n                puVar32[3] = (uint)pAVar37;\n              }\n              else if (p_Var35 == (_Hash_node_base *)0x3) {\n                puVar32[4] = (int)(p_Var7 + -1) - (int)p_Var16;\n                puVar32[5] = (int)pAVar37 +\n                             (((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -\n                             (uint)(p_Var7 + -1 < p_Var16));\n              }\n              else {\n                if (p_Var35 != (_Hash_node_base *)0x1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");\n                }\n                iVar30 = (int)pAVar37 +\n                         (-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30);\n                uVar10 = ((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000) >> 0xc;\n                *puVar32 = ((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |\n                           (uVar10 & 3) << 0x1d | *puVar32 & 0x9f00001f;\n                if (1 < iVar30 + 1U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                pAVar9 = aarch64_reloc_property_table->table_[0x15];\n                if (pAVar9 == (AArch64_reloc_property *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");\n                }\n                uVar36 = (*pAVar9->rvalue_bit_select_func_)(uVar36);\n                iVar30 = pAVar9->reloc_inst_ * 0x10;\n                if ((*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1) ||\n                   (uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");\n                }\n                uVar24 = (int)uVar36 << ((byte)uVar10 & 0x1f);\n                if ((uVar10 & 0x20) != 0) {\n                  uVar24 = 0;\n                }\n                puVar32[1] = ~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]\n                             | uVar24;\n                bVar13 = (*pAVar9->rvalue_checkup_func_)(uVar11);\n                a64relobj = pAVar37;\n                if (!bVar13) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = local_ac->_M_nxt;\n              if (local_ac == (_Hash_node_base *)0x0) break;\n              p_Var35 = local_ac[5]._M_nxt;\n              p_Var31 = p_Var35[3]._M_nxt;\n              if (p_Var31 == (_Hash_node_base *)0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }" if (parenthesized_expression "(local_ac != (_Hash_node_base *)0x0)" ( (binary_expression "local_ac != (_Hash_node_base *)0x0" identifier != (cast_expression "(_Hash_node_base *)0x0" ( (type_descriptor "_Hash_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            p_Var35 = local_ac[5]._M_nxt;\n            p_Var31 = p_Var35[3]._M_nxt;\n            if (p_Var31 == (_Hash_node_base *)0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/aarch64.cc",0x370,"offset");\n            }\n            do {\n              p_Var7 = p_Var35[4]._M_nxt;\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar30 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar30 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (p_Var6 < p_Var31 + (int)(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                            get_stub_template(int)::singleton)[(int)p_Var7][1]) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub");\n              }\n              p_Var16 = (_Hash_node_base *)((int)&p_Var3->_M_nxt + (int)&p_Var31->_M_nxt);\n              iVar30 = (int)&p_Var5->_M_nxt + (uint)CARRY4((uint)p_Var31,(uint)p_Var3);\n              p_Var7 = p_Var35[4]._M_nxt;\n              puVar32 = (uint *)((int)p_Var31 + (int)p_Var3 + ((int)puVar4 - (int)EVar12));\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              p_Var31 = p_Var35[4]._M_nxt;\n              puVar8 = (&(anonymous_namespace)::Stub_template_repertoire<false>::\n                         get_stub_template(int)::singleton)[(int)p_Var7][1];\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (0 < (int)puVar8) {\n                if (*puVar32 !=\n                    *(uint *)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)[(int)p_Var31]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                puVar17 = (undefined *)0x0;\n                while (puVar17 = puVar17 + 1, puVar8 != puVar17) {\n                  if (puVar32[(int)puVar17] !=\n                      *(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4)) goto LAB_001e68a0;\n                }\n              }\n              pAVar37 = (AArch64_relobj<64,_false> *)p_Var35[2]._M_nxt;\n              p_Var31 = p_Var35 + 1;\n              p_Var7 = p_Var31->_M_nxt;\n              uVar11 = *(uint64_t *)p_Var31;\n              uVar36 = *(uint64_t *)p_Var31;\n              if (((uint)pAVar37 & (uint)p_Var7) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              p_Var35 = p_Var35[4]._M_nxt;\n              if (p_Var35 == (_Hash_node_base *)0x2) {\n                puVar32[2] = (uint)p_Var7;\n                puVar32[3] = (uint)pAVar37;\n              }\n              else if (p_Var35 == (_Hash_node_base *)0x3) {\n                puVar32[4] = (int)(p_Var7 + -1) - (int)p_Var16;\n                puVar32[5] = (int)pAVar37 +\n                             (((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -\n                             (uint)(p_Var7 + -1 < p_Var16));\n              }\n              else {\n                if (p_Var35 != (_Hash_node_base *)0x1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");\n                }\n                iVar30 = (int)pAVar37 +\n                         (-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30);\n                uVar10 = ((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000) >> 0xc;\n                *puVar32 = ((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |\n                           (uVar10 & 3) << 0x1d | *puVar32 & 0x9f00001f;\n                if (1 < iVar30 + 1U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                pAVar9 = aarch64_reloc_property_table->table_[0x15];\n                if (pAVar9 == (AArch64_reloc_property *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");\n                }\n                uVar36 = (*pAVar9->rvalue_bit_select_func_)(uVar36);\n                iVar30 = pAVar9->reloc_inst_ * 0x10;\n                if ((*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1) ||\n                   (uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");\n                }\n                uVar24 = (int)uVar36 << ((byte)uVar10 & 0x1f);\n                if ((uVar10 & 0x20) != 0) {\n                  uVar24 = 0;\n                }\n                puVar32[1] = ~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]\n                             | uVar24;\n                bVar13 = (*pAVar9->rvalue_checkup_func_)(uVar11);\n                a64relobj = pAVar37;\n                if (!bVar13) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = local_ac->_M_nxt;\n              if (local_ac == (_Hash_node_base *)0x0) break;\n              p_Var35 = local_ac[5]._M_nxt;\n              p_Var31 = p_Var35[3]._M_nxt;\n              if (p_Var31 == (_Hash_node_base *)0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }" { (expression_statement "p_Var35 = local_ac[5]._M_nxt;" (assignment_expression "p_Var35 = local_ac[5]._M_nxt" identifier = (field_expression "local_ac[5]._M_nxt" (subscript_expression "local_ac[5]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "p_Var31 = p_Var35[3]._M_nxt;" (assignment_expression "p_Var31 = p_Var35[3]._M_nxt" identifier = (field_expression "p_Var35[3]._M_nxt" (subscript_expression "p_Var35[3]" identifier [ number_literal ]) . field_identifier)) ;) (if_statement "if (p_Var31 == (_Hash_node_base *)0xffffffff) {\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/aarch64.cc",0x370,"offset");\n            }" if (parenthesized_expression "(p_Var31 == (_Hash_node_base *)0xffffffff)" ( (binary_expression "p_Var31 == (_Hash_node_base *)0xffffffff" identifier == (cast_expression "(_Hash_node_base *)0xffffffff" ( (type_descriptor "_Hash_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/aarch64.cc",0x370,"offset");\n            }" { (labeled_statement "LAB_001e5d9c:\n                    /* WARNING: Subroutine does not return */\n              gold::do_gold_unreachable("../../gold/aarch64.cc",0x370,"offset");" statement_identifier : comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x370,"offset");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x370,"offset");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x370,"offset")" identifier (argument_list "("../../gold/aarch64.cc",0x370,"offset")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""offset"" " string_content ") ))) ;))) })) (do_statement "do {\n              p_Var7 = p_Var35[4]._M_nxt;\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar30 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar30 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (p_Var6 < p_Var31 + (int)(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                            get_stub_template(int)::singleton)[(int)p_Var7][1]) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub");\n              }\n              p_Var16 = (_Hash_node_base *)((int)&p_Var3->_M_nxt + (int)&p_Var31->_M_nxt);\n              iVar30 = (int)&p_Var5->_M_nxt + (uint)CARRY4((uint)p_Var31,(uint)p_Var3);\n              p_Var7 = p_Var35[4]._M_nxt;\n              puVar32 = (uint *)((int)p_Var31 + (int)p_Var3 + ((int)puVar4 - (int)EVar12));\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              p_Var31 = p_Var35[4]._M_nxt;\n              puVar8 = (&(anonymous_namespace)::Stub_template_repertoire<false>::\n                         get_stub_template(int)::singleton)[(int)p_Var7][1];\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (0 < (int)puVar8) {\n                if (*puVar32 !=\n                    *(uint *)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)[(int)p_Var31]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                puVar17 = (undefined *)0x0;\n                while (puVar17 = puVar17 + 1, puVar8 != puVar17) {\n                  if (puVar32[(int)puVar17] !=\n                      *(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4)) goto LAB_001e68a0;\n                }\n              }\n              pAVar37 = (AArch64_relobj<64,_false> *)p_Var35[2]._M_nxt;\n              p_Var31 = p_Var35 + 1;\n              p_Var7 = p_Var31->_M_nxt;\n              uVar11 = *(uint64_t *)p_Var31;\n              uVar36 = *(uint64_t *)p_Var31;\n              if (((uint)pAVar37 & (uint)p_Var7) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              p_Var35 = p_Var35[4]._M_nxt;\n              if (p_Var35 == (_Hash_node_base *)0x2) {\n                puVar32[2] = (uint)p_Var7;\n                puVar32[3] = (uint)pAVar37;\n              }\n              else if (p_Var35 == (_Hash_node_base *)0x3) {\n                puVar32[4] = (int)(p_Var7 + -1) - (int)p_Var16;\n                puVar32[5] = (int)pAVar37 +\n                             (((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -\n                             (uint)(p_Var7 + -1 < p_Var16));\n              }\n              else {\n                if (p_Var35 != (_Hash_node_base *)0x1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");\n                }\n                iVar30 = (int)pAVar37 +\n                         (-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30);\n                uVar10 = ((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000) >> 0xc;\n                *puVar32 = ((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |\n                           (uVar10 & 3) << 0x1d | *puVar32 & 0x9f00001f;\n                if (1 < iVar30 + 1U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                pAVar9 = aarch64_reloc_property_table->table_[0x15];\n                if (pAVar9 == (AArch64_reloc_property *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");\n                }\n                uVar36 = (*pAVar9->rvalue_bit_select_func_)(uVar36);\n                iVar30 = pAVar9->reloc_inst_ * 0x10;\n                if ((*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1) ||\n                   (uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");\n                }\n                uVar24 = (int)uVar36 << ((byte)uVar10 & 0x1f);\n                if ((uVar10 & 0x20) != 0) {\n                  uVar24 = 0;\n                }\n                puVar32[1] = ~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]\n                             | uVar24;\n                bVar13 = (*pAVar9->rvalue_checkup_func_)(uVar11);\n                a64relobj = pAVar37;\n                if (!bVar13) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = local_ac->_M_nxt;\n              if (local_ac == (_Hash_node_base *)0x0) break;\n              p_Var35 = local_ac[5]._M_nxt;\n              p_Var31 = p_Var35[3]._M_nxt;\n              if (p_Var31 == (_Hash_node_base *)0xffffffff) goto LAB_001e5d9c;\n            } while( true );" do (compound_statement "{\n              p_Var7 = p_Var35[4]._M_nxt;\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar30 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar30 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (p_Var6 < p_Var31 + (int)(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                            get_stub_template(int)::singleton)[(int)p_Var7][1]) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub");\n              }\n              p_Var16 = (_Hash_node_base *)((int)&p_Var3->_M_nxt + (int)&p_Var31->_M_nxt);\n              iVar30 = (int)&p_Var5->_M_nxt + (uint)CARRY4((uint)p_Var31,(uint)p_Var3);\n              p_Var7 = p_Var35[4]._M_nxt;\n              puVar32 = (uint *)((int)p_Var31 + (int)p_Var3 + ((int)puVar4 - (int)EVar12));\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              p_Var31 = p_Var35[4]._M_nxt;\n              puVar8 = (&(anonymous_namespace)::Stub_template_repertoire<false>::\n                         get_stub_template(int)::singleton)[(int)p_Var7][1];\n              if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }\n              if (0 < (int)puVar8) {\n                if (*puVar32 !=\n                    *(uint *)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)[(int)p_Var31]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                puVar17 = (undefined *)0x0;\n                while (puVar17 = puVar17 + 1, puVar8 != puVar17) {\n                  if (puVar32[(int)puVar17] !=\n                      *(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4)) goto LAB_001e68a0;\n                }\n              }\n              pAVar37 = (AArch64_relobj<64,_false> *)p_Var35[2]._M_nxt;\n              p_Var31 = p_Var35 + 1;\n              p_Var7 = p_Var31->_M_nxt;\n              uVar11 = *(uint64_t *)p_Var31;\n              uVar36 = *(uint64_t *)p_Var31;\n              if (((uint)pAVar37 & (uint)p_Var7) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              p_Var35 = p_Var35[4]._M_nxt;\n              if (p_Var35 == (_Hash_node_base *)0x2) {\n                puVar32[2] = (uint)p_Var7;\n                puVar32[3] = (uint)pAVar37;\n              }\n              else if (p_Var35 == (_Hash_node_base *)0x3) {\n                puVar32[4] = (int)(p_Var7 + -1) - (int)p_Var16;\n                puVar32[5] = (int)pAVar37 +\n                             (((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -\n                             (uint)(p_Var7 + -1 < p_Var16));\n              }\n              else {\n                if (p_Var35 != (_Hash_node_base *)0x1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");\n                }\n                iVar30 = (int)pAVar37 +\n                         (-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30);\n                uVar10 = ((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000) >> 0xc;\n                *puVar32 = ((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |\n                           (uVar10 & 3) << 0x1d | *puVar32 & 0x9f00001f;\n                if (1 < iVar30 + 1U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                pAVar9 = aarch64_reloc_property_table->table_[0x15];\n                if (pAVar9 == (AArch64_reloc_property *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");\n                }\n                uVar36 = (*pAVar9->rvalue_bit_select_func_)(uVar36);\n                iVar30 = pAVar9->reloc_inst_ * 0x10;\n                if ((*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1) ||\n                   (uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");\n                }\n                uVar24 = (int)uVar36 << ((byte)uVar10 & 0x1f);\n                if ((uVar10 & 0x20) != 0) {\n                  uVar24 = 0;\n                }\n                puVar32[1] = ~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]\n                             | uVar24;\n                bVar13 = (*pAVar9->rvalue_checkup_func_)(uVar11);\n                a64relobj = pAVar37;\n                if (!bVar13) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = local_ac->_M_nxt;\n              if (local_ac == (_Hash_node_base *)0x0) break;\n              p_Var35 = local_ac[5]._M_nxt;\n              p_Var31 = p_Var35[3]._M_nxt;\n              if (p_Var31 == (_Hash_node_base *)0xffffffff) goto LAB_001e5d9c;\n            }" { (expression_statement "p_Var7 = p_Var35[4]._M_nxt;" (assignment_expression "p_Var7 = p_Var35[4]._M_nxt" identifier = (field_expression "p_Var35[4]._M_nxt" (subscript_expression "p_Var35[4]" identifier [ number_literal ]) . field_identifier)) ;) (if_statement "if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar30 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar30 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }" if (parenthesized_expression "(((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar30 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar30 != 0))" ( (binary_expression "((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar30 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar30 != 0)" (parenthesized_expression "((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0')" ( (ERROR "(anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::" (parenthesized_expression "(anonymous_namespace)" ( identifier )) : : (binary_expression "Stub_template_repertoire<false>::get_stub_template(int)" (binary_expression "Stub_template_repertoire<false" identifier < false) > (ERROR "::" : :) (call_expression "get_stub_template(int)" identifier (argument_list "(int)" ( identifier )))) : :) (binary_expression "singleton == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(iVar30 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar30 != 0)" ( (comma_expression "iVar30 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar30 != 0" (assignment_expression "iVar30 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton)" identifier = (call_expression "__cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton)" identifier (argument_list "(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton)" ( (ERROR "&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::" (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier ))) : : (binary_expression "Stub_template_repertoire<false>::\n                                                get_stub_template(int)" (binary_expression "Stub_template_repertoire<false" identifier < false) > (ERROR "::" : :) (call_expression "get_stub_template(int)" identifier (argument_list "(int)" ( identifier )))) : :) identifier )))) , (binary_expression "iVar30 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }" { (ERROR "(anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::" (parenthesized_expression "(anonymous_namespace)" ( identifier )) : : (binary_expression "Stub_template_repertoire<false>::get_stub_template(int)" (binary_expression "Stub_template_repertoire<false" identifier < false) > (ERROR "::" : :) (call_expression "get_stub_template(int)" identifier (argument_list "(int)" ( identifier )))) : : (assignment_expression "singleton = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) : : (binary_expression "Stub_template_repertoire<false>::\n                             Stub_template_repertoire()" (binary_expression "Stub_template_repertoire<false" identifier < false) > (ERROR "::" : :) (call_expression "Stub_template_repertoire()" identifier (argument_list "()" ( )))) : :) type_identifier ; (expression_statement "DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;" (binary_expression "DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()" (binary_expression "DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false" (assignment_expression "DAT_005eb50c = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Stub_template_repertoire" : : identifier) < false) > (ERROR "::" : :) (call_expression "Stub_template_repertoire()" identifier (argument_list "()" ( )))) (ERROR "::template_ST_ADRP_BRANCH" : : identifier) ;) (expression_statement "DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;" (binary_expression "DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()" (binary_expression "DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false" (assignment_expression "DAT_005eb510 = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Stub_template_repertoire" : : identifier) < false) > (ERROR "::" : :) (call_expression "Stub_template_repertoire()" identifier (argument_list "()" ( )))) (ERROR "::template_ST_LONG_BRANCH_ABS" : : identifier) ;) (expression_statement "DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;" (binary_expression "DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()" (binary_expression "DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false" (assignment_expression "DAT_005eb514 = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Stub_template_repertoire" : : identifier) < false) > (ERROR "::" : :) (call_expression "Stub_template_repertoire()" identifier (argument_list "()" ( )))) (ERROR "::template_ST_LONG_BRANCH_PCREL" : : identifier) ;) (expression_statement "DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;" (binary_expression "DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()" (binary_expression "DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false" (assignment_expression "DAT_005eb518 = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Stub_template_repertoire" : : identifier) < false) > (ERROR "::" : :) (call_expression "Stub_template_repertoire()" identifier (argument_list "()" ( )))) (ERROR "::template_ST_E_843419" : : identifier) ;) (expression_statement "DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;" (binary_expression "DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()" (binary_expression "DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false" (assignment_expression "DAT_005eb51c = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Stub_template_repertoire" : : identifier) < false) > (ERROR "::" : :) (call_expression "Stub_template_repertoire()" identifier (argument_list "()" ( )))) (ERROR "::template_ST_E_835769" : : identifier) ;) (expression_statement "__cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);" (call_expression "__cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton)" identifier (argument_list "(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton)" ( (ERROR "&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::" (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier ))) : : (binary_expression "Stub_template_repertoire<false>::\n                                     get_stub_template(int)" (binary_expression "Stub_template_repertoire<false" identifier < false) > (ERROR "::" : :) (call_expression "get_stub_template(int)" identifier (argument_list "(int)" ( identifier )))) : :) identifier ))) ;) (expression_statement "__k = &__dso_handle;" (assignment_expression "__k = &__dso_handle" identifier = (pointer_expression "&__dso_handle" & identifier)) ;) (labeled_statement "a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;" statement_identifier (ERROR "= (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int):" = ( (comma_expression "AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)" (binary_expression "AArch64_relobj<64" identifier < number_literal) , (binary_expression "_false> *)\n                            &(anonymous_namespace)" identifier > (pointer_expression "*)\n                            &(anonymous_namespace)" * (ERROR ")" )) (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))))) : : (binary_expression "Stub_template_repertoire<false" identifier < false) > : : type_identifier (parenthesized_declarator "(int)" ( identifier )) :) : (expression_statement "singleton;" identifier ;)) (expression_statement "__cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);" (call_expression "__cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire)" identifier (argument_list "(Stub_template_repertoire<false>::~Stub_template_repertoire)" ( (binary_expression "Stub_template_repertoire<false>::~Stub_template_repertoire" (binary_expression "Stub_template_repertoire<false" identifier < false) > (ERROR "::" : :) (unary_expression "~Stub_template_repertoire" ~ identifier)) ))) ;) })) (if_statement "if (p_Var6 < p_Var31 + (int)(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                            get_stub_template(int)::singleton)[(int)p_Var7][1]) {\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub");\n              }" if (parenthesized_expression "(p_Var6 < p_Var31 + (int)(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                            get_stub_template(int)::singleton)[(int)p_Var7][1])" ( (binary_expression "p_Var6 < p_Var31 + (int)(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                            get_stub_template(int)::singleton)[(int)p_Var7][1]" identifier < (binary_expression "p_Var31 + (int)(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                            get_stub_template(int)::singleton)[(int)p_Var7][1]" identifier + (cast_expression "(int)(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                            get_stub_template(int)::singleton)[(int)p_Var7][1]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                            get_stub_template(int)::singleton)[(int)p_Var7][1]" (subscript_expression "(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                            get_stub_template(int)::singleton)[(int)p_Var7]" (parenthesized_expression "(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                            get_stub_template(int)::singleton)" ( (ERROR "&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                            get_stub_template(int)::" (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier ))) : : (binary_expression "Stub_template_repertoire<false>::\n                                            get_stub_template(int)" (binary_expression "Stub_template_repertoire<false" identifier < false) > (ERROR "::" : :) (call_expression "get_stub_template(int)" identifier (argument_list "(int)" ( identifier )))) : :) identifier )) [ (cast_expression "(int)p_Var7" ( (type_descriptor "int" primitive_type) ) identifier) ]) [ number_literal ])))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub");\n              }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub")" identifier (argument_list "("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_reloc_stub"" " string_content ") ))) ;)) })) (expression_statement "p_Var16 = (_Hash_node_base *)((int)&p_Var3->_M_nxt + (int)&p_Var31->_M_nxt);" (assignment_expression "p_Var16 = (_Hash_node_base *)((int)&p_Var3->_M_nxt + (int)&p_Var31->_M_nxt)" identifier = (cast_expression "(_Hash_node_base *)((int)&p_Var3->_M_nxt + (int)&p_Var31->_M_nxt)" ( (type_descriptor "_Hash_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&p_Var3->_M_nxt + (int)&p_Var31->_M_nxt)" ( (binary_expression "(int)&p_Var3->_M_nxt + (int)&p_Var31->_M_nxt" (cast_expression "(int)&p_Var3->_M_nxt" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&p_Var3->_M_nxt" & (field_expression "p_Var3->_M_nxt" identifier -> field_identifier))) + (cast_expression "(int)&p_Var31->_M_nxt" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&p_Var31->_M_nxt" & (field_expression "p_Var31->_M_nxt" identifier -> field_identifier)))) )))) ;) (expression_statement "iVar30 = (int)&p_Var5->_M_nxt + (uint)CARRY4((uint)p_Var31,(uint)p_Var3);" (assignment_expression "iVar30 = (int)&p_Var5->_M_nxt + (uint)CARRY4((uint)p_Var31,(uint)p_Var3)" identifier = (binary_expression "(int)&p_Var5->_M_nxt + (uint)CARRY4((uint)p_Var31,(uint)p_Var3)" (cast_expression "(int)&p_Var5->_M_nxt" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&p_Var5->_M_nxt" & (field_expression "p_Var5->_M_nxt" identifier -> field_identifier))) + (cast_expression "(uint)CARRY4((uint)p_Var31,(uint)p_Var3)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4((uint)p_Var31,(uint)p_Var3)" identifier (argument_list "((uint)p_Var31,(uint)p_Var3)" ( (cast_expression "(uint)p_Var31" ( (type_descriptor "uint" type_identifier) ) identifier) , (cast_expression "(uint)p_Var3" ( (type_descriptor "uint" type_identifier) ) identifier) )))))) ;) (expression_statement "p_Var7 = p_Var35[4]._M_nxt;" (assignment_expression "p_Var7 = p_Var35[4]._M_nxt" identifier = (field_expression "p_Var35[4]._M_nxt" (subscript_expression "p_Var35[4]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "puVar32 = (uint *)((int)p_Var31 + (int)p_Var3 + ((int)puVar4 - (int)EVar12));" (assignment_expression "puVar32 = (uint *)((int)p_Var31 + (int)p_Var3 + ((int)puVar4 - (int)EVar12))" identifier = (cast_expression "(uint *)((int)p_Var31 + (int)p_Var3 + ((int)puVar4 - (int)EVar12))" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)p_Var31 + (int)p_Var3 + ((int)puVar4 - (int)EVar12))" ( (binary_expression "(int)p_Var31 + (int)p_Var3 + ((int)puVar4 - (int)EVar12)" (binary_expression "(int)p_Var31 + (int)p_Var3" (cast_expression "(int)p_Var31" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)p_Var3" ( (type_descriptor "int" primitive_type) ) identifier)) + (parenthesized_expression "((int)puVar4 - (int)EVar12)" ( (binary_expression "(int)puVar4 - (int)EVar12" (cast_expression "(int)puVar4" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)EVar12" ( (type_descriptor "int" primitive_type) ) identifier)) ))) )))) ;) (if_statement "if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }" if (parenthesized_expression "(((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0))" ( (binary_expression "((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)" (parenthesized_expression "((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0')" ( (ERROR "(anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::" (parenthesized_expression "(anonymous_namespace)" ( identifier )) : : (binary_expression "Stub_template_repertoire<false>::get_stub_template(int)" (binary_expression "Stub_template_repertoire<false" identifier < false) > (ERROR "::" : :) (call_expression "get_stub_template(int)" identifier (argument_list "(int)" ( identifier )))) : :) (binary_expression "singleton == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)" ( (comma_expression "iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0" (assignment_expression "iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton)" identifier = (call_expression "__cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton)" identifier (argument_list "(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton)" ( (ERROR "&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::" (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier ))) : : (binary_expression "Stub_template_repertoire<false>::\n                                                get_stub_template(int)" (binary_expression "Stub_template_repertoire<false" identifier < false) > (ERROR "::" : :) (call_expression "get_stub_template(int)" identifier (argument_list "(int)" ( identifier )))) : :) identifier )))) , (binary_expression "iVar25 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }" { (ERROR "(anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::" (parenthesized_expression "(anonymous_namespace)" ( identifier )) : : (binary_expression "Stub_template_repertoire<false>::get_stub_template(int)" (binary_expression "Stub_template_repertoire<false" identifier < false) > (ERROR "::" : :) (call_expression "get_stub_template(int)" identifier (argument_list "(int)" ( identifier )))) : : (assignment_expression "singleton = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) : : (binary_expression "Stub_template_repertoire<false>::\n                             Stub_template_repertoire()" (binary_expression "Stub_template_repertoire<false" identifier < false) > (ERROR "::" : :) (call_expression "Stub_template_repertoire()" identifier (argument_list "()" ( )))) : :) type_identifier ; (expression_statement "DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;" (binary_expression "DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()" (binary_expression "DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false" (assignment_expression "DAT_005eb50c = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Stub_template_repertoire" : : identifier) < false) > (ERROR "::" : :) (call_expression "Stub_template_repertoire()" identifier (argument_list "()" ( )))) (ERROR "::template_ST_ADRP_BRANCH" : : identifier) ;) (expression_statement "DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;" (binary_expression "DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()" (binary_expression "DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false" (assignment_expression "DAT_005eb510 = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Stub_template_repertoire" : : identifier) < false) > (ERROR "::" : :) (call_expression "Stub_template_repertoire()" identifier (argument_list "()" ( )))) (ERROR "::template_ST_LONG_BRANCH_ABS" : : identifier) ;) (expression_statement "DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;" (binary_expression "DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()" (binary_expression "DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false" (assignment_expression "DAT_005eb514 = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Stub_template_repertoire" : : identifier) < false) > (ERROR "::" : :) (call_expression "Stub_template_repertoire()" identifier (argument_list "()" ( )))) (ERROR "::template_ST_LONG_BRANCH_PCREL" : : identifier) ;) (expression_statement "DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;" (binary_expression "DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()" (binary_expression "DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false" (assignment_expression "DAT_005eb518 = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Stub_template_repertoire" : : identifier) < false) > (ERROR "::" : :) (call_expression "Stub_template_repertoire()" identifier (argument_list "()" ( )))) (ERROR "::template_ST_E_843419" : : identifier) ;) (expression_statement "DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;" (binary_expression "DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()" (binary_expression "DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false" (assignment_expression "DAT_005eb51c = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Stub_template_repertoire" : : identifier) < false) > (ERROR "::" : :) (call_expression "Stub_template_repertoire()" identifier (argument_list "()" ( )))) (ERROR "::template_ST_E_835769" : : identifier) ;) (expression_statement "__cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);" (call_expression "__cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton)" identifier (argument_list "(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton)" ( (ERROR "&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::" (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier ))) : : (binary_expression "Stub_template_repertoire<false>::\n                                     get_stub_template(int)" (binary_expression "Stub_template_repertoire<false" identifier < false) > (ERROR "::" : :) (call_expression "get_stub_template(int)" identifier (argument_list "(int)" ( identifier )))) : :) identifier ))) ;) (expression_statement "__k = &__dso_handle;" (assignment_expression "__k = &__dso_handle" identifier = (pointer_expression "&__dso_handle" & identifier)) ;) (labeled_statement "a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;" statement_identifier (ERROR "= (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int):" = ( (comma_expression "AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)" (binary_expression "AArch64_relobj<64" identifier < number_literal) , (binary_expression "_false> *)\n                            &(anonymous_namespace)" identifier > (pointer_expression "*)\n                            &(anonymous_namespace)" * (ERROR ")" )) (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))))) : : (binary_expression "Stub_template_repertoire<false" identifier < false) > : : type_identifier (parenthesized_declarator "(int)" ( identifier )) :) : (expression_statement "singleton;" identifier ;)) (expression_statement "__cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);" (call_expression "__cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire)" identifier (argument_list "(Stub_template_repertoire<false>::~Stub_template_repertoire)" ( (binary_expression "Stub_template_repertoire<false>::~Stub_template_repertoire" (binary_expression "Stub_template_repertoire<false" identifier < false) > (ERROR "::" : :) (unary_expression "~Stub_template_repertoire" ~ identifier)) ))) ;) })) (expression_statement "p_Var31 = p_Var35[4]._M_nxt;" (assignment_expression "p_Var31 = p_Var35[4]._M_nxt" identifier = (field_expression "p_Var35[4]._M_nxt" (subscript_expression "p_Var35[4]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "puVar8 = (&(anonymous_namespace)::Stub_template_repertoire<false>::\n                         get_stub_template(int)::singleton)[(int)p_Var7][1];" (assignment_expression "puVar8 = (&(anonymous_namespace)::Stub_template_repertoire<false>::\n                         get_stub_template(int)::singleton)[(int)p_Var7][1]" identifier = (subscript_expression "(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                         get_stub_template(int)::singleton)[(int)p_Var7][1]" (subscript_expression "(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                         get_stub_template(int)::singleton)[(int)p_Var7]" (parenthesized_expression "(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                         get_stub_template(int)::singleton)" ( (ERROR "&(anonymous_namespace)::Stub_template_repertoire<false>::\n                         get_stub_template(int)::" (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier ))) : : (binary_expression "Stub_template_repertoire<false>::\n                         get_stub_template(int)" (binary_expression "Stub_template_repertoire<false" identifier < false) > (ERROR "::" : :) (call_expression "get_stub_template(int)" identifier (argument_list "(int)" ( identifier )))) : :) identifier )) [ (cast_expression "(int)p_Var7" ( (type_descriptor "int" primitive_type) ) identifier) ]) [ number_literal ])) ;) (if_statement "if (((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)) {\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }" if (parenthesized_expression "(((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0))" ( (binary_expression "((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0') &&\n                 (iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)" (parenthesized_expression "((anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                   singleton == '\0')" ( (ERROR "(anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::" (parenthesized_expression "(anonymous_namespace)" ( identifier )) : : (binary_expression "Stub_template_repertoire<false>::get_stub_template(int)" (binary_expression "Stub_template_repertoire<false" identifier < false) > (ERROR "::" : :) (call_expression "get_stub_template(int)" identifier (argument_list "(int)" ( identifier )))) : :) (binary_expression "singleton == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0)" ( (comma_expression "iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton), iVar25 != 0" (assignment_expression "iVar25 = __cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton)" identifier = (call_expression "__cxa_guard_acquire(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton)" identifier (argument_list "(&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::singleton)" ( (ERROR "&(anonymous_namespace)::\n                                                Stub_template_repertoire<false>::\n                                                get_stub_template(int)::" (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier ))) : : (binary_expression "Stub_template_repertoire<false>::\n                                                get_stub_template(int)" (binary_expression "Stub_template_repertoire<false" identifier < false) > (ERROR "::" : :) (call_expression "get_stub_template(int)" identifier (argument_list "(int)" ( identifier )))) : :) identifier )))) , (binary_expression "iVar25 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n                (anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::template_ST_NONE;\n                DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;\n                DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;\n                DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;\n                DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;\n                DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;\n                __cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);\n                __k = &__dso_handle;\n                a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;\n                __cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);\n              }" { (ERROR "(anonymous_namespace)::Stub_template_repertoire<false>::get_stub_template(int)::\n                singleton = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             Stub_template_repertoire()::" (parenthesized_expression "(anonymous_namespace)" ( identifier )) : : (binary_expression "Stub_template_repertoire<false>::get_stub_template(int)" (binary_expression "Stub_template_repertoire<false" identifier < false) > (ERROR "::" : :) (call_expression "get_stub_template(int)" identifier (argument_list "(int)" ( identifier )))) : : (assignment_expression "singleton = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) : : (binary_expression "Stub_template_repertoire<false>::\n                             Stub_template_repertoire()" (binary_expression "Stub_template_repertoire<false" identifier < false) > (ERROR "::" : :) (call_expression "Stub_template_repertoire()" identifier (argument_list "()" ( )))) : :) type_identifier ; (expression_statement "DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_ADRP_BRANCH;" (binary_expression "DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()" (binary_expression "DAT_005eb50c = &(anonymous_namespace)::Stub_template_repertoire<false" (assignment_expression "DAT_005eb50c = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Stub_template_repertoire" : : identifier) < false) > (ERROR "::" : :) (call_expression "Stub_template_repertoire()" identifier (argument_list "()" ( )))) (ERROR "::template_ST_ADRP_BRANCH" : : identifier) ;) (expression_statement "DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_ABS;" (binary_expression "DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()" (binary_expression "DAT_005eb510 = &(anonymous_namespace)::Stub_template_repertoire<false" (assignment_expression "DAT_005eb510 = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Stub_template_repertoire" : : identifier) < false) > (ERROR "::" : :) (call_expression "Stub_template_repertoire()" identifier (argument_list "()" ( )))) (ERROR "::template_ST_LONG_BRANCH_ABS" : : identifier) ;) (expression_statement "DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_LONG_BRANCH_PCREL;" (binary_expression "DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()" (binary_expression "DAT_005eb514 = &(anonymous_namespace)::Stub_template_repertoire<false" (assignment_expression "DAT_005eb514 = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Stub_template_repertoire" : : identifier) < false) > (ERROR "::" : :) (call_expression "Stub_template_repertoire()" identifier (argument_list "()" ( )))) (ERROR "::template_ST_LONG_BRANCH_PCREL" : : identifier) ;) (expression_statement "DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_843419;" (binary_expression "DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()" (binary_expression "DAT_005eb518 = &(anonymous_namespace)::Stub_template_repertoire<false" (assignment_expression "DAT_005eb518 = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Stub_template_repertoire" : : identifier) < false) > (ERROR "::" : :) (call_expression "Stub_template_repertoire()" identifier (argument_list "()" ( )))) (ERROR "::template_ST_E_843419" : : identifier) ;) (expression_statement "DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()::template_ST_E_835769;" (binary_expression "DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false>::\n                                Stub_template_repertoire()" (binary_expression "DAT_005eb51c = &(anonymous_namespace)::Stub_template_repertoire<false" (assignment_expression "DAT_005eb51c = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Stub_template_repertoire" : : identifier) < false) > (ERROR "::" : :) (call_expression "Stub_template_repertoire()" identifier (argument_list "()" ( )))) (ERROR "::template_ST_E_835769" : : identifier) ;) (expression_statement "__cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton);" (call_expression "__cxa_guard_release(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton)" identifier (argument_list "(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::singleton)" ( (ERROR "&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                     get_stub_template(int)::" (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier ))) : : (binary_expression "Stub_template_repertoire<false>::\n                                     get_stub_template(int)" (binary_expression "Stub_template_repertoire<false" identifier < false) > (ERROR "::" : :) (call_expression "get_stub_template(int)" identifier (argument_list "(int)" ( identifier )))) : :) identifier ))) ;) (expression_statement "__k = &__dso_handle;" (assignment_expression "__k = &__dso_handle" identifier = (pointer_expression "&__dso_handle" & identifier)) ;) (labeled_statement "a64relobj = (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int)::singleton;" statement_identifier (ERROR "= (AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)::Stub_template_repertoire<false>::\n                             get_stub_template(int):" = ( (comma_expression "AArch64_relobj<64,_false> *)\n                            &(anonymous_namespace)" (binary_expression "AArch64_relobj<64" identifier < number_literal) , (binary_expression "_false> *)\n                            &(anonymous_namespace)" identifier > (pointer_expression "*)\n                            &(anonymous_namespace)" * (ERROR ")" )) (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))))) : : (binary_expression "Stub_template_repertoire<false" identifier < false) > : : type_identifier (parenthesized_declarator "(int)" ( identifier )) :) : (expression_statement "singleton;" identifier ;)) (expression_statement "__cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire);" (call_expression "__cxa_atexit(Stub_template_repertoire<false>::~Stub_template_repertoire)" identifier (argument_list "(Stub_template_repertoire<false>::~Stub_template_repertoire)" ( (binary_expression "Stub_template_repertoire<false>::~Stub_template_repertoire" (binary_expression "Stub_template_repertoire<false" identifier < false) > (ERROR "::" : :) (unary_expression "~Stub_template_repertoire" ~ identifier)) ))) ;) })) (if_statement "if (0 < (int)puVar8) {\n                if (*puVar32 !=\n                    *(uint *)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)[(int)p_Var31]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                puVar17 = (undefined *)0x0;\n                while (puVar17 = puVar17 + 1, puVar8 != puVar17) {\n                  if (puVar32[(int)puVar17] !=\n                      *(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4)) goto LAB_001e68a0;\n                }\n              }" if (parenthesized_expression "(0 < (int)puVar8)" ( (binary_expression "0 < (int)puVar8" number_literal < (cast_expression "(int)puVar8" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n                if (*puVar32 !=\n                    *(uint *)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)[(int)p_Var31]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                puVar17 = (undefined *)0x0;\n                while (puVar17 = puVar17 + 1, puVar8 != puVar17) {\n                  if (puVar32[(int)puVar17] !=\n                      *(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4)) goto LAB_001e68a0;\n                }\n              }" { (if_statement "if (*puVar32 !=\n                    *(uint *)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)[(int)p_Var31]) {\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }" if (parenthesized_expression "(*puVar32 !=\n                    *(uint *)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)[(int)p_Var31])" ( (binary_expression "*puVar32 !=\n                    *(uint *)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)[(int)p_Var31]" (pointer_expression "*puVar32" * identifier) != (pointer_expression "*(uint *)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)[(int)p_Var31]" * (cast_expression "(uint *)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)[(int)p_Var31]" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)[(int)p_Var31]" * (subscript_expression "(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)[(int)p_Var31]" (parenthesized_expression "(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::singleton)" ( (ERROR "&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                get_stub_template(int)::" (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier ))) : : (binary_expression "Stub_template_repertoire<false>::\n                                get_stub_template(int)" (binary_expression "Stub_template_repertoire<false" identifier < false) > (ERROR "::" : :) (call_expression "get_stub_template(int)" identifier (argument_list "(int)" ( identifier )))) : :) identifier )) [ (cast_expression "(int)p_Var31" ( (type_descriptor "int" primitive_type) ) identifier) ]))))) )) (compound_statement "{\nLAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }" { (labeled_statement "LAB_001e68a0:\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");" statement_identifier : comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub")" identifier (argument_list "("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_reloc_stub"" " string_content ") ))) ;))) })) (expression_statement "puVar17 = (undefined *)0x0;" (assignment_expression "puVar17 = (undefined *)0x0" identifier = (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (while_statement "while (puVar17 = puVar17 + 1, puVar8 != puVar17) {\n                  if (puVar32[(int)puVar17] !=\n                      *(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4)) goto LAB_001e68a0;\n                }" while (parenthesized_expression "(puVar17 = puVar17 + 1, puVar8 != puVar17)" ( (comma_expression "puVar17 = puVar17 + 1, puVar8 != puVar17" (assignment_expression "puVar17 = puVar17 + 1" identifier = (binary_expression "puVar17 + 1" identifier + number_literal)) , (binary_expression "puVar8 != puVar17" identifier != identifier)) )) (compound_statement "{\n                  if (puVar32[(int)puVar17] !=\n                      *(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4)) goto LAB_001e68a0;\n                }" { (if_statement "if (puVar32[(int)puVar17] !=\n                      *(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4)) goto LAB_001e68a0;" if (parenthesized_expression "(puVar32[(int)puVar17] !=\n                      *(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4))" ( (binary_expression "puVar32[(int)puVar17] !=\n                      *(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4)" (subscript_expression "puVar32[(int)puVar17]" identifier [ (cast_expression "(int)puVar17" ( (type_descriptor "int" primitive_type) ) identifier) ]) != (pointer_expression "*(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4)" * (cast_expression "(uint *)((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4)" ( (binary_expression "(int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31] +\n                               puVar17 * 4" (cast_expression "(int)*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31]" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31]" * (subscript_expression "(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)[(int)p_Var31]" (parenthesized_expression "(&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::singleton)" ( (ERROR "&(anonymous_namespace)::Stub_template_repertoire<false>::\n                                        get_stub_template(int)::" (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier ))) : : (binary_expression "Stub_template_repertoire<false>::\n                                        get_stub_template(int)" (binary_expression "Stub_template_repertoire<false" identifier < false) > (ERROR "::" : :) (call_expression "get_stub_template(int)" identifier (argument_list "(int)" ( identifier )))) : :) identifier )) [ (cast_expression "(int)p_Var31" ( (type_descriptor "int" primitive_type) ) identifier) ]))) + (binary_expression "puVar17 * 4" identifier * number_literal)) ))))) )) (goto_statement "goto LAB_001e68a0;" goto statement_identifier ;)) })) })) (expression_statement "pAVar37 = (AArch64_relobj<64,_false> *)p_Var35[2]._M_nxt;" (assignment_expression "pAVar37 = (AArch64_relobj<64,_false> *)p_Var35[2]._M_nxt" identifier = (parenthesized_expression "(AArch64_relobj<64,_false> *)p_Var35[2]._M_nxt" ( (comma_expression "AArch64_relobj<64,_false> *)p_Var35[2]._M_nxt" (binary_expression "AArch64_relobj<64" identifier < number_literal) , (binary_expression "_false> *)p_Var35[2]._M_nxt" identifier > (pointer_expression "*)p_Var35[2]._M_nxt" * (ERROR ")" )) (field_expression "p_Var35[2]._M_nxt" (subscript_expression "p_Var35[2]" identifier [ number_literal ]) . field_identifier)))) ))) ;) (expression_statement "p_Var31 = p_Var35 + 1;" (assignment_expression "p_Var31 = p_Var35 + 1" identifier = (binary_expression "p_Var35 + 1" identifier + number_literal)) ;) (expression_statement "p_Var7 = p_Var31->_M_nxt;" (assignment_expression "p_Var7 = p_Var31->_M_nxt" identifier = (field_expression "p_Var31->_M_nxt" identifier -> field_identifier)) ;) (expression_statement "uVar11 = *(uint64_t *)p_Var31;" (assignment_expression "uVar11 = *(uint64_t *)p_Var31" identifier = (pointer_expression "*(uint64_t *)p_Var31" * (cast_expression "(uint64_t *)p_Var31" ( (type_descriptor "uint64_t *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar36 = *(uint64_t *)p_Var31;" (assignment_expression "uVar36 = *(uint64_t *)p_Var31" identifier = (pointer_expression "*(uint64_t *)p_Var31" * (cast_expression "(uint64_t *)p_Var31" ( (type_descriptor "uint64_t *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (((uint)pAVar37 & (uint)p_Var7) == 0xffffffff) {\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x359,"destination_address");\n              }" if (parenthesized_expression "(((uint)pAVar37 & (uint)p_Var7) == 0xffffffff)" ( (binary_expression "((uint)pAVar37 & (uint)p_Var7) == 0xffffffff" (parenthesized_expression "((uint)pAVar37 & (uint)p_Var7)" ( (binary_expression "(uint)pAVar37 & (uint)p_Var7" (cast_expression "(uint)pAVar37" ( (type_descriptor "uint" type_identifier) ) identifier) & (cast_expression "(uint)p_Var7" ( (type_descriptor "uint" type_identifier) ) identifier)) )) == number_literal) )) (compound_statement "{\nLAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x359,"destination_address");\n              }" { (labeled_statement "LAB_001e67c7:\n                    /* WARNING: Subroutine does not return */\n                gold::do_gold_unreachable("../../gold/aarch64.cc",0x359,"destination_address");" statement_identifier : comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x359,"destination_address");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x359,"destination_address");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x359,"destination_address")" identifier (argument_list "("../../gold/aarch64.cc",0x359,"destination_address")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""destination_address"" " string_content ") ))) ;))) })) (expression_statement "p_Var35 = p_Var35[4]._M_nxt;" (assignment_expression "p_Var35 = p_Var35[4]._M_nxt" identifier = (field_expression "p_Var35[4]._M_nxt" (subscript_expression "p_Var35[4]" identifier [ number_literal ]) . field_identifier)) ;) (if_statement "if (p_Var35 == (_Hash_node_base *)0x2) {\n                puVar32[2] = (uint)p_Var7;\n                puVar32[3] = (uint)pAVar37;\n              }\n              else if (p_Var35 == (_Hash_node_base *)0x3) {\n                puVar32[4] = (int)(p_Var7 + -1) - (int)p_Var16;\n                puVar32[5] = (int)pAVar37 +\n                             (((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -\n                             (uint)(p_Var7 + -1 < p_Var16));\n              }\n              else {\n                if (p_Var35 != (_Hash_node_base *)0x1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");\n                }\n                iVar30 = (int)pAVar37 +\n                         (-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30);\n                uVar10 = ((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000) >> 0xc;\n                *puVar32 = ((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |\n                           (uVar10 & 3) << 0x1d | *puVar32 & 0x9f00001f;\n                if (1 < iVar30 + 1U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                pAVar9 = aarch64_reloc_property_table->table_[0x15];\n                if (pAVar9 == (AArch64_reloc_property *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");\n                }\n                uVar36 = (*pAVar9->rvalue_bit_select_func_)(uVar36);\n                iVar30 = pAVar9->reloc_inst_ * 0x10;\n                if ((*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1) ||\n                   (uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");\n                }\n                uVar24 = (int)uVar36 << ((byte)uVar10 & 0x1f);\n                if ((uVar10 & 0x20) != 0) {\n                  uVar24 = 0;\n                }\n                puVar32[1] = ~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]\n                             | uVar24;\n                bVar13 = (*pAVar9->rvalue_checkup_func_)(uVar11);\n                a64relobj = pAVar37;\n                if (!bVar13) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }" if (parenthesized_expression "(p_Var35 == (_Hash_node_base *)0x2)" ( (binary_expression "p_Var35 == (_Hash_node_base *)0x2" identifier == (cast_expression "(_Hash_node_base *)0x2" ( (type_descriptor "_Hash_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                puVar32[2] = (uint)p_Var7;\n                puVar32[3] = (uint)pAVar37;\n              }" { (expression_statement "puVar32[2] = (uint)p_Var7;" (assignment_expression "puVar32[2] = (uint)p_Var7" (subscript_expression "puVar32[2]" identifier [ number_literal ]) = (cast_expression "(uint)p_Var7" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "puVar32[3] = (uint)pAVar37;" (assignment_expression "puVar32[3] = (uint)pAVar37" (subscript_expression "puVar32[3]" identifier [ number_literal ]) = (cast_expression "(uint)pAVar37" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) }) (else_clause "else if (p_Var35 == (_Hash_node_base *)0x3) {\n                puVar32[4] = (int)(p_Var7 + -1) - (int)p_Var16;\n                puVar32[5] = (int)pAVar37 +\n                             (((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -\n                             (uint)(p_Var7 + -1 < p_Var16));\n              }\n              else {\n                if (p_Var35 != (_Hash_node_base *)0x1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");\n                }\n                iVar30 = (int)pAVar37 +\n                         (-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30);\n                uVar10 = ((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000) >> 0xc;\n                *puVar32 = ((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |\n                           (uVar10 & 3) << 0x1d | *puVar32 & 0x9f00001f;\n                if (1 < iVar30 + 1U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                pAVar9 = aarch64_reloc_property_table->table_[0x15];\n                if (pAVar9 == (AArch64_reloc_property *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");\n                }\n                uVar36 = (*pAVar9->rvalue_bit_select_func_)(uVar36);\n                iVar30 = pAVar9->reloc_inst_ * 0x10;\n                if ((*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1) ||\n                   (uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");\n                }\n                uVar24 = (int)uVar36 << ((byte)uVar10 & 0x1f);\n                if ((uVar10 & 0x20) != 0) {\n                  uVar24 = 0;\n                }\n                puVar32[1] = ~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]\n                             | uVar24;\n                bVar13 = (*pAVar9->rvalue_checkup_func_)(uVar11);\n                a64relobj = pAVar37;\n                if (!bVar13) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }" else (if_statement "if (p_Var35 == (_Hash_node_base *)0x3) {\n                puVar32[4] = (int)(p_Var7 + -1) - (int)p_Var16;\n                puVar32[5] = (int)pAVar37 +\n                             (((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -\n                             (uint)(p_Var7 + -1 < p_Var16));\n              }\n              else {\n                if (p_Var35 != (_Hash_node_base *)0x1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");\n                }\n                iVar30 = (int)pAVar37 +\n                         (-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30);\n                uVar10 = ((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000) >> 0xc;\n                *puVar32 = ((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |\n                           (uVar10 & 3) << 0x1d | *puVar32 & 0x9f00001f;\n                if (1 < iVar30 + 1U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                pAVar9 = aarch64_reloc_property_table->table_[0x15];\n                if (pAVar9 == (AArch64_reloc_property *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");\n                }\n                uVar36 = (*pAVar9->rvalue_bit_select_func_)(uVar36);\n                iVar30 = pAVar9->reloc_inst_ * 0x10;\n                if ((*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1) ||\n                   (uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");\n                }\n                uVar24 = (int)uVar36 << ((byte)uVar10 & 0x1f);\n                if ((uVar10 & 0x20) != 0) {\n                  uVar24 = 0;\n                }\n                puVar32[1] = ~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]\n                             | uVar24;\n                bVar13 = (*pAVar9->rvalue_checkup_func_)(uVar11);\n                a64relobj = pAVar37;\n                if (!bVar13) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }" if (parenthesized_expression "(p_Var35 == (_Hash_node_base *)0x3)" ( (binary_expression "p_Var35 == (_Hash_node_base *)0x3" identifier == (cast_expression "(_Hash_node_base *)0x3" ( (type_descriptor "_Hash_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                puVar32[4] = (int)(p_Var7 + -1) - (int)p_Var16;\n                puVar32[5] = (int)pAVar37 +\n                             (((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -\n                             (uint)(p_Var7 + -1 < p_Var16));\n              }" { (expression_statement "puVar32[4] = (int)(p_Var7 + -1) - (int)p_Var16;" (assignment_expression "puVar32[4] = (int)(p_Var7 + -1) - (int)p_Var16" (subscript_expression "puVar32[4]" identifier [ number_literal ]) = (binary_expression "(int)(p_Var7 + -1) - (int)p_Var16" (cast_expression "(int)(p_Var7 + -1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(p_Var7 + -1)" ( (binary_expression "p_Var7 + -1" identifier + number_literal) ))) - (cast_expression "(int)p_Var16" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "puVar32[5] = (int)pAVar37 +\n                             (((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -\n                             (uint)(p_Var7 + -1 < p_Var16));" (assignment_expression "puVar32[5] = (int)pAVar37 +\n                             (((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -\n                             (uint)(p_Var7 + -1 < p_Var16))" (subscript_expression "puVar32[5]" identifier [ number_literal ]) = (binary_expression "(int)pAVar37 +\n                             (((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -\n                             (uint)(p_Var7 + -1 < p_Var16))" (cast_expression "(int)pAVar37" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -\n                             (uint)(p_Var7 + -1 < p_Var16))" ( (binary_expression "((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30) -\n                             (uint)(p_Var7 + -1 < p_Var16)" (parenthesized_expression "((((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30)" ( (binary_expression "(((_Hash_node_base *)0x3 < p_Var7) - 1) - iVar30" (parenthesized_expression "(((_Hash_node_base *)0x3 < p_Var7) - 1)" ( (binary_expression "((_Hash_node_base *)0x3 < p_Var7) - 1" (parenthesized_expression "((_Hash_node_base *)0x3 < p_Var7)" ( (binary_expression "(_Hash_node_base *)0x3 < p_Var7" (cast_expression "(_Hash_node_base *)0x3" ( (type_descriptor "_Hash_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) < identifier) )) - number_literal) )) - identifier) )) - (call_expression "(uint)(p_Var7 + -1 < p_Var16)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(p_Var7 + -1 < p_Var16)" ( (binary_expression "p_Var7 + -1 < p_Var16" (binary_expression "p_Var7 + -1" identifier + number_literal) < identifier) )))) )))) ;) }) (else_clause "else {\n                if (p_Var35 != (_Hash_node_base *)0x1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");\n                }\n                iVar30 = (int)pAVar37 +\n                         (-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30);\n                uVar10 = ((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000) >> 0xc;\n                *puVar32 = ((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |\n                           (uVar10 & 3) << 0x1d | *puVar32 & 0x9f00001f;\n                if (1 < iVar30 + 1U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                pAVar9 = aarch64_reloc_property_table->table_[0x15];\n                if (pAVar9 == (AArch64_reloc_property *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");\n                }\n                uVar36 = (*pAVar9->rvalue_bit_select_func_)(uVar36);\n                iVar30 = pAVar9->reloc_inst_ * 0x10;\n                if ((*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1) ||\n                   (uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");\n                }\n                uVar24 = (int)uVar36 << ((byte)uVar10 & 0x1f);\n                if ((uVar10 & 0x20) != 0) {\n                  uVar24 = 0;\n                }\n                puVar32[1] = ~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]\n                             | uVar24;\n                bVar13 = (*pAVar9->rvalue_checkup_func_)(uVar11);\n                a64relobj = pAVar37;\n                if (!bVar13) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }" else (compound_statement "{\n                if (p_Var35 != (_Hash_node_base *)0x1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");\n                }\n                iVar30 = (int)pAVar37 +\n                         (-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30);\n                uVar10 = ((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000) >> 0xc;\n                *puVar32 = ((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |\n                           (uVar10 & 3) << 0x1d | *puVar32 & 0x9f00001f;\n                if (1 < iVar30 + 1U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                pAVar9 = aarch64_reloc_property_table->table_[0x15];\n                if (pAVar9 == (AArch64_reloc_property *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");\n                }\n                uVar36 = (*pAVar9->rvalue_bit_select_func_)(uVar36);\n                iVar30 = pAVar9->reloc_inst_ * 0x10;\n                if ((*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1) ||\n                   (uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");\n                }\n                uVar24 = (int)uVar36 << ((byte)uVar10 & 0x1f);\n                if ((uVar10 & 0x20) != 0) {\n                  uVar24 = 0;\n                }\n                puVar32[1] = ~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]\n                             | uVar24;\n                bVar13 = (*pAVar9->rvalue_checkup_func_)(uVar11);\n                a64relobj = pAVar37;\n                if (!bVar13) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }" { (if_statement "if (p_Var35 != (_Hash_node_base *)0x1) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");\n                }" if (parenthesized_expression "(p_Var35 != (_Hash_node_base *)0x1)" ( (binary_expression "p_Var35 != (_Hash_node_base *)0x1" identifier != (cast_expression "(_Hash_node_base *)0x1" ( (type_descriptor "_Hash_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");\n                }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub")" identifier (argument_list "("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_reloc_stub"" " string_content ") ))) ;)) })) (expression_statement "iVar30 = (int)pAVar37 +\n                         (-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30);" (assignment_expression "iVar30 = (int)pAVar37 +\n                         (-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30)" identifier = (binary_expression "(int)pAVar37 +\n                         (-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30)" (cast_expression "(int)pAVar37" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30)" ( (binary_expression "-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)) -\n                         iVar30" (unary_expression "-(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000))" - (call_expression "(uint)(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000))" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000))" ( (binary_expression "((uint)p_Var7 & 0xfffff000) < ((uint)p_Var16 & 0xfffff000)" (parenthesized_expression "((uint)p_Var7 & 0xfffff000)" ( (binary_expression "(uint)p_Var7 & 0xfffff000" (cast_expression "(uint)p_Var7" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) < (parenthesized_expression "((uint)p_Var16 & 0xfffff000)" ( (binary_expression "(uint)p_Var16 & 0xfffff000" (cast_expression "(uint)p_Var16" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) ))) )))) - identifier) )))) ;) (expression_statement "uVar10 = ((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000) >> 0xc;" (assignment_expression "uVar10 = ((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000) >> 0xc" identifier = (binary_expression "((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000) >> 0xc" (binary_expression "((uint)p_Var7 & 0xfffff000) - ((uint)p_Var16 & 0xfffff000)" (parenthesized_expression "((uint)p_Var7 & 0xfffff000)" ( (binary_expression "(uint)p_Var7 & 0xfffff000" (cast_expression "(uint)p_Var7" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) - (parenthesized_expression "((uint)p_Var16 & 0xfffff000)" ( (binary_expression "(uint)p_Var16 & 0xfffff000" (cast_expression "(uint)p_Var16" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) ))) >> number_literal)) ;) (expression_statement "*puVar32 = ((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |\n                           (uVar10 & 3) << 0x1d | *puVar32 & 0x9f00001f;" (assignment_expression "*puVar32 = ((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |\n                           (uVar10 & 3) << 0x1d | *puVar32 & 0x9f00001f" (pointer_expression "*puVar32" * identifier) = (binary_expression "((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |\n                           (uVar10 & 3) << 0x1d | *puVar32 & 0x9f00001f" (binary_expression "((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5 |\n                           (uVar10 & 3) << 0x1d" (binary_expression "((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2) << 5" (parenthesized_expression "((uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2)" ( (binary_expression "(uVar10 | iVar30 * 0x100000 & 0x1fffffU) >> 2" (parenthesized_expression "(uVar10 | iVar30 * 0x100000 & 0x1fffffU)" ( (binary_expression "uVar10 | iVar30 * 0x100000 & 0x1fffffU" identifier | (binary_expression "iVar30 * 0x100000 & 0x1fffffU" (binary_expression "iVar30 * 0x100000" identifier * number_literal) & number_literal)) )) >> number_literal) )) << number_literal) | (binary_expression "(uVar10 & 3) << 0x1d" (parenthesized_expression "(uVar10 & 3)" ( (binary_expression "uVar10 & 3" identifier & number_literal) )) << number_literal)) | (binary_expression "*puVar32 & 0x9f00001f" (pointer_expression "*puVar32" * identifier) & number_literal))) ;) (if_statement "if (1 < iVar30 + 1U) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }" if (parenthesized_expression "(1 < iVar30 + 1U)" ( (binary_expression "1 < iVar30 + 1U" number_literal < (binary_expression "iVar30 + 1U" identifier + number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub")" identifier (argument_list "("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_reloc_stub"" " string_content ") ))) ;)) })) (expression_statement "pAVar9 = aarch64_reloc_property_table->table_[0x15];" (assignment_expression "pAVar9 = aarch64_reloc_property_table->table_[0x15]" identifier = (subscript_expression "aarch64_reloc_property_table->table_[0x15]" (field_expression "aarch64_reloc_property_table->table_" identifier -> field_identifier) [ number_literal ])) ;) (if_statement "if (pAVar9 == (AArch64_reloc_property *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");\n                }" if (parenthesized_expression "(pAVar9 == (AArch64_reloc_property *)0x0)" ( (binary_expression "pAVar9 == (AArch64_reloc_property *)0x0" identifier == (cast_expression "(AArch64_reloc_property *)0x0" ( (type_descriptor "AArch64_reloc_property *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");\n                }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub")" identifier (argument_list "("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_reloc_stub"" " string_content ") ))) ;)) })) (expression_statement "uVar36 = (*pAVar9->rvalue_bit_select_func_)(uVar36);" (assignment_expression "uVar36 = (*pAVar9->rvalue_bit_select_func_)(uVar36)" identifier = (call_expression "(*pAVar9->rvalue_bit_select_func_)(uVar36)" (parenthesized_expression "(*pAVar9->rvalue_bit_select_func_)" ( (pointer_expression "*pAVar9->rvalue_bit_select_func_" * (field_expression "pAVar9->rvalue_bit_select_func_" identifier -> field_identifier)) )) (argument_list "(uVar36)" ( identifier )))) ;) (expression_statement "iVar30 = pAVar9->reloc_inst_ * 0x10;" (assignment_expression "iVar30 = pAVar9->reloc_inst_ * 0x10" identifier = (binary_expression "pAVar9->reloc_inst_ * 0x10" (field_expression "pAVar9->reloc_inst_" identifier -> field_identifier) * number_literal)) ;) (if_statement "if ((*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1) ||\n                   (uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff)) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");\n                }" if (parenthesized_expression "((*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1) ||\n                   (uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff))" ( (binary_expression "(*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1) ||\n                   (uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff)" (parenthesized_expression "(*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1)" ( (binary_expression "*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc) != -1" (pointer_expression "*(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc)" * (cast_expression "(int *)((anonymous_namespace)::aarch64_howto + iVar30 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((anonymous_namespace)::aarch64_howto + iVar30 + 0xc)" ( (binary_expression "(anonymous_namespace)::aarch64_howto + iVar30 + 0xc" (binary_expression "(anonymous_namespace)::aarch64_howto + iVar30" (parenthesized_expression "(anonymous_namespace)" ( identifier )) (ERROR "::aarch64_howto" : : identifier) + identifier) + number_literal) )))) != number_literal) )) || (parenthesized_expression "(uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff)" ( (comma_expression "uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8),\n                   uVar10 == 0xffffffff" (assignment_expression "uVar10 = *(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8)" identifier = (pointer_expression "*(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8)" * (cast_expression "(uint *)((anonymous_namespace)::aarch64_howto + iVar30 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((anonymous_namespace)::aarch64_howto + iVar30 + 8)" ( (binary_expression "(anonymous_namespace)::aarch64_howto + iVar30 + 8" (binary_expression "(anonymous_namespace)::aarch64_howto + iVar30" (parenthesized_expression "(anonymous_namespace)" ( identifier )) (ERROR "::aarch64_howto" : : identifier) + identifier) + number_literal) ))))) , (binary_expression "uVar10 == 0xffffffff" identifier == number_literal)) ))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");\n                }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x1484,"reloc_common")" identifier (argument_list "("../../gold/aarch64.cc",0x1484,"reloc_common")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""reloc_common"" " string_content ") ))) ;)) })) (expression_statement "uVar24 = (int)uVar36 << ((byte)uVar10 & 0x1f);" (assignment_expression "uVar24 = (int)uVar36 << ((byte)uVar10 & 0x1f)" identifier = (binary_expression "(int)uVar36 << ((byte)uVar10 & 0x1f)" (cast_expression "(int)uVar36" ( (type_descriptor "int" primitive_type) ) identifier) << (parenthesized_expression "((byte)uVar10 & 0x1f)" ( (binary_expression "(byte)uVar10 & 0x1f" (cast_expression "(byte)uVar10" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )))) ;) (if_statement "if ((uVar10 & 0x20) != 0) {\n                  uVar24 = 0;\n                }" if (parenthesized_expression "((uVar10 & 0x20) != 0)" ( (binary_expression "(uVar10 & 0x20) != 0" (parenthesized_expression "(uVar10 & 0x20)" ( (binary_expression "uVar10 & 0x20" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                  uVar24 = 0;\n                }" { (expression_statement "uVar24 = 0;" (assignment_expression "uVar24 = 0" identifier = number_literal) ;) })) (expression_statement "puVar32[1] = ~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]\n                             | uVar24;" (assignment_expression "puVar32[1] = ~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]\n                             | uVar24" (subscript_expression "puVar32[1]" identifier [ number_literal ]) = (binary_expression "~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]\n                             | uVar24" (binary_expression "~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30) & puVar32[1]" (unary_expression "~*(uint *)((anonymous_namespace)::aarch64_howto + iVar30)" ~ (pointer_expression "*(uint *)((anonymous_namespace)::aarch64_howto + iVar30)" * (cast_expression "(uint *)((anonymous_namespace)::aarch64_howto + iVar30)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((anonymous_namespace)::aarch64_howto + iVar30)" ( (binary_expression "(anonymous_namespace)::aarch64_howto + iVar30" (parenthesized_expression "(anonymous_namespace)" ( identifier )) (ERROR "::aarch64_howto" : : identifier) + identifier) ))))) & (subscript_expression "puVar32[1]" identifier [ number_literal ])) | identifier)) ;) (expression_statement "bVar13 = (*pAVar9->rvalue_checkup_func_)(uVar11);" (assignment_expression "bVar13 = (*pAVar9->rvalue_checkup_func_)(uVar11)" identifier = (call_expression "(*pAVar9->rvalue_checkup_func_)(uVar11)" (parenthesized_expression "(*pAVar9->rvalue_checkup_func_)" ( (pointer_expression "*pAVar9->rvalue_checkup_func_" * (field_expression "pAVar9->rvalue_checkup_func_" identifier -> field_identifier)) )) (argument_list "(uVar11)" ( identifier )))) ;) (expression_statement "a64relobj = pAVar37;" (assignment_expression "a64relobj = pAVar37" identifier = identifier) ;) (if_statement "if (!bVar13) {\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }" if (parenthesized_expression "(!bVar13)" ( (unary_expression "!bVar13" ! identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                  gold::do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");" (call_expression "do_gold_unreachable("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub")" identifier (argument_list "("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_reloc_stub"" " string_content ") ))) ;)) })) }))))) (expression_statement "local_ac = local_ac->_M_nxt;" (assignment_expression "local_ac = local_ac->_M_nxt" identifier = (field_expression "local_ac->_M_nxt" identifier -> field_identifier)) ;) (if_statement "if (local_ac == (_Hash_node_base *)0x0) break;" if (parenthesized_expression "(local_ac == (_Hash_node_base *)0x0)" ( (binary_expression "local_ac == (_Hash_node_base *)0x0" identifier == (cast_expression "(_Hash_node_base *)0x0" ( (type_descriptor "_Hash_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "p_Var35 = local_ac[5]._M_nxt;" (assignment_expression "p_Var35 = local_ac[5]._M_nxt" identifier = (field_expression "local_ac[5]._M_nxt" (subscript_expression "local_ac[5]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "p_Var31 = p_Var35[3]._M_nxt;" (assignment_expression "p_Var31 = p_Var35[3]._M_nxt" identifier = (field_expression "p_Var35[3]._M_nxt" (subscript_expression "p_Var35[3]" identifier [ number_literal ]) . field_identifier)) ;) (if_statement "if (p_Var31 == (_Hash_node_base *)0xffffffff) goto LAB_001e5d9c;" if (parenthesized_expression "(p_Var31 == (_Hash_node_base *)0xffffffff)" ( (binary_expression "p_Var31 == (_Hash_node_base *)0xffffffff" identifier == (cast_expression "(_Hash_node_base *)0xffffffff" ( (type_descriptor "_Hash_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_001e5d9c;" goto statement_identifier ;)) }) while (parenthesized_expression "( true )" ( true )) ;) })) })) (expression_statement "pSVar28 = (Stub_table<64,_false> *)\n                  ((int)&(pSVar28->super_Output_data)._vptr_Output_data + 1);" (assignment_expression "pSVar28 = (Stub_table<64,_false> *)\n                  ((int)&(pSVar28->super_Output_data)._vptr_Output_data + 1)" identifier = (call_expression "(Stub_table<64,_false> *)\n                  ((int)&(pSVar28->super_Output_data)._vptr_Output_data + 1)" (parenthesized_expression "(Stub_table<64,_false> *)" ( (comma_expression "Stub_table<64,_false> *" (binary_expression "Stub_table<64" identifier < number_literal) , (binary_expression "_false> *" identifier > (pointer_expression "*" * identifier))) )) (argument_list "((int)&(pSVar28->super_Output_data)._vptr_Output_data + 1)" ( (binary_expression "(int)&(pSVar28->super_Output_data)._vptr_Output_data + 1" (cast_expression "(int)&(pSVar28->super_Output_data)._vptr_Output_data" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(pSVar28->super_Output_data)._vptr_Output_data" & (field_expression "(pSVar28->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pSVar28->super_Output_data)" ( (field_expression "pSVar28->super_Output_data" identifier -> field_identifier) )) . field_identifier))) + number_literal) )))) ;) }) while (parenthesized_expression "(pSVar28 != local_58)" ( (binary_expression "pSVar28 != local_58" identifier != identifier) )) ;) })) })) (return_statement "return;" return ;) (ERROR "}" }))
(translation_unit "void FUN_001e5a30(uint param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4,\n                 undefined4 param_5,int *param_6)\n\n{\n  char cVar1;\n  int iVar2;\n  int *piVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  int *piVar7;\n  int iVar8;\n  uint uVar9;\n  int iVar10;\n  uint uVar11;\n  uint *puVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 extraout_ECX;\n  int iVar15;\n  uint *puVar16;\n  int iVar17;\n  uint uVar18;\n  int iVar19;\n  uint uVar20;\n  undefined **ppuVar21;\n  uint *puVar22;\n  uint uVar23;\n  undefined4 *puVar24;\n  int local_b0;\n  int *local_ac;\n  uint local_7c;\n  uint *local_78;\n  undefined **local_74;\n  uint local_5c;\n  uint local_58;\n  uint local_34;\n  uint local_30;\n  uint local_24;\n  uint local_20;\n  \n  ppuVar21 = &__DT_PLTGOT;\n  iVar2 = *(int *)(param_1 + 0x28) + -1;\n  FUN_00325a00(param_1,param_2,param_3,param_4,param_5,param_6,1,iVar2,*(int *)(param_1 + 0x28));\n  iVar8 = *(int *)(DAT_005ea7c8 + 8);\n  if (iVar8 == 0) {\n                    \n    FUN_002446e0("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT);\n  }\n  if (*(char *)(iVar8 + 0x318d) == '\0') {\n    local_58 = *(uint *)(param_1 + 0x28);\n    uVar18 = local_58;\n    if (((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58)) {\n      iVar8 = *(int *)(param_1 + 0x13c);\n      iVar19 = *(int *)(param_1 + 0x140);\n      if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);\n    }\nLAB_001e5adf:\n    piVar7 = *(int **)(DAT_005ea7c8 + 0xc);\n    if (piVar7 == (int *)0x0) {\n                    \n      FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);\n    }\n    piVar3 = (int *)piVar7[1];\n    if (((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0')) {\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);\n    }\n    if (1 < local_58) {\n      uVar18 = 1;\n      puVar12 = &local_24;\n      do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);\n    }\n  }\n  return;\n}\n\n" (function_definition "void FUN_001e5a30(uint param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4,\n                 undefined4 param_5,int *param_6)\n\n{\n  char cVar1;\n  int iVar2;\n  int *piVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  int *piVar7;\n  int iVar8;\n  uint uVar9;\n  int iVar10;\n  uint uVar11;\n  uint *puVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 extraout_ECX;\n  int iVar15;\n  uint *puVar16;\n  int iVar17;\n  uint uVar18;\n  int iVar19;\n  uint uVar20;\n  undefined **ppuVar21;\n  uint *puVar22;\n  uint uVar23;\n  undefined4 *puVar24;\n  int local_b0;\n  int *local_ac;\n  uint local_7c;\n  uint *local_78;\n  undefined **local_74;\n  uint local_5c;\n  uint local_58;\n  uint local_34;\n  uint local_30;\n  uint local_24;\n  uint local_20;\n  \n  ppuVar21 = &__DT_PLTGOT;\n  iVar2 = *(int *)(param_1 + 0x28) + -1;\n  FUN_00325a00(param_1,param_2,param_3,param_4,param_5,param_6,1,iVar2,*(int *)(param_1 + 0x28));\n  iVar8 = *(int *)(DAT_005ea7c8 + 8);\n  if (iVar8 == 0) {\n                    \n    FUN_002446e0("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT);\n  }\n  if (*(char *)(iVar8 + 0x318d) == '\0') {\n    local_58 = *(uint *)(param_1 + 0x28);\n    uVar18 = local_58;\n    if (((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58)) {\n      iVar8 = *(int *)(param_1 + 0x13c);\n      iVar19 = *(int *)(param_1 + 0x140);\n      if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);\n    }\nLAB_001e5adf:\n    piVar7 = *(int **)(DAT_005ea7c8 + 0xc);\n    if (piVar7 == (int *)0x0) {\n                    \n      FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);\n    }\n    piVar3 = (int *)piVar7[1];\n    if (((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0')) {\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);\n    }\n    if (1 < local_58) {\n      uVar18 = 1;\n      puVar12 = &local_24;\n      do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);\n    }\n  }\n  return;\n}" primitive_type (function_declarator "FUN_001e5a30(uint param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4,\n                 undefined4 param_5,int *param_6)" identifier (parameter_list "(uint param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4,\n                 undefined4 param_5,int *param_6)" ( (parameter_declaration "uint param_1" type_identifier identifier) , (parameter_declaration "undefined4 param_2" type_identifier identifier) , (parameter_declaration "undefined4 param_3" type_identifier identifier) , (parameter_declaration "undefined4 param_4" type_identifier identifier) , (parameter_declaration "undefined4 param_5" type_identifier identifier) , (parameter_declaration "int *param_6" primitive_type (pointer_declarator "*param_6" * identifier)) ))) (compound_statement "{\n  char cVar1;\n  int iVar2;\n  int *piVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  int *piVar7;\n  int iVar8;\n  uint uVar9;\n  int iVar10;\n  uint uVar11;\n  uint *puVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 extraout_ECX;\n  int iVar15;\n  uint *puVar16;\n  int iVar17;\n  uint uVar18;\n  int iVar19;\n  uint uVar20;\n  undefined **ppuVar21;\n  uint *puVar22;\n  uint uVar23;\n  undefined4 *puVar24;\n  int local_b0;\n  int *local_ac;\n  uint local_7c;\n  uint *local_78;\n  undefined **local_74;\n  uint local_5c;\n  uint local_58;\n  uint local_34;\n  uint local_30;\n  uint local_24;\n  uint local_20;\n  \n  ppuVar21 = &__DT_PLTGOT;\n  iVar2 = *(int *)(param_1 + 0x28) + -1;\n  FUN_00325a00(param_1,param_2,param_3,param_4,param_5,param_6,1,iVar2,*(int *)(param_1 + 0x28));\n  iVar8 = *(int *)(DAT_005ea7c8 + 8);\n  if (iVar8 == 0) {\n                    \n    FUN_002446e0("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT);\n  }\n  if (*(char *)(iVar8 + 0x318d) == '\0') {\n    local_58 = *(uint *)(param_1 + 0x28);\n    uVar18 = local_58;\n    if (((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58)) {\n      iVar8 = *(int *)(param_1 + 0x13c);\n      iVar19 = *(int *)(param_1 + 0x140);\n      if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);\n    }\nLAB_001e5adf:\n    piVar7 = *(int **)(DAT_005ea7c8 + 0xc);\n    if (piVar7 == (int *)0x0) {\n                    \n      FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);\n    }\n    piVar3 = (int *)piVar7[1];\n    if (((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0')) {\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);\n    }\n    if (1 < local_58) {\n      uVar18 = 1;\n      puVar12 = &local_24;\n      do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);\n    }\n  }\n  return;\n}" { (declaration "char cVar1;" primitive_type identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int *piVar3;" primitive_type (pointer_declarator "*piVar3" * identifier) ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "int *piVar7;" primitive_type (pointer_declarator "*piVar7" * identifier) ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "uint uVar11;" type_identifier identifier ;) (declaration "uint *puVar12;" type_identifier (pointer_declarator "*puVar12" * identifier) ;) (declaration "int iVar13;" primitive_type identifier ;) (declaration "int iVar14;" primitive_type identifier ;) (declaration "undefined4 extraout_ECX;" type_identifier identifier ;) (declaration "int iVar15;" primitive_type identifier ;) (declaration "uint *puVar16;" type_identifier (pointer_declarator "*puVar16" * identifier) ;) (declaration "int iVar17;" primitive_type identifier ;) (declaration "uint uVar18;" type_identifier identifier ;) (declaration "int iVar19;" primitive_type identifier ;) (declaration "uint uVar20;" type_identifier identifier ;) (declaration "undefined **ppuVar21;" type_identifier (pointer_declarator "**ppuVar21" * (pointer_declarator "*ppuVar21" * identifier)) ;) (declaration "uint *puVar22;" type_identifier (pointer_declarator "*puVar22" * identifier) ;) (declaration "uint uVar23;" type_identifier identifier ;) (declaration "undefined4 *puVar24;" type_identifier (pointer_declarator "*puVar24" * identifier) ;) (declaration "int local_b0;" primitive_type identifier ;) (declaration "int *local_ac;" primitive_type (pointer_declarator "*local_ac" * identifier) ;) (declaration "uint local_7c;" type_identifier identifier ;) (declaration "uint *local_78;" type_identifier (pointer_declarator "*local_78" * identifier) ;) (declaration "undefined **local_74;" type_identifier (pointer_declarator "**local_74" * (pointer_declarator "*local_74" * identifier)) ;) (declaration "uint local_5c;" type_identifier identifier ;) (declaration "uint local_58;" type_identifier identifier ;) (declaration "uint local_34;" type_identifier identifier ;) (declaration "uint local_30;" type_identifier identifier ;) (declaration "uint local_24;" type_identifier identifier ;) (declaration "uint local_20;" type_identifier identifier ;) (expression_statement "ppuVar21 = &__DT_PLTGOT;" (assignment_expression "ppuVar21 = &__DT_PLTGOT" identifier = (pointer_expression "&__DT_PLTGOT" & identifier)) ;) (expression_statement "iVar2 = *(int *)(param_1 + 0x28) + -1;" (assignment_expression "iVar2 = *(int *)(param_1 + 0x28) + -1" identifier = (binary_expression "*(int *)(param_1 + 0x28) + -1" (pointer_expression "*(int *)(param_1 + 0x28)" * (cast_expression "(int *)(param_1 + 0x28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x28)" ( (binary_expression "param_1 + 0x28" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "FUN_00325a00(param_1,param_2,param_3,param_4,param_5,param_6,1,iVar2,*(int *)(param_1 + 0x28));" (call_expression "FUN_00325a00(param_1,param_2,param_3,param_4,param_5,param_6,1,iVar2,*(int *)(param_1 + 0x28))" identifier (argument_list "(param_1,param_2,param_3,param_4,param_5,param_6,1,iVar2,*(int *)(param_1 + 0x28))" ( identifier , identifier , identifier , identifier , identifier , identifier , number_literal , identifier , (pointer_expression "*(int *)(param_1 + 0x28)" * (cast_expression "(int *)(param_1 + 0x28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x28)" ( (binary_expression "param_1 + 0x28" identifier + number_literal) )))) ))) ;) (expression_statement "iVar8 = *(int *)(DAT_005ea7c8 + 8);" (assignment_expression "iVar8 = *(int *)(DAT_005ea7c8 + 8)" identifier = (pointer_expression "*(int *)(DAT_005ea7c8 + 8)" * (cast_expression "(int *)(DAT_005ea7c8 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_005ea7c8 + 8)" ( (binary_expression "DAT_005ea7c8 + 8" identifier + number_literal) ))))) ;) (if_statement "if (iVar8 == 0) {\n                    \n    FUN_002446e0("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT);\n  }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n                    \n    FUN_002446e0("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT);\n  }" { (expression_statement "FUN_002446e0("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT);" (call_expression "FUN_002446e0("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT)" identifier (argument_list "("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT)" ( (string_literal ""../../gold/parameters.h"" " string_content ") , number_literal , (string_literal ""options"" " string_content ") , (pointer_expression "&__DT_PLTGOT" & identifier) ))) ;) })) (if_statement "if (*(char *)(iVar8 + 0x318d) == '\0') {\n    local_58 = *(uint *)(param_1 + 0x28);\n    uVar18 = local_58;\n    if (((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58)) {\n      iVar8 = *(int *)(param_1 + 0x13c);\n      iVar19 = *(int *)(param_1 + 0x140);\n      if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);\n    }\nLAB_001e5adf:\n    piVar7 = *(int **)(DAT_005ea7c8 + 0xc);\n    if (piVar7 == (int *)0x0) {\n                    \n      FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);\n    }\n    piVar3 = (int *)piVar7[1];\n    if (((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0')) {\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);\n    }\n    if (1 < local_58) {\n      uVar18 = 1;\n      puVar12 = &local_24;\n      do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);\n    }\n  }" if (parenthesized_expression "(*(char *)(iVar8 + 0x318d) == '\0')" ( (binary_expression "*(char *)(iVar8 + 0x318d) == '\0'" (pointer_expression "*(char *)(iVar8 + 0x318d)" * (cast_expression "(char *)(iVar8 + 0x318d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x318d)" ( (binary_expression "iVar8 + 0x318d" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    local_58 = *(uint *)(param_1 + 0x28);\n    uVar18 = local_58;\n    if (((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58)) {\n      iVar8 = *(int *)(param_1 + 0x13c);\n      iVar19 = *(int *)(param_1 + 0x140);\n      if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);\n    }\nLAB_001e5adf:\n    piVar7 = *(int **)(DAT_005ea7c8 + 0xc);\n    if (piVar7 == (int *)0x0) {\n                    \n      FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);\n    }\n    piVar3 = (int *)piVar7[1];\n    if (((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0')) {\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);\n    }\n    if (1 < local_58) {\n      uVar18 = 1;\n      puVar12 = &local_24;\n      do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);\n    }\n  }" { (expression_statement "local_58 = *(uint *)(param_1 + 0x28);" (assignment_expression "local_58 = *(uint *)(param_1 + 0x28)" identifier = (pointer_expression "*(uint *)(param_1 + 0x28)" * (cast_expression "(uint *)(param_1 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x28)" ( (binary_expression "param_1 + 0x28" identifier + number_literal) ))))) ;) (expression_statement "uVar18 = local_58;" (assignment_expression "uVar18 = local_58" identifier = identifier) ;) (if_statement "if (((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58)) {\n      iVar8 = *(int *)(param_1 + 0x13c);\n      iVar19 = *(int *)(param_1 + 0x140);\n      if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);\n    }" if (parenthesized_expression "(((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58))" ( (binary_expression "((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58)" (parenthesized_expression "((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0'))" ( (binary_expression "(*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')" (parenthesized_expression "(*(char *)(iVar8 + 0x1671) != '\0')" ( (binary_expression "*(char *)(iVar8 + 0x1671) != '\0'" (pointer_expression "*(char *)(iVar8 + 0x1671)" * (cast_expression "(char *)(iVar8 + 0x1671)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1671)" ( (binary_expression "iVar8 + 0x1671" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(*(char *)(iVar8 + 0x16ed) != '\0')" ( (binary_expression "*(char *)(iVar8 + 0x16ed) != '\0'" (pointer_expression "*(char *)(iVar8 + 0x16ed)" * (cast_expression "(char *)(iVar8 + 0x16ed)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x16ed)" ( (binary_expression "iVar8 + 0x16ed" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) )) && (parenthesized_expression "(1 < local_58)" ( (binary_expression "1 < local_58" number_literal < identifier) ))) )) (compound_statement "{\n      iVar8 = *(int *)(param_1 + 0x13c);\n      iVar19 = *(int *)(param_1 + 0x140);\n      if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);\n    }" { (expression_statement "iVar8 = *(int *)(param_1 + 0x13c);" (assignment_expression "iVar8 = *(int *)(param_1 + 0x13c)" identifier = (pointer_expression "*(int *)(param_1 + 0x13c)" * (cast_expression "(int *)(param_1 + 0x13c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x13c)" ( (binary_expression "param_1 + 0x13c" identifier + number_literal) ))))) ;) (expression_statement "iVar19 = *(int *)(param_1 + 0x140);" (assignment_expression "iVar19 = *(int *)(param_1 + 0x140)" identifier = (pointer_expression "*(int *)(param_1 + 0x140)" * (cast_expression "(int *)(param_1 + 0x140)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x140)" ( (binary_expression "param_1 + 0x140" identifier + number_literal) ))))) ;) (if_statement "if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }" if (parenthesized_expression "(7 < (uint)(iVar19 - iVar8))" ( (binary_expression "7 < (uint)(iVar19 - iVar8)" number_literal < (call_expression "(uint)(iVar19 - iVar8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(iVar19 - iVar8)" ( (binary_expression "iVar19 - iVar8" identifier - identifier) )))) )) (compound_statement "{\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }" { (expression_statement "local_5c = 1;" (assignment_expression "local_5c = 1" identifier = number_literal) ;) (do_statement "do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));" do (compound_statement "{\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        }" { (expression_statement "ppuVar21 = (undefined **)(local_5c * 4);" (assignment_expression "ppuVar21 = (undefined **)(local_5c * 4)" identifier = (cast_expression "(undefined **)(local_5c * 4)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_5c * 4)" ( (binary_expression "local_5c * 4" identifier * number_literal) )))) ;) (expression_statement "puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);" (assignment_expression "puVar24 = *(undefined4 **)(iVar8 + local_5c * 4)" identifier = (pointer_expression "*(undefined4 **)(iVar8 + local_5c * 4)" * (cast_expression "(undefined4 **)(iVar8 + local_5c * 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar8 + local_5c * 4)" ( (binary_expression "iVar8 + local_5c * 4" identifier + (binary_expression "local_5c * 4" identifier * number_literal)) ))))) ;) (if_statement "if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }" if (parenthesized_expression "(puVar24 != (undefined4 *)0x0)" ( (binary_expression "puVar24 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }" { (expression_statement "FUN_001d6d60(local_5c);" (call_expression "FUN_001d6d60(local_5c)" identifier (argument_list "(local_5c)" ( identifier ))) ;) (expression_statement "local_7c = local_34;" (assignment_expression "local_7c = local_34" identifier = identifier) ;) (expression_statement "piVar7 = (int *)(local_5c * 0x1c + *param_6);" (assignment_expression "piVar7 = (int *)(local_5c * 0x1c + *param_6)" identifier = (cast_expression "(int *)(local_5c * 0x1c + *param_6)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_5c * 0x1c + *param_6)" ( (binary_expression "local_5c * 0x1c + *param_6" (binary_expression "local_5c * 0x1c" identifier * number_literal) + (pointer_expression "*param_6" * identifier)) )))) ;) (if_statement "if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }" if (parenthesized_expression "((char)piVar7[6] == '\0')" ( (binary_expression "(char)piVar7[6] == '\0'" (cast_expression "(char)piVar7[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "piVar7[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }" { (expression_statement "puVar22 = (uint *)0x0;" (assignment_expression "puVar22 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" identifier = number_literal) ;) }) (else_clause "else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }" else (compound_statement "{\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }" { (expression_statement "uVar18 = local_5c;" (assignment_expression "uVar18 = local_5c" identifier = identifier) ;) (if_statement "if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }" if (parenthesized_expression "(0xfeff < local_5c)" ( (binary_expression "0xfeff < local_5c" number_literal < identifier) )) (compound_statement "{\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }" { (expression_statement "FUN_00108090(param_1 + 0x90);" (call_expression "FUN_00108090(param_1 + 0x90)" identifier (argument_list "(param_1 + 0x90)" ( (binary_expression "param_1 + 0x90" identifier + number_literal) ))) ;) (expression_statement "uVar18 = local_5c + *(int *)(param_1 + 0xa4);" (assignment_expression "uVar18 = local_5c + *(int *)(param_1 + 0xa4)" identifier = (binary_expression "local_5c + *(int *)(param_1 + 0xa4)" identifier + (pointer_expression "*(int *)(param_1 + 0xa4)" * (cast_expression "(int *)(param_1 + 0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xa4)" ( (binary_expression "param_1 + 0xa4" identifier + number_literal) )))))) ;) (expression_statement "ppuVar21 = (undefined **)(uVar18 * 4);" (assignment_expression "ppuVar21 = (undefined **)(uVar18 * 4)" identifier = (cast_expression "(undefined **)(uVar18 * 4)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(uVar18 * 4)" ( (binary_expression "uVar18 * 4" identifier * number_literal) )))) ;) })) (expression_statement "local_74 = &__DT_PLTGOT;" (assignment_expression "local_74 = &__DT_PLTGOT" identifier = (pointer_expression "&__DT_PLTGOT" & identifier)) ;) (expression_statement "iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);" (assignment_expression "iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18)" identifier = (call_expression "FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18)" identifier (argument_list "(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18)" ( (pointer_expression "*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21)" * (cast_expression "(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_1 + 0x38) + (int)ppuVar21)" ( (binary_expression "*(int *)(param_1 + 0x38) + (int)ppuVar21" (pointer_expression "*(int *)(param_1 + 0x38)" * (cast_expression "(int *)(param_1 + 0x38)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x38)" ( (binary_expression "param_1 + 0x38" identifier + number_literal) )))) + (cast_expression "(int)ppuVar21" ( (type_descriptor "int" primitive_type) ) identifier)) )))) , identifier , identifier )))) ;) (if_statement "if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }" { (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX)" identifier (argument_list "("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX)" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""fix_errata_and_relocate_erratum_stubs"" " string_content ") , identifier ))) ;) })) (if_statement "if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;" if (parenthesized_expression "((*(byte *)(iVar8 + 0x1c) & 1) == 0)" ( (binary_expression "(*(byte *)(iVar8 + 0x1c) & 1) == 0" (parenthesized_expression "(*(byte *)(iVar8 + 0x1c) & 1)" ( (binary_expression "*(byte *)(iVar8 + 0x1c) & 1" (pointer_expression "*(byte *)(iVar8 + 0x1c)" * (cast_expression "(byte *)(iVar8 + 0x1c)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1c)" ( (binary_expression "iVar8 + 0x1c" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_001e670d;" goto statement_identifier ;)) (expression_statement "puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);" (assignment_expression "puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1])" identifier = (cast_expression "(uint *)(*(uint *)(iVar8 + 4) - piVar7[1])" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(uint *)(iVar8 + 4) - piVar7[1])" ( (binary_expression "*(uint *)(iVar8 + 4) - piVar7[1]" (pointer_expression "*(uint *)(iVar8 + 4)" * (cast_expression "(uint *)(iVar8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 4)" ( (binary_expression "iVar8 + 4" identifier + number_literal) )))) - (subscript_expression "piVar7[1]" identifier [ number_literal ])) )))) ;) (expression_statement "local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);" (assignment_expression "local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1])" identifier = (binary_expression "(*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1])" (parenthesized_expression "(*(int *)(iVar8 + 8) - piVar7[2])" ( (binary_expression "*(int *)(iVar8 + 8) - piVar7[2]" (pointer_expression "*(int *)(iVar8 + 8)" * (cast_expression "(int *)(iVar8 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 8)" ( (binary_expression "iVar8 + 8" identifier + number_literal) )))) - (subscript_expression "piVar7[2]" identifier [ number_literal ])) )) - (call_expression "(uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1])" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(uint *)(iVar8 + 4) < (uint)piVar7[1])" ( (binary_expression "*(uint *)(iVar8 + 4) < (uint)piVar7[1]" (pointer_expression "*(uint *)(iVar8 + 4)" * (cast_expression "(uint *)(iVar8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 4)" ( (binary_expression "iVar8 + 4" identifier + number_literal) )))) < (cast_expression "(uint)piVar7[1]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "piVar7[1]" identifier [ number_literal ]))) ))))) ;) (expression_statement "ppuVar21 = local_74;" (assignment_expression "ppuVar21 = local_74" identifier = identifier) ;) }))) (expression_statement "local_74 = &__DT_PLTGOT;" (assignment_expression "local_74 = &__DT_PLTGOT" identifier = (pointer_expression "&__DT_PLTGOT" & identifier)) ;) (expression_statement "uVar18 = local_34;" (assignment_expression "uVar18 = local_34" identifier = identifier) ;) (if_statement "if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }" if (parenthesized_expression "(local_34 != local_30)" ( (binary_expression "local_34 != local_30" identifier != identifier) )) (compound_statement "{\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }" { (expression_statement "iVar8 = *(int *)(local_34 + 0x10);" (assignment_expression "iVar8 = *(int *)(local_34 + 0x10)" identifier = (pointer_expression "*(int *)(local_34 + 0x10)" * (cast_expression "(int *)(local_34 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_34 + 0x10)" ( (binary_expression "local_34 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "uVar4 = piVar7[1];" (assignment_expression "uVar4 = piVar7[1]" identifier = (subscript_expression "piVar7[1]" identifier [ number_literal ])) ;) (expression_statement "uVar18 = *(uint *)(iVar8 + 0x1c);" (assignment_expression "uVar18 = *(uint *)(iVar8 + 0x1c)" identifier = (pointer_expression "*(uint *)(iVar8 + 0x1c)" * (cast_expression "(uint *)(iVar8 + 0x1c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1c)" ( (binary_expression "iVar8 + 0x1c" identifier + number_literal) ))))) ;) (expression_statement "uVar9 = (int)puVar22 + uVar4;" (assignment_expression "uVar9 = (int)puVar22 + uVar4" identifier = (binary_expression "(int)puVar22 + uVar4" (cast_expression "(int)puVar22" ( (type_descriptor "int" primitive_type) ) identifier) + identifier)) ;) (expression_statement "iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);" (assignment_expression "iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4)" identifier = (binary_expression "local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4)" (binary_expression "local_b0 + piVar7[2]" identifier + (subscript_expression "piVar7[2]" identifier [ number_literal ])) + (cast_expression "(uint)CARRY4((uint)puVar22,uVar4)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4((uint)puVar22,uVar4)" identifier (argument_list "((uint)puVar22,uVar4)" ( (cast_expression "(uint)puVar22" ( (type_descriptor "uint" type_identifier) ) identifier) , identifier )))))) ;) (expression_statement "local_78 = *(uint **)(iVar8 + 0x24);" (assignment_expression "local_78 = *(uint **)(iVar8 + 0x24)" identifier = (pointer_expression "*(uint **)(iVar8 + 0x24)" * (cast_expression "(uint **)(iVar8 + 0x24)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar8 + 0x24)" ( (binary_expression "iVar8 + 0x24" identifier + number_literal) ))))) ;) (if_statement "if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }" if (parenthesized_expression "(((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff)" ( (binary_expression "((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff" (parenthesized_expression "((uint)local_78 & *(uint *)(iVar8 + 0x28))" ( (binary_expression "(uint)local_78 & *(uint *)(iVar8 + 0x28)" (cast_expression "(uint)local_78" ( (type_descriptor "uint" type_identifier) ) identifier) & (pointer_expression "*(uint *)(iVar8 + 0x28)" * (cast_expression "(uint *)(iVar8 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x28)" ( (binary_expression "iVar8 + 0x28" identifier + number_literal) ))))) )) == number_literal) )) (compound_statement "{\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }" { (labeled_statement "LAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");" statement_identifier : (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address")" identifier (argument_list "("../../gold/aarch64.cc",0x401,"erratum_address")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""erratum_address"" " string_content ") ))) ;)) })) (if_statement "if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }" if (parenthesized_expression "(*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9))" ( (binary_expression "*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)" (binary_expression "*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9)" (pointer_expression "*(uint *)(iVar8 + 0x28)" * (cast_expression "(uint *)(iVar8 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x28)" ( (binary_expression "iVar8 + 0x28" identifier + number_literal) )))) != (binary_expression "iVar19 + (uint)CARRY4(uVar18,uVar9)" identifier + (cast_expression "(uint)CARRY4(uVar18,uVar9)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(uVar18,uVar9)" identifier (argument_list "(uVar18,uVar9)" ( identifier , identifier )))))) || (binary_expression "local_78 != (uint *)(uVar18 + uVar9)" identifier != (cast_expression "(uint *)(uVar18 + uVar9)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar18 + uVar9)" ( (binary_expression "uVar18 + uVar9" identifier + identifier) ))))) )) (compound_statement "{\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }" { (labeled_statement "LAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");" statement_identifier : (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs")" identifier (argument_list "("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""fix_errata_and_relocate_erratum_stubs"" " string_content ") ))) ;)) })) (expression_statement "piVar7 = (int *)*piVar7;" (assignment_expression "piVar7 = (int *)*piVar7" identifier = (cast_expression "(int *)*piVar7" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar7" * identifier))) ;) (expression_statement "iVar10 = (int)piVar7 + (int)puVar22;" (assignment_expression "iVar10 = (int)piVar7 + (int)puVar22" identifier = (binary_expression "(int)piVar7 + (int)puVar22" (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)puVar22" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "puVar12 = puVar22;" (assignment_expression "puVar12 = puVar22" identifier = identifier) ;) (do_statement "do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );" do (compound_statement "{\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              }" { (expression_statement "uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);" (assignment_expression "uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22)" identifier = (pointer_expression "*(uint *)(uVar18 + (int)piVar7 + (int)puVar22)" * (cast_expression "(uint *)(uVar18 + (int)piVar7 + (int)puVar22)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar18 + (int)piVar7 + (int)puVar22)" ( (binary_expression "uVar18 + (int)piVar7 + (int)puVar22" (binary_expression "uVar18 + (int)piVar7" identifier + (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier)) + (cast_expression "(int)puVar22" ( (type_descriptor "int" primitive_type) ) identifier)) ))))) ;) (expression_statement "uVar11 = *(uint *)(iVar8 + 0x20);" (assignment_expression "uVar11 = *(uint *)(iVar8 + 0x20)" identifier = (pointer_expression "*(uint *)(iVar8 + 0x20)" * (cast_expression "(uint *)(iVar8 + 0x20)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x20)" ( (binary_expression "iVar8 + 0x20" identifier + number_literal) ))))) ;) (if_statement "if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }" if (parenthesized_expression "(uVar11 == 0xffffffff)" ( (binary_expression "uVar11 == 0xffffffff" identifier == number_literal) )) (compound_statement "{\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }" { (expression_statement "FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn")" identifier (argument_list "("../../gold/aarch64.cc",999,"update_erratum_insn")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""update_erratum_insn"" " string_content ") ))) ;) })) (if_statement "if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }" if (parenthesized_expression "(*(int *)(iVar8 + 0x10) == 4)" ( (binary_expression "*(int *)(iVar8 + 0x10) == 4" (pointer_expression "*(int *)(iVar8 + 0x10)" * (cast_expression "(int *)(iVar8 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x10)" ( (binary_expression "iVar8 + 0x10" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }" { (if_statement "if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }" if (parenthesized_expression "((uVar18 & 0x3b000000) != 0x39000000)" ( (binary_expression "(uVar18 & 0x3b000000) != 0x39000000" (parenthesized_expression "(uVar18 & 0x3b000000)" ( (binary_expression "uVar18 & 0x3b000000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }" { (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn")" identifier (argument_list "("../../gold/aarch64.cc",0x3eb,"update_erratum_insn")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""update_erratum_insn"" " string_content ") ))) ;) })) (if_statement "if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }" if (parenthesized_expression "((uVar11 & 0x3b000000) != 0x39000000)" ( (binary_expression "(uVar11 & 0x3b000000) != 0x39000000" (parenthesized_expression "(uVar11 & 0x3b000000)" ( (binary_expression "uVar11 & 0x3b000000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }" { (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn")" identifier (argument_list "("../../gold/aarch64.cc",0x3ec,"update_erratum_insn")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""update_erratum_insn"" " string_content ") ))) ;) })) (if_statement "if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }" if (parenthesized_expression "((uVar18 & 0x1f) != (uVar11 & 0x1f))" ( (binary_expression "(uVar18 & 0x1f) != (uVar11 & 0x1f)" (parenthesized_expression "(uVar18 & 0x1f)" ( (binary_expression "uVar18 & 0x1f" identifier & number_literal) )) != (parenthesized_expression "(uVar11 & 0x1f)" ( (binary_expression "uVar11 & 0x1f" identifier & number_literal) ))) )) (compound_statement "{\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }" { (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn")" identifier (argument_list "("../../gold/aarch64.cc",0x3ee,"update_erratum_insn")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""update_erratum_insn"" " string_content ") ))) ;) })) (if_statement "if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }" if (parenthesized_expression "((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f))" ( (binary_expression "(uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)" (parenthesized_expression "(uVar18 >> 5 & 0x1f)" ( (binary_expression "uVar18 >> 5 & 0x1f" (binary_expression "uVar18 >> 5" identifier >> number_literal) & number_literal) )) != (parenthesized_expression "(uVar11 >> 5 & 0x1f)" ( (binary_expression "uVar11 >> 5 & 0x1f" (binary_expression "uVar11 >> 5" identifier >> number_literal) & number_literal) ))) )) (compound_statement "{\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }" { (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn")" identifier (argument_list "("../../gold/aarch64.cc",0x3f0,"update_erratum_insn")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""update_erratum_insn"" " string_content ") ))) ;) })) (expression_statement "iVar17 = *(int *)(iVar8 + 0x2c);" (assignment_expression "iVar17 = *(int *)(iVar8 + 0x2c)" identifier = (pointer_expression "*(int *)(iVar8 + 0x2c)" * (cast_expression "(int *)(iVar8 + 0x2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x2c)" ( (binary_expression "iVar8 + 0x2c" identifier + number_literal) ))))) ;) (expression_statement "*(uint *)(iVar8 + 0x20) = uVar18;" (assignment_expression "*(uint *)(iVar8 + 0x20) = uVar18" (pointer_expression "*(uint *)(iVar8 + 0x20)" * (cast_expression "(uint *)(iVar8 + 0x20)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x20)" ( (binary_expression "iVar8 + 0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);" (assignment_expression "puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17)" identifier = (cast_expression "(uint *)((int)piVar7 + (int)puVar22 + iVar17)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar7 + (int)puVar22 + iVar17)" ( (binary_expression "(int)piVar7 + (int)puVar22 + iVar17" (binary_expression "(int)piVar7 + (int)puVar22" (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)puVar22" ( (type_descriptor "int" primitive_type) ) identifier)) + identifier) )))) ;) (expression_statement "puVar12 = (uint *)*puVar16;" (assignment_expression "puVar12 = (uint *)*puVar16" identifier = (cast_expression "(uint *)*puVar16" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar16" * identifier))) ;) (if_statement "if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }" if (parenthesized_expression "(((uint)puVar12 & 0xffffffe0) != 0xd53bd040)" ( (binary_expression "((uint)puVar12 & 0xffffffe0) != 0xd53bd040" (parenthesized_expression "((uint)puVar12 & 0xffffffe0)" ( (binary_expression "(uint)puVar12 & 0xffffffe0" (cast_expression "(uint)puVar12" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }" { (if_statement "if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }" if (parenthesized_expression "(((uint)puVar12 & 0x9f000000) == 0x90000000)" ( (binary_expression "((uint)puVar12 & 0x9f000000) == 0x90000000" (parenthesized_expression "((uint)puVar12 & 0x9f000000)" ( (binary_expression "(uint)puVar12 & 0x9f000000" (cast_expression "(uint)puVar12" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }" { (expression_statement "uVar5 = iVar17 + uVar9;" (assignment_expression "uVar5 = iVar17 + uVar9" identifier = (binary_expression "iVar17 + uVar9" identifier + identifier)) ;) (expression_statement "uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;" (assignment_expression "uVar23 = (uint)puVar12 >> 3 & 0x1ffffc" identifier = (binary_expression "(uint)puVar12 >> 3 & 0x1ffffc" (binary_expression "(uint)puVar12 >> 3" (cast_expression "(uint)puVar12" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) & number_literal)) ;) (expression_statement "uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;" (assignment_expression "uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000" identifier = (binary_expression "(uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000" (parenthesized_expression "(uVar23 | (uint)puVar12 >> 0x1d & 3)" ( (binary_expression "uVar23 | (uint)puVar12 >> 0x1d & 3" identifier | (binary_expression "(uint)puVar12 >> 0x1d & 3" (binary_expression "(uint)puVar12 >> 0x1d" (cast_expression "(uint)puVar12" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) & number_literal)) )) * number_literal)) ;) (expression_statement "uVar18 = (uVar5 & 0xfffff000) - uVar5;" (assignment_expression "uVar18 = (uVar5 & 0xfffff000) - uVar5" identifier = (binary_expression "(uVar5 & 0xfffff000) - uVar5" (parenthesized_expression "(uVar5 & 0xfffff000)" ( (binary_expression "uVar5 & 0xfffff000" identifier & number_literal) )) - identifier)) ;) (expression_statement "uVar11 = uVar18 + uVar20;" (assignment_expression "uVar11 = uVar18 + uVar20" identifier = (binary_expression "uVar18 + uVar20" identifier + identifier)) ;) (expression_statement "iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);" (assignment_expression "iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11)" identifier = (binary_expression "(((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11)" (binary_expression "(((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20)" (parenthesized_expression "(((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5))" ( (binary_expression "((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)" (parenthesized_expression "((uVar23 >> 0x14) * -2 | uVar23 >> 0x14)" ( (binary_expression "(uVar23 >> 0x14) * -2 | uVar23 >> 0x14" (binary_expression "(uVar23 >> 0x14) * -2" (parenthesized_expression "(uVar23 >> 0x14)" ( (binary_expression "uVar23 >> 0x14" identifier >> number_literal) )) * number_literal) | (binary_expression "uVar23 >> 0x14" identifier >> number_literal)) )) - (call_expression "(uint)((uVar5 & 0xfffff000) < uVar5)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((uVar5 & 0xfffff000) < uVar5)" ( (binary_expression "(uVar5 & 0xfffff000) < uVar5" (parenthesized_expression "(uVar5 & 0xfffff000)" ( (binary_expression "uVar5 & 0xfffff000" identifier & number_literal) )) < identifier) )))) )) + (cast_expression "(uint)CARRY4(uVar18,uVar20)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(uVar18,uVar20)" identifier (argument_list "(uVar18,uVar20)" ( identifier , identifier ))))) + (call_expression "(uint)(0xffefffff < uVar11)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0xffefffff < uVar11)" ( (binary_expression "0xffefffff < uVar11" number_literal < identifier) ))))) ;) (if_statement "if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;" if (parenthesized_expression "(iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))" ( (binary_expression "iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000)" (binary_expression "iVar17 != 0" identifier != number_literal) || (binary_expression "(uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000)" (binary_expression "(uint)-iVar17" (parenthesized_expression "(uint)" ( identifier )) - identifier) < (call_expression "(uint)(0x1fffff < uVar11 + 0x100000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0x1fffff < uVar11 + 0x100000)" ( (binary_expression "0x1fffff < uVar11 + 0x100000" number_literal < (binary_expression "uVar11 + 0x100000" identifier + number_literal)) ))))) )) (goto_statement "goto LAB_001e6269;" goto statement_identifier ;)) (if_statement "if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }" if (parenthesized_expression "(((uint)puVar12 & 0x1f000000) != 0x10000000)" ( (binary_expression "((uint)puVar12 & 0x1f000000) != 0x10000000" (parenthesized_expression "((uint)puVar12 & 0x1f000000)" ( (binary_expression "(uint)puVar12 & 0x1f000000" (cast_expression "(uint)puVar12" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }" { (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm")" identifier (argument_list "("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""aarch64_adr_encode_imm"" " string_content ") ))) ;) })) (expression_statement "*puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;" (assignment_expression "*puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f" (pointer_expression "*puVar16" * identifier) = (binary_expression "(uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f" (binary_expression "(uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0" (binary_expression "(uVar11 & 3) << 0x1d" (parenthesized_expression "(uVar11 & 3)" ( (binary_expression "uVar11 & 3" identifier & number_literal) )) << number_literal) | (binary_expression "uVar11 * 8 & 0xffffe0" (binary_expression "uVar11 * 8" identifier * number_literal) & number_literal)) | (binary_expression "(uint)puVar12 & 0x1f00001f" (cast_expression "(uint)puVar12" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal))) ;) }) (else_clause "else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }" else (if_statement "if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }" if (parenthesized_expression "((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040))" ( (binary_expression "(iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)" (parenthesized_expression "(iVar17 == 0)" ( (binary_expression "iVar17 == 0" identifier == number_literal) )) || (parenthesized_expression "((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)" ( (binary_expression "(*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040" (parenthesized_expression "(*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0)" ( (binary_expression "*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0" (pointer_expression "*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4)" * (cast_expression "(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar7 + (int)puVar22 + iVar17 + -4)" ( (binary_expression "(int)piVar7 + (int)puVar22 + iVar17 + -4" (binary_expression "(int)piVar7 + (int)puVar22 + iVar17" (binary_expression "(int)piVar7 + (int)puVar22" (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)puVar22" ( (type_descriptor "int" primitive_type) ) identifier)) + identifier) + number_literal) )))) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }" { (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")" identifier (argument_list "("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""try_fix_erratum_843419_optimized"" " string_content ") ))) ;) })))) })) (if_statement "if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;" if (parenthesized_expression "((*(byte *)(puVar24 + 7) & 1) == 0)" ( (binary_expression "(*(byte *)(puVar24 + 7) & 1) == 0" (parenthesized_expression "(*(byte *)(puVar24 + 7) & 1)" ( (binary_expression "*(byte *)(puVar24 + 7) & 1" (pointer_expression "*(byte *)(puVar24 + 7)" * (cast_expression "(byte *)(puVar24 + 7)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 7)" ( (binary_expression "puVar24 + 7" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_001e670d;" goto statement_identifier ;)) (expression_statement "iVar17 = puVar24[1];" (assignment_expression "iVar17 = puVar24[1]" identifier = (subscript_expression "puVar24[1]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }" else (compound_statement "{\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }" { (if_statement "if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }" if (parenthesized_expression "(*(int *)(iVar8 + 0x10) != 5)" ( (binary_expression "*(int *)(iVar8 + 0x10) != 5" (pointer_expression "*(int *)(iVar8 + 0x10)" * (cast_expression "(int *)(iVar8 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x10)" ( (binary_expression "iVar8 + 0x10" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }" { (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn")" identifier (argument_list "("../../gold/aarch64.cc",0x3f8,"update_erratum_insn")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""update_erratum_insn"" " string_content ") ))) ;) })) (if_statement "if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }" if (parenthesized_expression "(uVar18 != uVar11)" ( (binary_expression "uVar18 != uVar11" identifier != identifier) )) (compound_statement "{\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }" { (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn")" identifier (argument_list "("../../gold/aarch64.cc",0x3f5,"update_erratum_insn")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""update_erratum_insn"" " string_content ") ))) ;) })) (labeled_statement "LAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;" statement_identifier : (if_statement "if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;" if (parenthesized_expression "((*(byte *)(puVar24 + 7) & 1) == 0)" ( (binary_expression "(*(byte *)(puVar24 + 7) & 1) == 0" (parenthesized_expression "(*(byte *)(puVar24 + 7) & 1)" ( (binary_expression "*(byte *)(puVar24 + 7) & 1" (pointer_expression "*(byte *)(puVar24 + 7)" * (cast_expression "(byte *)(puVar24 + 7)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 7)" ( (binary_expression "puVar24 + 7" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_001e670d;" goto statement_identifier ;))) (expression_statement "iVar17 = puVar24[1];" (assignment_expression "iVar17 = puVar24[1]" identifier = (subscript_expression "puVar24[1]" identifier [ number_literal ])) ;) (if_statement "if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;" if (parenthesized_expression "(*(int *)(iVar8 + 0xc) == -1)" ( (binary_expression "*(int *)(iVar8 + 0xc) == -1" (pointer_expression "*(int *)(iVar8 + 0xc)" * (cast_expression "(int *)(iVar8 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0xc)" ( (binary_expression "iVar8 + 0xc" identifier + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_001e5d9c;" goto statement_identifier ;)) (expression_statement "*(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;" (assignment_expression "*(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000" (pointer_expression "*(uint *)(iVar10 + *(int *)(iVar8 + 0x1c))" * (cast_expression "(uint *)(iVar10 + *(int *)(iVar8 + 0x1c))" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + *(int *)(iVar8 + 0x1c))" ( (binary_expression "iVar10 + *(int *)(iVar8 + 0x1c)" identifier + (pointer_expression "*(int *)(iVar8 + 0x1c)" * (cast_expression "(int *)(iVar8 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1c)" ( (binary_expression "iVar8 + 0x1c" identifier + number_literal) ))))) )))) = (binary_expression "(iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000" (binary_expression "(iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff" (binary_expression "(iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2" (binary_expression "(iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78)" (parenthesized_expression "(iVar17 + 3 + puVar24[0x16] & 0xfffffffcU)" ( (binary_expression "iVar17 + 3 + puVar24[0x16] & 0xfffffffcU" (binary_expression "iVar17 + 3 + puVar24[0x16]" (binary_expression "iVar17 + 3" identifier + number_literal) + (subscript_expression "puVar24[0x16]" identifier [ number_literal ])) & number_literal) )) + (parenthesized_expression "(*(int *)(iVar8 + 0xc) - (int)local_78)" ( (binary_expression "*(int *)(iVar8 + 0xc) - (int)local_78" (pointer_expression "*(int *)(iVar8 + 0xc)" * (cast_expression "(int *)(iVar8 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0xc)" ( (binary_expression "iVar8 + 0xc" identifier + number_literal) )))) - (cast_expression "(int)local_78" ( (type_descriptor "int" primitive_type) ) identifier)) ))) >> number_literal) & number_literal) | number_literal)) ;) }))) (expression_statement "uVar18 = (iVar17 - uVar4) + (int)piVar7;" (assignment_expression "uVar18 = (iVar17 - uVar4) + (int)piVar7" identifier = (binary_expression "(iVar17 - uVar4) + (int)piVar7" (parenthesized_expression "(iVar17 - uVar4)" ( (binary_expression "iVar17 - uVar4" identifier - identifier) )) + (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }" if (parenthesized_expression "(*(int *)(iVar8 + 0x20) == -1)" ( (binary_expression "*(int *)(iVar8 + 0x20) == -1" (pointer_expression "*(int *)(iVar8 + 0x20)" * (cast_expression "(int *)(iVar8 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x20)" ( (binary_expression "iVar8 + 0x20" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }" { (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub")" identifier (argument_list "("../../gold/aarch64.cc",0x663,"relocate_erratum_stub")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_erratum_stub"" " string_content ") ))) ;) })) (if_statement "if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;" if (parenthesized_expression "(*(int *)(iVar8 + 0xc) == -1)" ( (binary_expression "*(int *)(iVar8 + 0xc) == -1" (pointer_expression "*(int *)(iVar8 + 0xc)" * (cast_expression "(int *)(iVar8 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0xc)" ( (binary_expression "iVar8 + 0xc" identifier + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_001e5d9c;" goto statement_identifier ;)) (expression_statement "iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);" (assignment_expression "iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc)" identifier = (binary_expression "*(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc)" (pointer_expression "*(int *)(iVar8 + 0xc)" * (cast_expression "(int *)(iVar8 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0xc)" ( (binary_expression "iVar8 + 0xc" identifier + number_literal) )))) + (parenthesized_expression "(iVar17 + puVar24[0x16] + 3U & 0xfffffffc)" ( (binary_expression "iVar17 + puVar24[0x16] + 3U & 0xfffffffc" (binary_expression "iVar17 + puVar24[0x16] + 3U" (binary_expression "iVar17 + puVar24[0x16]" identifier + (subscript_expression "puVar24[0x16]" identifier [ number_literal ])) + number_literal) & number_literal) )))) ;) (if_statement "if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }" if (parenthesized_expression "(1 < *(int *)(iVar8 + 0x10) - 4U)" ( (binary_expression "1 < *(int *)(iVar8 + 0x10) - 4U" number_literal < (binary_expression "*(int *)(iVar8 + 0x10) - 4U" (pointer_expression "*(int *)(iVar8 + 0x10)" * (cast_expression "(int *)(iVar8 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x10)" ( (binary_expression "iVar8 + 0x10" identifier + number_literal) )))) - number_literal)) )) (compound_statement "{\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }" { (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub")" identifier (argument_list "("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_erratum_stub"" " string_content ") ))) ;) })) (expression_statement "iVar15 = iVar13 + 4;" (assignment_expression "iVar15 = iVar13 + 4" identifier = (binary_expression "iVar13 + 4" identifier + number_literal)) ;) (expression_statement "*(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);" (assignment_expression "*(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20)" (pointer_expression "*(int *)(uVar18 + (iVar13 - iVar17))" * (cast_expression "(int *)(uVar18 + (iVar13 - iVar17))" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar18 + (iVar13 - iVar17))" ( (binary_expression "uVar18 + (iVar13 - iVar17)" identifier + (parenthesized_expression "(iVar13 - iVar17)" ( (binary_expression "iVar13 - iVar17" identifier - identifier) ))) )))) = (pointer_expression "*(int *)(iVar8 + 0x20)" * (cast_expression "(int *)(iVar8 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x20)" ( (binary_expression "iVar8 + 0x20" identifier + number_literal) ))))) ;) (if_statement "if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;" if (parenthesized_expression "((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff)" ( (binary_expression "(*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff" (parenthesized_expression "(*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4))" ( (binary_expression "*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)" (pointer_expression "*(uint *)(iVar8 + 8)" * (cast_expression "(uint *)(iVar8 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 8)" ( (binary_expression "iVar8 + 8" identifier + number_literal) )))) & (pointer_expression "*(uint *)(iVar8 + 4)" * (cast_expression "(uint *)(iVar8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 4)" ( (binary_expression "iVar8 + 4" identifier + number_literal) ))))) )) == number_literal) )) (goto_statement "goto LAB_001e67c7;" goto statement_identifier ;)) (expression_statement "*(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;" (assignment_expression "*(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000" (pointer_expression "*(uint *)(uVar18 + (iVar15 - iVar17))" * (cast_expression "(uint *)(uVar18 + (iVar15 - iVar17))" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar18 + (iVar15 - iVar17))" ( (binary_expression "uVar18 + (iVar15 - iVar17)" identifier + (parenthesized_expression "(iVar15 - iVar17)" ( (binary_expression "iVar15 - iVar17" identifier - identifier) ))) )))) = (binary_expression "*(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000" (binary_expression "*(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff" (binary_expression "*(uint *)(iVar8 + 4) - iVar15 >> 2" (binary_expression "*(uint *)(iVar8 + 4) - iVar15" (pointer_expression "*(uint *)(iVar8 + 4)" * (cast_expression "(uint *)(iVar8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 4)" ( (binary_expression "iVar8 + 4" identifier + number_literal) )))) - identifier) >> number_literal) & number_literal) | number_literal)) ;) (if_statement "if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }" if (parenthesized_expression "(*(int *)(iVar8 + 0x20) == -1)" ( (binary_expression "*(int *)(iVar8 + 0x20) == -1" (pointer_expression "*(int *)(iVar8 + 0x20)" * (cast_expression "(int *)(iVar8 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x20)" ( (binary_expression "iVar8 + 0x20" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }" { (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")" identifier (argument_list "("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""invalidate_erratum_stub"" " string_content ") ))) ;) })) (expression_statement "*(undefined4 *)(iVar8 + 0x20) = 0xffffffff;" (assignment_expression "*(undefined4 *)(iVar8 + 0x20) = 0xffffffff" (pointer_expression "*(undefined4 *)(iVar8 + 0x20)" * (cast_expression "(undefined4 *)(iVar8 + 0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x20)" ( (binary_expression "iVar8 + 0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_7c = thunk_FUN_003af660(local_7c);" (assignment_expression "local_7c = thunk_FUN_003af660(local_7c)" identifier = (call_expression "thunk_FUN_003af660(local_7c)" identifier (argument_list "(local_7c)" ( identifier )))) ;) (expression_statement "ppuVar21 = local_74;" (assignment_expression "ppuVar21 = local_74" identifier = identifier) ;) (if_statement "if (local_30 == local_7c) break;" if (parenthesized_expression "(local_30 == local_7c)" ( (binary_expression "local_30 == local_7c" identifier == identifier) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = *(int *)(local_7c + 0x10);" (assignment_expression "iVar8 = *(int *)(local_7c + 0x10)" identifier = (pointer_expression "*(int *)(local_7c + 0x10)" * (cast_expression "(int *)(local_7c + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_7c + 0x10)" ( (binary_expression "local_7c + 0x10" identifier + number_literal) ))))) ;) (expression_statement "uVar18 = *(uint *)(iVar8 + 0x1c);" (assignment_expression "uVar18 = *(uint *)(iVar8 + 0x1c)" identifier = (pointer_expression "*(uint *)(iVar8 + 0x1c)" * (cast_expression "(uint *)(iVar8 + 0x1c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1c)" ( (binary_expression "iVar8 + 0x1c" identifier + number_literal) ))))) ;) (expression_statement "puVar12 = (uint *)(uVar18 + uVar9);" (assignment_expression "puVar12 = (uint *)(uVar18 + uVar9)" identifier = (cast_expression "(uint *)(uVar18 + uVar9)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar18 + uVar9)" ( (binary_expression "uVar18 + uVar9" identifier + identifier) )))) ;) (expression_statement "local_78 = *(uint **)(iVar8 + 0x24);" (assignment_expression "local_78 = *(uint **)(iVar8 + 0x24)" identifier = (pointer_expression "*(uint **)(iVar8 + 0x24)" * (cast_expression "(uint **)(iVar8 + 0x24)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar8 + 0x24)" ( (binary_expression "iVar8 + 0x24" identifier + number_literal) ))))) ;) (if_statement "if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;" if (parenthesized_expression "(((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff)" ( (binary_expression "((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff" (parenthesized_expression "((uint)local_78 & *(uint *)(iVar8 + 0x28))" ( (binary_expression "(uint)local_78 & *(uint *)(iVar8 + 0x28)" (cast_expression "(uint)local_78" ( (type_descriptor "uint" type_identifier) ) identifier) & (pointer_expression "*(uint *)(iVar8 + 0x28)" * (cast_expression "(uint *)(iVar8 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x28)" ( (binary_expression "iVar8 + 0x28" identifier + number_literal) ))))) )) == number_literal) )) (goto_statement "goto LAB_001e674b;" goto statement_identifier ;)) (if_statement "if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;" if (parenthesized_expression "(*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12)" ( (binary_expression "*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12" (binary_expression "*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9)" (pointer_expression "*(uint *)(iVar8 + 0x28)" * (cast_expression "(uint *)(iVar8 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x28)" ( (binary_expression "iVar8 + 0x28" identifier + number_literal) )))) != (binary_expression "iVar19 + (uint)CARRY4(uVar18,uVar9)" identifier + (cast_expression "(uint)CARRY4(uVar18,uVar9)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(uVar18,uVar9)" identifier (argument_list "(uVar18,uVar9)" ( identifier , identifier )))))) || (binary_expression "local_78 != puVar12" identifier != identifier)) )) (goto_statement "goto LAB_001e6234;" goto statement_identifier ;)) }) while (parenthesized_expression "( true )" ( true )) ;) })) })) (expression_statement "local_5c = local_5c + 1;" (assignment_expression "local_5c = local_5c + 1" identifier = (binary_expression "local_5c + 1" identifier + number_literal)) ;) (if_statement "if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }" if (parenthesized_expression "(local_5c == local_58)" ( (binary_expression "local_5c == local_58" identifier == identifier) )) (compound_statement "{\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }" { (expression_statement "local_58 = *(uint *)(param_1 + 0x28);" (assignment_expression "local_58 = *(uint *)(param_1 + 0x28)" identifier = (pointer_expression "*(uint *)(param_1 + 0x28)" * (cast_expression "(uint *)(param_1 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x28)" ( (binary_expression "param_1 + 0x28" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_001e5adf;" goto statement_identifier ;) })) (expression_statement "iVar8 = *(int *)(param_1 + 0x13c);" (assignment_expression "iVar8 = *(int *)(param_1 + 0x13c)" identifier = (pointer_expression "*(int *)(param_1 + 0x13c)" * (cast_expression "(int *)(param_1 + 0x13c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x13c)" ( (binary_expression "param_1 + 0x13c" identifier + number_literal) ))))) ;) (expression_statement "iVar19 = *(int *)(param_1 + 0x140);" (assignment_expression "iVar19 = *(int *)(param_1 + 0x140)" identifier = (pointer_expression "*(int *)(param_1 + 0x140)" * (cast_expression "(int *)(param_1 + 0x140)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x140)" ( (binary_expression "param_1 + 0x140" identifier + number_literal) ))))) ;) }) while (parenthesized_expression "(local_5c < (uint)(iVar19 - iVar8 >> 2))" ( (binary_expression "local_5c < (uint)(iVar19 - iVar8 >> 2)" identifier < (call_expression "(uint)(iVar19 - iVar8 >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(iVar19 - iVar8 >> 2)" ( (binary_expression "iVar19 - iVar8 >> 2" (binary_expression "iVar19 - iVar8" identifier - identifier) >> number_literal) )))) )) ;) })) (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19)" identifier (argument_list "("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19)" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""stub_table"" " string_content ") , identifier , identifier ))) ;) })) (labeled_statement "LAB_001e5adf:\n    piVar7 = *(int **)(DAT_005ea7c8 + 0xc);" statement_identifier : (expression_statement "piVar7 = *(int **)(DAT_005ea7c8 + 0xc);" (assignment_expression "piVar7 = *(int **)(DAT_005ea7c8 + 0xc)" identifier = (pointer_expression "*(int **)(DAT_005ea7c8 + 0xc)" * (cast_expression "(int **)(DAT_005ea7c8 + 0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(DAT_005ea7c8 + 0xc)" ( (binary_expression "DAT_005ea7c8 + 0xc" identifier + number_literal) ))))) ;)) (if_statement "if (piVar7 == (int *)0x0) {\n                    \n      FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);\n    }" if (parenthesized_expression "(piVar7 == (int *)0x0)" ( (binary_expression "piVar7 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    \n      FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);\n    }" { (expression_statement "FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);" (call_expression "FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18)" identifier (argument_list "("../../gold/parameters.h",0x69,"target",uVar18)" ( (string_literal ""../../gold/parameters.h"" " string_content ") , number_literal , (string_literal ""target"" " string_content ") , identifier ))) ;) })) (expression_statement "piVar3 = (int *)piVar7[1];" (assignment_expression "piVar3 = (int *)piVar7[1]" identifier = (cast_expression "(int *)piVar7[1]" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar7[1]" identifier [ number_literal ]))) ;) (if_statement "if (((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0')) {\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);\n    }" if (parenthesized_expression "(((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0'))" ( (binary_expression "((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0')" (parenthesized_expression "((piVar3[2] != 0xb7) || (*piVar3 != 0x40))" ( (binary_expression "(piVar3[2] != 0xb7) || (*piVar3 != 0x40)" (parenthesized_expression "(piVar3[2] != 0xb7)" ( (binary_expression "piVar3[2] != 0xb7" (subscript_expression "piVar3[2]" identifier [ number_literal ]) != number_literal) )) || (parenthesized_expression "(*piVar3 != 0x40)" ( (binary_expression "*piVar3 != 0x40" (pointer_expression "*piVar3" * identifier) != number_literal) ))) )) || (parenthesized_expression "((char)piVar3[1] != '\0')" ( (binary_expression "(char)piVar3[1] != '\0'" (cast_expression "(char)piVar3[1]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "piVar3[1]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);\n    }" { (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21)" identifier (argument_list "("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21)" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""current_target"" " string_content ") , identifier ))) ;) })) (if_statement "if (1 < local_58) {\n      uVar18 = 1;\n      puVar12 = &local_24;\n      do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);\n    }" if (parenthesized_expression "(1 < local_58)" ( (binary_expression "1 < local_58" number_literal < identifier) )) (compound_statement "{\n      uVar18 = 1;\n      puVar12 = &local_24;\n      do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);\n    }" { (expression_statement "uVar18 = 1;" (assignment_expression "uVar18 = 1" identifier = number_literal) ;) (expression_statement "puVar12 = &local_24;" (assignment_expression "puVar12 = &local_24" identifier = (pointer_expression "&local_24" & identifier)) ;) (do_statement "do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);" do (compound_statement "{\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      }" { (expression_statement "local_24 = param_1;" (assignment_expression "local_24 = param_1" identifier = identifier) ;) (expression_statement "local_20 = uVar18;" (assignment_expression "local_20 = uVar18" identifier = identifier) ;) (expression_statement "piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);" (assignment_expression "piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1)" identifier = (cast_expression "(int *)FUN_001d1150(uVar18 ^ param_1)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_001d1150(uVar18 ^ param_1)" identifier (argument_list "(uVar18 ^ param_1)" ( (binary_expression "uVar18 ^ param_1" identifier ^ identifier) ))))) ;) (if_statement "if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }" if (parenthesized_expression "(((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0))))" ( (binary_expression "((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))" (parenthesized_expression "((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))" ( (binary_expression "(((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20))))" (parenthesized_expression "(((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0))" ( (binary_expression "((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)" (parenthesized_expression "((piVar3 != (int *)0x0) && (*piVar3 != 0))" ( (binary_expression "(piVar3 != (int *)0x0) && (*piVar3 != 0)" (parenthesized_expression "(piVar3 != (int *)0x0)" ( (binary_expression "piVar3 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(*piVar3 != 0)" ( (binary_expression "*piVar3 != 0" (pointer_expression "*piVar3" * identifier) != number_literal) ))) )) && (parenthesized_expression "(iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)" ( (comma_expression "iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0" (assignment_expression "iVar8 = *(int *)(*piVar3 + 0xc)" identifier = (pointer_expression "*(int *)(*piVar3 + 0xc)" * (cast_expression "(int *)(*piVar3 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*piVar3 + 0xc)" ( (binary_expression "*piVar3 + 0xc" (pointer_expression "*piVar3" * identifier) + number_literal) ))))) , (binary_expression "iVar8 != 0" identifier != number_literal)) ))) )) && (parenthesized_expression "((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20))))" ( (parenthesized_expression "(iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))" ( (comma_expression "iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20))" (assignment_expression "iVar19 = *(int *)(iVar8 + 0x34)" identifier = (pointer_expression "*(int *)(iVar8 + 0x34)" * (cast_expression "(int *)(iVar8 + 0x34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x34)" ( (binary_expression "iVar8 + 0x34" identifier + number_literal) ))))) , (binary_expression "iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20))" (binary_expression "iVar19 != 0" identifier != number_literal) && (parenthesized_expression "(iVar8 == *(int *)(iVar19 + 0x20))" ( (binary_expression "iVar8 == *(int *)(iVar19 + 0x20)" identifier == (pointer_expression "*(int *)(iVar19 + 0x20)" * (cast_expression "(int *)(iVar19 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x20)" ( (binary_expression "iVar19 + 0x20" identifier + number_literal) ))))) )))) )) ))) )) && (parenthesized_expression "((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))" ( (parenthesized_expression "(*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0))" ( (binary_expression "*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)" (binary_expression "*(int *)(iVar19 + 0x30) != 0" (pointer_expression "*(int *)(iVar19 + 0x30)" * (cast_expression "(int *)(iVar19 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x30)" ( (binary_expression "iVar19 + 0x30" identifier + number_literal) )))) != number_literal) || (parenthesized_expression "(*(int *)(iVar19 + 0x54) != 0)" ( (binary_expression "*(int *)(iVar19 + 0x54) != 0" (pointer_expression "*(int *)(iVar19 + 0x54)" * (cast_expression "(int *)(iVar19 + 0x54)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x54)" ( (binary_expression "iVar19 + 0x54" identifier + number_literal) )))) != number_literal) ))) )) ))) )) (compound_statement "{\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }" { (expression_statement "puVar24 = *(undefined4 **)(param_1 + 0x3c);" (assignment_expression "puVar24 = *(undefined4 **)(param_1 + 0x3c)" identifier = (pointer_expression "*(undefined4 **)(param_1 + 0x3c)" * (cast_expression "(undefined4 **)(param_1 + 0x3c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x3c)" ( (binary_expression "param_1 + 0x3c" identifier + number_literal) ))))) ;) (expression_statement "uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;" (assignment_expression "uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2" identifier = (binary_expression "(int)puVar24 - *(int *)(param_1 + 0x38) >> 2" (binary_expression "(int)puVar24 - *(int *)(param_1 + 0x38)" (cast_expression "(int)puVar24" ( (type_descriptor "int" primitive_type) ) identifier) - (pointer_expression "*(int *)(param_1 + 0x38)" * (cast_expression "(int *)(param_1 + 0x38)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x38)" ( (binary_expression "param_1 + 0x38" identifier + number_literal) ))))) >> number_literal)) ;) (if_statement "if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }" if (parenthesized_expression "(uVar4 <= uVar18)" ( (binary_expression "uVar4 <= uVar18" identifier <= identifier) )) (compound_statement "{\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }" { (expression_statement "FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);" (call_expression "FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12)" identifier (argument_list "("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12)" ( (string_literal ""../../gold/object.h"" " string_content ") , number_literal , (string_literal ""do_output_section"" " string_content ") , identifier , identifier , identifier , identifier ))) ;) })) (if_statement "if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }" if (parenthesized_expression "(*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0)" ( (binary_expression "*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0" (pointer_expression "*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4)" * (cast_expression "(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_1 + 0x38) + uVar18 * 4)" ( (binary_expression "*(int *)(param_1 + 0x38) + uVar18 * 4" (pointer_expression "*(int *)(param_1 + 0x38)" * (cast_expression "(int *)(param_1 + 0x38)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x38)" ( (binary_expression "param_1 + 0x38" identifier + number_literal) )))) + (binary_expression "uVar18 * 4" identifier * number_literal)) )))) == number_literal) )) (compound_statement "{\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }" { (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12)" identifier (argument_list "("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12)" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""do_relocate_sections"" " string_content ") , number_literal , identifier , identifier , identifier ))) ;) })) (expression_statement "piVar3 = (int *)(uVar18 * 0x1c + *param_6);" (assignment_expression "piVar3 = (int *)(uVar18 * 0x1c + *param_6)" identifier = (cast_expression "(int *)(uVar18 * 0x1c + *param_6)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar18 * 0x1c + *param_6)" ( (binary_expression "uVar18 * 0x1c + *param_6" (binary_expression "uVar18 * 0x1c" identifier * number_literal) + (pointer_expression "*param_6" * identifier)) )))) ;) (expression_statement "iVar8 = *piVar3;" (assignment_expression "iVar8 = *piVar3" identifier = (pointer_expression "*piVar3" * identifier)) ;) (if_statement "if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }" { (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12)" identifier (argument_list "("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12)" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""do_relocate_sections"" " string_content ") , identifier , identifier , identifier , identifier ))) ;) })) (if_statement "if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }" if (parenthesized_expression "((*(byte *)(iVar19 + 0x1c) & 1) == 0)" ( (binary_expression "(*(byte *)(iVar19 + 0x1c) & 1) == 0" (parenthesized_expression "(*(byte *)(iVar19 + 0x1c) & 1)" ( (binary_expression "*(byte *)(iVar19 + 0x1c) & 1" (pointer_expression "*(byte *)(iVar19 + 0x1c)" * (cast_expression "(byte *)(iVar19 + 0x1c)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x1c)" ( (binary_expression "iVar19 + 0x1c" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }" { (labeled_statement "LAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);" statement_identifier : (expression_statement "FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);" (call_expression "FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24)" identifier (argument_list "("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24)" ( (string_literal ""../../gold/output.h"" " string_content ") , number_literal , (string_literal ""address"" " string_content ") , identifier , identifier , identifier ))) ;)) })) (expression_statement "uVar4 = *(uint *)(iVar19 + 4);" (assignment_expression "uVar4 = *(uint *)(iVar19 + 4)" identifier = (pointer_expression "*(uint *)(iVar19 + 4)" * (cast_expression "(uint *)(iVar19 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 4)" ( (binary_expression "iVar19 + 4" identifier + number_literal) ))))) ;) (expression_statement "iVar10 = *(int *)(iVar19 + 8);" (assignment_expression "iVar10 = *(int *)(iVar19 + 8)" identifier = (pointer_expression "*(int *)(iVar19 + 8)" * (cast_expression "(int *)(iVar19 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 8)" ( (binary_expression "iVar19 + 8" identifier + number_literal) ))))) ;) (expression_statement "iVar17 = piVar3[1];" (assignment_expression "iVar17 = piVar3[1]" identifier = (subscript_expression "piVar3[1]" identifier [ number_literal ])) ;) (if_statement "if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }" if (parenthesized_expression "((*(byte *)(iVar19 + 0x1c) & 2) == 0)" ( (binary_expression "(*(byte *)(iVar19 + 0x1c) & 2) == 0" (parenthesized_expression "(*(byte *)(iVar19 + 0x1c) & 2)" ( (binary_expression "*(byte *)(iVar19 + 0x1c) & 2" (pointer_expression "*(byte *)(iVar19 + 0x1c)" * (cast_expression "(byte *)(iVar19 + 0x1c)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x1c)" ( (binary_expression "iVar19 + 0x1c" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }" { (expression_statement "FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);" (call_expression "FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12)" identifier (argument_list "("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12)" ( (string_literal ""../../gold/output.h"" " string_content ") , number_literal , (string_literal ""data_size"" " string_content ") , identifier , identifier , identifier , identifier ))) ;) })) (expression_statement "uVar9 = *(uint *)(iVar19 + 0xc);" (assignment_expression "uVar9 = *(uint *)(iVar19 + 0xc)" identifier = (pointer_expression "*(uint *)(iVar19 + 0xc)" * (cast_expression "(uint *)(iVar19 + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0xc)" ( (binary_expression "iVar19 + 0xc" identifier + number_literal) ))))) ;) (expression_statement "local_ac = *(int **)(iVar19 + 0x2c);" (assignment_expression "local_ac = *(int **)(iVar19 + 0x2c)" identifier = (pointer_expression "*(int **)(iVar19 + 0x2c)" * (cast_expression "(int **)(iVar19 + 0x2c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar19 + 0x2c)" ( (binary_expression "iVar19 + 0x2c" identifier + number_literal) ))))) ;) (if_statement "if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }" if (parenthesized_expression "(local_ac != (int *)0x0)" ( (binary_expression "local_ac != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }" { (expression_statement "iVar19 = local_ac[5];" (assignment_expression "iVar19 = local_ac[5]" identifier = (subscript_expression "local_ac[5]" identifier [ number_literal ])) ;) (expression_statement "uVar11 = *(uint *)(iVar19 + 0xc);" (assignment_expression "uVar11 = *(uint *)(iVar19 + 0xc)" identifier = (pointer_expression "*(uint *)(iVar19 + 0xc)" * (cast_expression "(uint *)(iVar19 + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0xc)" ( (binary_expression "iVar19 + 0xc" identifier + number_literal) ))))) ;) (if_statement "if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }" if (parenthesized_expression "(uVar11 == 0xffffffff)" ( (binary_expression "uVar11 == 0xffffffff" identifier == number_literal) )) (compound_statement "{\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }" { (labeled_statement "LAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);" statement_identifier : (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12)" identifier (argument_list "("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12)" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""offset"" " string_content ") , identifier , identifier , identifier , identifier ))) ;)) })) (expression_statement "puVar24 = &DAT_005eb508;" (assignment_expression "puVar24 = &DAT_005eb508" identifier = (pointer_expression "&DAT_005eb508" & identifier)) ;) (do_statement "do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );" do (compound_statement "{\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            }" { (expression_statement "iVar13 = *(int *)(iVar19 + 0x10);" (assignment_expression "iVar13 = *(int *)(iVar19 + 0x10)" identifier = (pointer_expression "*(int *)(iVar19 + 0x10)" * (cast_expression "(int *)(iVar19 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x10)" ( (binary_expression "iVar19 + 0x10" identifier + number_literal) ))))) ;) (if_statement "if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }" if (parenthesized_expression "((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0))" ( (binary_expression "(DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)" (parenthesized_expression "(DAT_005eb500 == '\0')" ( (binary_expression "DAT_005eb500 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)" ( (comma_expression "iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0" (assignment_expression "iVar15 = FUN_003ac660(&DAT_005eb500)" identifier = (call_expression "FUN_003ac660(&DAT_005eb500)" identifier (argument_list "(&DAT_005eb500)" ( (pointer_expression "&DAT_005eb500" & identifier) )))) , (binary_expression "iVar15 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }" { (expression_statement "DAT_005eb508 = &PTR_DAT_005d5c28;" (assignment_expression "DAT_005eb508 = &PTR_DAT_005d5c28" identifier = (pointer_expression "&PTR_DAT_005d5c28" & identifier)) ;) (expression_statement "DAT_005eb50c = &PTR_DAT_005d5c20;" (assignment_expression "DAT_005eb50c = &PTR_DAT_005d5c20" identifier = (pointer_expression "&PTR_DAT_005d5c20" & identifier)) ;) (expression_statement "DAT_005eb510 = &PTR_DAT_005d5c18;" (assignment_expression "DAT_005eb510 = &PTR_DAT_005d5c18" identifier = (pointer_expression "&PTR_DAT_005d5c18" & identifier)) ;) (expression_statement "DAT_005eb514 = &PTR_DAT_005d5c10;" (assignment_expression "DAT_005eb514 = &PTR_DAT_005d5c10" identifier = (pointer_expression "&PTR_DAT_005d5c10" & identifier)) ;) (expression_statement "DAT_005eb518 = &PTR_DAT_005d5c08;" (assignment_expression "DAT_005eb518 = &PTR_DAT_005d5c08" identifier = (pointer_expression "&PTR_DAT_005d5c08" & identifier)) ;) (expression_statement "DAT_005eb51c = &PTR_DAT_005d5c00;" (assignment_expression "DAT_005eb51c = &PTR_DAT_005d5c00" identifier = (pointer_expression "&PTR_DAT_005d5c00" & identifier)) ;) (expression_statement "FUN_003ac7d0(&DAT_005eb500);" (call_expression "FUN_003ac7d0(&DAT_005eb500)" identifier (argument_list "(&DAT_005eb500)" ( (pointer_expression "&DAT_005eb500" & identifier) ))) ;) (expression_statement "__cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);" (call_expression "__cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4)" identifier (argument_list "(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4)" ( identifier , identifier , (pointer_expression "&PTR_LOOP_005ea2e4" & identifier) ))) ;) })) (if_statement "if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }" if (parenthesized_expression "(uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4)" ( (binary_expression "uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4" identifier < (binary_expression "uVar11 + *(int *)(puVar24[iVar13] + 4) * 4" identifier + (binary_expression "*(int *)(puVar24[iVar13] + 4) * 4" (pointer_expression "*(int *)(puVar24[iVar13] + 4)" * (cast_expression "(int *)(puVar24[iVar13] + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24[iVar13] + 4)" ( (binary_expression "puVar24[iVar13] + 4" (subscript_expression "puVar24[iVar13]" identifier [ identifier ]) + number_literal) )))) * number_literal))) )) (compound_statement "{\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }" { (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12)" identifier (argument_list "("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12)" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_reloc_stub"" " string_content ") , identifier , identifier , identifier , identifier ))) ;) })) (expression_statement "uVar5 = uVar11 + uVar4;" (assignment_expression "uVar5 = uVar11 + uVar4" identifier = (binary_expression "uVar11 + uVar4" identifier + identifier)) ;) (expression_statement "iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);" (assignment_expression "iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4)" identifier = (binary_expression "iVar10 + (uint)CARRY4(uVar11,uVar4)" identifier + (cast_expression "(uint)CARRY4(uVar11,uVar4)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(uVar11,uVar4)" identifier (argument_list "(uVar11,uVar4)" ( identifier , identifier )))))) ;) (expression_statement "iVar13 = *(int *)(iVar19 + 0x10);" (assignment_expression "iVar13 = *(int *)(iVar19 + 0x10)" identifier = (pointer_expression "*(int *)(iVar19 + 0x10)" * (cast_expression "(int *)(iVar19 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x10)" ( (binary_expression "iVar19 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);" (assignment_expression "puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8)" identifier = (cast_expression "(uint *)(uVar11 + (uVar4 - iVar17) + iVar8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar11 + (uVar4 - iVar17) + iVar8)" ( (binary_expression "uVar11 + (uVar4 - iVar17) + iVar8" (binary_expression "uVar11 + (uVar4 - iVar17)" identifier + (parenthesized_expression "(uVar4 - iVar17)" ( (binary_expression "uVar4 - iVar17" identifier - identifier) ))) + identifier) )))) ;) (if_statement "if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }" if (parenthesized_expression "((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0))" ( (binary_expression "(DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)" (parenthesized_expression "(DAT_005eb500 == '\0')" ( (binary_expression "DAT_005eb500 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)" ( (comma_expression "iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0" (assignment_expression "iVar14 = FUN_003ac660(&DAT_005eb500)" identifier = (call_expression "FUN_003ac660(&DAT_005eb500)" identifier (argument_list "(&DAT_005eb500)" ( (pointer_expression "&DAT_005eb500" & identifier) )))) , (binary_expression "iVar14 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }" { (expression_statement "DAT_005eb508 = &PTR_DAT_005d5c28;" (assignment_expression "DAT_005eb508 = &PTR_DAT_005d5c28" identifier = (pointer_expression "&PTR_DAT_005d5c28" & identifier)) ;) (expression_statement "DAT_005eb50c = &PTR_DAT_005d5c20;" (assignment_expression "DAT_005eb50c = &PTR_DAT_005d5c20" identifier = (pointer_expression "&PTR_DAT_005d5c20" & identifier)) ;) (expression_statement "DAT_005eb510 = &PTR_DAT_005d5c18;" (assignment_expression "DAT_005eb510 = &PTR_DAT_005d5c18" identifier = (pointer_expression "&PTR_DAT_005d5c18" & identifier)) ;) (expression_statement "DAT_005eb514 = &PTR_DAT_005d5c10;" (assignment_expression "DAT_005eb514 = &PTR_DAT_005d5c10" identifier = (pointer_expression "&PTR_DAT_005d5c10" & identifier)) ;) (expression_statement "DAT_005eb518 = &PTR_DAT_005d5c08;" (assignment_expression "DAT_005eb518 = &PTR_DAT_005d5c08" identifier = (pointer_expression "&PTR_DAT_005d5c08" & identifier)) ;) (expression_statement "DAT_005eb51c = &PTR_DAT_005d5c00;" (assignment_expression "DAT_005eb51c = &PTR_DAT_005d5c00" identifier = (pointer_expression "&PTR_DAT_005d5c00" & identifier)) ;) (expression_statement "FUN_003ac7d0(&DAT_005eb500);" (call_expression "FUN_003ac7d0(&DAT_005eb500)" identifier (argument_list "(&DAT_005eb500)" ( (pointer_expression "&DAT_005eb500" & identifier) ))) ;) (expression_statement "__cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);" (call_expression "__cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4)" identifier (argument_list "(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4)" ( identifier , identifier , (pointer_expression "&PTR_LOOP_005ea2e4" & identifier) ))) ;) })) (expression_statement "iVar14 = *(int *)(iVar19 + 0x10);" (assignment_expression "iVar14 = *(int *)(iVar19 + 0x10)" identifier = (pointer_expression "*(int *)(iVar19 + 0x10)" * (cast_expression "(int *)(iVar19 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x10)" ( (binary_expression "iVar19 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "iVar13 = *(int *)(puVar24[iVar13] + 4);" (assignment_expression "iVar13 = *(int *)(puVar24[iVar13] + 4)" identifier = (pointer_expression "*(int *)(puVar24[iVar13] + 4)" * (cast_expression "(int *)(puVar24[iVar13] + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24[iVar13] + 4)" ( (binary_expression "puVar24[iVar13] + 4" (subscript_expression "puVar24[iVar13]" identifier [ identifier ]) + number_literal) ))))) ;) (if_statement "if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }" if (parenthesized_expression "((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0))" ( (binary_expression "(DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)" (parenthesized_expression "(DAT_005eb500 == '\0')" ( (binary_expression "DAT_005eb500 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)" ( (comma_expression "iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0" (assignment_expression "iVar6 = FUN_003ac660(&DAT_005eb500)" identifier = (call_expression "FUN_003ac660(&DAT_005eb500)" identifier (argument_list "(&DAT_005eb500)" ( (pointer_expression "&DAT_005eb500" & identifier) )))) , (binary_expression "iVar6 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }" { (expression_statement "DAT_005eb508 = &PTR_DAT_005d5c28;" (assignment_expression "DAT_005eb508 = &PTR_DAT_005d5c28" identifier = (pointer_expression "&PTR_DAT_005d5c28" & identifier)) ;) (expression_statement "DAT_005eb50c = &PTR_DAT_005d5c20;" (assignment_expression "DAT_005eb50c = &PTR_DAT_005d5c20" identifier = (pointer_expression "&PTR_DAT_005d5c20" & identifier)) ;) (expression_statement "DAT_005eb510 = &PTR_DAT_005d5c18;" (assignment_expression "DAT_005eb510 = &PTR_DAT_005d5c18" identifier = (pointer_expression "&PTR_DAT_005d5c18" & identifier)) ;) (expression_statement "DAT_005eb514 = &PTR_DAT_005d5c10;" (assignment_expression "DAT_005eb514 = &PTR_DAT_005d5c10" identifier = (pointer_expression "&PTR_DAT_005d5c10" & identifier)) ;) (expression_statement "DAT_005eb518 = &PTR_DAT_005d5c08;" (assignment_expression "DAT_005eb518 = &PTR_DAT_005d5c08" identifier = (pointer_expression "&PTR_DAT_005d5c08" & identifier)) ;) (expression_statement "DAT_005eb51c = &PTR_DAT_005d5c00;" (assignment_expression "DAT_005eb51c = &PTR_DAT_005d5c00" identifier = (pointer_expression "&PTR_DAT_005d5c00" & identifier)) ;) (expression_statement "FUN_003ac7d0(&DAT_005eb500);" (call_expression "FUN_003ac7d0(&DAT_005eb500)" identifier (argument_list "(&DAT_005eb500)" ( (pointer_expression "&DAT_005eb500" & identifier) ))) ;) (expression_statement "__cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);" (call_expression "__cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4)" identifier (argument_list "(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4)" ( identifier , identifier , (pointer_expression "&PTR_LOOP_005ea2e4" & identifier) ))) ;) })) (if_statement "if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }" if (parenthesized_expression "(0 < iVar13)" ( (binary_expression "0 < iVar13" number_literal < identifier) )) (compound_statement "{\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }" { (if_statement "if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }" if (parenthesized_expression "(*puVar22 != **(uint **)puVar24[iVar14])" ( (binary_expression "*puVar22 != **(uint **)puVar24[iVar14]" (pointer_expression "*puVar22" * identifier) != (pointer_expression "**(uint **)puVar24[iVar14]" * (pointer_expression "*(uint **)puVar24[iVar14]" * (cast_expression "(uint **)puVar24[iVar14]" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (subscript_expression "puVar24[iVar14]" identifier [ identifier ]))))) )) (compound_statement "{\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }" { (labeled_statement "LAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");" statement_identifier : (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub")" identifier (argument_list "("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_reloc_stub"" " string_content ") ))) ;)) })) (expression_statement "iVar6 = 0;" (assignment_expression "iVar6 = 0" identifier = number_literal) ;) (while_statement "while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }" while (parenthesized_expression "(iVar6 = iVar6 + 1, iVar13 != iVar6)" ( (comma_expression "iVar6 = iVar6 + 1, iVar13 != iVar6" (assignment_expression "iVar6 = iVar6 + 1" identifier = (binary_expression "iVar6 + 1" identifier + number_literal)) , (binary_expression "iVar13 != iVar6" identifier != identifier)) )) (compound_statement "{\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }" { (if_statement "if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;" if (parenthesized_expression "(puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6])" ( (binary_expression "puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]" (subscript_expression "puVar22[iVar6]" identifier [ identifier ]) != (subscript_expression "(*(uint **)puVar24[iVar14])[iVar6]" (parenthesized_expression "(*(uint **)puVar24[iVar14])" ( (pointer_expression "*(uint **)puVar24[iVar14]" * (cast_expression "(uint **)puVar24[iVar14]" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (subscript_expression "puVar24[iVar14]" identifier [ identifier ]))) )) [ identifier ])) )) (goto_statement "goto LAB_001e68a0;" goto statement_identifier ;)) })) })) (expression_statement "uVar11 = *(uint *)(iVar19 + 8);" (assignment_expression "uVar11 = *(uint *)(iVar19 + 8)" identifier = (pointer_expression "*(uint *)(iVar19 + 8)" * (cast_expression "(uint *)(iVar19 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 8)" ( (binary_expression "iVar19 + 8" identifier + number_literal) ))))) ;) (expression_statement "uVar23 = *(uint *)(iVar19 + 4);" (assignment_expression "uVar23 = *(uint *)(iVar19 + 4)" identifier = (pointer_expression "*(uint *)(iVar19 + 4)" * (cast_expression "(uint *)(iVar19 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 4)" ( (binary_expression "iVar19 + 4" identifier + number_literal) ))))) ;) (if_statement "if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }" if (parenthesized_expression "((uVar11 & uVar23) == 0xffffffff)" ( (binary_expression "(uVar11 & uVar23) == 0xffffffff" (parenthesized_expression "(uVar11 & uVar23)" ( (binary_expression "uVar11 & uVar23" identifier & identifier) )) == number_literal) )) (compound_statement "{\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }" { (labeled_statement "LAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");" statement_identifier : (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address")" identifier (argument_list "("../../gold/aarch64.cc",0x359,"destination_address")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""destination_address"" " string_content ") ))) ;)) })) (expression_statement "iVar19 = *(int *)(iVar19 + 0x10);" (assignment_expression "iVar19 = *(int *)(iVar19 + 0x10)" identifier = (pointer_expression "*(int *)(iVar19 + 0x10)" * (cast_expression "(int *)(iVar19 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x10)" ( (binary_expression "iVar19 + 0x10" identifier + number_literal) ))))) ;) (if_statement "if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }" if (parenthesized_expression "(iVar19 == 2)" ( (binary_expression "iVar19 == 2" identifier == number_literal) )) (compound_statement "{\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }" { (expression_statement "puVar22[2] = uVar23;" (assignment_expression "puVar22[2] = uVar23" (subscript_expression "puVar22[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar22[3] = uVar11;" (assignment_expression "puVar22[3] = uVar11" (subscript_expression "puVar22[3]" identifier [ number_literal ]) = identifier) ;) }) (else_clause "else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }" else (if_statement "if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }" if (parenthesized_expression "(iVar19 == 3)" ( (binary_expression "iVar19 == 3" identifier == number_literal) )) (compound_statement "{\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }" { (expression_statement "puVar22[4] = (uVar23 - 4) - uVar5;" (assignment_expression "puVar22[4] = (uVar23 - 4) - uVar5" (subscript_expression "puVar22[4]" identifier [ number_literal ]) = (binary_expression "(uVar23 - 4) - uVar5" (parenthesized_expression "(uVar23 - 4)" ( (binary_expression "uVar23 - 4" identifier - number_literal) )) - identifier)) ;) (expression_statement "puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);" (assignment_expression "puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5)" (subscript_expression "puVar22[5]" identifier [ number_literal ]) = (binary_expression "(((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5)" (parenthesized_expression "(((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15)" ( (binary_expression "((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15" (parenthesized_expression "((uVar11 - 1) + (uint)(3 < uVar23))" ( (binary_expression "(uVar11 - 1) + (uint)(3 < uVar23)" (parenthesized_expression "(uVar11 - 1)" ( (binary_expression "uVar11 - 1" identifier - number_literal) )) + (call_expression "(uint)(3 < uVar23)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(3 < uVar23)" ( (binary_expression "3 < uVar23" number_literal < identifier) )))) )) - identifier) )) - (call_expression "(uint)(uVar23 - 4 < uVar5)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar23 - 4 < uVar5)" ( (binary_expression "uVar23 - 4 < uVar5" (binary_expression "uVar23 - 4" identifier - number_literal) < identifier) ))))) ;) }) (else_clause "else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }" else (compound_statement "{\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }" { (if_statement "if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }" if (parenthesized_expression "(iVar19 != 1)" ( (binary_expression "iVar19 != 1" identifier != number_literal) )) (compound_statement "{\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }" { (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19)" identifier (argument_list "("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19)" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_reloc_stub"" " string_content ") , identifier ))) ;) })) (expression_statement "iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));" (assignment_expression "iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000))" identifier = (binary_expression "(uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000))" (parenthesized_expression "(uVar11 - iVar15)" ( (binary_expression "uVar11 - iVar15" identifier - identifier) )) - (call_expression "(uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000))" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000))" ( (binary_expression "(uVar23 & 0xfffff000) < (uVar5 & 0xfffff000)" (parenthesized_expression "(uVar23 & 0xfffff000)" ( (binary_expression "uVar23 & 0xfffff000" identifier & number_literal) )) < (parenthesized_expression "(uVar5 & 0xfffff000)" ( (binary_expression "uVar5 & 0xfffff000" identifier & number_literal) ))) ))))) ;) (expression_statement "uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;" (assignment_expression "uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc" identifier = (binary_expression "(uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc" (binary_expression "(uVar23 & 0xfffff000) - (uVar5 & 0xfffff000)" (parenthesized_expression "(uVar23 & 0xfffff000)" ( (binary_expression "uVar23 & 0xfffff000" identifier & number_literal) )) - (parenthesized_expression "(uVar5 & 0xfffff000)" ( (binary_expression "uVar5 & 0xfffff000" identifier & number_literal) ))) >> number_literal)) ;) (expression_statement "uVar20 = iVar19 + 1;" (assignment_expression "uVar20 = iVar19 + 1" identifier = (binary_expression "iVar19 + 1" identifier + number_literal)) ;) (expression_statement "*puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;" (assignment_expression "*puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f" (pointer_expression "*puVar22" * identifier) = (binary_expression "((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f" (binary_expression "((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d" (binary_expression "((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5" (parenthesized_expression "((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2)" ( (binary_expression "(uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2" (parenthesized_expression "(uVar5 | iVar19 * 0x100000 & 0x1fffffU)" ( (binary_expression "uVar5 | iVar19 * 0x100000 & 0x1fffffU" identifier | (binary_expression "iVar19 * 0x100000 & 0x1fffffU" (binary_expression "iVar19 * 0x100000" identifier * number_literal) & number_literal)) )) >> number_literal) )) << number_literal) | (binary_expression "(uVar5 & 3) << 0x1d" (parenthesized_expression "(uVar5 & 3)" ( (binary_expression "uVar5 & 3" identifier & number_literal) )) << number_literal)) | (binary_expression "*puVar22 & 0x9f00001f" (pointer_expression "*puVar22" * identifier) & number_literal))) ;) (if_statement "if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }" if (parenthesized_expression "(1 < uVar20)" ( (binary_expression "1 < uVar20" number_literal < identifier) )) (compound_statement "{\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }" { (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub")" identifier (argument_list "("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_reloc_stub"" " string_content ") ))) ;) })) (expression_statement "iVar19 = *(int *)(DAT_005eb634 + 0x54);" (assignment_expression "iVar19 = *(int *)(DAT_005eb634 + 0x54)" identifier = (pointer_expression "*(int *)(DAT_005eb634 + 0x54)" * (cast_expression "(int *)(DAT_005eb634 + 0x54)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_005eb634 + 0x54)" ( (binary_expression "DAT_005eb634 + 0x54" identifier + number_literal) ))))) ;) (if_statement "if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }" { (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634)" identifier (argument_list "("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634)" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_reloc_stub"" " string_content ") , identifier ))) ;) })) (expression_statement "iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);" (assignment_expression "iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11)" identifier = (call_expression "(**(code **)(iVar19 + 0x40))(uVar23,uVar11)" (parenthesized_expression "(**(code **)(iVar19 + 0x40))" ( (pointer_expression "**(code **)(iVar19 + 0x40)" * (pointer_expression "*(code **)(iVar19 + 0x40)" * (cast_expression "(code **)(iVar19 + 0x40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar19 + 0x40)" ( (binary_expression "iVar19 + 0x40" identifier + number_literal) ))))) )) (argument_list "(uVar23,uVar11)" ( identifier , identifier )))) ;) (expression_statement "iVar15 = *(int *)(iVar19 + 0x38) * 0x10;" (assignment_expression "iVar15 = *(int *)(iVar19 + 0x38) * 0x10" identifier = (binary_expression "*(int *)(iVar19 + 0x38) * 0x10" (pointer_expression "*(int *)(iVar19 + 0x38)" * (cast_expression "(int *)(iVar19 + 0x38)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x38)" ( (binary_expression "iVar19 + 0x38" identifier + number_literal) )))) * number_literal)) ;) (if_statement "if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }" if (parenthesized_expression "((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff))" ( (binary_expression "(*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)" (parenthesized_expression "(*(int *)(&DAT_004808ac + iVar15) != -1)" ( (binary_expression "*(int *)(&DAT_004808ac + iVar15) != -1" (pointer_expression "*(int *)(&DAT_004808ac + iVar15)" * (cast_expression "(int *)(&DAT_004808ac + iVar15)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_004808ac + iVar15)" ( (binary_expression "&DAT_004808ac + iVar15" (pointer_expression "&DAT_004808ac" & identifier) + identifier) )))) != number_literal) )) || (parenthesized_expression "(uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)" ( (comma_expression "uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff" (assignment_expression "uVar5 = *(uint *)(&DAT_004808a8 + iVar15)" identifier = (pointer_expression "*(uint *)(&DAT_004808a8 + iVar15)" * (cast_expression "(uint *)(&DAT_004808a8 + iVar15)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_004808a8 + iVar15)" ( (binary_expression "&DAT_004808a8 + iVar15" (pointer_expression "&DAT_004808a8" & identifier) + identifier) ))))) , (binary_expression "uVar5 == 0xffffffff" identifier == number_literal)) ))) )) (compound_statement "{\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }" { (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20)" identifier (argument_list "("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20)" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""reloc_common"" " string_content ") , identifier ))) ;) })) (expression_statement "uVar20 = iVar13 << ((byte)uVar5 & 0x1f);" (assignment_expression "uVar20 = iVar13 << ((byte)uVar5 & 0x1f)" identifier = (binary_expression "iVar13 << ((byte)uVar5 & 0x1f)" identifier << (parenthesized_expression "((byte)uVar5 & 0x1f)" ( (binary_expression "(byte)uVar5 & 0x1f" (cast_expression "(byte)uVar5" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )))) ;) (if_statement "if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }" if (parenthesized_expression "((uVar5 & 0x20) != 0)" ( (binary_expression "(uVar5 & 0x20) != 0" (parenthesized_expression "(uVar5 & 0x20)" ( (binary_expression "uVar5 & 0x20" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                  uVar20 = 0;\n                }" { (expression_statement "uVar20 = 0;" (assignment_expression "uVar20 = 0" identifier = number_literal) ;) })) (expression_statement "puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;" (assignment_expression "puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20" (subscript_expression "puVar22[1]" identifier [ number_literal ]) = (binary_expression "~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20" (binary_expression "~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1]" (unary_expression "~*(uint *)(&DAT_004808a0 + iVar15)" ~ (pointer_expression "*(uint *)(&DAT_004808a0 + iVar15)" * (cast_expression "(uint *)(&DAT_004808a0 + iVar15)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_004808a0 + iVar15)" ( (binary_expression "&DAT_004808a0 + iVar15" (pointer_expression "&DAT_004808a0" & identifier) + identifier) ))))) & (subscript_expression "puVar22[1]" identifier [ number_literal ])) | identifier)) ;) (expression_statement "cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);" (assignment_expression "cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11)" identifier = (call_expression "(**(code **)(iVar19 + 0x3c))(uVar23,uVar11)" (parenthesized_expression "(**(code **)(iVar19 + 0x3c))" ( (pointer_expression "**(code **)(iVar19 + 0x3c)" * (pointer_expression "*(code **)(iVar19 + 0x3c)" * (cast_expression "(code **)(iVar19 + 0x3c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar19 + 0x3c)" ( (binary_expression "iVar19 + 0x3c" identifier + number_literal) ))))) )) (argument_list "(uVar23,uVar11)" ( identifier , identifier )))) ;) (if_statement "if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }" if (parenthesized_expression "(cVar1 == '\0')" ( (binary_expression "cVar1 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }" { (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub")" identifier (argument_list "("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub")" ( (string_literal ""../../gold/aarch64.cc"" " string_content ") , number_literal , (string_literal ""relocate_reloc_stub"" " string_content ") ))) ;) })) }))))) (expression_statement "local_ac = (int *)*local_ac;" (assignment_expression "local_ac = (int *)*local_ac" identifier = (cast_expression "(int *)*local_ac" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_ac" * identifier))) ;) (if_statement "if (local_ac == (int *)0x0) break;" if (parenthesized_expression "(local_ac == (int *)0x0)" ( (binary_expression "local_ac == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "iVar19 = local_ac[5];" (assignment_expression "iVar19 = local_ac[5]" identifier = (subscript_expression "local_ac[5]" identifier [ number_literal ])) ;) (expression_statement "uVar11 = *(uint *)(iVar19 + 0xc);" (assignment_expression "uVar11 = *(uint *)(iVar19 + 0xc)" identifier = (pointer_expression "*(uint *)(iVar19 + 0xc)" * (cast_expression "(uint *)(iVar19 + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0xc)" ( (binary_expression "iVar19 + 0xc" identifier + number_literal) ))))) ;) (if_statement "if (uVar11 == 0xffffffff) goto LAB_001e5d9c;" if (parenthesized_expression "(uVar11 == 0xffffffff)" ( (binary_expression "uVar11 == 0xffffffff" identifier == number_literal) )) (goto_statement "goto LAB_001e5d9c;" goto statement_identifier ;)) }) while (parenthesized_expression "( true )" ( true )) ;) })) })) (expression_statement "uVar18 = uVar18 + 1;" (assignment_expression "uVar18 = uVar18 + 1" identifier = (binary_expression "uVar18 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar18 != local_58)" ( (binary_expression "uVar18 != local_58" identifier != identifier) )) ;) })) })) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , IDENT , IDENT , LIT , IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") , (pointer_expression & IDENT) ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) ))) )) && (parenthesized_expression ( (binary_expression LIT < IDENT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT - IDENT) )))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT * LIT) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression IDENT * LIT)) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT * LIT) + (pointer_expression * IDENT)) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT * LIT) )))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") , IDENT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - (subscript_expression IDENT [ LIT ])) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - (subscript_expression IDENT [ LIT ])) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (subscript_expression IDENT [ LIT ])) + (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE) ) IDENT) , IDENT )))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;)) })) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT )))))) || (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) ))))) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;)) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT)) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != (parenthesized_expression ( (binary_expression IDENT & LIT) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )) != (parenthesized_expression ( (binary_expression (binary_expression IDENT >> LIT) & LIT) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT | (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) & LIT)) )) * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) - IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) * LIT) | (binary_expression IDENT >> LIT)) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) < IDENT) )))) )) + (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT ))))) + (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression LIT < IDENT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) || (binary_expression (binary_expression (parenthesized_expression ( IDENT )) - IDENT) < (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression LIT < (binary_expression IDENT + LIT)) ))))) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT * LIT) & LIT)) | (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) + IDENT) + LIT) )))) & LIT) )) != LIT) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })))) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )))) = (binary_expression (binary_expression (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + LIT) + (subscript_expression IDENT [ LIT ])) & LIT) )) + (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) >> LIT) & LIT) | LIT)) ;) }))) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + (subscript_expression IDENT [ LIT ])) + LIT) & LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (parenthesized_expression ( (binary_expression IDENT - IDENT) ))) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (parenthesized_expression ( (binary_expression IDENT - IDENT) ))) )))) = (binary_expression (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - IDENT) >> LIT) & LIT) | LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) == LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT )))))) || (binary_expression IDENT != IDENT)) )) (goto_statement goto statement_identifier ;)) }) while (parenthesized_expression ( BOOL )) ;) })) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) while (parenthesized_expression ( (binary_expression IDENT < (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT - IDENT) >> LIT) )))) )) ;) })) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") , IDENT , IDENT ))) ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) || (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) ))) )) || (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) != (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") , IDENT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (binary_expression IDENT ^ IDENT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) && (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) ))) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) , (binary_expression IDENT != LIT)) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )))) )) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) >> LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") , IDENT , IDENT , IDENT , IDENT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression IDENT * LIT)) )))) == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") , LIT , IDENT , IDENT , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT * LIT) + (pointer_expression * IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") , IDENT , IDENT , IDENT , IDENT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") , IDENT , IDENT , IDENT ))) ;)) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") , IDENT , IDENT , IDENT , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") , IDENT , IDENT , IDENT , IDENT ))) ;)) })) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression & IDENT) )))) , (binary_expression IDENT != LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (pointer_expression & IDENT) ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (binary_expression IDENT + (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ IDENT ]) + LIT) )))) * LIT))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") , IDENT , IDENT , IDENT , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT )))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + (parenthesized_expression ( (binary_expression IDENT - IDENT) ))) + IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression & IDENT) )))) , (binary_expression IDENT != LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (pointer_expression & IDENT) ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ IDENT ]) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression & IDENT) )))) , (binary_expression IDENT != LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (pointer_expression & IDENT) ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (subscript_expression IDENT [ IDENT ]))))) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;)) })) (expression_statement (assignment_expression IDENT = LIT) ;) (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT + LIT)) , (binary_expression IDENT != IDENT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ IDENT ]) != (subscript_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (subscript_expression IDENT [ IDENT ]))) )) [ IDENT ])) )) (goto_statement goto statement_identifier ;)) })) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & IDENT) )) == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;)) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (parenthesized_expression ( (binary_expression IDENT - LIT) )) - IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT - LIT) )) + (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression LIT < IDENT) )))) )) - IDENT) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT - LIT) < IDENT) ))))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) < (parenthesized_expression ( (binary_expression IDENT & LIT) ))) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) - (parenthesized_expression ( (binary_expression IDENT & LIT) ))) >> LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT | (binary_expression (binary_expression IDENT * LIT) & LIT)) )) >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression (pointer_expression * IDENT) & LIT))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) * LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) )))) != LIT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) ))))) , (binary_expression IDENT == LIT)) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT << (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) })) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (binary_expression (unary_expression ~ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) ))))) & (subscript_expression IDENT [ LIT ])) | IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) }))))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) }) while (parenthesized_expression ( BOOL )) ;) })) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) })) (return_statement return ;) })))
(function_definition "void FUN_001e5a30(uint param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4,\n                 undefined4 param_5,int *param_6)\n\n{\n  char cVar1;\n  int iVar2;\n  int *piVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  int *piVar7;\n  int iVar8;\n  uint uVar9;\n  int iVar10;\n  uint uVar11;\n  uint *puVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 extraout_ECX;\n  int iVar15;\n  uint *puVar16;\n  int iVar17;\n  uint uVar18;\n  int iVar19;\n  uint uVar20;\n  undefined **ppuVar21;\n  uint *puVar22;\n  uint uVar23;\n  undefined4 *puVar24;\n  int local_b0;\n  int *local_ac;\n  uint local_7c;\n  uint *local_78;\n  undefined **local_74;\n  uint local_5c;\n  uint local_58;\n  uint local_34;\n  uint local_30;\n  uint local_24;\n  uint local_20;\n  \n  ppuVar21 = &__DT_PLTGOT;\n  iVar2 = *(int *)(param_1 + 0x28) + -1;\n  FUN_00325a00(param_1,param_2,param_3,param_4,param_5,param_6,1,iVar2,*(int *)(param_1 + 0x28));\n  iVar8 = *(int *)(DAT_005ea7c8 + 8);\n  if (iVar8 == 0) {\n                    \n    FUN_002446e0("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT);\n  }\n  if (*(char *)(iVar8 + 0x318d) == '\0') {\n    local_58 = *(uint *)(param_1 + 0x28);\n    uVar18 = local_58;\n    if (((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58)) {\n      iVar8 = *(int *)(param_1 + 0x13c);\n      iVar19 = *(int *)(param_1 + 0x140);\n      if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);\n    }\nLAB_001e5adf:\n    piVar7 = *(int **)(DAT_005ea7c8 + 0xc);\n    if (piVar7 == (int *)0x0) {\n                    \n      FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);\n    }\n    piVar3 = (int *)piVar7[1];\n    if (((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0')) {\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);\n    }\n    if (1 < local_58) {\n      uVar18 = 1;\n      puVar12 = &local_24;\n      do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);\n    }\n  }\n  return;\n}" (primitive_type "void") (function_declarator "FUN_001e5a30(uint param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4,\n                 undefined4 param_5,int *param_6)" (identifier "FUN_001e5a30") (parameter_list "(uint param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4,\n                 undefined4 param_5,int *param_6)" (( "(") (parameter_declaration "uint param_1" (type_identifier "uint") (identifier "param_1")) (, ",") (parameter_declaration "undefined4 param_2" (type_identifier "undefined4") (identifier "param_2")) (, ",") (parameter_declaration "undefined4 param_3" (type_identifier "undefined4") (identifier "param_3")) (, ",") (parameter_declaration "undefined4 param_4" (type_identifier "undefined4") (identifier "param_4")) (, ",") (parameter_declaration "undefined4 param_5" (type_identifier "undefined4") (identifier "param_5")) (, ",") (parameter_declaration "int *param_6" (primitive_type "int") (pointer_declarator "*param_6" (* "*") (identifier "param_6"))) () ")"))) (compound_statement "{\n  char cVar1;\n  int iVar2;\n  int *piVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  int *piVar7;\n  int iVar8;\n  uint uVar9;\n  int iVar10;\n  uint uVar11;\n  uint *puVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 extraout_ECX;\n  int iVar15;\n  uint *puVar16;\n  int iVar17;\n  uint uVar18;\n  int iVar19;\n  uint uVar20;\n  undefined **ppuVar21;\n  uint *puVar22;\n  uint uVar23;\n  undefined4 *puVar24;\n  int local_b0;\n  int *local_ac;\n  uint local_7c;\n  uint *local_78;\n  undefined **local_74;\n  uint local_5c;\n  uint local_58;\n  uint local_34;\n  uint local_30;\n  uint local_24;\n  uint local_20;\n  \n  ppuVar21 = &__DT_PLTGOT;\n  iVar2 = *(int *)(param_1 + 0x28) + -1;\n  FUN_00325a00(param_1,param_2,param_3,param_4,param_5,param_6,1,iVar2,*(int *)(param_1 + 0x28));\n  iVar8 = *(int *)(DAT_005ea7c8 + 8);\n  if (iVar8 == 0) {\n                    \n    FUN_002446e0("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT);\n  }\n  if (*(char *)(iVar8 + 0x318d) == '\0') {\n    local_58 = *(uint *)(param_1 + 0x28);\n    uVar18 = local_58;\n    if (((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58)) {\n      iVar8 = *(int *)(param_1 + 0x13c);\n      iVar19 = *(int *)(param_1 + 0x140);\n      if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);\n    }\nLAB_001e5adf:\n    piVar7 = *(int **)(DAT_005ea7c8 + 0xc);\n    if (piVar7 == (int *)0x0) {\n                    \n      FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);\n    }\n    piVar3 = (int *)piVar7[1];\n    if (((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0')) {\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);\n    }\n    if (1 < local_58) {\n      uVar18 = 1;\n      puVar12 = &local_24;\n      do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);\n    }\n  }\n  return;\n}" ({ "{") (declaration "char cVar1;" (primitive_type "char") (identifier "cVar1") (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "int *piVar3;" (primitive_type "int") (pointer_declarator "*piVar3" (* "*") (identifier "piVar3")) (; ";")) (declaration "uint uVar4;" (type_identifier "uint") (identifier "uVar4") (; ";")) (declaration "uint uVar5;" (type_identifier "uint") (identifier "uVar5") (; ";")) (declaration "int iVar6;" (primitive_type "int") (identifier "iVar6") (; ";")) (declaration "int *piVar7;" (primitive_type "int") (pointer_declarator "*piVar7" (* "*") (identifier "piVar7")) (; ";")) (declaration "int iVar8;" (primitive_type "int") (identifier "iVar8") (; ";")) (declaration "uint uVar9;" (type_identifier "uint") (identifier "uVar9") (; ";")) (declaration "int iVar10;" (primitive_type "int") (identifier "iVar10") (; ";")) (declaration "uint uVar11;" (type_identifier "uint") (identifier "uVar11") (; ";")) (declaration "uint *puVar12;" (type_identifier "uint") (pointer_declarator "*puVar12" (* "*") (identifier "puVar12")) (; ";")) (declaration "int iVar13;" (primitive_type "int") (identifier "iVar13") (; ";")) (declaration "int iVar14;" (primitive_type "int") (identifier "iVar14") (; ";")) (declaration "undefined4 extraout_ECX;" (type_identifier "undefined4") (identifier "extraout_ECX") (; ";")) (declaration "int iVar15;" (primitive_type "int") (identifier "iVar15") (; ";")) (declaration "uint *puVar16;" (type_identifier "uint") (pointer_declarator "*puVar16" (* "*") (identifier "puVar16")) (; ";")) (declaration "int iVar17;" (primitive_type "int") (identifier "iVar17") (; ";")) (declaration "uint uVar18;" (type_identifier "uint") (identifier "uVar18") (; ";")) (declaration "int iVar19;" (primitive_type "int") (identifier "iVar19") (; ";")) (declaration "uint uVar20;" (type_identifier "uint") (identifier "uVar20") (; ";")) (declaration "undefined **ppuVar21;" (type_identifier "undefined") (pointer_declarator "**ppuVar21" (* "*") (pointer_declarator "*ppuVar21" (* "*") (identifier "ppuVar21"))) (; ";")) (declaration "uint *puVar22;" (type_identifier "uint") (pointer_declarator "*puVar22" (* "*") (identifier "puVar22")) (; ";")) (declaration "uint uVar23;" (type_identifier "uint") (identifier "uVar23") (; ";")) (declaration "undefined4 *puVar24;" (type_identifier "undefined4") (pointer_declarator "*puVar24" (* "*") (identifier "puVar24")) (; ";")) (declaration "int local_b0;" (primitive_type "int") (identifier "local_b0") (; ";")) (declaration "int *local_ac;" (primitive_type "int") (pointer_declarator "*local_ac" (* "*") (identifier "local_ac")) (; ";")) (declaration "uint local_7c;" (type_identifier "uint") (identifier "local_7c") (; ";")) (declaration "uint *local_78;" (type_identifier "uint") (pointer_declarator "*local_78" (* "*") (identifier "local_78")) (; ";")) (declaration "undefined **local_74;" (type_identifier "undefined") (pointer_declarator "**local_74" (* "*") (pointer_declarator "*local_74" (* "*") (identifier "local_74"))) (; ";")) (declaration "uint local_5c;" (type_identifier "uint") (identifier "local_5c") (; ";")) (declaration "uint local_58;" (type_identifier "uint") (identifier "local_58") (; ";")) (declaration "uint local_34;" (type_identifier "uint") (identifier "local_34") (; ";")) (declaration "uint local_30;" (type_identifier "uint") (identifier "local_30") (; ";")) (declaration "uint local_24;" (type_identifier "uint") (identifier "local_24") (; ";")) (declaration "uint local_20;" (type_identifier "uint") (identifier "local_20") (; ";")) (expression_statement "ppuVar21 = &__DT_PLTGOT;" (assignment_expression "ppuVar21 = &__DT_PLTGOT" (identifier "ppuVar21") (= "=") (pointer_expression "&__DT_PLTGOT" (& "&") (identifier "__DT_PLTGOT"))) (; ";")) (expression_statement "iVar2 = *(int *)(param_1 + 0x28) + -1;" (assignment_expression "iVar2 = *(int *)(param_1 + 0x28) + -1" (identifier "iVar2") (= "=") (binary_expression "*(int *)(param_1 + 0x28) + -1" (pointer_expression "*(int *)(param_1 + 0x28)" (* "*") (cast_expression "(int *)(param_1 + 0x28)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x28)" (( "(") (binary_expression "param_1 + 0x28" (identifier "param_1") (+ "+") (number_literal "0x28")) () ")")))) (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "FUN_00325a00(param_1,param_2,param_3,param_4,param_5,param_6,1,iVar2,*(int *)(param_1 + 0x28));" (call_expression "FUN_00325a00(param_1,param_2,param_3,param_4,param_5,param_6,1,iVar2,*(int *)(param_1 + 0x28))" (identifier "FUN_00325a00") (argument_list "(param_1,param_2,param_3,param_4,param_5,param_6,1,iVar2,*(int *)(param_1 + 0x28))" (( "(") (identifier "param_1") (, ",") (identifier "param_2") (, ",") (identifier "param_3") (, ",") (identifier "param_4") (, ",") (identifier "param_5") (, ",") (identifier "param_6") (, ",") (number_literal "1") (, ",") (identifier "iVar2") (, ",") (pointer_expression "*(int *)(param_1 + 0x28)" (* "*") (cast_expression "(int *)(param_1 + 0x28)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x28)" (( "(") (binary_expression "param_1 + 0x28" (identifier "param_1") (+ "+") (number_literal "0x28")) () ")")))) () ")"))) (; ";")) (expression_statement "iVar8 = *(int *)(DAT_005ea7c8 + 8);" (assignment_expression "iVar8 = *(int *)(DAT_005ea7c8 + 8)" (identifier "iVar8") (= "=") (pointer_expression "*(int *)(DAT_005ea7c8 + 8)" (* "*") (cast_expression "(int *)(DAT_005ea7c8 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(DAT_005ea7c8 + 8)" (( "(") (binary_expression "DAT_005ea7c8 + 8" (identifier "DAT_005ea7c8") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (if_statement "if (iVar8 == 0) {\n                    \n    FUN_002446e0("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT);\n  }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n    FUN_002446e0("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT);\n  }" ({ "{") (expression_statement "FUN_002446e0("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT);" (call_expression "FUN_002446e0("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT)" (identifier "FUN_002446e0") (argument_list "("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT)" (( "(") (string_literal ""../../gold/parameters.h"" (" """) (string_content "../../gold/parameters.h") (" """)) (, ",") (number_literal "0x5c") (, ",") (string_literal ""options"" (" """) (string_content "options") (" """)) (, ",") (pointer_expression "&__DT_PLTGOT" (& "&") (identifier "__DT_PLTGOT")) () ")"))) (; ";")) (} "}"))) (if_statement "if (*(char *)(iVar8 + 0x318d) == '\0') {\n    local_58 = *(uint *)(param_1 + 0x28);\n    uVar18 = local_58;\n    if (((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58)) {\n      iVar8 = *(int *)(param_1 + 0x13c);\n      iVar19 = *(int *)(param_1 + 0x140);\n      if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);\n    }\nLAB_001e5adf:\n    piVar7 = *(int **)(DAT_005ea7c8 + 0xc);\n    if (piVar7 == (int *)0x0) {\n                    \n      FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);\n    }\n    piVar3 = (int *)piVar7[1];\n    if (((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0')) {\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);\n    }\n    if (1 < local_58) {\n      uVar18 = 1;\n      puVar12 = &local_24;\n      do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);\n    }\n  }" (if "if") (parenthesized_expression "(*(char *)(iVar8 + 0x318d) == '\0')" (( "(") (binary_expression "*(char *)(iVar8 + 0x318d) == '\0'" (pointer_expression "*(char *)(iVar8 + 0x318d)" (* "*") (cast_expression "(char *)(iVar8 + 0x318d)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x318d)" (( "(") (binary_expression "iVar8 + 0x318d" (identifier "iVar8") (+ "+") (number_literal "0x318d")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    local_58 = *(uint *)(param_1 + 0x28);\n    uVar18 = local_58;\n    if (((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58)) {\n      iVar8 = *(int *)(param_1 + 0x13c);\n      iVar19 = *(int *)(param_1 + 0x140);\n      if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);\n    }\nLAB_001e5adf:\n    piVar7 = *(int **)(DAT_005ea7c8 + 0xc);\n    if (piVar7 == (int *)0x0) {\n                    \n      FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);\n    }\n    piVar3 = (int *)piVar7[1];\n    if (((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0')) {\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);\n    }\n    if (1 < local_58) {\n      uVar18 = 1;\n      puVar12 = &local_24;\n      do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);\n    }\n  }" ({ "{") (expression_statement "local_58 = *(uint *)(param_1 + 0x28);" (assignment_expression "local_58 = *(uint *)(param_1 + 0x28)" (identifier "local_58") (= "=") (pointer_expression "*(uint *)(param_1 + 0x28)" (* "*") (cast_expression "(uint *)(param_1 + 0x28)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x28)" (( "(") (binary_expression "param_1 + 0x28" (identifier "param_1") (+ "+") (number_literal "0x28")) () ")"))))) (; ";")) (expression_statement "uVar18 = local_58;" (assignment_expression "uVar18 = local_58" (identifier "uVar18") (= "=") (identifier "local_58")) (; ";")) (if_statement "if (((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58)) {\n      iVar8 = *(int *)(param_1 + 0x13c);\n      iVar19 = *(int *)(param_1 + 0x140);\n      if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);\n    }" (if "if") (parenthesized_expression "(((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58))" (( "(") (binary_expression "((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&\n       (1 < local_58)" (parenthesized_expression "((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0'))" (( "(") (binary_expression "(*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')" (parenthesized_expression "(*(char *)(iVar8 + 0x1671) != '\0')" (( "(") (binary_expression "*(char *)(iVar8 + 0x1671) != '\0'" (pointer_expression "*(char *)(iVar8 + 0x1671)" (* "*") (cast_expression "(char *)(iVar8 + 0x1671)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x1671)" (( "(") (binary_expression "iVar8 + 0x1671" (identifier "iVar8") (+ "+") (number_literal "0x1671")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (|| "||") (parenthesized_expression "(*(char *)(iVar8 + 0x16ed) != '\0')" (( "(") (binary_expression "*(char *)(iVar8 + 0x16ed) != '\0'" (pointer_expression "*(char *)(iVar8 + 0x16ed)" (* "*") (cast_expression "(char *)(iVar8 + 0x16ed)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x16ed)" (( "(") (binary_expression "iVar8 + 0x16ed" (identifier "iVar8") (+ "+") (number_literal "0x16ed")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(1 < local_58)" (( "(") (binary_expression "1 < local_58" (number_literal "1") (< "<") (identifier "local_58")) () ")"))) () ")")) (compound_statement "{\n      iVar8 = *(int *)(param_1 + 0x13c);\n      iVar19 = *(int *)(param_1 + 0x140);\n      if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);\n    }" ({ "{") (expression_statement "iVar8 = *(int *)(param_1 + 0x13c);" (assignment_expression "iVar8 = *(int *)(param_1 + 0x13c)" (identifier "iVar8") (= "=") (pointer_expression "*(int *)(param_1 + 0x13c)" (* "*") (cast_expression "(int *)(param_1 + 0x13c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x13c)" (( "(") (binary_expression "param_1 + 0x13c" (identifier "param_1") (+ "+") (number_literal "0x13c")) () ")"))))) (; ";")) (expression_statement "iVar19 = *(int *)(param_1 + 0x140);" (assignment_expression "iVar19 = *(int *)(param_1 + 0x140)" (identifier "iVar19") (= "=") (pointer_expression "*(int *)(param_1 + 0x140)" (* "*") (cast_expression "(int *)(param_1 + 0x140)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x140)" (( "(") (binary_expression "param_1 + 0x140" (identifier "param_1") (+ "+") (number_literal "0x140")) () ")"))))) (; ";")) (if_statement "if (7 < (uint)(iVar19 - iVar8)) {\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }" (if "if") (parenthesized_expression "(7 < (uint)(iVar19 - iVar8))" (( "(") (binary_expression "7 < (uint)(iVar19 - iVar8)" (number_literal "7") (< "<") (call_expression "(uint)(iVar19 - iVar8)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(iVar19 - iVar8)" (( "(") (binary_expression "iVar19 - iVar8" (identifier "iVar19") (- "-") (identifier "iVar8")) () ")")))) () ")")) (compound_statement "{\n        local_5c = 1;\n        do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));\n      }" ({ "{") (expression_statement "local_5c = 1;" (assignment_expression "local_5c = 1" (identifier "local_5c") (= "=") (number_literal "1")) (; ";")) (do_statement "do {\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));" (do "do") (compound_statement "{\n          ppuVar21 = (undefined **)(local_5c * 4);\n          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);\n          if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }\n          local_5c = local_5c + 1;\n          if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }\n          iVar8 = *(int *)(param_1 + 0x13c);\n          iVar19 = *(int *)(param_1 + 0x140);\n        }" ({ "{") (expression_statement "ppuVar21 = (undefined **)(local_5c * 4);" (assignment_expression "ppuVar21 = (undefined **)(local_5c * 4)" (identifier "ppuVar21") (= "=") (cast_expression "(undefined **)(local_5c * 4)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_5c * 4)" (( "(") (binary_expression "local_5c * 4" (identifier "local_5c") (* "*") (number_literal "4")) () ")")))) (; ";")) (expression_statement "puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);" (assignment_expression "puVar24 = *(undefined4 **)(iVar8 + local_5c * 4)" (identifier "puVar24") (= "=") (pointer_expression "*(undefined4 **)(iVar8 + local_5c * 4)" (* "*") (cast_expression "(undefined4 **)(iVar8 + local_5c * 4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar8 + local_5c * 4)" (( "(") (binary_expression "iVar8 + local_5c * 4" (identifier "iVar8") (+ "+") (binary_expression "local_5c * 4" (identifier "local_5c") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (if_statement "if (puVar24 != (undefined4 *)0x0) {\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }" (if "if") (parenthesized_expression "(puVar24 != (undefined4 *)0x0)" (( "(") (binary_expression "puVar24 != (undefined4 *)0x0" (identifier "puVar24") (!= "!=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            FUN_001d6d60(local_5c);\n            local_7c = local_34;\n            piVar7 = (int *)(local_5c * 0x1c + *param_6);\n            if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }\n            local_74 = &__DT_PLTGOT;\n            uVar18 = local_34;\n            if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }\n          }" ({ "{") (expression_statement "FUN_001d6d60(local_5c);" (call_expression "FUN_001d6d60(local_5c)" (identifier "FUN_001d6d60") (argument_list "(local_5c)" (( "(") (identifier "local_5c") () ")"))) (; ";")) (expression_statement "local_7c = local_34;" (assignment_expression "local_7c = local_34" (identifier "local_7c") (= "=") (identifier "local_34")) (; ";")) (expression_statement "piVar7 = (int *)(local_5c * 0x1c + *param_6);" (assignment_expression "piVar7 = (int *)(local_5c * 0x1c + *param_6)" (identifier "piVar7") (= "=") (cast_expression "(int *)(local_5c * 0x1c + *param_6)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_5c * 0x1c + *param_6)" (( "(") (binary_expression "local_5c * 0x1c + *param_6" (binary_expression "local_5c * 0x1c" (identifier "local_5c") (* "*") (number_literal "0x1c")) (+ "+") (pointer_expression "*param_6" (* "*") (identifier "param_6"))) () ")")))) (; ";")) (if_statement "if ((char)piVar7[6] == '\0') {\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }\n            else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }" (if "if") (parenthesized_expression "((char)piVar7[6] == '\0')" (( "(") (binary_expression "(char)piVar7[6] == '\0'" (cast_expression "(char)piVar7[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "piVar7[6]" (identifier "piVar7") ([ "[") (number_literal "6") (] "]"))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n              puVar22 = (uint *)0x0;\n              local_b0 = 0;\n            }" ({ "{") (expression_statement "puVar22 = (uint *)0x0;" (assignment_expression "puVar22 = (uint *)0x0" (identifier "puVar22") (= "=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" (identifier "local_b0") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }" (else "else") (compound_statement "{\n              uVar18 = local_5c;\n              if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }\n              local_74 = &__DT_PLTGOT;\n              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);\n              if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }\n              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;\n              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);\n              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);\n              ppuVar21 = local_74;\n            }" ({ "{") (expression_statement "uVar18 = local_5c;" (assignment_expression "uVar18 = local_5c" (identifier "uVar18") (= "=") (identifier "local_5c")) (; ";")) (if_statement "if (0xfeff < local_5c) {\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }" (if "if") (parenthesized_expression "(0xfeff < local_5c)" (( "(") (binary_expression "0xfeff < local_5c" (number_literal "0xfeff") (< "<") (identifier "local_5c")) () ")")) (compound_statement "{\n                FUN_00108090(param_1 + 0x90);\n                uVar18 = local_5c + *(int *)(param_1 + 0xa4);\n                ppuVar21 = (undefined **)(uVar18 * 4);\n              }" ({ "{") (expression_statement "FUN_00108090(param_1 + 0x90);" (call_expression "FUN_00108090(param_1 + 0x90)" (identifier "FUN_00108090") (argument_list "(param_1 + 0x90)" (( "(") (binary_expression "param_1 + 0x90" (identifier "param_1") (+ "+") (number_literal "0x90")) () ")"))) (; ";")) (expression_statement "uVar18 = local_5c + *(int *)(param_1 + 0xa4);" (assignment_expression "uVar18 = local_5c + *(int *)(param_1 + 0xa4)" (identifier "uVar18") (= "=") (binary_expression "local_5c + *(int *)(param_1 + 0xa4)" (identifier "local_5c") (+ "+") (pointer_expression "*(int *)(param_1 + 0xa4)" (* "*") (cast_expression "(int *)(param_1 + 0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xa4)" (( "(") (binary_expression "param_1 + 0xa4" (identifier "param_1") (+ "+") (number_literal "0xa4")) () ")")))))) (; ";")) (expression_statement "ppuVar21 = (undefined **)(uVar18 * 4);" (assignment_expression "ppuVar21 = (undefined **)(uVar18 * 4)" (identifier "ppuVar21") (= "=") (cast_expression "(undefined **)(uVar18 * 4)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(uVar18 * 4)" (( "(") (binary_expression "uVar18 * 4" (identifier "uVar18") (* "*") (number_literal "4")) () ")")))) (; ";")) (} "}"))) (expression_statement "local_74 = &__DT_PLTGOT;" (assignment_expression "local_74 = &__DT_PLTGOT" (identifier "local_74") (= "=") (pointer_expression "&__DT_PLTGOT" (& "&") (identifier "__DT_PLTGOT"))) (; ";")) (expression_statement "iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18);" (assignment_expression "iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18)" (identifier "iVar8") (= "=") (call_expression "FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18)" (identifier "FUN_002cd8b0") (argument_list "(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1\n                                   ,uVar18)" (( "(") (pointer_expression "*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21)" (* "*") (cast_expression "(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(param_1 + 0x38) + (int)ppuVar21)" (( "(") (binary_expression "*(int *)(param_1 + 0x38) + (int)ppuVar21" (pointer_expression "*(int *)(param_1 + 0x38)" (* "*") (cast_expression "(int *)(param_1 + 0x38)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x38)" (( "(") (binary_expression "param_1 + 0x38" (identifier "param_1") (+ "+") (number_literal "0x38")) () ")")))) (+ "+") (cast_expression "(int)ppuVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppuVar21"))) () ")")))) (, ",") (identifier "param_1") (, ",") (identifier "uVar18") () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);\n              }" ({ "{") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX)" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",\n                             extraout_ECX)" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x7df") (, ",") (string_literal ""fix_errata_and_relocate_erratum_stubs"" (" """) (string_content "fix_errata_and_relocate_erratum_stubs") (" """)) (, ",") (identifier "extraout_ECX") () ")"))) (; ";")) (} "}"))) (if_statement "if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;" (if "if") (parenthesized_expression "((*(byte *)(iVar8 + 0x1c) & 1) == 0)" (( "(") (binary_expression "(*(byte *)(iVar8 + 0x1c) & 1) == 0" (parenthesized_expression "(*(byte *)(iVar8 + 0x1c) & 1)" (( "(") (binary_expression "*(byte *)(iVar8 + 0x1c) & 1" (pointer_expression "*(byte *)(iVar8 + 0x1c)" (* "*") (cast_expression "(byte *)(iVar8 + 0x1c)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x1c)" (( "(") (binary_expression "iVar8 + 0x1c" (identifier "iVar8") (+ "+") (number_literal "0x1c")) () ")")))) (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_001e670d;" (goto "goto") (statement_identifier "LAB_001e670d") (; ";"))) (expression_statement "puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);" (assignment_expression "puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1])" (identifier "puVar22") (= "=") (cast_expression "(uint *)(*(uint *)(iVar8 + 4) - piVar7[1])" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(uint *)(iVar8 + 4) - piVar7[1])" (( "(") (binary_expression "*(uint *)(iVar8 + 4) - piVar7[1]" (pointer_expression "*(uint *)(iVar8 + 4)" (* "*") (cast_expression "(uint *)(iVar8 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 4)" (( "(") (binary_expression "iVar8 + 4" (identifier "iVar8") (+ "+") (number_literal "4")) () ")")))) (- "-") (subscript_expression "piVar7[1]" (identifier "piVar7") ([ "[") (number_literal "1") (] "]"))) () ")")))) (; ";")) (expression_statement "local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);" (assignment_expression "local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1])" (identifier "local_b0") (= "=") (binary_expression "(*(int *)(iVar8 + 8) - piVar7[2]) -\n                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1])" (parenthesized_expression "(*(int *)(iVar8 + 8) - piVar7[2])" (( "(") (binary_expression "*(int *)(iVar8 + 8) - piVar7[2]" (pointer_expression "*(int *)(iVar8 + 8)" (* "*") (cast_expression "(int *)(iVar8 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 8)" (( "(") (binary_expression "iVar8 + 8" (identifier "iVar8") (+ "+") (number_literal "8")) () ")")))) (- "-") (subscript_expression "piVar7[2]" (identifier "piVar7") ([ "[") (number_literal "2") (] "]"))) () ")")) (- "-") (call_expression "(uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1])" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(*(uint *)(iVar8 + 4) < (uint)piVar7[1])" (( "(") (binary_expression "*(uint *)(iVar8 + 4) < (uint)piVar7[1]" (pointer_expression "*(uint *)(iVar8 + 4)" (* "*") (cast_expression "(uint *)(iVar8 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 4)" (( "(") (binary_expression "iVar8 + 4" (identifier "iVar8") (+ "+") (number_literal "4")) () ")")))) (< "<") (cast_expression "(uint)piVar7[1]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "piVar7[1]" (identifier "piVar7") ([ "[") (number_literal "1") (] "]")))) () ")"))))) (; ";")) (expression_statement "ppuVar21 = local_74;" (assignment_expression "ppuVar21 = local_74" (identifier "ppuVar21") (= "=") (identifier "local_74")) (; ";")) (} "}")))) (expression_statement "local_74 = &__DT_PLTGOT;" (assignment_expression "local_74 = &__DT_PLTGOT" (identifier "local_74") (= "=") (pointer_expression "&__DT_PLTGOT" (& "&") (identifier "__DT_PLTGOT"))) (; ";")) (expression_statement "uVar18 = local_34;" (assignment_expression "uVar18 = local_34" (identifier "uVar18") (= "=") (identifier "local_34")) (; ";")) (if_statement "if (local_34 != local_30) {\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }" (if "if") (parenthesized_expression "(local_34 != local_30)" (( "(") (binary_expression "local_34 != local_30" (identifier "local_34") (!= "!=") (identifier "local_30")) () ")")) (compound_statement "{\n              iVar8 = *(int *)(local_34 + 0x10);\n              uVar4 = piVar7[1];\n              uVar18 = *(uint *)(iVar8 + 0x1c);\n              uVar9 = (int)puVar22 + uVar4;\n              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);\n              local_78 = *(uint **)(iVar8 + 0x24);\n              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }\n              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }\n              piVar7 = (int *)*piVar7;\n              iVar10 = (int)piVar7 + (int)puVar22;\n              puVar12 = puVar22;\n              do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );\n            }" ({ "{") (expression_statement "iVar8 = *(int *)(local_34 + 0x10);" (assignment_expression "iVar8 = *(int *)(local_34 + 0x10)" (identifier "iVar8") (= "=") (pointer_expression "*(int *)(local_34 + 0x10)" (* "*") (cast_expression "(int *)(local_34 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_34 + 0x10)" (( "(") (binary_expression "local_34 + 0x10" (identifier "local_34") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "uVar4 = piVar7[1];" (assignment_expression "uVar4 = piVar7[1]" (identifier "uVar4") (= "=") (subscript_expression "piVar7[1]" (identifier "piVar7") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "uVar18 = *(uint *)(iVar8 + 0x1c);" (assignment_expression "uVar18 = *(uint *)(iVar8 + 0x1c)" (identifier "uVar18") (= "=") (pointer_expression "*(uint *)(iVar8 + 0x1c)" (* "*") (cast_expression "(uint *)(iVar8 + 0x1c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x1c)" (( "(") (binary_expression "iVar8 + 0x1c" (identifier "iVar8") (+ "+") (number_literal "0x1c")) () ")"))))) (; ";")) (expression_statement "uVar9 = (int)puVar22 + uVar4;" (assignment_expression "uVar9 = (int)puVar22 + uVar4" (identifier "uVar9") (= "=") (binary_expression "(int)puVar22 + uVar4" (cast_expression "(int)puVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar22")) (+ "+") (identifier "uVar4"))) (; ";")) (expression_statement "iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);" (assignment_expression "iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4)" (identifier "iVar19") (= "=") (binary_expression "local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4)" (binary_expression "local_b0 + piVar7[2]" (identifier "local_b0") (+ "+") (subscript_expression "piVar7[2]" (identifier "piVar7") ([ "[") (number_literal "2") (] "]"))) (+ "+") (cast_expression "(uint)CARRY4((uint)puVar22,uVar4)" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (call_expression "CARRY4((uint)puVar22,uVar4)" (identifier "CARRY4") (argument_list "((uint)puVar22,uVar4)" (( "(") (cast_expression "(uint)puVar22" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "puVar22")) (, ",") (identifier "uVar4") () ")")))))) (; ";")) (expression_statement "local_78 = *(uint **)(iVar8 + 0x24);" (assignment_expression "local_78 = *(uint **)(iVar8 + 0x24)" (identifier "local_78") (= "=") (pointer_expression "*(uint **)(iVar8 + 0x24)" (* "*") (cast_expression "(uint **)(iVar8 + 0x24)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar8 + 0x24)" (( "(") (binary_expression "iVar8 + 0x24" (identifier "iVar8") (+ "+") (number_literal "0x24")) () ")"))))) (; ";")) (if_statement "if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }" (if "if") (parenthesized_expression "(((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff)" (( "(") (binary_expression "((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff" (parenthesized_expression "((uint)local_78 & *(uint *)(iVar8 + 0x28))" (( "(") (binary_expression "(uint)local_78 & *(uint *)(iVar8 + 0x28)" (cast_expression "(uint)local_78" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_78")) (& "&") (pointer_expression "*(uint *)(iVar8 + 0x28)" (* "*") (cast_expression "(uint *)(iVar8 + 0x28)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x28)" (( "(") (binary_expression "iVar8 + 0x28" (identifier "iVar8") (+ "+") (number_literal "0x28")) () ")"))))) () ")")) (== "==") (number_literal "0xffffffff")) () ")")) (compound_statement "{\nLAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");\n              }" ({ "{") (labeled_statement "LAB_001e674b:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");" (statement_identifier "LAB_001e674b") (: ":") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address")" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x401,"erratum_address")" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x401") (, ",") (string_literal ""erratum_address"" (" """) (string_content "erratum_address") (" """)) () ")"))) (; ";"))) (} "}"))) (if_statement "if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)) {\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }" (if "if") (parenthesized_expression "(*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9))" (( "(") (binary_expression "*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                  local_78 != (uint *)(uVar18 + uVar9)" (binary_expression "*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9)" (pointer_expression "*(uint *)(iVar8 + 0x28)" (* "*") (cast_expression "(uint *)(iVar8 + 0x28)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x28)" (( "(") (binary_expression "iVar8 + 0x28" (identifier "iVar8") (+ "+") (number_literal "0x28")) () ")")))) (!= "!=") (binary_expression "iVar19 + (uint)CARRY4(uVar18,uVar9)" (identifier "iVar19") (+ "+") (cast_expression "(uint)CARRY4(uVar18,uVar9)" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (call_expression "CARRY4(uVar18,uVar9)" (identifier "CARRY4") (argument_list "(uVar18,uVar9)" (( "(") (identifier "uVar18") (, ",") (identifier "uVar9") () ")")))))) (|| "||") (binary_expression "local_78 != (uint *)(uVar18 + uVar9)" (identifier "local_78") (!= "!=") (cast_expression "(uint *)(uVar18 + uVar9)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar18 + uVar9)" (( "(") (binary_expression "uVar18 + uVar9" (identifier "uVar18") (+ "+") (identifier "uVar9")) () ")"))))) () ")")) (compound_statement "{\nLAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");\n              }" ({ "{") (labeled_statement "LAB_001e6234:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");" (statement_identifier "LAB_001e6234") (: ":") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs")" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs")" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x7e9") (, ",") (string_literal ""fix_errata_and_relocate_erratum_stubs"" (" """) (string_content "fix_errata_and_relocate_erratum_stubs") (" """)) () ")"))) (; ";"))) (} "}"))) (expression_statement "piVar7 = (int *)*piVar7;" (assignment_expression "piVar7 = (int *)*piVar7" (identifier "piVar7") (= "=") (cast_expression "(int *)*piVar7" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar7" (* "*") (identifier "piVar7")))) (; ";")) (expression_statement "iVar10 = (int)piVar7 + (int)puVar22;" (assignment_expression "iVar10 = (int)piVar7 + (int)puVar22" (identifier "iVar10") (= "=") (binary_expression "(int)piVar7 + (int)puVar22" (cast_expression "(int)piVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar7")) (+ "+") (cast_expression "(int)puVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar22")))) (; ";")) (expression_statement "puVar12 = puVar22;" (assignment_expression "puVar12 = puVar22" (identifier "puVar12") (= "=") (identifier "puVar22")) (; ";")) (do_statement "do {\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              } while( true );" (do "do") (compound_statement "{\n                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);\n                uVar11 = *(uint *)(iVar8 + 0x20);\n                if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }\n                if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }\n                uVar18 = (iVar17 - uVar4) + (int)piVar7;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }\n                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);\n                if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }\n                iVar15 = iVar13 + 4;\n                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);\n                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;\n                *(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;\n                if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }\n                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;\n                local_7c = thunk_FUN_003af660(local_7c);\n                ppuVar21 = local_74;\n                if (local_30 == local_7c) break;\n                iVar8 = *(int *)(local_7c + 0x10);\n                uVar18 = *(uint *)(iVar8 + 0x1c);\n                puVar12 = (uint *)(uVar18 + uVar9);\n                local_78 = *(uint **)(iVar8 + 0x24);\n                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;\n                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;\n              }" ({ "{") (expression_statement "uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);" (assignment_expression "uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22)" (identifier "uVar18") (= "=") (pointer_expression "*(uint *)(uVar18 + (int)piVar7 + (int)puVar22)" (* "*") (cast_expression "(uint *)(uVar18 + (int)piVar7 + (int)puVar22)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar18 + (int)piVar7 + (int)puVar22)" (( "(") (binary_expression "uVar18 + (int)piVar7 + (int)puVar22" (binary_expression "uVar18 + (int)piVar7" (identifier "uVar18") (+ "+") (cast_expression "(int)piVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar7"))) (+ "+") (cast_expression "(int)puVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar22"))) () ")"))))) (; ";")) (expression_statement "uVar11 = *(uint *)(iVar8 + 0x20);" (assignment_expression "uVar11 = *(uint *)(iVar8 + 0x20)" (identifier "uVar11") (= "=") (pointer_expression "*(uint *)(iVar8 + 0x20)" (* "*") (cast_expression "(uint *)(iVar8 + 0x20)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x20)" (( "(") (binary_expression "iVar8 + 0x20" (identifier "iVar8") (+ "+") (number_literal "0x20")) () ")"))))) (; ";")) (if_statement "if (uVar11 == 0xffffffff) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }" (if "if") (parenthesized_expression "(uVar11 == 0xffffffff)" (( "(") (binary_expression "uVar11 == 0xffffffff" (identifier "uVar11") (== "==") (number_literal "0xffffffff")) () ")")) (compound_statement "{\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");\n                }" ({ "{") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn")" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",999,"update_erratum_insn")" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "999") (, ",") (string_literal ""update_erratum_insn"" (" """) (string_content "update_erratum_insn") (" """)) () ")"))) (; ";")) (} "}"))) (if_statement "if (*(int *)(iVar8 + 0x10) == 4) {\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }\n                else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }" (if "if") (parenthesized_expression "(*(int *)(iVar8 + 0x10) == 4)" (( "(") (binary_expression "*(int *)(iVar8 + 0x10) == 4" (pointer_expression "*(int *)(iVar8 + 0x10)" (* "*") (cast_expression "(int *)(iVar8 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x10)" (( "(") (binary_expression "iVar8 + 0x10" (identifier "iVar8") (+ "+") (number_literal "0x10")) () ")")))) (== "==") (number_literal "4")) () ")")) (compound_statement "{\n                  if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }\n                  if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }\n                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }\n                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }\n                  iVar17 = *(int *)(iVar8 + 0x2c);\n                  *(uint *)(iVar8 + 0x20) = uVar18;\n                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);\n                  puVar12 = (uint *)*puVar16;\n                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                }" ({ "{") (if_statement "if ((uVar18 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }" (if "if") (parenthesized_expression "((uVar18 & 0x3b000000) != 0x39000000)" (( "(") (binary_expression "(uVar18 & 0x3b000000) != 0x39000000" (parenthesized_expression "(uVar18 & 0x3b000000)" (( "(") (binary_expression "uVar18 & 0x3b000000" (identifier "uVar18") (& "&") (number_literal "0x3b000000")) () ")")) (!= "!=") (number_literal "0x39000000")) () ")")) (compound_statement "{\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");\n                  }" ({ "{") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn")" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x3eb,"update_erratum_insn")" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x3eb") (, ",") (string_literal ""update_erratum_insn"" (" """) (string_content "update_erratum_insn") (" """)) () ")"))) (; ";")) (} "}"))) (if_statement "if ((uVar11 & 0x3b000000) != 0x39000000) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }" (if "if") (parenthesized_expression "((uVar11 & 0x3b000000) != 0x39000000)" (( "(") (binary_expression "(uVar11 & 0x3b000000) != 0x39000000" (parenthesized_expression "(uVar11 & 0x3b000000)" (( "(") (binary_expression "uVar11 & 0x3b000000" (identifier "uVar11") (& "&") (number_literal "0x3b000000")) () ")")) (!= "!=") (number_literal "0x39000000")) () ")")) (compound_statement "{\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");\n                  }" ({ "{") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn")" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x3ec,"update_erratum_insn")" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x3ec") (, ",") (string_literal ""update_erratum_insn"" (" """) (string_content "update_erratum_insn") (" """)) () ")"))) (; ";")) (} "}"))) (if_statement "if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }" (if "if") (parenthesized_expression "((uVar18 & 0x1f) != (uVar11 & 0x1f))" (( "(") (binary_expression "(uVar18 & 0x1f) != (uVar11 & 0x1f)" (parenthesized_expression "(uVar18 & 0x1f)" (( "(") (binary_expression "uVar18 & 0x1f" (identifier "uVar18") (& "&") (number_literal "0x1f")) () ")")) (!= "!=") (parenthesized_expression "(uVar11 & 0x1f)" (( "(") (binary_expression "uVar11 & 0x1f" (identifier "uVar11") (& "&") (number_literal "0x1f")) () ")"))) () ")")) (compound_statement "{\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");\n                  }" ({ "{") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn")" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x3ee,"update_erratum_insn")" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x3ee") (, ",") (string_literal ""update_erratum_insn"" (" """) (string_content "update_erratum_insn") (" """)) () ")"))) (; ";")) (} "}"))) (if_statement "if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }" (if "if") (parenthesized_expression "((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f))" (( "(") (binary_expression "(uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)" (parenthesized_expression "(uVar18 >> 5 & 0x1f)" (( "(") (binary_expression "uVar18 >> 5 & 0x1f" (binary_expression "uVar18 >> 5" (identifier "uVar18") (>> ">>") (number_literal "5")) (& "&") (number_literal "0x1f")) () ")")) (!= "!=") (parenthesized_expression "(uVar11 >> 5 & 0x1f)" (( "(") (binary_expression "uVar11 >> 5 & 0x1f" (binary_expression "uVar11 >> 5" (identifier "uVar11") (>> ">>") (number_literal "5")) (& "&") (number_literal "0x1f")) () ")"))) () ")")) (compound_statement "{\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");\n                  }" ({ "{") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn")" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x3f0,"update_erratum_insn")" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x3f0") (, ",") (string_literal ""update_erratum_insn"" (" """) (string_content "update_erratum_insn") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "iVar17 = *(int *)(iVar8 + 0x2c);" (assignment_expression "iVar17 = *(int *)(iVar8 + 0x2c)" (identifier "iVar17") (= "=") (pointer_expression "*(int *)(iVar8 + 0x2c)" (* "*") (cast_expression "(int *)(iVar8 + 0x2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x2c)" (( "(") (binary_expression "iVar8 + 0x2c" (identifier "iVar8") (+ "+") (number_literal "0x2c")) () ")"))))) (; ";")) (expression_statement "*(uint *)(iVar8 + 0x20) = uVar18;" (assignment_expression "*(uint *)(iVar8 + 0x20) = uVar18" (pointer_expression "*(uint *)(iVar8 + 0x20)" (* "*") (cast_expression "(uint *)(iVar8 + 0x20)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x20)" (( "(") (binary_expression "iVar8 + 0x20" (identifier "iVar8") (+ "+") (number_literal "0x20")) () ")")))) (= "=") (identifier "uVar18")) (; ";")) (expression_statement "puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);" (assignment_expression "puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17)" (identifier "puVar16") (= "=") (cast_expression "(uint *)((int)piVar7 + (int)puVar22 + iVar17)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar7 + (int)puVar22 + iVar17)" (( "(") (binary_expression "(int)piVar7 + (int)puVar22 + iVar17" (binary_expression "(int)piVar7 + (int)puVar22" (cast_expression "(int)piVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar7")) (+ "+") (cast_expression "(int)puVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar22"))) (+ "+") (identifier "iVar17")) () ")")))) (; ";")) (expression_statement "puVar12 = (uint *)*puVar16;" (assignment_expression "puVar12 = (uint *)*puVar16" (identifier "puVar12") (= "=") (cast_expression "(uint *)*puVar16" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar16" (* "*") (identifier "puVar16")))) (; ";")) (if_statement "if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }" (if "if") (parenthesized_expression "(((uint)puVar12 & 0xffffffe0) != 0xd53bd040)" (( "(") (binary_expression "((uint)puVar12 & 0xffffffe0) != 0xd53bd040" (parenthesized_expression "((uint)puVar12 & 0xffffffe0)" (( "(") (binary_expression "(uint)puVar12 & 0xffffffe0" (cast_expression "(uint)puVar12" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "puVar12")) (& "&") (number_literal "0xffffffe0")) () ")")) (!= "!=") (number_literal "0xd53bd040")) () ")")) (compound_statement "{\n                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }\n                  }" ({ "{") (if_statement "if (((uint)puVar12 & 0x9f000000) == 0x90000000) {\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }\n                    else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }" (if "if") (parenthesized_expression "(((uint)puVar12 & 0x9f000000) == 0x90000000)" (( "(") (binary_expression "((uint)puVar12 & 0x9f000000) == 0x90000000" (parenthesized_expression "((uint)puVar12 & 0x9f000000)" (( "(") (binary_expression "(uint)puVar12 & 0x9f000000" (cast_expression "(uint)puVar12" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "puVar12")) (& "&") (number_literal "0x9f000000")) () ")")) (== "==") (number_literal "0x90000000")) () ")")) (compound_statement "{\n                      uVar5 = iVar17 + uVar9;\n                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;\n                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;\n                      uVar18 = (uVar5 & 0xfffff000) - uVar5;\n                      uVar11 = uVar18 + uVar20;\n                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);\n                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;\n                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }\n                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;\n                    }" ({ "{") (expression_statement "uVar5 = iVar17 + uVar9;" (assignment_expression "uVar5 = iVar17 + uVar9" (identifier "uVar5") (= "=") (binary_expression "iVar17 + uVar9" (identifier "iVar17") (+ "+") (identifier "uVar9"))) (; ";")) (expression_statement "uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;" (assignment_expression "uVar23 = (uint)puVar12 >> 3 & 0x1ffffc" (identifier "uVar23") (= "=") (binary_expression "(uint)puVar12 >> 3 & 0x1ffffc" (binary_expression "(uint)puVar12 >> 3" (cast_expression "(uint)puVar12" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "puVar12")) (>> ">>") (number_literal "3")) (& "&") (number_literal "0x1ffffc"))) (; ";")) (expression_statement "uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;" (assignment_expression "uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000" (identifier "uVar20") (= "=") (binary_expression "(uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000" (parenthesized_expression "(uVar23 | (uint)puVar12 >> 0x1d & 3)" (( "(") (binary_expression "uVar23 | (uint)puVar12 >> 0x1d & 3" (identifier "uVar23") (| "|") (binary_expression "(uint)puVar12 >> 0x1d & 3" (binary_expression "(uint)puVar12 >> 0x1d" (cast_expression "(uint)puVar12" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "puVar12")) (>> ">>") (number_literal "0x1d")) (& "&") (number_literal "3"))) () ")")) (* "*") (number_literal "0x1000"))) (; ";")) (expression_statement "uVar18 = (uVar5 & 0xfffff000) - uVar5;" (assignment_expression "uVar18 = (uVar5 & 0xfffff000) - uVar5" (identifier "uVar18") (= "=") (binary_expression "(uVar5 & 0xfffff000) - uVar5" (parenthesized_expression "(uVar5 & 0xfffff000)" (( "(") (binary_expression "uVar5 & 0xfffff000" (identifier "uVar5") (& "&") (number_literal "0xfffff000")) () ")")) (- "-") (identifier "uVar5"))) (; ";")) (expression_statement "uVar11 = uVar18 + uVar20;" (assignment_expression "uVar11 = uVar18 + uVar20" (identifier "uVar11") (= "=") (binary_expression "uVar18 + uVar20" (identifier "uVar18") (+ "+") (identifier "uVar20"))) (; ";")) (expression_statement "iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11);" (assignment_expression "iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11)" (identifier "iVar17") (= "=") (binary_expression "(((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +\n                               (uint)(0xffefffff < uVar11)" (binary_expression "(((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20)" (parenthesized_expression "(((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5))" (( "(") (binary_expression "((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -\n                               (uint)((uVar5 & 0xfffff000) < uVar5)" (parenthesized_expression "((uVar23 >> 0x14) * -2 | uVar23 >> 0x14)" (( "(") (binary_expression "(uVar23 >> 0x14) * -2 | uVar23 >> 0x14" (binary_expression "(uVar23 >> 0x14) * -2" (parenthesized_expression "(uVar23 >> 0x14)" (( "(") (binary_expression "uVar23 >> 0x14" (identifier "uVar23") (>> ">>") (number_literal "0x14")) () ")")) (* "*") (number_literal "-2")) (| "|") (binary_expression "uVar23 >> 0x14" (identifier "uVar23") (>> ">>") (number_literal "0x14"))) () ")")) (- "-") (call_expression "(uint)((uVar5 & 0xfffff000) < uVar5)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((uVar5 & 0xfffff000) < uVar5)" (( "(") (binary_expression "(uVar5 & 0xfffff000) < uVar5" (parenthesized_expression "(uVar5 & 0xfffff000)" (( "(") (binary_expression "uVar5 & 0xfffff000" (identifier "uVar5") (& "&") (number_literal "0xfffff000")) () ")")) (< "<") (identifier "uVar5")) () ")")))) () ")")) (+ "+") (cast_expression "(uint)CARRY4(uVar18,uVar20)" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (call_expression "CARRY4(uVar18,uVar20)" (identifier "CARRY4") (argument_list "(uVar18,uVar20)" (( "(") (identifier "uVar18") (, ",") (identifier "uVar20") () ")"))))) (+ "+") (call_expression "(uint)(0xffefffff < uVar11)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(0xffefffff < uVar11)" (( "(") (binary_expression "0xffefffff < uVar11" (number_literal "0xffefffff") (< "<") (identifier "uVar11")) () ")"))))) (; ";")) (if_statement "if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))\n                      goto LAB_001e6269;" (if "if") (parenthesized_expression "(iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))" (( "(") (binary_expression "iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000)" (binary_expression "iVar17 != 0" (identifier "iVar17") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "(uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000)" (binary_expression "(uint)-iVar17" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (- "-") (identifier "iVar17")) (< "<") (call_expression "(uint)(0x1fffff < uVar11 + 0x100000)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(0x1fffff < uVar11 + 0x100000)" (( "(") (binary_expression "0x1fffff < uVar11 + 0x100000" (number_literal "0x1fffff") (< "<") (binary_expression "uVar11 + 0x100000" (identifier "uVar11") (+ "+") (number_literal "0x100000"))) () ")"))))) () ")")) (goto_statement "goto LAB_001e6269;" (goto "goto") (statement_identifier "LAB_001e6269") (; ";"))) (if_statement "if (((uint)puVar12 & 0x1f000000) != 0x10000000) {\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }" (if "if") (parenthesized_expression "(((uint)puVar12 & 0x1f000000) != 0x10000000)" (( "(") (binary_expression "((uint)puVar12 & 0x1f000000) != 0x10000000" (parenthesized_expression "((uint)puVar12 & 0x1f000000)" (( "(") (binary_expression "(uint)puVar12 & 0x1f000000" (cast_expression "(uint)puVar12" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "puVar12")) (& "&") (number_literal "0x1f000000")) () ")")) (!= "!=") (number_literal "0x10000000")) () ")")) (compound_statement "{\n                    \n                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");\n                      }" ({ "{") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm")" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm")" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x8d") (, ",") (string_literal ""aarch64_adr_encode_imm"" (" """) (string_content "aarch64_adr_encode_imm") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "*puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f;" (assignment_expression "*puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f" (pointer_expression "*puVar16" (* "*") (identifier "puVar16")) (= "=") (binary_expression "(uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |\n                                 (uint)puVar12 & 0x1f00001f" (binary_expression "(uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0" (binary_expression "(uVar11 & 3) << 0x1d" (parenthesized_expression "(uVar11 & 3)" (( "(") (binary_expression "uVar11 & 3" (identifier "uVar11") (& "&") (number_literal "3")) () ")")) (<< "<<") (number_literal "0x1d")) (| "|") (binary_expression "uVar11 * 8 & 0xffffe0" (binary_expression "uVar11 * 8" (identifier "uVar11") (* "*") (number_literal "8")) (& "&") (number_literal "0xffffe0"))) (| "|") (binary_expression "(uint)puVar12 & 0x1f00001f" (cast_expression "(uint)puVar12" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "puVar12")) (& "&") (number_literal "0x1f00001f")))) (; ";")) (} "}")) (else_clause "else if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }" (else "else") (if_statement "if ((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)) {\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }" (if "if") (parenthesized_expression "((iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040))" (( "(") (binary_expression "(iVar17 == 0) ||\n                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)" (parenthesized_expression "(iVar17 == 0)" (( "(") (binary_expression "iVar17 == 0" (identifier "iVar17") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040)" (( "(") (binary_expression "(*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=\n                             0xd53bd040" (parenthesized_expression "(*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0)" (( "(") (binary_expression "*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0" (pointer_expression "*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4)" (* "*") (cast_expression "(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar7 + (int)puVar22 + iVar17 + -4)" (( "(") (binary_expression "(int)piVar7 + (int)puVar22 + iVar17 + -4" (binary_expression "(int)piVar7 + (int)puVar22 + iVar17" (binary_expression "(int)piVar7 + (int)puVar22" (cast_expression "(int)piVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar7")) (+ "+") (cast_expression "(int)puVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar22"))) (+ "+") (identifier "iVar17")) (+ "+") (number_literal "-4")) () ")")))) (& "&") (number_literal "0xffffffe0")) () ")")) (!= "!=") (number_literal "0xd53bd040")) () ")"))) () ")")) (compound_statement "{\n                    \n                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;\n                    }" ({ "{") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")\n                      ;" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x842") (, ",") (string_literal ""try_fix_erratum_843419_optimized"" (" """) (string_content "try_fix_erratum_843419_optimized") (" """)) () ")"))) (; ";")) (} "}"))))) (} "}"))) (if_statement "if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;" (if "if") (parenthesized_expression "((*(byte *)(puVar24 + 7) & 1) == 0)" (( "(") (binary_expression "(*(byte *)(puVar24 + 7) & 1) == 0" (parenthesized_expression "(*(byte *)(puVar24 + 7) & 1)" (( "(") (binary_expression "*(byte *)(puVar24 + 7) & 1" (pointer_expression "*(byte *)(puVar24 + 7)" (* "*") (cast_expression "(byte *)(puVar24 + 7)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 7)" (( "(") (binary_expression "puVar24 + 7" (identifier "puVar24") (+ "+") (number_literal "7")) () ")")))) (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_001e670d;" (goto "goto") (statement_identifier "LAB_001e670d") (; ";"))) (expression_statement "iVar17 = puVar24[1];" (assignment_expression "iVar17 = puVar24[1]" (identifier "iVar17") (= "=") (subscript_expression "puVar24[1]" (identifier "puVar24") ([ "[") (number_literal "1") (] "]"))) (; ";")) (} "}")) (else_clause "else {\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }" (else "else") (compound_statement "{\n                  if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }\n                  if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }\nLAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;\n                  iVar17 = puVar24[1];\n                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;\n                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;\n                }" ({ "{") (if_statement "if (*(int *)(iVar8 + 0x10) != 5) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }" (if "if") (parenthesized_expression "(*(int *)(iVar8 + 0x10) != 5)" (( "(") (binary_expression "*(int *)(iVar8 + 0x10) != 5" (pointer_expression "*(int *)(iVar8 + 0x10)" (* "*") (cast_expression "(int *)(iVar8 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x10)" (( "(") (binary_expression "iVar8 + 0x10" (identifier "iVar8") (+ "+") (number_literal "0x10")) () ")")))) (!= "!=") (number_literal "5")) () ")")) (compound_statement "{\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");\n                  }" ({ "{") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn")" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x3f8,"update_erratum_insn")" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x3f8") (, ",") (string_literal ""update_erratum_insn"" (" """) (string_content "update_erratum_insn") (" """)) () ")"))) (; ";")) (} "}"))) (if_statement "if (uVar18 != uVar11) {\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }" (if "if") (parenthesized_expression "(uVar18 != uVar11)" (( "(") (binary_expression "uVar18 != uVar11" (identifier "uVar18") (!= "!=") (identifier "uVar11")) () ")")) (compound_statement "{\n                    \n                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");\n                  }" ({ "{") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn")" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x3f5,"update_erratum_insn")" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x3f5") (, ",") (string_literal ""update_erratum_insn"" (" """) (string_content "update_erratum_insn") (" """)) () ")"))) (; ";")) (} "}"))) (labeled_statement "LAB_001e6269:\n                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;" (statement_identifier "LAB_001e6269") (: ":") (if_statement "if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;" (if "if") (parenthesized_expression "((*(byte *)(puVar24 + 7) & 1) == 0)" (( "(") (binary_expression "(*(byte *)(puVar24 + 7) & 1) == 0" (parenthesized_expression "(*(byte *)(puVar24 + 7) & 1)" (( "(") (binary_expression "*(byte *)(puVar24 + 7) & 1" (pointer_expression "*(byte *)(puVar24 + 7)" (* "*") (cast_expression "(byte *)(puVar24 + 7)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 7)" (( "(") (binary_expression "puVar24 + 7" (identifier "puVar24") (+ "+") (number_literal "7")) () ")")))) (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_001e670d;" (goto "goto") (statement_identifier "LAB_001e670d") (; ";")))) (expression_statement "iVar17 = puVar24[1];" (assignment_expression "iVar17 = puVar24[1]" (identifier "iVar17") (= "=") (subscript_expression "puVar24[1]" (identifier "puVar24") ([ "[") (number_literal "1") (] "]"))) (; ";")) (if_statement "if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;" (if "if") (parenthesized_expression "(*(int *)(iVar8 + 0xc) == -1)" (( "(") (binary_expression "*(int *)(iVar8 + 0xc) == -1" (pointer_expression "*(int *)(iVar8 + 0xc)" (* "*") (cast_expression "(int *)(iVar8 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0xc)" (( "(") (binary_expression "iVar8 + 0xc" (identifier "iVar8") (+ "+") (number_literal "0xc")) () ")")))) (== "==") (number_literal "-1")) () ")")) (goto_statement "goto LAB_001e5d9c;" (goto "goto") (statement_identifier "LAB_001e5d9c") (; ";"))) (expression_statement "*(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;" (assignment_expression "*(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =\n                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000" (pointer_expression "*(uint *)(iVar10 + *(int *)(iVar8 + 0x1c))" (* "*") (cast_expression "(uint *)(iVar10 + *(int *)(iVar8 + 0x1c))" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + *(int *)(iVar8 + 0x1c))" (( "(") (binary_expression "iVar10 + *(int *)(iVar8 + 0x1c)" (identifier "iVar10") (+ "+") (pointer_expression "*(int *)(iVar8 + 0x1c)" (* "*") (cast_expression "(int *)(iVar8 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x1c)" (( "(") (binary_expression "iVar8 + 0x1c" (identifier "iVar8") (+ "+") (number_literal "0x1c")) () ")"))))) () ")")))) (= "=") (binary_expression "(iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000" (binary_expression "(iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff" (binary_expression "(iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2" (binary_expression "(iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +\n                       (*(int *)(iVar8 + 0xc) - (int)local_78)" (parenthesized_expression "(iVar17 + 3 + puVar24[0x16] & 0xfffffffcU)" (( "(") (binary_expression "iVar17 + 3 + puVar24[0x16] & 0xfffffffcU" (binary_expression "iVar17 + 3 + puVar24[0x16]" (binary_expression "iVar17 + 3" (identifier "iVar17") (+ "+") (number_literal "3")) (+ "+") (subscript_expression "puVar24[0x16]" (identifier "puVar24") ([ "[") (number_literal "0x16") (] "]"))) (& "&") (number_literal "0xfffffffcU")) () ")")) (+ "+") (parenthesized_expression "(*(int *)(iVar8 + 0xc) - (int)local_78)" (( "(") (binary_expression "*(int *)(iVar8 + 0xc) - (int)local_78" (pointer_expression "*(int *)(iVar8 + 0xc)" (* "*") (cast_expression "(int *)(iVar8 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0xc)" (( "(") (binary_expression "iVar8 + 0xc" (identifier "iVar8") (+ "+") (number_literal "0xc")) () ")")))) (- "-") (cast_expression "(int)local_78" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_78"))) () ")"))) (>> ">>") (number_literal "2")) (& "&") (number_literal "0x3ffffff")) (| "|") (number_literal "0x14000000"))) (; ";")) (} "}")))) (expression_statement "uVar18 = (iVar17 - uVar4) + (int)piVar7;" (assignment_expression "uVar18 = (iVar17 - uVar4) + (int)piVar7" (identifier "uVar18") (= "=") (binary_expression "(iVar17 - uVar4) + (int)piVar7" (parenthesized_expression "(iVar17 - uVar4)" (( "(") (binary_expression "iVar17 - uVar4" (identifier "iVar17") (- "-") (identifier "uVar4")) () ")")) (+ "+") (cast_expression "(int)piVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar7")))) (; ";")) (if_statement "if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }" (if "if") (parenthesized_expression "(*(int *)(iVar8 + 0x20) == -1)" (( "(") (binary_expression "*(int *)(iVar8 + 0x20) == -1" (pointer_expression "*(int *)(iVar8 + 0x20)" (* "*") (cast_expression "(int *)(iVar8 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x20)" (( "(") (binary_expression "iVar8 + 0x20" (identifier "iVar8") (+ "+") (number_literal "0x20")) () ")")))) (== "==") (number_literal "-1")) () ")")) (compound_statement "{\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");\n                }" ({ "{") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub")" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x663,"relocate_erratum_stub")" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x663") (, ",") (string_literal ""relocate_erratum_stub"" (" """) (string_content "relocate_erratum_stub") (" """)) () ")"))) (; ";")) (} "}"))) (if_statement "if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;" (if "if") (parenthesized_expression "(*(int *)(iVar8 + 0xc) == -1)" (( "(") (binary_expression "*(int *)(iVar8 + 0xc) == -1" (pointer_expression "*(int *)(iVar8 + 0xc)" (* "*") (cast_expression "(int *)(iVar8 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0xc)" (( "(") (binary_expression "iVar8 + 0xc" (identifier "iVar8") (+ "+") (number_literal "0xc")) () ")")))) (== "==") (number_literal "-1")) () ")")) (goto_statement "goto LAB_001e5d9c;" (goto "goto") (statement_identifier "LAB_001e5d9c") (; ";"))) (expression_statement "iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);" (assignment_expression "iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc)" (identifier "iVar13") (= "=") (binary_expression "*(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc)" (pointer_expression "*(int *)(iVar8 + 0xc)" (* "*") (cast_expression "(int *)(iVar8 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0xc)" (( "(") (binary_expression "iVar8 + 0xc" (identifier "iVar8") (+ "+") (number_literal "0xc")) () ")")))) (+ "+") (parenthesized_expression "(iVar17 + puVar24[0x16] + 3U & 0xfffffffc)" (( "(") (binary_expression "iVar17 + puVar24[0x16] + 3U & 0xfffffffc" (binary_expression "iVar17 + puVar24[0x16] + 3U" (binary_expression "iVar17 + puVar24[0x16]" (identifier "iVar17") (+ "+") (subscript_expression "puVar24[0x16]" (identifier "puVar24") ([ "[") (number_literal "0x16") (] "]"))) (+ "+") (number_literal "3U")) (& "&") (number_literal "0xfffffffc")) () ")")))) (; ";")) (if_statement "if (1 < *(int *)(iVar8 + 0x10) - 4U) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }" (if "if") (parenthesized_expression "(1 < *(int *)(iVar8 + 0x10) - 4U)" (( "(") (binary_expression "1 < *(int *)(iVar8 + 0x10) - 4U" (number_literal "1") (< "<") (binary_expression "*(int *)(iVar8 + 0x10) - 4U" (pointer_expression "*(int *)(iVar8 + 0x10)" (* "*") (cast_expression "(int *)(iVar8 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x10)" (( "(") (binary_expression "iVar8 + 0x10" (identifier "iVar8") (+ "+") (number_literal "0x10")) () ")")))) (- "-") (number_literal "4U"))) () ")")) (compound_statement "{\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");\n                }" ({ "{") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub")" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub")" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x67c") (, ",") (string_literal ""relocate_erratum_stub"" (" """) (string_content "relocate_erratum_stub") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "iVar15 = iVar13 + 4;" (assignment_expression "iVar15 = iVar13 + 4" (identifier "iVar15") (= "=") (binary_expression "iVar13 + 4" (identifier "iVar13") (+ "+") (number_literal "4"))) (; ";")) (expression_statement "*(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);" (assignment_expression "*(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20)" (pointer_expression "*(int *)(uVar18 + (iVar13 - iVar17))" (* "*") (cast_expression "(int *)(uVar18 + (iVar13 - iVar17))" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar18 + (iVar13 - iVar17))" (( "(") (binary_expression "uVar18 + (iVar13 - iVar17)" (identifier "uVar18") (+ "+") (parenthesized_expression "(iVar13 - iVar17)" (( "(") (binary_expression "iVar13 - iVar17" (identifier "iVar13") (- "-") (identifier "iVar17")) () ")"))) () ")")))) (= "=") (pointer_expression "*(int *)(iVar8 + 0x20)" (* "*") (cast_expression "(int *)(iVar8 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x20)" (( "(") (binary_expression "iVar8 + 0x20" (identifier "iVar8") (+ "+") (number_literal "0x20")) () ")"))))) (; ";")) (if_statement "if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;" (if "if") (parenthesized_expression "((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff)" (( "(") (binary_expression "(*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff" (parenthesized_expression "(*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4))" (( "(") (binary_expression "*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)" (pointer_expression "*(uint *)(iVar8 + 8)" (* "*") (cast_expression "(uint *)(iVar8 + 8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 8)" (( "(") (binary_expression "iVar8 + 8" (identifier "iVar8") (+ "+") (number_literal "8")) () ")")))) (& "&") (pointer_expression "*(uint *)(iVar8 + 4)" (* "*") (cast_expression "(uint *)(iVar8 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 4)" (( "(") (binary_expression "iVar8 + 4" (identifier "iVar8") (+ "+") (number_literal "4")) () ")"))))) () ")")) (== "==") (number_literal "0xffffffff")) () ")")) (goto_statement "goto LAB_001e67c7;" (goto "goto") (statement_identifier "LAB_001e67c7") (; ";"))) (expression_statement "*(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;" (assignment_expression "*(uint *)(uVar18 + (iVar15 - iVar17)) =\n                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000" (pointer_expression "*(uint *)(uVar18 + (iVar15 - iVar17))" (* "*") (cast_expression "(uint *)(uVar18 + (iVar15 - iVar17))" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar18 + (iVar15 - iVar17))" (( "(") (binary_expression "uVar18 + (iVar15 - iVar17)" (identifier "uVar18") (+ "+") (parenthesized_expression "(iVar15 - iVar17)" (( "(") (binary_expression "iVar15 - iVar17" (identifier "iVar15") (- "-") (identifier "iVar17")) () ")"))) () ")")))) (= "=") (binary_expression "*(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000" (binary_expression "*(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff" (binary_expression "*(uint *)(iVar8 + 4) - iVar15 >> 2" (binary_expression "*(uint *)(iVar8 + 4) - iVar15" (pointer_expression "*(uint *)(iVar8 + 4)" (* "*") (cast_expression "(uint *)(iVar8 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 4)" (( "(") (binary_expression "iVar8 + 4" (identifier "iVar8") (+ "+") (number_literal "4")) () ")")))) (- "-") (identifier "iVar15")) (>> ">>") (number_literal "2")) (& "&") (number_literal "0x3ffffff")) (| "|") (number_literal "0x14000000"))) (; ";")) (if_statement "if (*(int *)(iVar8 + 0x20) == -1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }" (if "if") (parenthesized_expression "(*(int *)(iVar8 + 0x20) == -1)" (( "(") (binary_expression "*(int *)(iVar8 + 0x20) == -1" (pointer_expression "*(int *)(iVar8 + 0x20)" (* "*") (cast_expression "(int *)(iVar8 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x20)" (( "(") (binary_expression "iVar8 + 0x20" (identifier "iVar8") (+ "+") (number_literal "0x20")) () ")")))) (== "==") (number_literal "-1")) () ")")) (compound_statement "{\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");\n                }" ({ "{") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x42b") (, ",") (string_literal ""invalidate_erratum_stub"" (" """) (string_content "invalidate_erratum_stub") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "*(undefined4 *)(iVar8 + 0x20) = 0xffffffff;" (assignment_expression "*(undefined4 *)(iVar8 + 0x20) = 0xffffffff" (pointer_expression "*(undefined4 *)(iVar8 + 0x20)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x20)" (( "(") (binary_expression "iVar8 + 0x20" (identifier "iVar8") (+ "+") (number_literal "0x20")) () ")")))) (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "local_7c = thunk_FUN_003af660(local_7c);" (assignment_expression "local_7c = thunk_FUN_003af660(local_7c)" (identifier "local_7c") (= "=") (call_expression "thunk_FUN_003af660(local_7c)" (identifier "thunk_FUN_003af660") (argument_list "(local_7c)" (( "(") (identifier "local_7c") () ")")))) (; ";")) (expression_statement "ppuVar21 = local_74;" (assignment_expression "ppuVar21 = local_74" (identifier "ppuVar21") (= "=") (identifier "local_74")) (; ";")) (if_statement "if (local_30 == local_7c) break;" (if "if") (parenthesized_expression "(local_30 == local_7c)" (( "(") (binary_expression "local_30 == local_7c" (identifier "local_30") (== "==") (identifier "local_7c")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar8 = *(int *)(local_7c + 0x10);" (assignment_expression "iVar8 = *(int *)(local_7c + 0x10)" (identifier "iVar8") (= "=") (pointer_expression "*(int *)(local_7c + 0x10)" (* "*") (cast_expression "(int *)(local_7c + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_7c + 0x10)" (( "(") (binary_expression "local_7c + 0x10" (identifier "local_7c") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "uVar18 = *(uint *)(iVar8 + 0x1c);" (assignment_expression "uVar18 = *(uint *)(iVar8 + 0x1c)" (identifier "uVar18") (= "=") (pointer_expression "*(uint *)(iVar8 + 0x1c)" (* "*") (cast_expression "(uint *)(iVar8 + 0x1c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x1c)" (( "(") (binary_expression "iVar8 + 0x1c" (identifier "iVar8") (+ "+") (number_literal "0x1c")) () ")"))))) (; ";")) (expression_statement "puVar12 = (uint *)(uVar18 + uVar9);" (assignment_expression "puVar12 = (uint *)(uVar18 + uVar9)" (identifier "puVar12") (= "=") (cast_expression "(uint *)(uVar18 + uVar9)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar18 + uVar9)" (( "(") (binary_expression "uVar18 + uVar9" (identifier "uVar18") (+ "+") (identifier "uVar9")) () ")")))) (; ";")) (expression_statement "local_78 = *(uint **)(iVar8 + 0x24);" (assignment_expression "local_78 = *(uint **)(iVar8 + 0x24)" (identifier "local_78") (= "=") (pointer_expression "*(uint **)(iVar8 + 0x24)" (* "*") (cast_expression "(uint **)(iVar8 + 0x24)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar8 + 0x24)" (( "(") (binary_expression "iVar8 + 0x24" (identifier "iVar8") (+ "+") (number_literal "0x24")) () ")"))))) (; ";")) (if_statement "if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;" (if "if") (parenthesized_expression "(((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff)" (( "(") (binary_expression "((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff" (parenthesized_expression "((uint)local_78 & *(uint *)(iVar8 + 0x28))" (( "(") (binary_expression "(uint)local_78 & *(uint *)(iVar8 + 0x28)" (cast_expression "(uint)local_78" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_78")) (& "&") (pointer_expression "*(uint *)(iVar8 + 0x28)" (* "*") (cast_expression "(uint *)(iVar8 + 0x28)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x28)" (( "(") (binary_expression "iVar8 + 0x28" (identifier "iVar8") (+ "+") (number_literal "0x28")) () ")"))))) () ")")) (== "==") (number_literal "0xffffffff")) () ")")) (goto_statement "goto LAB_001e674b;" (goto "goto") (statement_identifier "LAB_001e674b") (; ";"))) (if_statement "if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12) goto LAB_001e6234;" (if "if") (parenthesized_expression "(*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12)" (( "(") (binary_expression "*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||\n                    local_78 != puVar12" (binary_expression "*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9)" (pointer_expression "*(uint *)(iVar8 + 0x28)" (* "*") (cast_expression "(uint *)(iVar8 + 0x28)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x28)" (( "(") (binary_expression "iVar8 + 0x28" (identifier "iVar8") (+ "+") (number_literal "0x28")) () ")")))) (!= "!=") (binary_expression "iVar19 + (uint)CARRY4(uVar18,uVar9)" (identifier "iVar19") (+ "+") (cast_expression "(uint)CARRY4(uVar18,uVar9)" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (call_expression "CARRY4(uVar18,uVar9)" (identifier "CARRY4") (argument_list "(uVar18,uVar9)" (( "(") (identifier "uVar18") (, ",") (identifier "uVar9") () ")")))))) (|| "||") (binary_expression "local_78 != puVar12" (identifier "local_78") (!= "!=") (identifier "puVar12"))) () ")")) (goto_statement "goto LAB_001e6234;" (goto "goto") (statement_identifier "LAB_001e6234") (; ";"))) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}"))) (} "}"))) (expression_statement "local_5c = local_5c + 1;" (assignment_expression "local_5c = local_5c + 1" (identifier "local_5c") (= "=") (binary_expression "local_5c + 1" (identifier "local_5c") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (local_5c == local_58) {\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }" (if "if") (parenthesized_expression "(local_5c == local_58)" (( "(") (binary_expression "local_5c == local_58" (identifier "local_5c") (== "==") (identifier "local_58")) () ")")) (compound_statement "{\n            local_58 = *(uint *)(param_1 + 0x28);\n            goto LAB_001e5adf;\n          }" ({ "{") (expression_statement "local_58 = *(uint *)(param_1 + 0x28);" (assignment_expression "local_58 = *(uint *)(param_1 + 0x28)" (identifier "local_58") (= "=") (pointer_expression "*(uint *)(param_1 + 0x28)" (* "*") (cast_expression "(uint *)(param_1 + 0x28)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x28)" (( "(") (binary_expression "param_1 + 0x28" (identifier "param_1") (+ "+") (number_literal "0x28")) () ")"))))) (; ";")) (goto_statement "goto LAB_001e5adf;" (goto "goto") (statement_identifier "LAB_001e5adf") (; ";")) (} "}"))) (expression_statement "iVar8 = *(int *)(param_1 + 0x13c);" (assignment_expression "iVar8 = *(int *)(param_1 + 0x13c)" (identifier "iVar8") (= "=") (pointer_expression "*(int *)(param_1 + 0x13c)" (* "*") (cast_expression "(int *)(param_1 + 0x13c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x13c)" (( "(") (binary_expression "param_1 + 0x13c" (identifier "param_1") (+ "+") (number_literal "0x13c")) () ")"))))) (; ";")) (expression_statement "iVar19 = *(int *)(param_1 + 0x140);" (assignment_expression "iVar19 = *(int *)(param_1 + 0x140)" (identifier "iVar19") (= "=") (pointer_expression "*(int *)(param_1 + 0x140)" (* "*") (cast_expression "(int *)(param_1 + 0x140)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x140)" (( "(") (binary_expression "param_1 + 0x140" (identifier "param_1") (+ "+") (number_literal "0x140")) () ")"))))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(local_5c < (uint)(iVar19 - iVar8 >> 2))" (( "(") (binary_expression "local_5c < (uint)(iVar19 - iVar8 >> 2)" (identifier "local_5c") (< "<") (call_expression "(uint)(iVar19 - iVar8 >> 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(iVar19 - iVar8 >> 2)" (( "(") (binary_expression "iVar19 - iVar8 >> 2" (binary_expression "iVar19 - iVar8" (identifier "iVar19") (- "-") (identifier "iVar8")) (>> ">>") (number_literal "2")) () ")")))) () ")")) (; ";")) (} "}"))) (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19)" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19)" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x6f6") (, ",") (string_literal ""stub_table"" (" """) (string_content "stub_table") (" """)) (, ",") (identifier "ppuVar21") (, ",") (identifier "iVar19") () ")"))) (; ";")) (} "}"))) (labeled_statement "LAB_001e5adf:\n    piVar7 = *(int **)(DAT_005ea7c8 + 0xc);" (statement_identifier "LAB_001e5adf") (: ":") (expression_statement "piVar7 = *(int **)(DAT_005ea7c8 + 0xc);" (assignment_expression "piVar7 = *(int **)(DAT_005ea7c8 + 0xc)" (identifier "piVar7") (= "=") (pointer_expression "*(int **)(DAT_005ea7c8 + 0xc)" (* "*") (cast_expression "(int **)(DAT_005ea7c8 + 0xc)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(DAT_005ea7c8 + 0xc)" (( "(") (binary_expression "DAT_005ea7c8 + 0xc" (identifier "DAT_005ea7c8") (+ "+") (number_literal "0xc")) () ")"))))) (; ";"))) (if_statement "if (piVar7 == (int *)0x0) {\n                    \n      FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);\n    }" (if "if") (parenthesized_expression "(piVar7 == (int *)0x0)" (( "(") (binary_expression "piVar7 == (int *)0x0" (identifier "piVar7") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                    \n      FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);\n    }" ({ "{") (expression_statement "FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);" (call_expression "FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18)" (identifier "FUN_002446e0") (argument_list "("../../gold/parameters.h",0x69,"target",uVar18)" (( "(") (string_literal ""../../gold/parameters.h"" (" """) (string_content "../../gold/parameters.h") (" """)) (, ",") (number_literal "0x69") (, ",") (string_literal ""target"" (" """) (string_content "target") (" """)) (, ",") (identifier "uVar18") () ")"))) (; ";")) (} "}"))) (expression_statement "piVar3 = (int *)piVar7[1];" (assignment_expression "piVar3 = (int *)piVar7[1]" (identifier "piVar3") (= "=") (cast_expression "(int *)piVar7[1]" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "piVar7[1]" (identifier "piVar7") ([ "[") (number_literal "1") (] "]")))) (; ";")) (if_statement "if (((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0')) {\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);\n    }" (if "if") (parenthesized_expression "(((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0'))" (( "(") (binary_expression "((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0')" (parenthesized_expression "((piVar3[2] != 0xb7) || (*piVar3 != 0x40))" (( "(") (binary_expression "(piVar3[2] != 0xb7) || (*piVar3 != 0x40)" (parenthesized_expression "(piVar3[2] != 0xb7)" (( "(") (binary_expression "piVar3[2] != 0xb7" (subscript_expression "piVar3[2]" (identifier "piVar3") ([ "[") (number_literal "2") (] "]")) (!= "!=") (number_literal "0xb7")) () ")")) (|| "||") (parenthesized_expression "(*piVar3 != 0x40)" (( "(") (binary_expression "*piVar3 != 0x40" (pointer_expression "*piVar3" (* "*") (identifier "piVar3")) (!= "!=") (number_literal "0x40")) () ")"))) () ")")) (|| "||") (parenthesized_expression "((char)piVar3[1] != '\0')" (( "(") (binary_expression "(char)piVar3[1] != '\0'" (cast_expression "(char)piVar3[1]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "piVar3[1]" (identifier "piVar3") ([ "[") (number_literal "1") (] "]"))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n                    \n      FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);\n    }" ({ "{") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21)" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21)" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0xc2e") (, ",") (string_literal ""current_target"" (" """) (string_content "current_target") (" """)) (, ",") (identifier "ppuVar21") () ")"))) (; ";")) (} "}"))) (if_statement "if (1 < local_58) {\n      uVar18 = 1;\n      puVar12 = &local_24;\n      do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);\n    }" (if "if") (parenthesized_expression "(1 < local_58)" (( "(") (binary_expression "1 < local_58" (number_literal "1") (< "<") (identifier "local_58")) () ")")) (compound_statement "{\n      uVar18 = 1;\n      puVar12 = &local_24;\n      do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);\n    }" ({ "{") (expression_statement "uVar18 = 1;" (assignment_expression "uVar18 = 1" (identifier "uVar18") (= "=") (number_literal "1")) (; ";")) (expression_statement "puVar12 = &local_24;" (assignment_expression "puVar12 = &local_24" (identifier "puVar12") (= "=") (pointer_expression "&local_24" (& "&") (identifier "local_24"))) (; ";")) (do_statement "do {\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      } while (uVar18 != local_58);" (do "do") (compound_statement "{\n        local_24 = param_1;\n        local_20 = uVar18;\n        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);\n        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }\n        uVar18 = uVar18 + 1;\n      }" ({ "{") (expression_statement "local_24 = param_1;" (assignment_expression "local_24 = param_1" (identifier "local_24") (= "=") (identifier "param_1")) (; ";")) (expression_statement "local_20 = uVar18;" (assignment_expression "local_20 = uVar18" (identifier "local_20") (= "=") (identifier "uVar18")) (; ";")) (expression_statement "piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);" (assignment_expression "piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1)" (identifier "piVar3") (= "=") (cast_expression "(int *)FUN_001d1150(uVar18 ^ param_1)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_001d1150(uVar18 ^ param_1)" (identifier "FUN_001d1150") (argument_list "(uVar18 ^ param_1)" (( "(") (binary_expression "uVar18 ^ param_1" (identifier "uVar18") (^ "^") (identifier "param_1")) () ")"))))) (; ";")) (if_statement "if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }" (if "if") (parenthesized_expression "(((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0))))" (( "(") (binary_expression "((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))\n           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))" (parenthesized_expression "((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))" (( "(") (binary_expression "(((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&\n            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20))))" (parenthesized_expression "(((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0))" (( "(") (binary_expression "((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&\n             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)" (parenthesized_expression "((piVar3 != (int *)0x0) && (*piVar3 != 0))" (( "(") (binary_expression "(piVar3 != (int *)0x0) && (*piVar3 != 0)" (parenthesized_expression "(piVar3 != (int *)0x0)" (( "(") (binary_expression "piVar3 != (int *)0x0" (identifier "piVar3") (!= "!=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (&& "&&") (parenthesized_expression "(*piVar3 != 0)" (( "(") (binary_expression "*piVar3 != 0" (pointer_expression "*piVar3" (* "*") (identifier "piVar3")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)" (( "(") (comma_expression "iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0" (assignment_expression "iVar8 = *(int *)(*piVar3 + 0xc)" (identifier "iVar8") (= "=") (pointer_expression "*(int *)(*piVar3 + 0xc)" (* "*") (cast_expression "(int *)(*piVar3 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*piVar3 + 0xc)" (( "(") (binary_expression "*piVar3 + 0xc" (pointer_expression "*piVar3" (* "*") (identifier "piVar3")) (+ "+") (number_literal "0xc")) () ")"))))) (, ",") (binary_expression "iVar8 != 0" (identifier "iVar8") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20))))" (( "(") (parenthesized_expression "(iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))" (( "(") (comma_expression "iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20))" (assignment_expression "iVar19 = *(int *)(iVar8 + 0x34)" (identifier "iVar19") (= "=") (pointer_expression "*(int *)(iVar8 + 0x34)" (* "*") (cast_expression "(int *)(iVar8 + 0x34)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x34)" (( "(") (binary_expression "iVar8 + 0x34" (identifier "iVar8") (+ "+") (number_literal "0x34")) () ")"))))) (, ",") (binary_expression "iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20))" (binary_expression "iVar19 != 0" (identifier "iVar19") (!= "!=") (number_literal "0")) (&& "&&") (parenthesized_expression "(iVar8 == *(int *)(iVar19 + 0x20))" (( "(") (binary_expression "iVar8 == *(int *)(iVar19 + 0x20)" (identifier "iVar8") (== "==") (pointer_expression "*(int *)(iVar19 + 0x20)" (* "*") (cast_expression "(int *)(iVar19 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 0x20)" (( "(") (binary_expression "iVar19 + 0x20" (identifier "iVar19") (+ "+") (number_literal "0x20")) () ")"))))) () ")")))) () ")")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))" (( "(") (parenthesized_expression "(*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0))" (( "(") (binary_expression "*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)" (binary_expression "*(int *)(iVar19 + 0x30) != 0" (pointer_expression "*(int *)(iVar19 + 0x30)" (* "*") (cast_expression "(int *)(iVar19 + 0x30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 0x30)" (( "(") (binary_expression "iVar19 + 0x30" (identifier "iVar19") (+ "+") (number_literal "0x30")) () ")")))) (!= "!=") (number_literal "0")) (|| "||") (parenthesized_expression "(*(int *)(iVar19 + 0x54) != 0)" (( "(") (binary_expression "*(int *)(iVar19 + 0x54) != 0" (pointer_expression "*(int *)(iVar19 + 0x54)" (* "*") (cast_expression "(int *)(iVar19 + 0x54)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 0x54)" (( "(") (binary_expression "iVar19 + 0x54" (identifier "iVar19") (+ "+") (number_literal "0x54")) () ")")))) (!= "!=") (number_literal "0")) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n          puVar24 = *(undefined4 **)(param_1 + 0x3c);\n          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;\n          if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }\n          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }\n          piVar3 = (int *)(uVar18 * 0x1c + *param_6);\n          iVar8 = *piVar3;\n          if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }\n          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }\n          uVar4 = *(uint *)(iVar19 + 4);\n          iVar10 = *(int *)(iVar19 + 8);\n          iVar17 = piVar3[1];\n          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }\n          uVar9 = *(uint *)(iVar19 + 0xc);\n          local_ac = *(int **)(iVar19 + 0x2c);\n          if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }\n        }" ({ "{") (expression_statement "puVar24 = *(undefined4 **)(param_1 + 0x3c);" (assignment_expression "puVar24 = *(undefined4 **)(param_1 + 0x3c)" (identifier "puVar24") (= "=") (pointer_expression "*(undefined4 **)(param_1 + 0x3c)" (* "*") (cast_expression "(undefined4 **)(param_1 + 0x3c)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x3c)" (( "(") (binary_expression "param_1 + 0x3c" (identifier "param_1") (+ "+") (number_literal "0x3c")) () ")"))))) (; ";")) (expression_statement "uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;" (assignment_expression "uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2" (identifier "uVar4") (= "=") (binary_expression "(int)puVar24 - *(int *)(param_1 + 0x38) >> 2" (binary_expression "(int)puVar24 - *(int *)(param_1 + 0x38)" (cast_expression "(int)puVar24" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar24")) (- "-") (pointer_expression "*(int *)(param_1 + 0x38)" (* "*") (cast_expression "(int *)(param_1 + 0x38)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x38)" (( "(") (binary_expression "param_1 + 0x38" (identifier "param_1") (+ "+") (number_literal "0x38")) () ")"))))) (>> ">>") (number_literal "2"))) (; ";")) (if_statement "if (uVar4 <= uVar18) {\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }" (if "if") (parenthesized_expression "(uVar4 <= uVar18)" (( "(") (binary_expression "uVar4 <= uVar18" (identifier "uVar4") (<= "<=") (identifier "uVar18")) () ")")) (compound_statement "{\n                    \n            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);\n          }" ({ "{") (expression_statement "FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12);" (call_expression "FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12)" (identifier "FUN_002446e0") (argument_list "("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,\n                         puVar12)" (( "(") (string_literal ""../../gold/object.h"" (" """) (string_content "../../gold/object.h") (" """)) (, ",") (number_literal "0x5c8") (, ",") (string_literal ""do_output_section"" (" """) (string_content "do_output_section") (" """)) (, ",") (identifier "uVar4") (, ",") (identifier "piVar7") (, ",") (identifier "puVar24") (, ",") (identifier "puVar12") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }" (if "if") (parenthesized_expression "(*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0)" (( "(") (binary_expression "*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0" (pointer_expression "*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4)" (* "*") (cast_expression "(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(param_1 + 0x38) + uVar18 * 4)" (( "(") (binary_expression "*(int *)(param_1 + 0x38) + uVar18 * 4" (pointer_expression "*(int *)(param_1 + 0x38)" (* "*") (cast_expression "(int *)(param_1 + 0x38)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x38)" (( "(") (binary_expression "param_1 + 0x38" (identifier "param_1") (+ "+") (number_literal "0x38")) () ")")))) (+ "+") (binary_expression "uVar18 * 4" (identifier "uVar18") (* "*") (number_literal "4"))) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);\n          }" ({ "{") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12)" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,\n                         puVar12)" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x889") (, ",") (string_literal ""do_relocate_sections"" (" """) (string_content "do_relocate_sections") (" """)) (, ",") (number_literal "0") (, ",") (identifier "piVar7") (, ",") (identifier "puVar24") (, ",") (identifier "puVar12") () ")"))) (; ";")) (} "}"))) (expression_statement "piVar3 = (int *)(uVar18 * 0x1c + *param_6);" (assignment_expression "piVar3 = (int *)(uVar18 * 0x1c + *param_6)" (identifier "piVar3") (= "=") (cast_expression "(int *)(uVar18 * 0x1c + *param_6)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar18 * 0x1c + *param_6)" (( "(") (binary_expression "uVar18 * 0x1c + *param_6" (binary_expression "uVar18 * 0x1c" (identifier "uVar18") (* "*") (number_literal "0x1c")) (+ "+") (pointer_expression "*param_6" (* "*") (identifier "param_6"))) () ")")))) (; ";")) (expression_statement "iVar8 = *piVar3;" (assignment_expression "iVar8 = *piVar3" (identifier "iVar8") (= "=") (pointer_expression "*piVar3" (* "*") (identifier "piVar3"))) (; ";")) (if_statement "if (iVar8 == 0) {\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);\n          }" ({ "{") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12)" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,\n                         puVar12)" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x892") (, ",") (string_literal ""do_relocate_sections"" (" """) (string_content "do_relocate_sections") (" """)) (, ",") (identifier "piVar3") (, ",") (identifier "piVar7") (, ",") (identifier "puVar24") (, ",") (identifier "puVar12") () ")"))) (; ";")) (} "}"))) (if_statement "if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }" (if "if") (parenthesized_expression "((*(byte *)(iVar19 + 0x1c) & 1) == 0)" (( "(") (binary_expression "(*(byte *)(iVar19 + 0x1c) & 1) == 0" (parenthesized_expression "(*(byte *)(iVar19 + 0x1c) & 1)" (( "(") (binary_expression "*(byte *)(iVar19 + 0x1c) & 1" (pointer_expression "*(byte *)(iVar19 + 0x1c)" (* "*") (cast_expression "(byte *)(iVar19 + 0x1c)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 0x1c)" (( "(") (binary_expression "iVar19 + 0x1c" (identifier "iVar19") (+ "+") (number_literal "0x1c")) () ")")))) (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);\n          }" ({ "{") (labeled_statement "LAB_001e670d:\n                    \n            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);" (statement_identifier "LAB_001e670d") (: ":") (expression_statement "FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);" (call_expression "FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24)" (identifier "FUN_002446e0") (argument_list "("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24)" (( "(") (string_literal ""../../gold/output.h"" (" """) (string_content "../../gold/output.h") (" """)) (, ",") (number_literal "0xc5") (, ",") (string_literal ""address"" (" """) (string_content "address") (" """)) (, ",") (identifier "iVar2") (, ",") (identifier "piVar7") (, ",") (identifier "puVar24") () ")"))) (; ";"))) (} "}"))) (expression_statement "uVar4 = *(uint *)(iVar19 + 4);" (assignment_expression "uVar4 = *(uint *)(iVar19 + 4)" (identifier "uVar4") (= "=") (pointer_expression "*(uint *)(iVar19 + 4)" (* "*") (cast_expression "(uint *)(iVar19 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 4)" (( "(") (binary_expression "iVar19 + 4" (identifier "iVar19") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "iVar10 = *(int *)(iVar19 + 8);" (assignment_expression "iVar10 = *(int *)(iVar19 + 8)" (identifier "iVar10") (= "=") (pointer_expression "*(int *)(iVar19 + 8)" (* "*") (cast_expression "(int *)(iVar19 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 8)" (( "(") (binary_expression "iVar19 + 8" (identifier "iVar19") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "iVar17 = piVar3[1];" (assignment_expression "iVar17 = piVar3[1]" (identifier "iVar17") (= "=") (subscript_expression "piVar3[1]" (identifier "piVar3") ([ "[") (number_literal "1") (] "]"))) (; ";")) (if_statement "if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }" (if "if") (parenthesized_expression "((*(byte *)(iVar19 + 0x1c) & 2) == 0)" (( "(") (binary_expression "(*(byte *)(iVar19 + 0x1c) & 2) == 0" (parenthesized_expression "(*(byte *)(iVar19 + 0x1c) & 2)" (( "(") (binary_expression "*(byte *)(iVar19 + 0x1c) & 2" (pointer_expression "*(byte *)(iVar19 + 0x1c)" (* "*") (cast_expression "(byte *)(iVar19 + 0x1c)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 0x1c)" (( "(") (binary_expression "iVar19 + 0x1c" (identifier "iVar19") (+ "+") (number_literal "0x1c")) () ")")))) (& "&") (number_literal "2")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);\n          }" ({ "{") (expression_statement "FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);" (call_expression "FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12)" (identifier "FUN_002446e0") (argument_list "("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12)" (( "(") (string_literal ""../../gold/output.h"" (" """) (string_content "../../gold/output.h") (" """)) (, ",") (number_literal "0xcf") (, ",") (string_literal ""data_size"" (" """) (string_content "data_size") (" """)) (, ",") (identifier "piVar3") (, ",") (identifier "piVar7") (, ",") (identifier "puVar24") (, ",") (identifier "puVar12") () ")"))) (; ";")) (} "}"))) (expression_statement "uVar9 = *(uint *)(iVar19 + 0xc);" (assignment_expression "uVar9 = *(uint *)(iVar19 + 0xc)" (identifier "uVar9") (= "=") (pointer_expression "*(uint *)(iVar19 + 0xc)" (* "*") (cast_expression "(uint *)(iVar19 + 0xc)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 0xc)" (( "(") (binary_expression "iVar19 + 0xc" (identifier "iVar19") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (expression_statement "local_ac = *(int **)(iVar19 + 0x2c);" (assignment_expression "local_ac = *(int **)(iVar19 + 0x2c)" (identifier "local_ac") (= "=") (pointer_expression "*(int **)(iVar19 + 0x2c)" (* "*") (cast_expression "(int **)(iVar19 + 0x2c)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar19 + 0x2c)" (( "(") (binary_expression "iVar19 + 0x2c" (identifier "iVar19") (+ "+") (number_literal "0x2c")) () ")"))))) (; ";")) (if_statement "if (local_ac != (int *)0x0) {\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }" (if "if") (parenthesized_expression "(local_ac != (int *)0x0)" (( "(") (binary_expression "local_ac != (int *)0x0" (identifier "local_ac") (!= "!=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            iVar19 = local_ac[5];\n            uVar11 = *(uint *)(iVar19 + 0xc);\n            if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }\n            puVar24 = &DAT_005eb508;\n            do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );\n          }" ({ "{") (expression_statement "iVar19 = local_ac[5];" (assignment_expression "iVar19 = local_ac[5]" (identifier "iVar19") (= "=") (subscript_expression "local_ac[5]" (identifier "local_ac") ([ "[") (number_literal "5") (] "]"))) (; ";")) (expression_statement "uVar11 = *(uint *)(iVar19 + 0xc);" (assignment_expression "uVar11 = *(uint *)(iVar19 + 0xc)" (identifier "uVar11") (= "=") (pointer_expression "*(uint *)(iVar19 + 0xc)" (* "*") (cast_expression "(uint *)(iVar19 + 0xc)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 0xc)" (( "(") (binary_expression "iVar19 + 0xc" (identifier "iVar19") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (if_statement "if (uVar11 == 0xffffffff) {\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }" (if "if") (parenthesized_expression "(uVar11 == 0xffffffff)" (( "(") (binary_expression "uVar11 == 0xffffffff" (identifier "uVar11") (== "==") (number_literal "0xffffffff")) () ")")) (compound_statement "{\nLAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);\n            }" ({ "{") (labeled_statement "LAB_001e5d9c:\n                    \n              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);" (statement_identifier "LAB_001e5d9c") (: ":") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12)" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12)" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x370") (, ",") (string_literal ""offset"" (" """) (string_content "offset") (" """)) (, ",") (identifier "iVar2") (, ",") (identifier "piVar7") (, ",") (identifier "puVar24") (, ",") (identifier "puVar12") () ")"))) (; ";"))) (} "}"))) (expression_statement "puVar24 = &DAT_005eb508;" (assignment_expression "puVar24 = &DAT_005eb508" (identifier "puVar24") (= "=") (pointer_expression "&DAT_005eb508" (& "&") (identifier "DAT_005eb508"))) (; ";")) (do_statement "do {\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            } while( true );" (do "do") (compound_statement "{\n              iVar13 = *(int *)(iVar19 + 0x10);\n              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }\n              uVar5 = uVar11 + uVar4;\n              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);\n              iVar13 = *(int *)(iVar19 + 0x10);\n              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);\n              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              iVar14 = *(int *)(iVar19 + 0x10);\n              iVar13 = *(int *)(puVar24[iVar13] + 4);\n              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }\n              if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }\n              uVar11 = *(uint *)(iVar19 + 8);\n              uVar23 = *(uint *)(iVar19 + 4);\n              if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }\n              iVar19 = *(int *)(iVar19 + 0x10);\n              if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }\n              local_ac = (int *)*local_ac;\n              if (local_ac == (int *)0x0) break;\n              iVar19 = local_ac[5];\n              uVar11 = *(uint *)(iVar19 + 0xc);\n              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;\n            }" ({ "{") (expression_statement "iVar13 = *(int *)(iVar19 + 0x10);" (assignment_expression "iVar13 = *(int *)(iVar19 + 0x10)" (identifier "iVar13") (= "=") (pointer_expression "*(int *)(iVar19 + 0x10)" (* "*") (cast_expression "(int *)(iVar19 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 0x10)" (( "(") (binary_expression "iVar19 + 0x10" (identifier "iVar19") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (if_statement "if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }" (if "if") (parenthesized_expression "((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0))" (( "(") (binary_expression "(DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)" (parenthesized_expression "(DAT_005eb500 == '\0')" (( "(") (binary_expression "DAT_005eb500 == '\0'" (identifier "DAT_005eb500") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)" (( "(") (comma_expression "iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0" (assignment_expression "iVar15 = FUN_003ac660(&DAT_005eb500)" (identifier "iVar15") (= "=") (call_expression "FUN_003ac660(&DAT_005eb500)" (identifier "FUN_003ac660") (argument_list "(&DAT_005eb500)" (( "(") (pointer_expression "&DAT_005eb500" (& "&") (identifier "DAT_005eb500")) () ")")))) (, ",") (binary_expression "iVar15 != 0" (identifier "iVar15") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }" ({ "{") (expression_statement "DAT_005eb508 = &PTR_DAT_005d5c28;" (assignment_expression "DAT_005eb508 = &PTR_DAT_005d5c28" (identifier "DAT_005eb508") (= "=") (pointer_expression "&PTR_DAT_005d5c28" (& "&") (identifier "PTR_DAT_005d5c28"))) (; ";")) (expression_statement "DAT_005eb50c = &PTR_DAT_005d5c20;" (assignment_expression "DAT_005eb50c = &PTR_DAT_005d5c20" (identifier "DAT_005eb50c") (= "=") (pointer_expression "&PTR_DAT_005d5c20" (& "&") (identifier "PTR_DAT_005d5c20"))) (; ";")) (expression_statement "DAT_005eb510 = &PTR_DAT_005d5c18;" (assignment_expression "DAT_005eb510 = &PTR_DAT_005d5c18" (identifier "DAT_005eb510") (= "=") (pointer_expression "&PTR_DAT_005d5c18" (& "&") (identifier "PTR_DAT_005d5c18"))) (; ";")) (expression_statement "DAT_005eb514 = &PTR_DAT_005d5c10;" (assignment_expression "DAT_005eb514 = &PTR_DAT_005d5c10" (identifier "DAT_005eb514") (= "=") (pointer_expression "&PTR_DAT_005d5c10" (& "&") (identifier "PTR_DAT_005d5c10"))) (; ";")) (expression_statement "DAT_005eb518 = &PTR_DAT_005d5c08;" (assignment_expression "DAT_005eb518 = &PTR_DAT_005d5c08" (identifier "DAT_005eb518") (= "=") (pointer_expression "&PTR_DAT_005d5c08" (& "&") (identifier "PTR_DAT_005d5c08"))) (; ";")) (expression_statement "DAT_005eb51c = &PTR_DAT_005d5c00;" (assignment_expression "DAT_005eb51c = &PTR_DAT_005d5c00" (identifier "DAT_005eb51c") (= "=") (pointer_expression "&PTR_DAT_005d5c00" (& "&") (identifier "PTR_DAT_005d5c00"))) (; ";")) (expression_statement "FUN_003ac7d0(&DAT_005eb500);" (call_expression "FUN_003ac7d0(&DAT_005eb500)" (identifier "FUN_003ac7d0") (argument_list "(&DAT_005eb500)" (( "(") (pointer_expression "&DAT_005eb500" (& "&") (identifier "DAT_005eb500")) () ")"))) (; ";")) (expression_statement "__cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);" (call_expression "__cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4)" (identifier "__cxa_atexit") (argument_list "(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4)" (( "(") (identifier "FUN_001d1240") (, ",") (identifier "puVar24") (, ",") (pointer_expression "&PTR_LOOP_005ea2e4" (& "&") (identifier "PTR_LOOP_005ea2e4")) () ")"))) (; ";")) (} "}"))) (if_statement "if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }" (if "if") (parenthesized_expression "(uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4)" (( "(") (binary_expression "uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4" (identifier "uVar9") (< "<") (binary_expression "uVar11 + *(int *)(puVar24[iVar13] + 4) * 4" (identifier "uVar11") (+ "+") (binary_expression "*(int *)(puVar24[iVar13] + 4) * 4" (pointer_expression "*(int *)(puVar24[iVar13] + 4)" (* "*") (cast_expression "(int *)(puVar24[iVar13] + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24[iVar13] + 4)" (( "(") (binary_expression "puVar24[iVar13] + 4" (subscript_expression "puVar24[iVar13]" (identifier "puVar24") ([ "[") (identifier "iVar13") (] "]")) (+ "+") (number_literal "4")) () ")")))) (* "*") (number_literal "4")))) () ")")) (compound_statement "{\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);\n              }" ({ "{") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12)" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,\n                             puVar24,puVar12)" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x6ac") (, ",") (string_literal ""relocate_reloc_stub"" (" """) (string_content "relocate_reloc_stub") (" """)) (, ",") (identifier "iVar13") (, ",") (identifier "piVar7") (, ",") (identifier "puVar24") (, ",") (identifier "puVar12") () ")"))) (; ";")) (} "}"))) (expression_statement "uVar5 = uVar11 + uVar4;" (assignment_expression "uVar5 = uVar11 + uVar4" (identifier "uVar5") (= "=") (binary_expression "uVar11 + uVar4" (identifier "uVar11") (+ "+") (identifier "uVar4"))) (; ";")) (expression_statement "iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);" (assignment_expression "iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4)" (identifier "iVar15") (= "=") (binary_expression "iVar10 + (uint)CARRY4(uVar11,uVar4)" (identifier "iVar10") (+ "+") (cast_expression "(uint)CARRY4(uVar11,uVar4)" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (call_expression "CARRY4(uVar11,uVar4)" (identifier "CARRY4") (argument_list "(uVar11,uVar4)" (( "(") (identifier "uVar11") (, ",") (identifier "uVar4") () ")")))))) (; ";")) (expression_statement "iVar13 = *(int *)(iVar19 + 0x10);" (assignment_expression "iVar13 = *(int *)(iVar19 + 0x10)" (identifier "iVar13") (= "=") (pointer_expression "*(int *)(iVar19 + 0x10)" (* "*") (cast_expression "(int *)(iVar19 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 0x10)" (( "(") (binary_expression "iVar19 + 0x10" (identifier "iVar19") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);" (assignment_expression "puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8)" (identifier "puVar22") (= "=") (cast_expression "(uint *)(uVar11 + (uVar4 - iVar17) + iVar8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar11 + (uVar4 - iVar17) + iVar8)" (( "(") (binary_expression "uVar11 + (uVar4 - iVar17) + iVar8" (binary_expression "uVar11 + (uVar4 - iVar17)" (identifier "uVar11") (+ "+") (parenthesized_expression "(uVar4 - iVar17)" (( "(") (binary_expression "uVar4 - iVar17" (identifier "uVar4") (- "-") (identifier "iVar17")) () ")"))) (+ "+") (identifier "iVar8")) () ")")))) (; ";")) (if_statement "if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }" (if "if") (parenthesized_expression "((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0))" (( "(") (binary_expression "(DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)" (parenthesized_expression "(DAT_005eb500 == '\0')" (( "(") (binary_expression "DAT_005eb500 == '\0'" (identifier "DAT_005eb500") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)" (( "(") (comma_expression "iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0" (assignment_expression "iVar14 = FUN_003ac660(&DAT_005eb500)" (identifier "iVar14") (= "=") (call_expression "FUN_003ac660(&DAT_005eb500)" (identifier "FUN_003ac660") (argument_list "(&DAT_005eb500)" (( "(") (pointer_expression "&DAT_005eb500" (& "&") (identifier "DAT_005eb500")) () ")")))) (, ",") (binary_expression "iVar14 != 0" (identifier "iVar14") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }" ({ "{") (expression_statement "DAT_005eb508 = &PTR_DAT_005d5c28;" (assignment_expression "DAT_005eb508 = &PTR_DAT_005d5c28" (identifier "DAT_005eb508") (= "=") (pointer_expression "&PTR_DAT_005d5c28" (& "&") (identifier "PTR_DAT_005d5c28"))) (; ";")) (expression_statement "DAT_005eb50c = &PTR_DAT_005d5c20;" (assignment_expression "DAT_005eb50c = &PTR_DAT_005d5c20" (identifier "DAT_005eb50c") (= "=") (pointer_expression "&PTR_DAT_005d5c20" (& "&") (identifier "PTR_DAT_005d5c20"))) (; ";")) (expression_statement "DAT_005eb510 = &PTR_DAT_005d5c18;" (assignment_expression "DAT_005eb510 = &PTR_DAT_005d5c18" (identifier "DAT_005eb510") (= "=") (pointer_expression "&PTR_DAT_005d5c18" (& "&") (identifier "PTR_DAT_005d5c18"))) (; ";")) (expression_statement "DAT_005eb514 = &PTR_DAT_005d5c10;" (assignment_expression "DAT_005eb514 = &PTR_DAT_005d5c10" (identifier "DAT_005eb514") (= "=") (pointer_expression "&PTR_DAT_005d5c10" (& "&") (identifier "PTR_DAT_005d5c10"))) (; ";")) (expression_statement "DAT_005eb518 = &PTR_DAT_005d5c08;" (assignment_expression "DAT_005eb518 = &PTR_DAT_005d5c08" (identifier "DAT_005eb518") (= "=") (pointer_expression "&PTR_DAT_005d5c08" (& "&") (identifier "PTR_DAT_005d5c08"))) (; ";")) (expression_statement "DAT_005eb51c = &PTR_DAT_005d5c00;" (assignment_expression "DAT_005eb51c = &PTR_DAT_005d5c00" (identifier "DAT_005eb51c") (= "=") (pointer_expression "&PTR_DAT_005d5c00" (& "&") (identifier "PTR_DAT_005d5c00"))) (; ";")) (expression_statement "FUN_003ac7d0(&DAT_005eb500);" (call_expression "FUN_003ac7d0(&DAT_005eb500)" (identifier "FUN_003ac7d0") (argument_list "(&DAT_005eb500)" (( "(") (pointer_expression "&DAT_005eb500" (& "&") (identifier "DAT_005eb500")) () ")"))) (; ";")) (expression_statement "__cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);" (call_expression "__cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4)" (identifier "__cxa_atexit") (argument_list "(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4)" (( "(") (identifier "FUN_001d1240") (, ",") (identifier "puVar24") (, ",") (pointer_expression "&PTR_LOOP_005ea2e4" (& "&") (identifier "PTR_LOOP_005ea2e4")) () ")"))) (; ";")) (} "}"))) (expression_statement "iVar14 = *(int *)(iVar19 + 0x10);" (assignment_expression "iVar14 = *(int *)(iVar19 + 0x10)" (identifier "iVar14") (= "=") (pointer_expression "*(int *)(iVar19 + 0x10)" (* "*") (cast_expression "(int *)(iVar19 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 0x10)" (( "(") (binary_expression "iVar19 + 0x10" (identifier "iVar19") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "iVar13 = *(int *)(puVar24[iVar13] + 4);" (assignment_expression "iVar13 = *(int *)(puVar24[iVar13] + 4)" (identifier "iVar13") (= "=") (pointer_expression "*(int *)(puVar24[iVar13] + 4)" (* "*") (cast_expression "(int *)(puVar24[iVar13] + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24[iVar13] + 4)" (( "(") (binary_expression "puVar24[iVar13] + 4" (subscript_expression "puVar24[iVar13]" (identifier "puVar24") ([ "[") (identifier "iVar13") (] "]")) (+ "+") (number_literal "4")) () ")"))))) (; ";")) (if_statement "if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }" (if "if") (parenthesized_expression "((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0))" (( "(") (binary_expression "(DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)" (parenthesized_expression "(DAT_005eb500 == '\0')" (( "(") (binary_expression "DAT_005eb500 == '\0'" (identifier "DAT_005eb500") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)" (( "(") (comma_expression "iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0" (assignment_expression "iVar6 = FUN_003ac660(&DAT_005eb500)" (identifier "iVar6") (= "=") (call_expression "FUN_003ac660(&DAT_005eb500)" (identifier "FUN_003ac660") (argument_list "(&DAT_005eb500)" (( "(") (pointer_expression "&DAT_005eb500" (& "&") (identifier "DAT_005eb500")) () ")")))) (, ",") (binary_expression "iVar6 != 0" (identifier "iVar6") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n                DAT_005eb508 = &PTR_DAT_005d5c28;\n                DAT_005eb50c = &PTR_DAT_005d5c20;\n                DAT_005eb510 = &PTR_DAT_005d5c18;\n                DAT_005eb514 = &PTR_DAT_005d5c10;\n                DAT_005eb518 = &PTR_DAT_005d5c08;\n                DAT_005eb51c = &PTR_DAT_005d5c00;\n                FUN_003ac7d0(&DAT_005eb500);\n                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);\n              }" ({ "{") (expression_statement "DAT_005eb508 = &PTR_DAT_005d5c28;" (assignment_expression "DAT_005eb508 = &PTR_DAT_005d5c28" (identifier "DAT_005eb508") (= "=") (pointer_expression "&PTR_DAT_005d5c28" (& "&") (identifier "PTR_DAT_005d5c28"))) (; ";")) (expression_statement "DAT_005eb50c = &PTR_DAT_005d5c20;" (assignment_expression "DAT_005eb50c = &PTR_DAT_005d5c20" (identifier "DAT_005eb50c") (= "=") (pointer_expression "&PTR_DAT_005d5c20" (& "&") (identifier "PTR_DAT_005d5c20"))) (; ";")) (expression_statement "DAT_005eb510 = &PTR_DAT_005d5c18;" (assignment_expression "DAT_005eb510 = &PTR_DAT_005d5c18" (identifier "DAT_005eb510") (= "=") (pointer_expression "&PTR_DAT_005d5c18" (& "&") (identifier "PTR_DAT_005d5c18"))) (; ";")) (expression_statement "DAT_005eb514 = &PTR_DAT_005d5c10;" (assignment_expression "DAT_005eb514 = &PTR_DAT_005d5c10" (identifier "DAT_005eb514") (= "=") (pointer_expression "&PTR_DAT_005d5c10" (& "&") (identifier "PTR_DAT_005d5c10"))) (; ";")) (expression_statement "DAT_005eb518 = &PTR_DAT_005d5c08;" (assignment_expression "DAT_005eb518 = &PTR_DAT_005d5c08" (identifier "DAT_005eb518") (= "=") (pointer_expression "&PTR_DAT_005d5c08" (& "&") (identifier "PTR_DAT_005d5c08"))) (; ";")) (expression_statement "DAT_005eb51c = &PTR_DAT_005d5c00;" (assignment_expression "DAT_005eb51c = &PTR_DAT_005d5c00" (identifier "DAT_005eb51c") (= "=") (pointer_expression "&PTR_DAT_005d5c00" (& "&") (identifier "PTR_DAT_005d5c00"))) (; ";")) (expression_statement "FUN_003ac7d0(&DAT_005eb500);" (call_expression "FUN_003ac7d0(&DAT_005eb500)" (identifier "FUN_003ac7d0") (argument_list "(&DAT_005eb500)" (( "(") (pointer_expression "&DAT_005eb500" (& "&") (identifier "DAT_005eb500")) () ")"))) (; ";")) (expression_statement "__cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);" (call_expression "__cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4)" (identifier "__cxa_atexit") (argument_list "(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4)" (( "(") (identifier "FUN_001d1240") (, ",") (identifier "puVar24") (, ",") (pointer_expression "&PTR_LOOP_005ea2e4" (& "&") (identifier "PTR_LOOP_005ea2e4")) () ")"))) (; ";")) (} "}"))) (if_statement "if (0 < iVar13) {\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }" (if "if") (parenthesized_expression "(0 < iVar13)" (( "(") (binary_expression "0 < iVar13" (number_literal "0") (< "<") (identifier "iVar13")) () ")")) (compound_statement "{\n                if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }\n                iVar6 = 0;\n                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }\n              }" ({ "{") (if_statement "if (*puVar22 != **(uint **)puVar24[iVar14]) {\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }" (if "if") (parenthesized_expression "(*puVar22 != **(uint **)puVar24[iVar14])" (( "(") (binary_expression "*puVar22 != **(uint **)puVar24[iVar14]" (pointer_expression "*puVar22" (* "*") (identifier "puVar22")) (!= "!=") (pointer_expression "**(uint **)puVar24[iVar14]" (* "*") (pointer_expression "*(uint **)puVar24[iVar14]" (* "*") (cast_expression "(uint **)puVar24[iVar14]" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (subscript_expression "puVar24[iVar14]" (identifier "puVar24") ([ "[") (identifier "iVar14") (] "]")))))) () ")")) (compound_statement "{\nLAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");\n                }" ({ "{") (labeled_statement "LAB_001e68a0:\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");" (statement_identifier "LAB_001e68a0") (: ":") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub")" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub")" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x1035") (, ",") (string_literal ""relocate_reloc_stub"" (" """) (string_content "relocate_reloc_stub") (" """)) () ")"))) (; ";"))) (} "}"))) (expression_statement "iVar6 = 0;" (assignment_expression "iVar6 = 0" (identifier "iVar6") (= "=") (number_literal "0")) (; ";")) (while_statement "while (iVar6 = iVar6 + 1, iVar13 != iVar6) {\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }" (while "while") (parenthesized_expression "(iVar6 = iVar6 + 1, iVar13 != iVar6)" (( "(") (comma_expression "iVar6 = iVar6 + 1, iVar13 != iVar6" (assignment_expression "iVar6 = iVar6 + 1" (identifier "iVar6") (= "=") (binary_expression "iVar6 + 1" (identifier "iVar6") (+ "+") (number_literal "1"))) (, ",") (binary_expression "iVar13 != iVar6" (identifier "iVar13") (!= "!=") (identifier "iVar6"))) () ")")) (compound_statement "{\n                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;\n                }" ({ "{") (if_statement "if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;" (if "if") (parenthesized_expression "(puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6])" (( "(") (binary_expression "puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]" (subscript_expression "puVar22[iVar6]" (identifier "puVar22") ([ "[") (identifier "iVar6") (] "]")) (!= "!=") (subscript_expression "(*(uint **)puVar24[iVar14])[iVar6]" (parenthesized_expression "(*(uint **)puVar24[iVar14])" (( "(") (pointer_expression "*(uint **)puVar24[iVar14]" (* "*") (cast_expression "(uint **)puVar24[iVar14]" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (subscript_expression "puVar24[iVar14]" (identifier "puVar24") ([ "[") (identifier "iVar14") (] "]")))) () ")")) ([ "[") (identifier "iVar6") (] "]"))) () ")")) (goto_statement "goto LAB_001e68a0;" (goto "goto") (statement_identifier "LAB_001e68a0") (; ";"))) (} "}"))) (} "}"))) (expression_statement "uVar11 = *(uint *)(iVar19 + 8);" (assignment_expression "uVar11 = *(uint *)(iVar19 + 8)" (identifier "uVar11") (= "=") (pointer_expression "*(uint *)(iVar19 + 8)" (* "*") (cast_expression "(uint *)(iVar19 + 8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 8)" (( "(") (binary_expression "iVar19 + 8" (identifier "iVar19") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "uVar23 = *(uint *)(iVar19 + 4);" (assignment_expression "uVar23 = *(uint *)(iVar19 + 4)" (identifier "uVar23") (= "=") (pointer_expression "*(uint *)(iVar19 + 4)" (* "*") (cast_expression "(uint *)(iVar19 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 4)" (( "(") (binary_expression "iVar19 + 4" (identifier "iVar19") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (if_statement "if ((uVar11 & uVar23) == 0xffffffff) {\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }" (if "if") (parenthesized_expression "((uVar11 & uVar23) == 0xffffffff)" (( "(") (binary_expression "(uVar11 & uVar23) == 0xffffffff" (parenthesized_expression "(uVar11 & uVar23)" (( "(") (binary_expression "uVar11 & uVar23" (identifier "uVar11") (& "&") (identifier "uVar23")) () ")")) (== "==") (number_literal "0xffffffff")) () ")")) (compound_statement "{\nLAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");\n              }" ({ "{") (labeled_statement "LAB_001e67c7:\n                    \n                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");" (statement_identifier "LAB_001e67c7") (: ":") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address")" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x359,"destination_address")" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x359") (, ",") (string_literal ""destination_address"" (" """) (string_content "destination_address") (" """)) () ")"))) (; ";"))) (} "}"))) (expression_statement "iVar19 = *(int *)(iVar19 + 0x10);" (assignment_expression "iVar19 = *(int *)(iVar19 + 0x10)" (identifier "iVar19") (= "=") (pointer_expression "*(int *)(iVar19 + 0x10)" (* "*") (cast_expression "(int *)(iVar19 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 0x10)" (( "(") (binary_expression "iVar19 + 0x10" (identifier "iVar19") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (if_statement "if (iVar19 == 2) {\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }\n              else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }" (if "if") (parenthesized_expression "(iVar19 == 2)" (( "(") (binary_expression "iVar19 == 2" (identifier "iVar19") (== "==") (number_literal "2")) () ")")) (compound_statement "{\n                puVar22[2] = uVar23;\n                puVar22[3] = uVar11;\n              }" ({ "{") (expression_statement "puVar22[2] = uVar23;" (assignment_expression "puVar22[2] = uVar23" (subscript_expression "puVar22[2]" (identifier "puVar22") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "uVar23")) (; ";")) (expression_statement "puVar22[3] = uVar11;" (assignment_expression "puVar22[3] = uVar11" (subscript_expression "puVar22[3]" (identifier "puVar22") ([ "[") (number_literal "3") (] "]")) (= "=") (identifier "uVar11")) (; ";")) (} "}")) (else_clause "else if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }" (else "else") (if_statement "if (iVar19 == 3) {\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }\n              else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }" (if "if") (parenthesized_expression "(iVar19 == 3)" (( "(") (binary_expression "iVar19 == 3" (identifier "iVar19") (== "==") (number_literal "3")) () ")")) (compound_statement "{\n                puVar22[4] = (uVar23 - 4) - uVar5;\n                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);\n              }" ({ "{") (expression_statement "puVar22[4] = (uVar23 - 4) - uVar5;" (assignment_expression "puVar22[4] = (uVar23 - 4) - uVar5" (subscript_expression "puVar22[4]" (identifier "puVar22") ([ "[") (number_literal "4") (] "]")) (= "=") (binary_expression "(uVar23 - 4) - uVar5" (parenthesized_expression "(uVar23 - 4)" (( "(") (binary_expression "uVar23 - 4" (identifier "uVar23") (- "-") (number_literal "4")) () ")")) (- "-") (identifier "uVar5"))) (; ";")) (expression_statement "puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5);" (assignment_expression "puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5)" (subscript_expression "puVar22[5]" (identifier "puVar22") ([ "[") (number_literal "5") (] "]")) (= "=") (binary_expression "(((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -\n                             (uint)(uVar23 - 4 < uVar5)" (parenthesized_expression "(((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15)" (( "(") (binary_expression "((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15" (parenthesized_expression "((uVar11 - 1) + (uint)(3 < uVar23))" (( "(") (binary_expression "(uVar11 - 1) + (uint)(3 < uVar23)" (parenthesized_expression "(uVar11 - 1)" (( "(") (binary_expression "uVar11 - 1" (identifier "uVar11") (- "-") (number_literal "1")) () ")")) (+ "+") (call_expression "(uint)(3 < uVar23)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(3 < uVar23)" (( "(") (binary_expression "3 < uVar23" (number_literal "3") (< "<") (identifier "uVar23")) () ")")))) () ")")) (- "-") (identifier "iVar15")) () ")")) (- "-") (call_expression "(uint)(uVar23 - 4 < uVar5)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar23 - 4 < uVar5)" (( "(") (binary_expression "uVar23 - 4 < uVar5" (binary_expression "uVar23 - 4" (identifier "uVar23") (- "-") (number_literal "4")) (< "<") (identifier "uVar5")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }" (else "else") (compound_statement "{\n                if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }\n                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));\n                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;\n                uVar20 = iVar19 + 1;\n                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;\n                if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }\n                iVar19 = *(int *)(DAT_005eb634 + 0x54);\n                if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }\n                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);\n                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;\n                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }\n                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);\n                if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }\n                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;\n                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);\n                if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }\n              }" ({ "{") (if_statement "if (iVar19 != 1) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }" (if "if") (parenthesized_expression "(iVar19 != 1)" (( "(") (binary_expression "iVar19 != 1" (identifier "iVar19") (!= "!=") (number_literal "1")) () ")")) (compound_statement "{\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);\n                }" ({ "{") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19)" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19)" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x1060") (, ",") (string_literal ""relocate_reloc_stub"" (" """) (string_content "relocate_reloc_stub") (" """)) (, ",") (identifier "iVar19") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));" (assignment_expression "iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000))" (identifier "iVar19") (= "=") (binary_expression "(uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000))" (parenthesized_expression "(uVar11 - iVar15)" (( "(") (binary_expression "uVar11 - iVar15" (identifier "uVar11") (- "-") (identifier "iVar15")) () ")")) (- "-") (call_expression "(uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000))" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000))" (( "(") (binary_expression "(uVar23 & 0xfffff000) < (uVar5 & 0xfffff000)" (parenthesized_expression "(uVar23 & 0xfffff000)" (( "(") (binary_expression "uVar23 & 0xfffff000" (identifier "uVar23") (& "&") (number_literal "0xfffff000")) () ")")) (< "<") (parenthesized_expression "(uVar5 & 0xfffff000)" (( "(") (binary_expression "uVar5 & 0xfffff000" (identifier "uVar5") (& "&") (number_literal "0xfffff000")) () ")"))) () ")"))))) (; ";")) (expression_statement "uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;" (assignment_expression "uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc" (identifier "uVar5") (= "=") (binary_expression "(uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc" (binary_expression "(uVar23 & 0xfffff000) - (uVar5 & 0xfffff000)" (parenthesized_expression "(uVar23 & 0xfffff000)" (( "(") (binary_expression "uVar23 & 0xfffff000" (identifier "uVar23") (& "&") (number_literal "0xfffff000")) () ")")) (- "-") (parenthesized_expression "(uVar5 & 0xfffff000)" (( "(") (binary_expression "uVar5 & 0xfffff000" (identifier "uVar5") (& "&") (number_literal "0xfffff000")) () ")"))) (>> ">>") (number_literal "0xc"))) (; ";")) (expression_statement "uVar20 = iVar19 + 1;" (assignment_expression "uVar20 = iVar19 + 1" (identifier "uVar20") (= "=") (binary_expression "iVar19 + 1" (identifier "iVar19") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f;" (assignment_expression "*puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f" (pointer_expression "*puVar22" (* "*") (identifier "puVar22")) (= "=") (binary_expression "((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d\n                           | *puVar22 & 0x9f00001f" (binary_expression "((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d" (binary_expression "((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5" (parenthesized_expression "((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2)" (( "(") (binary_expression "(uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2" (parenthesized_expression "(uVar5 | iVar19 * 0x100000 & 0x1fffffU)" (( "(") (binary_expression "uVar5 | iVar19 * 0x100000 & 0x1fffffU" (identifier "uVar5") (| "|") (binary_expression "iVar19 * 0x100000 & 0x1fffffU" (binary_expression "iVar19 * 0x100000" (identifier "iVar19") (* "*") (number_literal "0x100000")) (& "&") (number_literal "0x1fffffU"))) () ")")) (>> ">>") (number_literal "2")) () ")")) (<< "<<") (number_literal "5")) (| "|") (binary_expression "(uVar5 & 3) << 0x1d" (parenthesized_expression "(uVar5 & 3)" (( "(") (binary_expression "uVar5 & 3" (identifier "uVar5") (& "&") (number_literal "3")) () ")")) (<< "<<") (number_literal "0x1d"))) (| "|") (binary_expression "*puVar22 & 0x9f00001f" (pointer_expression "*puVar22" (* "*") (identifier "puVar22")) (& "&") (number_literal "0x9f00001f")))) (; ";")) (if_statement "if (1 < uVar20) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }" (if "if") (parenthesized_expression "(1 < uVar20)" (( "(") (binary_expression "1 < uVar20" (number_literal "1") (< "<") (identifier "uVar20")) () ")")) (compound_statement "{\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");\n                }" ({ "{") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub")" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub")" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x1043") (, ",") (string_literal ""relocate_reloc_stub"" (" """) (string_content "relocate_reloc_stub") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "iVar19 = *(int *)(DAT_005eb634 + 0x54);" (assignment_expression "iVar19 = *(int *)(DAT_005eb634 + 0x54)" (identifier "iVar19") (= "=") (pointer_expression "*(int *)(DAT_005eb634 + 0x54)" (* "*") (cast_expression "(int *)(DAT_005eb634 + 0x54)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(DAT_005eb634 + 0x54)" (( "(") (binary_expression "DAT_005eb634 + 0x54" (identifier "DAT_005eb634") (+ "+") (number_literal "0x54")) () ")"))))) (; ";")) (if_statement "if (iVar19 == 0) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }" (if "if") (parenthesized_expression "(iVar19 == 0)" (( "(") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);\n                }" ({ "{") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634)" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634)" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x1049") (, ",") (string_literal ""relocate_reloc_stub"" (" """) (string_content "relocate_reloc_stub") (" """)) (, ",") (identifier "DAT_005eb634") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);" (assignment_expression "iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11)" (identifier "iVar13") (= "=") (call_expression "(**(code **)(iVar19 + 0x40))(uVar23,uVar11)" (parenthesized_expression "(**(code **)(iVar19 + 0x40))" (( "(") (pointer_expression "**(code **)(iVar19 + 0x40)" (* "*") (pointer_expression "*(code **)(iVar19 + 0x40)" (* "*") (cast_expression "(code **)(iVar19 + 0x40)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar19 + 0x40)" (( "(") (binary_expression "iVar19 + 0x40" (identifier "iVar19") (+ "+") (number_literal "0x40")) () ")"))))) () ")")) (argument_list "(uVar23,uVar11)" (( "(") (identifier "uVar23") (, ",") (identifier "uVar11") () ")")))) (; ";")) (expression_statement "iVar15 = *(int *)(iVar19 + 0x38) * 0x10;" (assignment_expression "iVar15 = *(int *)(iVar19 + 0x38) * 0x10" (identifier "iVar15") (= "=") (binary_expression "*(int *)(iVar19 + 0x38) * 0x10" (pointer_expression "*(int *)(iVar19 + 0x38)" (* "*") (cast_expression "(int *)(iVar19 + 0x38)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 0x38)" (( "(") (binary_expression "iVar19 + 0x38" (identifier "iVar19") (+ "+") (number_literal "0x38")) () ")")))) (* "*") (number_literal "0x10"))) (; ";")) (if_statement "if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }" (if "if") (parenthesized_expression "((*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff))" (( "(") (binary_expression "(*(int *)(&DAT_004808ac + iVar15) != -1) ||\n                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)" (parenthesized_expression "(*(int *)(&DAT_004808ac + iVar15) != -1)" (( "(") (binary_expression "*(int *)(&DAT_004808ac + iVar15) != -1" (pointer_expression "*(int *)(&DAT_004808ac + iVar15)" (* "*") (cast_expression "(int *)(&DAT_004808ac + iVar15)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_004808ac + iVar15)" (( "(") (binary_expression "&DAT_004808ac + iVar15" (pointer_expression "&DAT_004808ac" (& "&") (identifier "DAT_004808ac")) (+ "+") (identifier "iVar15")) () ")")))) (!= "!=") (number_literal "-1")) () ")")) (|| "||") (parenthesized_expression "(uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)" (( "(") (comma_expression "uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff" (assignment_expression "uVar5 = *(uint *)(&DAT_004808a8 + iVar15)" (identifier "uVar5") (= "=") (pointer_expression "*(uint *)(&DAT_004808a8 + iVar15)" (* "*") (cast_expression "(uint *)(&DAT_004808a8 + iVar15)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_004808a8 + iVar15)" (( "(") (binary_expression "&DAT_004808a8 + iVar15" (pointer_expression "&DAT_004808a8" (& "&") (identifier "DAT_004808a8")) (+ "+") (identifier "iVar15")) () ")"))))) (, ",") (binary_expression "uVar5 == 0xffffffff" (identifier "uVar5") (== "==") (number_literal "0xffffffff"))) () ")"))) () ")")) (compound_statement "{\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);\n                }" ({ "{") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20)" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20)" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x1484") (, ",") (string_literal ""reloc_common"" (" """) (string_content "reloc_common") (" """)) (, ",") (identifier "uVar20") () ")"))) (; ";")) (} "}"))) (expression_statement "uVar20 = iVar13 << ((byte)uVar5 & 0x1f);" (assignment_expression "uVar20 = iVar13 << ((byte)uVar5 & 0x1f)" (identifier "uVar20") (= "=") (binary_expression "iVar13 << ((byte)uVar5 & 0x1f)" (identifier "iVar13") (<< "<<") (parenthesized_expression "((byte)uVar5 & 0x1f)" (( "(") (binary_expression "(byte)uVar5 & 0x1f" (cast_expression "(byte)uVar5" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "uVar5")) (& "&") (number_literal "0x1f")) () ")")))) (; ";")) (if_statement "if ((uVar5 & 0x20) != 0) {\n                  uVar20 = 0;\n                }" (if "if") (parenthesized_expression "((uVar5 & 0x20) != 0)" (( "(") (binary_expression "(uVar5 & 0x20) != 0" (parenthesized_expression "(uVar5 & 0x20)" (( "(") (binary_expression "uVar5 & 0x20" (identifier "uVar5") (& "&") (number_literal "0x20")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                  uVar20 = 0;\n                }" ({ "{") (expression_statement "uVar20 = 0;" (assignment_expression "uVar20 = 0" (identifier "uVar20") (= "=") (number_literal "0")) (; ";")) (} "}"))) (expression_statement "puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;" (assignment_expression "puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20" (subscript_expression "puVar22[1]" (identifier "puVar22") ([ "[") (number_literal "1") (] "]")) (= "=") (binary_expression "~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20" (binary_expression "~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1]" (unary_expression "~*(uint *)(&DAT_004808a0 + iVar15)" (~ "~") (pointer_expression "*(uint *)(&DAT_004808a0 + iVar15)" (* "*") (cast_expression "(uint *)(&DAT_004808a0 + iVar15)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_004808a0 + iVar15)" (( "(") (binary_expression "&DAT_004808a0 + iVar15" (pointer_expression "&DAT_004808a0" (& "&") (identifier "DAT_004808a0")) (+ "+") (identifier "iVar15")) () ")"))))) (& "&") (subscript_expression "puVar22[1]" (identifier "puVar22") ([ "[") (number_literal "1") (] "]"))) (| "|") (identifier "uVar20"))) (; ";")) (expression_statement "cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);" (assignment_expression "cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11)" (identifier "cVar1") (= "=") (call_expression "(**(code **)(iVar19 + 0x3c))(uVar23,uVar11)" (parenthesized_expression "(**(code **)(iVar19 + 0x3c))" (( "(") (pointer_expression "**(code **)(iVar19 + 0x3c)" (* "*") (pointer_expression "*(code **)(iVar19 + 0x3c)" (* "*") (cast_expression "(code **)(iVar19 + 0x3c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar19 + 0x3c)" (( "(") (binary_expression "iVar19 + 0x3c" (identifier "iVar19") (+ "+") (number_literal "0x3c")) () ")"))))) () ")")) (argument_list "(uVar23,uVar11)" (( "(") (identifier "uVar23") (, ",") (identifier "uVar11") () ")")))) (; ";")) (if_statement "if (cVar1 == '\0') {\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }" (if "if") (parenthesized_expression "(cVar1 == '\0')" (( "(") (binary_expression "cVar1 == '\0'" (identifier "cVar1") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                    \n                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");\n                }" ({ "{") (expression_statement "FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");" (call_expression "FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub")" (identifier "FUN_002446e0") (argument_list "("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub")" (( "(") (string_literal ""../../gold/aarch64.cc"" (" """) (string_content "../../gold/aarch64.cc") (" """)) (, ",") (number_literal "0x104d") (, ",") (string_literal ""relocate_reloc_stub"" (" """) (string_content "relocate_reloc_stub") (" """)) () ")"))) (; ";")) (} "}"))) (} "}")))))) (expression_statement "local_ac = (int *)*local_ac;" (assignment_expression "local_ac = (int *)*local_ac" (identifier "local_ac") (= "=") (cast_expression "(int *)*local_ac" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*local_ac" (* "*") (identifier "local_ac")))) (; ";")) (if_statement "if (local_ac == (int *)0x0) break;" (if "if") (parenthesized_expression "(local_ac == (int *)0x0)" (( "(") (binary_expression "local_ac == (int *)0x0" (identifier "local_ac") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar19 = local_ac[5];" (assignment_expression "iVar19 = local_ac[5]" (identifier "iVar19") (= "=") (subscript_expression "local_ac[5]" (identifier "local_ac") ([ "[") (number_literal "5") (] "]"))) (; ";")) (expression_statement "uVar11 = *(uint *)(iVar19 + 0xc);" (assignment_expression "uVar11 = *(uint *)(iVar19 + 0xc)" (identifier "uVar11") (= "=") (pointer_expression "*(uint *)(iVar19 + 0xc)" (* "*") (cast_expression "(uint *)(iVar19 + 0xc)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 0xc)" (( "(") (binary_expression "iVar19 + 0xc" (identifier "iVar19") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (if_statement "if (uVar11 == 0xffffffff) goto LAB_001e5d9c;" (if "if") (parenthesized_expression "(uVar11 == 0xffffffff)" (( "(") (binary_expression "uVar11 == 0xffffffff" (identifier "uVar11") (== "==") (number_literal "0xffffffff")) () ")")) (goto_statement "goto LAB_001e5d9c;" (goto "goto") (statement_identifier "LAB_001e5d9c") (; ";"))) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}"))) (} "}"))) (expression_statement "uVar18 = uVar18 + 1;" (assignment_expression "uVar18 = uVar18 + 1" (identifier "uVar18") (= "=") (binary_expression "uVar18 + 1" (identifier "uVar18") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(uVar18 != local_58)" (( "(") (binary_expression "uVar18 != local_58" (identifier "uVar18") (!= "!=") (identifier "local_58")) () ")")) (; ";")) (} "}"))) (} "}"))) (return_statement "return;" (return "return") (; ";")) (} "}")))

/* WARNING: Function: __x86.get_pc_thunk.si replaced with injection: get_pc_thunk_si */
/* WARNING: Enum "DT": Some values do not have unique names */
/* WARNING: Enum "ELFOSABI": Some values do not have unique names */
/* DWARF original prototype: void do_relocate_sections(AArch64_relobj<64,_false> * this,
   Symbol_table * symtab, Layout * layout, uchar * pshdrs, Output_file * of, Views * pviews) */

void __thiscall
anon_unknown.dwarf_109b185::var_2<64,var_3>::do_relocate_sections
          (var_2<64,var_3> *this,Symbol_table *symtab,Layout *layout,type_3 *pshdrs,
          Output_file *of,Views *pviews)

{
  type_15 *var_6;
  type_1 *pTVar2;
  type_2 *var_44;
  type_3 *var_28;
  type_2 *p_Var5;
  type_2 *var_53;
  type_2 *var_56;
  type_4 *var_55;
  type_5 *var_58;
  type_6 var_17;
  uint64_t uVar11;
  type_7 EVar12;
  bool bVar13;
  type_6 end_shndx;
  type_8 *var_43;
  type_9 pVVar15;
  type_2 *var_57;
  type_4 *var_54;
  type_10 *var_16;
  type_6 var_27;
  type_6 var_29;
  type_6 var_34;
  int var_35;
  int var_36;
  type_6 var_26;
  int var_30;
  type_6 var_32;
  type_11 ppSVar27;
  var_1<64,var_3> *var_9;
  type_12 var_20;
  int var_25;
  type_2 *var_47;
  type_6 *puVar32;
  type_6 var_31;
  type_6 var_33;
  type_2 *var_45;
  uint64_t uVar36;
  var_2<64,var_3> *a64relobj;
  var_2<64,var_3> *pAVar37;
  type_4 **__k;
  type_6 var_21;
  int var_22;
  type_2 *var_46;
  type_13 *var_38;
  type_6 var_24;
  var_1<64,var_3> *var_13;
  var_1<64,var_3> *var_8;
  type_13 *var_18;
  type_13 *var_19;
  type_14 sid;
  
  end_shndx = *(int *)&this->field_0x28 - 1;
  __k = (type_4 **)0x1;
  a64relobj = (var_2<64,var_3> *)pviews;
  gold::var_4<64,var_3>::var_5
            ((var_4<64,var_3> *)this,symtab,layout,pshdrs,of,pviews,1,end_shndx);
  var_6 = gold::parameters->options_;
  if (var_6 == (type_15 *)0x0) {
                    /* WARNING: Subroutine does not return */
    gold::var_7("../../gold/parameters.h",0x5c,"options");
  }
  if ((var_6->relocatable_).value == false) {
    var_8 = *(var_1<64,var_3> **)&this->field_0x28;
    if ((((var_6->fix_cortex_a53_843419_).value != false) ||
        ((var_6->fix_cortex_a53_835769_).value != false)) &&
       ((var_1<64,var_3> *)0x1 < var_8)) {
      ppSVar27 = (this->stub_tables_).
                 super__Vector_base<(anonymous_namespace)::var_1<64,var_3>*,_std::allocator<(anonymous_namespace)::var_1<64,var_3>*>var_12>
                 ._M_impl._M_start;
      if (7 < (type_6)((int)(this->stub_tables_).
                          super__Vector_base<(anonymous_namespace)::var_1<64,var_3>*,_std::allocator<(anonymous_namespace)::var_1<64,var_3>*>var_12>
                          ._M_impl._M_finish - (int)ppSVar27)) {
        var_13 = (var_1<64,var_3> *)0x1;
        do {
          var_9 = ppSVar27[(int)var_13];
          if (var_9 != (var_1<64,var_3> *)0x0) {
            var_1<64,var_3>::var_10
                      (var_13,a64relobj,(type_6)__k);
            var_38 = var_18;
            pVVar15 = (pviews->
                      super__Vector_base<gold::var_4<64,var_3>::var_11,_std::allocator<gold::var_4<64,var_3>::var_11>var_12>
                      )._M_impl._M_start + (int)var_13;
            if (pVVar15->is_input_output_view == false) {
              var_21 = 0;
              var_22 = 0;
            }
            else {
              __k = (type_4 **)var_13;
              if ((var_1<64,var_3> *)0xfeff < var_13) {
                elfcpp::Elf_file<64,var_3,_gold::var_14>::initialize_shnum
                          ((Elf_file<64,var_3,_gold::var_14> *)&this->field_0x90);
                __k = (type_4 **)
                      ((int)&(var_13->super_Output_data)._vptr_Output_data +
                      *(int *)&this->field_0xa4);
              }
              a64relobj = this;
              var_16 = gold::Output_section::var_15
                                  (*(type_16 **)(*(int *)&this->field_0x38 + (int)__k * 4),
                                   (type_17 *)this,(type_6)__k);
              if (var_16 == (type_10 *)0x0) {
                    /* WARNING: Subroutine does not return */
                gold::var_7
                          ("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs");
              }
              if (((var_16->super_Output_section_data_build).super_Output_section_data.
                   super_Output_data.field_0x1c & 1) == 0) goto LAB_001e670d;
              var_17 = (type_6)(var_16->super_Output_section_data_build).super_Output_section_data.
                             super_Output_data.address_;
              var_21 = var_17 - (int)pVVar15->address;
              var_22 = (*(int *)((int)&(var_16->super_Output_section_data_build).
                                         super_Output_section_data.super_Output_data.address_ + 4) -
                         *(int *)((int)&pVVar15->address + 4)) -
                         (type_6)(var_17 < (type_6)pVVar15->address);
            }
            if (var_18 != var_19) {
              var_20 = var_18[1]._M_color;
              var_17 = (type_6)pVVar15->address;
              var_26 = *(type_6 *)(var_20 + 0x1c);
              var_27 = var_21 + var_17;
              var_25 = var_22 + *(int *)((int)&pVVar15->address + 4) +
                       (type_6)var_23(var_21,var_17);
              var_24 = *(type_6 *)(var_20 + 0x24);
              if ((var_24 & *(type_6 *)(var_20 + 0x28)) == 0xffffffff) {
LAB_001e674b:
                    /* WARNING: Subroutine does not return */
                gold::var_7("../../gold/aarch64.cc",0x401,"erratum_address");
              }
              if (*(type_6 *)(var_20 + 0x28) != var_25 + (type_6)var_23(var_26,var_27) ||
                  var_24 != var_26 + var_27) {
LAB_001e6234:
                    /* WARNING: Subroutine does not return */
                gold::var_7
                          ("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");
              }
              var_28 = pVVar15->view;
              do {
                var_26 = *(type_6 *)(var_28 + var_21 + var_26);
                var_29 = *(type_6 *)(var_20 + 0x20);
                if (var_29 == 0xffffffff) {
                    /* WARNING: Subroutine does not return */
                  gold::var_7("../../gold/aarch64.cc",999,"update_erratum_insn");
                }
                if (*(int *)(var_20 + 0x10) == 4) {
                  if ((var_26 & 0x3b000000) != 0x39000000) {
                    /* WARNING: Subroutine does not return */
                    gold::var_7("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");
                  }
                  if ((var_29 & 0x3b000000) != 0x39000000) {
                    /* WARNING: Subroutine does not return */
                    gold::var_7("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");
                  }
                  if ((var_26 & 0x1f) != (var_29 & 0x1f)) {
                    /* WARNING: Subroutine does not return */
                    gold::var_7("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");
                  }
                  if ((var_26 >> 5 & 0x1f) != (var_29 >> 5 & 0x1f)) {
                    /* WARNING: Subroutine does not return */
                    gold::var_7("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");
                  }
                  var_30 = *(int *)(var_20 + 0x2c);
                  *(type_6 *)(var_20 + 0x20) = var_26;
                  var_26 = *(type_6 *)(var_28 + var_21 + var_30);
                  if ((var_26 & 0xffffffe0) != 0xd53bd040) {
                    if ((var_26 & 0x9f000000) == 0x90000000) {
                      var_32 = var_30 + var_27;
                      var_31 = var_26 >> 3 & 0x1ffffc;
                      var_33 = (var_31 | var_26 >> 0x1d & 3) * 0x1000;
                      var_29 = (var_32 & 0xfffff000) - var_32;
                      var_34 = var_29 + var_33;
                      var_35 = (((var_31 >> 0x14) * -2 | var_31 >> 0x14) -
                               (type_6)((var_32 & 0xfffff000) < var_32)) + (type_6)var_23(var_29,var_33)
                               + (type_6)(0xffefffff < var_34);
                      if (var_35 != 0 || (type_6)-var_35 < (type_6)(0x1fffff < var_34 + 0x100000))
                      goto LAB_001e6269;
                      if ((var_26 & 0x1f000000) != 0x10000000) {
                    /* WARNING: Subroutine does not return */
                        gold::var_7
                                  ("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");
                      }
                      *(type_6 *)(var_28 + var_21 + var_30) =
                           (var_34 & 3) << 0x1d | var_34 * 8 & 0xffffe0 | var_26 & 0x1f00001f;
                    }
                    else if ((var_30 == 0) ||
                            ((*(type_6 *)(var_28 + var_21 + var_30 + -4) & 0xffffffe0) != 0xd53bd040
                            )) {
                    /* WARNING: Subroutine does not return */
                      gold::var_7
                                ("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized");
                    }
                  }
                  if (((var_9->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;
                  var_30 = (int)(var_9->super_Output_data).address_;
                }
                else {
                  if (*(int *)(var_20 + 0x10) != 5) {
                    /* WARNING: Subroutine does not return */
                    gold::var_7("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");
                  }
                  if (var_26 != var_29) {
                    /* WARNING: Subroutine does not return */
                    gold::var_7("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");
                  }
LAB_001e6269:
                  if (((var_9->super_Output_data).field_0x1c & 1) == 0) goto LAB_001e670d;
                  var_30 = (int)(var_9->super_Output_data).address_;
                  if (*(int *)(var_20 + 0xc) == -1) goto LAB_001e5d9c;
                  *(type_6 *)(var_28 + *(int *)(var_20 + 0x1c) + var_21) =
                       (var_30 + 3 + (int)var_9->reloc_stubs_size_ & 0xfffffffcU) +
                       (*(int *)(var_20 + 0xc) - var_24) >> 2 & 0x3ffffff | 0x14000000;
                }
                if (*(int *)(var_20 + 0x20) == -1) {
                    /* WARNING: Subroutine does not return */
                  gold::var_7("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");
                }
                if (*(int *)(var_20 + 0xc) == -1) goto LAB_001e5d9c;
                var_35 = *(int *)(var_20 + 0xc) +
                         (var_30 + (int)var_9->reloc_stubs_size_ + 3U & 0xfffffffc);
                if (1 < *(int *)(var_20 + 0x10) - 4U) {
                    /* WARNING: Subroutine does not return */
                  gold::var_7("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");
                }
                var_36 = var_35 + 4;
                *(int *)(var_28 + (var_35 - var_30) + (var_30 - var_17)) = *(int *)(var_20 + 0x20);
                if ((*(type_6 *)(var_20 + 8) & *(type_6 *)(var_20 + 4)) == 0xffffffff)
                goto LAB_001e67c7;
                *(type_6 *)(var_28 + (var_36 - var_30) + (var_30 - var_17)) =
                     *(type_6 *)(var_20 + 4) - var_36 >> 2 & 0x3ffffff | 0x14000000;
                if (*(int *)(var_20 + 0x20) == -1) {
                    /* WARNING: Subroutine does not return */
                  gold::var_7("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub")
                  ;
                }
                *(type_18 *)(var_20 + 0x20) = 0xffffffff;
                var_38 = (type_13 *)std::var_37(var_38);
                if (var_19 == var_38) break;
                var_20 = var_38[1]._M_color;
                var_26 = *(type_6 *)(var_20 + 0x1c);
                var_24 = *(type_6 *)(var_20 + 0x24);
                if ((var_24 & *(type_6 *)(var_20 + 0x28)) == 0xffffffff) goto LAB_001e674b;
                if (*(type_6 *)(var_20 + 0x28) != var_25 + (type_6)var_23(var_26,var_27) ||
                    var_24 != var_26 + var_27) goto LAB_001e6234;
              } while( true );
            }
          }
          var_13 = (var_1<64,var_3> *)
                     ((int)&(var_13->super_Output_data)._vptr_Output_data + 1);
          if (var_13 == var_8) {
            var_8 = *(var_1<64,var_3> **)&this->field_0x28;
            goto LAB_001e5adf;
          }
          ppSVar27 = (this->stub_tables_).
                     super__Vector_base<(anonymous_namespace)::var_1<64,var_3>*,_std::allocator<(anonymous_namespace)::var_1<64,var_3>*>var_12>
                     ._M_impl._M_start;
        } while (var_13 <
                 (var_1<64,var_3> *)
                 ((int)(this->stub_tables_).
                       super__Vector_base<(anonymous_namespace)::var_1<64,var_3>*,_std::allocator<(anonymous_namespace)::var_1<64,var_3>*>var_12>
                       ._M_impl._M_finish - (int)ppSVar27 >> 2));
      }
                    /* WARNING: Subroutine does not return */
      gold::var_7("../../gold/aarch64.cc",0x6f6,"stub_table");
    }
LAB_001e5adf:
    if (gold::parameters->target_ == (type_19 *)0x0) {
                    /* WARNING: Subroutine does not return */
      gold::var_7("../../gold/parameters.h",0x69,"target");
    }
    pTVar2 = gold::parameters->target_->pti_;
    if (((pTVar2->machine_code != var_39) || (pTVar2->size != 0x40)) ||
       (pTVar2->is_big_endian != false)) {
                    /* WARNING: Subroutine does not return */
      gold::var_7("../../gold/aarch64.cc",0xc2e,"current_target");
    }
    if ((var_1<64,var_3> *)0x1 < var_8) {
      var_9 = (var_1<64,var_3> *)0x1;
      do {
        var_43 = std::
                  _Hashtable<std::pair<gold::type_17*,_unsigned_int>,_std::pair<const_std::pair<gold::type_17*,_unsigned_int>,var_12(anonymous_namespace)::AArch64_input_section<64,var_3>*>,_std::allocator<std::pair<const_std::pair<gold::type_17*,_unsigned_int>,var_12(anonymous_namespace)::AArch64_input_section<64,var_3>*>var_12>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::type_17*,_unsigned_int>var_12>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::var_40<true,var_3,var_41>var_12>
                  ::var_42
                            ((_Hashtable<std::pair<gold::type_17*,_unsigned_int>,_std::pair<const_std::pair<gold::type_17*,_unsigned_int>,var_12(anonymous_namespace)::AArch64_input_section<64,var_3>*>,_std::allocator<std::pair<const_std::pair<gold::type_17*,_unsigned_int>,var_12(anonymous_namespace)::AArch64_input_section<64,var_3>*>var_12>,_std::__detail::_Select1st,_std::equal_to<std::pair<gold::type_17*,_unsigned_int>var_12>,_gold::Section_id_hash,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::var_40<true,var_3,var_41>var_12>
                              *)((type_6)var_9 ^ (type_6)this),(type_20)a64relobj,(type_21 *)__k,
                             end_shndx);
        if (((((var_43 != (type_8 *)0x0) && (var_43->_M_nxt != (type_2 *)0x0)) &&
             (var_44 = var_43->_M_nxt[3]._M_nxt, var_44 != (type_2 *)0x0)) &&
            ((var_45 = var_44[0xd]._M_nxt, var_45 != (type_2 *)0x0 &&
             (var_44 == var_45[8]._M_nxt)))) &&
           ((var_45[0xc]._M_nxt != (type_2 *)0x0 ||
            (var_45[0x15]._M_nxt != (type_2 *)0x0)))) {
          if ((var_1<64,var_3> *)(*(int *)&this->field_0x3c - *(int *)&this->field_0x38 >> 2)
              <= var_9) {
                    /* WARNING: Subroutine does not return */
            gold::var_7("../../gold/object.h",0x5c8,"do_output_section");
          }
          if (*(int *)(*(int *)&this->field_0x38 + (int)var_9 * 4) == 0) {
                    /* WARNING: Subroutine does not return */
            gold::var_7("../../gold/aarch64.cc",0x889,"do_relocate_sections");
          }
          pVVar15 = (pviews->
                    super__Vector_base<gold::var_4<64,var_3>::var_11,_std::allocator<gold::var_4<64,var_3>::var_11>var_12>
                    )._M_impl._M_start + (int)var_9;
          var_28 = pVVar15->view;
          if (var_28 == (type_3 *)0x0) {
                    /* WARNING: Subroutine does not return */
            gold::var_7("../../gold/aarch64.cc",0x892,"do_relocate_sections");
          }
          if (((type_6)var_45[7]._M_nxt & 1) == 0) {
LAB_001e670d:
                    /* WARNING: Subroutine does not return */
            gold::var_7("../../gold/output.h",0xc5,"address");
          }
          var_44 = var_45[1]._M_nxt;
          p_Var5 = var_45[2]._M_nxt;
          EVar12 = pVVar15->address;
          if (((type_6)var_45[7]._M_nxt & 2) == 0) {
                    /* WARNING: Subroutine does not return */
            gold::var_7("../../gold/output.h",0xcf,"data_size");
          }
          var_53 = var_45[3]._M_nxt;
          var_46 = var_45[0xb]._M_nxt;
          if (var_46 != (type_2 *)0x0) {
            var_45 = var_46[5]._M_nxt;
            var_47 = var_45[3]._M_nxt;
            if (var_47 == (type_2 *)0xffffffff) {
LAB_001e5d9c:
                    /* WARNING: Subroutine does not return */
              gold::var_7("../../gold/aarch64.cc",0x370,"offset");
            }
            do {
              var_56 = var_45[4]._M_nxt;
              if (((anonymous_namespace)::var_50<false>::get_stub_template(int)::
                   var_48 == '\0') &&
                 (var_25 = var_49(&(anonymous_namespace)::
                                                var_50<false>::
                                                get_stub_template(int)::var_48), var_25 != 0)) {
                (anonymous_namespace)::var_50<false>::get_stub_template(int)::
                var_48 = &(anonymous_namespace)::var_50<false>::
                             var_50()::type_22;
                DAT_005eb50c = &(anonymous_namespace)::var_50<false>::
                                var_50()::template_ST_ADRP_BRANCH;
                DAT_005eb510 = &(anonymous_namespace)::var_50<false>::
                                var_50()::template_ST_LONG_BRANCH_ABS;
                DAT_005eb514 = &(anonymous_namespace)::var_50<false>::
                                var_50()::template_ST_LONG_BRANCH_PCREL;
                DAT_005eb518 = &(anonymous_namespace)::var_50<false>::
                                var_50()::template_ST_E_843419;
                DAT_005eb51c = &(anonymous_namespace)::var_50<false>::
                                var_50()::template_ST_E_835769;
                var_51(&(anonymous_namespace)::var_50<false>::
                                     get_stub_template(int)::var_48);
                __k = &__dso_handle;
                a64relobj = (var_2<64,var_3> *)
                            &(anonymous_namespace)::var_50<false>::
                             get_stub_template(int)::var_48;
                var_52(var_50<false>::~var_50);
              }
              if (var_53 < var_47 + (int)(&(anonymous_namespace)::var_50<false>::
                                            get_stub_template(int)::var_48)[(int)var_56][1]) {
                    /* WARNING: Subroutine does not return */
                gold::var_7("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub");
              }
              var_57 = (type_2 *)((int)&var_44->_M_nxt + (int)&var_47->_M_nxt);
              var_25 = (int)&p_Var5->_M_nxt + (type_6)var_23((type_6)var_47,(type_6)var_44);
              var_56 = var_45[4]._M_nxt;
              puVar32 = (type_6 *)((int)var_47 + (int)var_44 + ((int)var_28 - (int)EVar12));
              if (((anonymous_namespace)::var_50<false>::get_stub_template(int)::
                   var_48 == '\0') &&
                 (var_30 = var_49(&(anonymous_namespace)::
                                                var_50<false>::
                                                get_stub_template(int)::var_48), var_30 != 0)) {
                (anonymous_namespace)::var_50<false>::get_stub_template(int)::
                var_48 = &(anonymous_namespace)::var_50<false>::
                             var_50()::type_22;
                DAT_005eb50c = &(anonymous_namespace)::var_50<false>::
                                var_50()::template_ST_ADRP_BRANCH;
                DAT_005eb510 = &(anonymous_namespace)::var_50<false>::
                                var_50()::template_ST_LONG_BRANCH_ABS;
                DAT_005eb514 = &(anonymous_namespace)::var_50<false>::
                                var_50()::template_ST_LONG_BRANCH_PCREL;
                DAT_005eb518 = &(anonymous_namespace)::var_50<false>::
                                var_50()::template_ST_E_843419;
                DAT_005eb51c = &(anonymous_namespace)::var_50<false>::
                                var_50()::template_ST_E_835769;
                var_51(&(anonymous_namespace)::var_50<false>::
                                     get_stub_template(int)::var_48);
                __k = &__dso_handle;
                a64relobj = (var_2<64,var_3> *)
                            &(anonymous_namespace)::var_50<false>::
                             get_stub_template(int)::var_48;
                var_52(var_50<false>::~var_50);
              }
              var_47 = var_45[4]._M_nxt;
              var_55 = (&(anonymous_namespace)::var_50<false>::
                         get_stub_template(int)::var_48)[(int)var_56][1];
              if (((anonymous_namespace)::var_50<false>::get_stub_template(int)::
                   var_48 == '\0') &&
                 (var_30 = var_49(&(anonymous_namespace)::
                                                var_50<false>::
                                                get_stub_template(int)::var_48), var_30 != 0)) {
                (anonymous_namespace)::var_50<false>::get_stub_template(int)::
                var_48 = &(anonymous_namespace)::var_50<false>::
                             var_50()::type_22;
                DAT_005eb50c = &(anonymous_namespace)::var_50<false>::
                                var_50()::template_ST_ADRP_BRANCH;
                DAT_005eb510 = &(anonymous_namespace)::var_50<false>::
                                var_50()::template_ST_LONG_BRANCH_ABS;
                DAT_005eb514 = &(anonymous_namespace)::var_50<false>::
                                var_50()::template_ST_LONG_BRANCH_PCREL;
                DAT_005eb518 = &(anonymous_namespace)::var_50<false>::
                                var_50()::template_ST_E_843419;
                DAT_005eb51c = &(anonymous_namespace)::var_50<false>::
                                var_50()::template_ST_E_835769;
                var_51(&(anonymous_namespace)::var_50<false>::
                                     get_stub_template(int)::var_48);
                __k = &__dso_handle;
                a64relobj = (var_2<64,var_3> *)
                            &(anonymous_namespace)::var_50<false>::
                             get_stub_template(int)::var_48;
                var_52(var_50<false>::~var_50);
              }
              if (0 < (int)var_55) {
                if (*puVar32 !=
                    *(type_6 *)*(&(anonymous_namespace)::var_50<false>::
                                get_stub_template(int)::var_48)[(int)var_47]) {
LAB_001e68a0:
                    /* WARNING: Subroutine does not return */
                  gold::var_7("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");
                }
                var_54 = (type_4 *)0x0;
                while (var_54 = var_54 + 1, var_55 != var_54) {
                  if (puVar32[(int)var_54] !=
                      *(type_6 *)((int)*(&(anonymous_namespace)::var_50<false>::
                                        get_stub_template(int)::var_48)[(int)var_47] +
                               var_54 * 4)) goto LAB_001e68a0;
                }
              }
              pAVar37 = (var_2<64,var_3> *)var_45[2]._M_nxt;
              var_47 = var_45 + 1;
              var_56 = var_47->_M_nxt;
              uVar11 = *(uint64_t *)var_47;
              uVar36 = *(uint64_t *)var_47;
              if (((type_6)pAVar37 & (type_6)var_56) == 0xffffffff) {
LAB_001e67c7:
                    /* WARNING: Subroutine does not return */
                gold::var_7("../../gold/aarch64.cc",0x359,"destination_address");
              }
              var_45 = var_45[4]._M_nxt;
              if (var_45 == (type_2 *)0x2) {
                puVar32[2] = (type_6)var_56;
                puVar32[3] = (type_6)pAVar37;
              }
              else if (var_45 == (type_2 *)0x3) {
                puVar32[4] = (int)(var_56 + -1) - (int)var_57;
                puVar32[5] = (int)pAVar37 +
                             (((((type_2 *)0x3 < var_56) - 1) - var_25) -
                             (type_6)(var_56 + -1 < var_57));
              }
              else {
                if (var_45 != (type_2 *)0x1) {
                    /* WARNING: Subroutine does not return */
                  gold::var_7("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub");
                }
                var_25 = (int)pAVar37 +
                         (-(type_6)(((type_6)var_56 & 0xfffff000) < ((type_6)var_57 & 0xfffff000)) -
                         var_25);
                var_17 = ((type_6)var_56 & 0xfffff000) - ((type_6)var_57 & 0xfffff000) >> 0xc;
                *puVar32 = ((var_17 | var_25 * 0x100000 & 0x1fffffU) >> 2) << 5 |
                           (var_17 & 3) << 0x1d | *puVar32 & 0x9f00001f;
                if (1 < var_25 + 1U) {
                    /* WARNING: Subroutine does not return */
                  gold::var_7("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");
                }
                var_58 = aarch64_reloc_property_table->table_[0x15];
                if (var_58 == (type_5 *)0x0) {
                    /* WARNING: Subroutine does not return */
                  gold::var_7("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub");
                }
                uVar36 = (*var_58->rvalue_bit_select_func_)(uVar36);
                var_25 = var_58->reloc_inst_ * 0x10;
                if ((*(int *)((anonymous_namespace)::aarch64_howto + var_25 + 0xc) != -1) ||
                   (var_17 = *(type_6 *)((anonymous_namespace)::aarch64_howto + var_25 + 8),
                   var_17 == 0xffffffff)) {
                    /* WARNING: Subroutine does not return */
                  gold::var_7("../../gold/aarch64.cc",0x1484,"reloc_common");
                }
                var_26 = (int)uVar36 << ((type_23)var_17 & 0x1f);
                if ((var_17 & 0x20) != 0) {
                  var_26 = 0;
                }
                puVar32[1] = ~*(type_6 *)((anonymous_namespace)::aarch64_howto + var_25) & puVar32[1]
                             | var_26;
                bVar13 = (*var_58->rvalue_checkup_func_)(uVar11);
                a64relobj = pAVar37;
                if (!bVar13) {
                    /* WARNING: Subroutine does not return */
                  gold::var_7("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");
                }
              }
              var_46 = var_46->_M_nxt;
              if (var_46 == (type_2 *)0x0) break;
              var_45 = var_46[5]._M_nxt;
              var_47 = var_45[3]._M_nxt;
              if (var_47 == (type_2 *)0xffffffff) goto LAB_001e5d9c;
            } while( true );
          }
        }
        var_9 = (var_1<64,var_3> *)
                  ((int)&(var_9->super_Output_data)._vptr_Output_data + 1);
      } while (var_9 != var_8);
    }
  }
  return;
}


(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))))) body: (compound_statement (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier) (identifier) (identifier) (identifier) (number_literal) (identifier) (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content)) (pointer_expression argument: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (char_literal (escape_sequence)))))) right: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (pointer_expression argument: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))) (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content)) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (subscript_expression argument: (identifier) index: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (subscript_expression argument: (identifier) index: (number_literal)))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))))) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)) right: (number_literal)))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (identifier)))))) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (number_literal) right: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (binary_expression left: (parenthesized_expression (identifier)) right: (identifier)) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (number_literal) right: (binary_expression left: (identifier) right: (number_literal)))))))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) right: (identifier)) right: (number_literal))))) right: (number_literal))) right: (number_literal))))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content))))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content))))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) right: (number_literal)) right: (number_literal)) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal)) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))))) right: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)) right: (number_literal)) right: (number_literal)) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))))) right: (binary_expression left: (identifier) right: (identifier)))) consequence: (goto_statement label: (statement_identifier)))) condition: (parenthesized_expression (true))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (number_literal))))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content)) (identifier) (identifier)))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content)) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))))) right: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content)) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal)))))) right: (binary_expression left: (identifier) right: (number_literal)))))) right: (parenthesized_expression (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))))))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content)) (identifier) (identifier) (identifier) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (number_literal)))))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content)) (number_literal) (identifier) (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (pointer_expression argument: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content)) (identifier) (identifier) (identifier) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content)) (identifier) (identifier) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content)) (identifier) (identifier) (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content)) (identifier) (identifier) (identifier) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier))))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (pointer_expression argument: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (identifier)) right: (number_literal))))) right: (number_literal))))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content)) (identifier) (identifier) (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))) right: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier))))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (pointer_expression argument: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (identifier)) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier))))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (pointer_expression argument: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (subscript_expression argument: (identifier) index: (identifier))))))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content)))))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (while_statement condition: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (binary_expression left: (identifier) right: (identifier)))) body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (identifier)) right: (subscript_expression argument: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (subscript_expression argument: (identifier) index: (identifier))))) index: (identifier)))) consequence: (goto_statement label: (statement_identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier)))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (number_literal) right: (identifier)))))) right: (identifier))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier)))))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content)) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) right: (number_literal))) right: (number_literal)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content)) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier))))) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content)) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (binary_expression left: (unary_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))))) right: (subscript_expression argument: (identifier) index: (number_literal))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (string_literal (string_content)))))))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) condition: (parenthesized_expression (true))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))))) (return_statement))))

/* WARNING: Function: __i686.get_pc_thunk.si replaced with injection: get_pc_thunk_si */

void MASKED(uint param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4,
                 undefined4 param_5,int *param_6)

{
  char cVar1;
  int iVar2;
  int *piVar3;
  uint uVar4;
  uint uVar5;
  int iVar6;
  int *piVar7;
  int iVar8;
  uint uVar9;
  int iVar10;
  uint uVar11;
  uint *puVar12;
  int iVar13;
  int iVar14;
  undefined4 extraout_ECX;
  int iVar15;
  uint *puVar16;
  int iVar17;
  uint uVar18;
  int iVar19;
  uint uVar20;
  undefined **ppuVar21;
  uint *puVar22;
  uint uVar23;
  undefined4 *puVar24;
  int local_b0;
  int *local_ac;
  uint local_7c;
  uint *local_78;
  undefined **local_74;
  uint local_5c;
  uint local_58;
  uint local_34;
  uint local_30;
  uint local_24;
  uint local_20;
  
  ppuVar21 = &__DT_PLTGOT;
  iVar2 = *(int *)(param_1 + 0x28) + -1;
  FUN_00325a00(param_1,param_2,param_3,param_4,param_5,param_6,1,iVar2,*(int *)(param_1 + 0x28));
  iVar8 = *(int *)(DAT_005ea7c8 + 8);
  if (iVar8 == 0) {
                    /* WARNING: Subroutine does not return */
    FUN_002446e0("../../gold/parameters.h",0x5c,"options",&__DT_PLTGOT);
  }
  if (*(char *)(iVar8 + 0x318d) == '\0') {
    local_58 = *(uint *)(param_1 + 0x28);
    uVar18 = local_58;
    if (((*(char *)(iVar8 + 0x1671) != '\0') || (*(char *)(iVar8 + 0x16ed) != '\0')) &&
       (1 < local_58)) {
      iVar8 = *(int *)(param_1 + 0x13c);
      iVar19 = *(int *)(param_1 + 0x140);
      if (7 < (uint)(iVar19 - iVar8)) {
        local_5c = 1;
        do {
          ppuVar21 = (undefined **)(local_5c * 4);
          puVar24 = *(undefined4 **)(iVar8 + local_5c * 4);
          if (puVar24 != (undefined4 *)0x0) {
            FUN_001d6d60(local_5c);
            local_7c = local_34;
            piVar7 = (int *)(local_5c * 0x1c + *param_6);
            if ((char)piVar7[6] == '\0') {
              puVar22 = (uint *)0x0;
              local_b0 = 0;
            }
            else {
              uVar18 = local_5c;
              if (0xfeff < local_5c) {
                FUN_00108090(param_1 + 0x90);
                uVar18 = local_5c + *(int *)(param_1 + 0xa4);
                ppuVar21 = (undefined **)(uVar18 * 4);
              }
              local_74 = &__DT_PLTGOT;
              iVar8 = FUN_002cd8b0(*(undefined4 *)(*(int *)(param_1 + 0x38) + (int)ppuVar21),param_1
                                   ,uVar18);
              if (iVar8 == 0) {
                    /* WARNING: Subroutine does not return */
                FUN_002446e0("../../gold/aarch64.cc",0x7df,"fix_errata_and_relocate_erratum_stubs",
                             extraout_ECX);
              }
              if ((*(byte *)(iVar8 + 0x1c) & 1) == 0) goto LAB_001e670d;
              puVar22 = (uint *)(*(uint *)(iVar8 + 4) - piVar7[1]);
              local_b0 = (*(int *)(iVar8 + 8) - piVar7[2]) -
                         (uint)(*(uint *)(iVar8 + 4) < (uint)piVar7[1]);
              ppuVar21 = local_74;
            }
            local_74 = &__DT_PLTGOT;
            uVar18 = local_34;
            if (local_34 != local_30) {
              iVar8 = *(int *)(local_34 + 0x10);
              uVar4 = piVar7[1];
              uVar18 = *(uint *)(iVar8 + 0x1c);
              uVar9 = (int)puVar22 + uVar4;
              iVar19 = local_b0 + piVar7[2] + (uint)CARRY4((uint)puVar22,uVar4);
              local_78 = *(uint **)(iVar8 + 0x24);
              if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) {
LAB_001e674b:
                    /* WARNING: Subroutine does not return */
                FUN_002446e0("../../gold/aarch64.cc",0x401,"erratum_address");
              }
              if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||
                  local_78 != (uint *)(uVar18 + uVar9)) {
LAB_001e6234:
                    /* WARNING: Subroutine does not return */
                FUN_002446e0("../../gold/aarch64.cc",0x7e9,"fix_errata_and_relocate_erratum_stubs");
              }
              piVar7 = (int *)*piVar7;
              iVar10 = (int)piVar7 + (int)puVar22;
              puVar12 = puVar22;
              do {
                uVar18 = *(uint *)(uVar18 + (int)piVar7 + (int)puVar22);
                uVar11 = *(uint *)(iVar8 + 0x20);
                if (uVar11 == 0xffffffff) {
                    /* WARNING: Subroutine does not return */
                  FUN_002446e0("../../gold/aarch64.cc",999,"update_erratum_insn");
                }
                if (*(int *)(iVar8 + 0x10) == 4) {
                  if ((uVar18 & 0x3b000000) != 0x39000000) {
                    /* WARNING: Subroutine does not return */
                    FUN_002446e0("../../gold/aarch64.cc",0x3eb,"update_erratum_insn");
                  }
                  if ((uVar11 & 0x3b000000) != 0x39000000) {
                    /* WARNING: Subroutine does not return */
                    FUN_002446e0("../../gold/aarch64.cc",0x3ec,"update_erratum_insn");
                  }
                  if ((uVar18 & 0x1f) != (uVar11 & 0x1f)) {
                    /* WARNING: Subroutine does not return */
                    FUN_002446e0("../../gold/aarch64.cc",0x3ee,"update_erratum_insn");
                  }
                  if ((uVar18 >> 5 & 0x1f) != (uVar11 >> 5 & 0x1f)) {
                    /* WARNING: Subroutine does not return */
                    FUN_002446e0("../../gold/aarch64.cc",0x3f0,"update_erratum_insn");
                  }
                  iVar17 = *(int *)(iVar8 + 0x2c);
                  *(uint *)(iVar8 + 0x20) = uVar18;
                  puVar16 = (uint *)((int)piVar7 + (int)puVar22 + iVar17);
                  puVar12 = (uint *)*puVar16;
                  if (((uint)puVar12 & 0xffffffe0) != 0xd53bd040) {
                    if (((uint)puVar12 & 0x9f000000) == 0x90000000) {
                      uVar5 = iVar17 + uVar9;
                      uVar23 = (uint)puVar12 >> 3 & 0x1ffffc;
                      uVar20 = (uVar23 | (uint)puVar12 >> 0x1d & 3) * 0x1000;
                      uVar18 = (uVar5 & 0xfffff000) - uVar5;
                      uVar11 = uVar18 + uVar20;
                      iVar17 = (((uVar23 >> 0x14) * -2 | uVar23 >> 0x14) -
                               (uint)((uVar5 & 0xfffff000) < uVar5)) + (uint)CARRY4(uVar18,uVar20) +
                               (uint)(0xffefffff < uVar11);
                      if (iVar17 != 0 || (uint)-iVar17 < (uint)(0x1fffff < uVar11 + 0x100000))
                      goto LAB_001e6269;
                      if (((uint)puVar12 & 0x1f000000) != 0x10000000) {
                    /* WARNING: Subroutine does not return */
                        FUN_002446e0("../../gold/aarch64.cc",0x8d,"aarch64_adr_encode_imm");
                      }
                      *puVar16 = (uVar11 & 3) << 0x1d | uVar11 * 8 & 0xffffe0 |
                                 (uint)puVar12 & 0x1f00001f;
                    }
                    else if ((iVar17 == 0) ||
                            ((*(uint *)((int)piVar7 + (int)puVar22 + iVar17 + -4) & 0xffffffe0) !=
                             0xd53bd040)) {
                    /* WARNING: Subroutine does not return */
                      FUN_002446e0("../../gold/aarch64.cc",0x842,"try_fix_erratum_843419_optimized")
                      ;
                    }
                  }
                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;
                  iVar17 = puVar24[1];
                }
                else {
                  if (*(int *)(iVar8 + 0x10) != 5) {
                    /* WARNING: Subroutine does not return */
                    FUN_002446e0("../../gold/aarch64.cc",0x3f8,"update_erratum_insn");
                  }
                  if (uVar18 != uVar11) {
                    /* WARNING: Subroutine does not return */
                    FUN_002446e0("../../gold/aarch64.cc",0x3f5,"update_erratum_insn");
                  }
LAB_001e6269:
                  if ((*(byte *)(puVar24 + 7) & 1) == 0) goto LAB_001e670d;
                  iVar17 = puVar24[1];
                  if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;
                  *(uint *)(iVar10 + *(int *)(iVar8 + 0x1c)) =
                       (iVar17 + 3 + puVar24[0x16] & 0xfffffffcU) +
                       (*(int *)(iVar8 + 0xc) - (int)local_78) >> 2 & 0x3ffffff | 0x14000000;
                }
                uVar18 = (iVar17 - uVar4) + (int)piVar7;
                if (*(int *)(iVar8 + 0x20) == -1) {
                    /* WARNING: Subroutine does not return */
                  FUN_002446e0("../../gold/aarch64.cc",0x663,"relocate_erratum_stub");
                }
                if (*(int *)(iVar8 + 0xc) == -1) goto LAB_001e5d9c;
                iVar13 = *(int *)(iVar8 + 0xc) + (iVar17 + puVar24[0x16] + 3U & 0xfffffffc);
                if (1 < *(int *)(iVar8 + 0x10) - 4U) {
                    /* WARNING: Subroutine does not return */
                  FUN_002446e0("../../gold/aarch64.cc",0x67c,"relocate_erratum_stub");
                }
                iVar15 = iVar13 + 4;
                *(int *)(uVar18 + (iVar13 - iVar17)) = *(int *)(iVar8 + 0x20);
                if ((*(uint *)(iVar8 + 8) & *(uint *)(iVar8 + 4)) == 0xffffffff) goto LAB_001e67c7;
                *(uint *)(uVar18 + (iVar15 - iVar17)) =
                     *(uint *)(iVar8 + 4) - iVar15 >> 2 & 0x3ffffff | 0x14000000;
                if (*(int *)(iVar8 + 0x20) == -1) {
                    /* WARNING: Subroutine does not return */
                  FUN_002446e0("../../gold/aarch64.cc",0x42b,"invalidate_erratum_stub");
                }
                *(undefined4 *)(iVar8 + 0x20) = 0xffffffff;
                local_7c = thunk_FUN_003af660(local_7c);
                ppuVar21 = local_74;
                if (local_30 == local_7c) break;
                iVar8 = *(int *)(local_7c + 0x10);
                uVar18 = *(uint *)(iVar8 + 0x1c);
                puVar12 = (uint *)(uVar18 + uVar9);
                local_78 = *(uint **)(iVar8 + 0x24);
                if (((uint)local_78 & *(uint *)(iVar8 + 0x28)) == 0xffffffff) goto LAB_001e674b;
                if (*(uint *)(iVar8 + 0x28) != iVar19 + (uint)CARRY4(uVar18,uVar9) ||
                    local_78 != puVar12) goto LAB_001e6234;
              } while( true );
            }
          }
          local_5c = local_5c + 1;
          if (local_5c == local_58) {
            local_58 = *(uint *)(param_1 + 0x28);
            goto LAB_001e5adf;
          }
          iVar8 = *(int *)(param_1 + 0x13c);
          iVar19 = *(int *)(param_1 + 0x140);
        } while (local_5c < (uint)(iVar19 - iVar8 >> 2));
      }
                    /* WARNING: Subroutine does not return */
      FUN_002446e0("../../gold/aarch64.cc",0x6f6,"stub_table",ppuVar21,iVar19);
    }
LAB_001e5adf:
    piVar7 = *(int **)(DAT_005ea7c8 + 0xc);
    if (piVar7 == (int *)0x0) {
                    /* WARNING: Subroutine does not return */
      FUN_002446e0("../../gold/parameters.h",0x69,"target",uVar18);
    }
    piVar3 = (int *)piVar7[1];
    if (((piVar3[2] != 0xb7) || (*piVar3 != 0x40)) || ((char)piVar3[1] != '\0')) {
                    /* WARNING: Subroutine does not return */
      FUN_002446e0("../../gold/aarch64.cc",0xc2e,"current_target",ppuVar21);
    }
    if (1 < local_58) {
      uVar18 = 1;
      puVar12 = &local_24;
      do {
        local_24 = param_1;
        local_20 = uVar18;
        piVar3 = (int *)FUN_001d1150(uVar18 ^ param_1);
        if (((((piVar3 != (int *)0x0) && (*piVar3 != 0)) &&
             (iVar8 = *(int *)(*piVar3 + 0xc), iVar8 != 0)) &&
            ((iVar19 = *(int *)(iVar8 + 0x34), iVar19 != 0 && (iVar8 == *(int *)(iVar19 + 0x20)))))
           && ((*(int *)(iVar19 + 0x30) != 0 || (*(int *)(iVar19 + 0x54) != 0)))) {
          puVar24 = *(undefined4 **)(param_1 + 0x3c);
          uVar4 = (int)puVar24 - *(int *)(param_1 + 0x38) >> 2;
          if (uVar4 <= uVar18) {
                    /* WARNING: Subroutine does not return */
            FUN_002446e0("../../gold/object.h",0x5c8,"do_output_section",uVar4,piVar7,puVar24,
                         puVar12);
          }
          if (*(int *)(*(int *)(param_1 + 0x38) + uVar18 * 4) == 0) {
                    /* WARNING: Subroutine does not return */
            FUN_002446e0("../../gold/aarch64.cc",0x889,"do_relocate_sections",0,piVar7,puVar24,
                         puVar12);
          }
          piVar3 = (int *)(uVar18 * 0x1c + *param_6);
          iVar8 = *piVar3;
          if (iVar8 == 0) {
                    /* WARNING: Subroutine does not return */
            FUN_002446e0("../../gold/aarch64.cc",0x892,"do_relocate_sections",piVar3,piVar7,puVar24,
                         puVar12);
          }
          if ((*(byte *)(iVar19 + 0x1c) & 1) == 0) {
LAB_001e670d:
                    /* WARNING: Subroutine does not return */
            FUN_002446e0("../../gold/output.h",0xc5,"address",iVar2,piVar7,puVar24);
          }
          uVar4 = *(uint *)(iVar19 + 4);
          iVar10 = *(int *)(iVar19 + 8);
          iVar17 = piVar3[1];
          if ((*(byte *)(iVar19 + 0x1c) & 2) == 0) {
                    /* WARNING: Subroutine does not return */
            FUN_002446e0("../../gold/output.h",0xcf,"data_size",piVar3,piVar7,puVar24,puVar12);
          }
          uVar9 = *(uint *)(iVar19 + 0xc);
          local_ac = *(int **)(iVar19 + 0x2c);
          if (local_ac != (int *)0x0) {
            iVar19 = local_ac[5];
            uVar11 = *(uint *)(iVar19 + 0xc);
            if (uVar11 == 0xffffffff) {
LAB_001e5d9c:
                    /* WARNING: Subroutine does not return */
              FUN_002446e0("../../gold/aarch64.cc",0x370,"offset",iVar2,piVar7,puVar24,puVar12);
            }
            puVar24 = &DAT_005eb508;
            do {
              iVar13 = *(int *)(iVar19 + 0x10);
              if ((DAT_005eb500 == '\0') && (iVar15 = FUN_003ac660(&DAT_005eb500), iVar15 != 0)) {
                DAT_005eb508 = &PTR_DAT_005d5c28;
                DAT_005eb50c = &PTR_DAT_005d5c20;
                DAT_005eb510 = &PTR_DAT_005d5c18;
                DAT_005eb514 = &PTR_DAT_005d5c10;
                DAT_005eb518 = &PTR_DAT_005d5c08;
                DAT_005eb51c = &PTR_DAT_005d5c00;
                FUN_003ac7d0(&DAT_005eb500);
                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);
              }
              if (uVar9 < uVar11 + *(int *)(puVar24[iVar13] + 4) * 4) {
                    /* WARNING: Subroutine does not return */
                FUN_002446e0("../../gold/aarch64.cc",0x6ac,"relocate_reloc_stub",iVar13,piVar7,
                             puVar24,puVar12);
              }
              uVar5 = uVar11 + uVar4;
              iVar15 = iVar10 + (uint)CARRY4(uVar11,uVar4);
              iVar13 = *(int *)(iVar19 + 0x10);
              puVar22 = (uint *)(uVar11 + (uVar4 - iVar17) + iVar8);
              if ((DAT_005eb500 == '\0') && (iVar14 = FUN_003ac660(&DAT_005eb500), iVar14 != 0)) {
                DAT_005eb508 = &PTR_DAT_005d5c28;
                DAT_005eb50c = &PTR_DAT_005d5c20;
                DAT_005eb510 = &PTR_DAT_005d5c18;
                DAT_005eb514 = &PTR_DAT_005d5c10;
                DAT_005eb518 = &PTR_DAT_005d5c08;
                DAT_005eb51c = &PTR_DAT_005d5c00;
                FUN_003ac7d0(&DAT_005eb500);
                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);
              }
              iVar14 = *(int *)(iVar19 + 0x10);
              iVar13 = *(int *)(puVar24[iVar13] + 4);
              if ((DAT_005eb500 == '\0') && (iVar6 = FUN_003ac660(&DAT_005eb500), iVar6 != 0)) {
                DAT_005eb508 = &PTR_DAT_005d5c28;
                DAT_005eb50c = &PTR_DAT_005d5c20;
                DAT_005eb510 = &PTR_DAT_005d5c18;
                DAT_005eb514 = &PTR_DAT_005d5c10;
                DAT_005eb518 = &PTR_DAT_005d5c08;
                DAT_005eb51c = &PTR_DAT_005d5c00;
                FUN_003ac7d0(&DAT_005eb500);
                __cxa_atexit(FUN_001d1240,puVar24,&PTR_LOOP_005ea2e4);
              }
              if (0 < iVar13) {
                if (*puVar22 != **(uint **)puVar24[iVar14]) {
LAB_001e68a0:
                    /* WARNING: Subroutine does not return */
                  FUN_002446e0("../../gold/aarch64.cc",0x1035,"relocate_reloc_stub");
                }
                iVar6 = 0;
                while (iVar6 = iVar6 + 1, iVar13 != iVar6) {
                  if (puVar22[iVar6] != (*(uint **)puVar24[iVar14])[iVar6]) goto LAB_001e68a0;
                }
              }
              uVar11 = *(uint *)(iVar19 + 8);
              uVar23 = *(uint *)(iVar19 + 4);
              if ((uVar11 & uVar23) == 0xffffffff) {
LAB_001e67c7:
                    /* WARNING: Subroutine does not return */
                FUN_002446e0("../../gold/aarch64.cc",0x359,"destination_address");
              }
              iVar19 = *(int *)(iVar19 + 0x10);
              if (iVar19 == 2) {
                puVar22[2] = uVar23;
                puVar22[3] = uVar11;
              }
              else if (iVar19 == 3) {
                puVar22[4] = (uVar23 - 4) - uVar5;
                puVar22[5] = (((uVar11 - 1) + (uint)(3 < uVar23)) - iVar15) -
                             (uint)(uVar23 - 4 < uVar5);
              }
              else {
                if (iVar19 != 1) {
                    /* WARNING: Subroutine does not return */
                  FUN_002446e0("../../gold/aarch64.cc",0x1060,"relocate_reloc_stub",iVar19);
                }
                iVar19 = (uVar11 - iVar15) - (uint)((uVar23 & 0xfffff000) < (uVar5 & 0xfffff000));
                uVar5 = (uVar23 & 0xfffff000) - (uVar5 & 0xfffff000) >> 0xc;
                uVar20 = iVar19 + 1;
                *puVar22 = ((uVar5 | iVar19 * 0x100000 & 0x1fffffU) >> 2) << 5 | (uVar5 & 3) << 0x1d
                           | *puVar22 & 0x9f00001f;
                if (1 < uVar20) {
                    /* WARNING: Subroutine does not return */
                  FUN_002446e0("../../gold/aarch64.cc",0x1043,"relocate_reloc_stub");
                }
                iVar19 = *(int *)(DAT_005eb634 + 0x54);
                if (iVar19 == 0) {
                    /* WARNING: Subroutine does not return */
                  FUN_002446e0("../../gold/aarch64.cc",0x1049,"relocate_reloc_stub",DAT_005eb634);
                }
                iVar13 = (**(code **)(iVar19 + 0x40))(uVar23,uVar11);
                iVar15 = *(int *)(iVar19 + 0x38) * 0x10;
                if ((*(int *)(&DAT_004808ac + iVar15) != -1) ||
                   (uVar5 = *(uint *)(&DAT_004808a8 + iVar15), uVar5 == 0xffffffff)) {
                    /* WARNING: Subroutine does not return */
                  FUN_002446e0("../../gold/aarch64.cc",0x1484,"reloc_common",uVar20);
                }
                uVar20 = iVar13 << ((byte)uVar5 & 0x1f);
                if ((uVar5 & 0x20) != 0) {
                  uVar20 = 0;
                }
                puVar22[1] = ~*(uint *)(&DAT_004808a0 + iVar15) & puVar22[1] | uVar20;
                cVar1 = (**(code **)(iVar19 + 0x3c))(uVar23,uVar11);
                if (cVar1 == '\0') {
                    /* WARNING: Subroutine does not return */
                  FUN_002446e0("../../gold/aarch64.cc",0x104d,"relocate_reloc_stub");
                }
              }
              local_ac = (int *)*local_ac;
              if (local_ac == (int *)0x0) break;
              iVar19 = local_ac[5];
              uVar11 = *(uint *)(iVar19 + 0xc);
              if (uVar11 == 0xffffffff) goto LAB_001e5d9c;
            } while( true );
          }
        }
        uVar18 = uVar18 + 1;
      } while (uVar18 != local_58);
    }
  }
  return;
}

