Skip to content

Instantly share code, notes, and snippets.

@MaskRay

MaskRay/a.ll Secret

Last active February 6, 2021 22:06
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save MaskRay/4c67b29bb038d5a016260437c9e25a7a to your computer and use it in GitHub Desktop.
Save MaskRay/4c67b29bb038d5a016260437c9e25a7a to your computer and use it in GitHub Desktop.
D95617 bug with -gsplit-dwarf -flto=thin
; ModuleID = 'spinlock.pic.o'
source_filename = "internal/spinlock.cc"
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
%"struct.absl::base_internal::SpinLockWaitTransition" = type { i32, i32, i8 }
%"struct.std::__1::atomic" = type { %"struct.std::__1::__atomic_base" }
%"struct.std::__1::__atomic_base" = type { %"struct.std::__1::__cxx_atomic_impl" }
%"struct.std::__1::__cxx_atomic_impl" = type { %"struct.std::__1::__cxx_atomic_base_impl" }
%"struct.std::__1::__cxx_atomic_base_impl" = type { i64 ()* }
%"struct.absl::base_internal::ThreadIdentity" = type { %"struct.absl::base_internal::PerThreadSynch", %"struct.absl::base_internal::ThreadIdentity::SchedulerState", [32 x i8], %"struct.absl::base_internal::ThreadIdentity::WaiterState", %"struct.std::__1::atomic.13"*, %"struct.std::__1::atomic.13", %"struct.std::__1::atomic.13", %"struct.std::__1::atomic.18", %"struct.absl::base_internal::ThreadIdentity"* }
%"struct.absl::base_internal::PerThreadSynch" = type { %"struct.absl::base_internal::PerThreadSynch"*, %"struct.absl::base_internal::PerThreadSynch"*, i8, i8, i8, i8, i8, i32, %"struct.std::__1::atomic.5", %"struct.absl::SynchWaitParams"*, i64, i64, %"struct.absl::SynchLocksHeld"* }
%"struct.std::__1::atomic.5" = type { %"struct.std::__1::__atomic_base.6" }
%"struct.std::__1::__atomic_base.6" = type { %"struct.std::__1::__cxx_atomic_impl.7" }
%"struct.std::__1::__cxx_atomic_impl.7" = type { %"struct.std::__1::__cxx_atomic_base_impl.8" }
%"struct.std::__1::__cxx_atomic_base_impl.8" = type { i32 }
%"struct.absl::SynchWaitParams" = type opaque
%"struct.absl::SynchLocksHeld" = type opaque
%"struct.absl::base_internal::ThreadIdentity::SchedulerState" = type <{ %"struct.std::__1::atomic.9", i32, %"struct.std::__1::atomic.13", i32, i32, i8, [7 x i8] }>
%"struct.std::__1::atomic.9" = type { %"struct.std::__1::__atomic_base.10" }
%"struct.std::__1::__atomic_base.10" = type { %"struct.std::__1::__cxx_atomic_impl.11" }
%"struct.std::__1::__cxx_atomic_impl.11" = type { %"struct.std::__1::__cxx_atomic_base_impl.12" }
%"struct.std::__1::__cxx_atomic_base_impl.12" = type { %"class.base::scheduling::Schedulable"* }
%"class.base::scheduling::Schedulable" = type opaque
%"struct.absl::base_internal::ThreadIdentity::WaiterState" = type { [128 x i8] }
%"struct.std::__1::atomic.13" = type { %"struct.std::__1::__atomic_base.14" }
%"struct.std::__1::__atomic_base.14" = type { %"struct.std::__1::__atomic_base.15" }
%"struct.std::__1::__atomic_base.15" = type { %"struct.std::__1::__cxx_atomic_impl.16" }
%"struct.std::__1::__cxx_atomic_impl.16" = type { %"struct.std::__1::__cxx_atomic_base_impl.17" }
%"struct.std::__1::__cxx_atomic_base_impl.17" = type { i32 }
%"struct.std::__1::atomic.18" = type { %"struct.std::__1::__atomic_base.19" }
%"struct.std::__1::__atomic_base.19" = type { %"struct.std::__1::__cxx_atomic_impl.20" }
%"struct.std::__1::__cxx_atomic_impl.20" = type { %"struct.std::__1::__cxx_atomic_base_impl.21" }
%"struct.std::__1::__cxx_atomic_base_impl.21" = type { i8 }
%"class.absl::base_internal::SpinLock" = type { %"struct.std::__1::atomic.0" }
%"struct.std::__1::atomic.0" = type { %"struct.std::__1::__atomic_base.1" }
%"struct.std::__1::__atomic_base.1" = type { %"struct.std::__1::__atomic_base.2" }
%"struct.std::__1::__atomic_base.2" = type { %"struct.std::__1::__cxx_atomic_impl.3" }
%"struct.std::__1::__cxx_atomic_impl.3" = type { %"struct.std::__1::__cxx_atomic_base_impl.4" }
%"struct.std::__1::__cxx_atomic_base_impl.4" = type { i32 }
%class.anon = type { i8 }
%"class.absl::base_internal::SchedulingHelper" = type <{ i32, i8, [3 x i8] }>
$_ZN4absl13base_internal10AtomicHookIPFvPKvlEE13DummyFunctionES3_l = comdat any
$_ZN4absl13base_internal8SpinLock13kSpinLockHeldE = comdat any
$_ZN4absl13base_internal8SpinLock20kSpinLockCooperativeE = comdat any
$_ZN4absl13base_internal8SpinLock27kSpinLockDisabledSchedulingE = comdat any
$_ZN4absl13base_internal8SpinLock16kSpinLockSleeperE = comdat any
$_ZN4absl13base_internal8SpinLock13kWaitTimeMaskE = comdat any
@_ZN4absl13base_internal8SpinLock13kSpinLockHeldE = weak_odr local_unnamed_addr constant i32 1, comdat, align 4, !dbg !0
@_ZN4absl13base_internal8SpinLock20kSpinLockCooperativeE = weak_odr local_unnamed_addr constant i32 2, comdat, align 4, !dbg !1293
@_ZN4absl13base_internal8SpinLock27kSpinLockDisabledSchedulingE = weak_odr local_unnamed_addr constant i32 4, comdat, align 4, !dbg !1295
@_ZN4absl13base_internal8SpinLock16kSpinLockSleeperE = weak_odr local_unnamed_addr constant i32 8, comdat, align 4, !dbg !1297
@_ZN4absl13base_internal8SpinLock13kWaitTimeMaskE = weak_odr local_unnamed_addr constant i32 -8, comdat, align 4, !dbg !1299
@_ZZN4absl13base_internal8SpinLock8SpinLoopEvE24init_adaptive_spin_count = internal global { { { i32 } } } zeroinitializer, align 4, !dbg !1073
@_ZZN4absl13base_internal8SpinLock8SpinLoopEvE19adaptive_spin_count = internal unnamed_addr global i32 0, align 4, !dbg !1096
@_ZN4absl13base_internalL19submit_profile_dataE = internal global { { { void (i8*, i64)* } }, void (i8*, i64)* } { { { void (i8*, i64)* } } { { void (i8*, i64)* } { void (i8*, i64)* @_ZN4absl13base_internal10AtomicHookIPFvPKvlEE13DummyFunctionES3_l } }, void (i8*, i64)* @_ZN4absl13base_internal10AtomicHookIPFvPKvlEE13DummyFunctionES3_l }, align 8, !dbg !1112
@.str = private unnamed_addr constant [8 x i8] c"success\00", align 1
@.str.2 = private unnamed_addr constant [25 x i8] c"./internal/atomic_hook.h\00", align 1
@__PRETTY_FUNCTION__._ZN4absl13base_internal10AtomicHookIPFvPKvlEE5StoreES5_ = private unnamed_addr constant [196 x i8] c"void absl::base_internal::AtomicHook<void (*)(const void *, long)>::Store(absl::base_internal::AtomicHook<type-parameter-0-0 (*)(type-parameter-0-1...)>::FnPtr) [T = void (*)(const void *, long)]\00", align 1
@.str.3 = private unnamed_addr constant [3 x i8] c"fn\00", align 1
@__PRETTY_FUNCTION__._ZN4absl13base_internal10AtomicHookIPFvPKvlEE7DoStoreES5_ = private unnamed_addr constant [198 x i8] c"bool absl::base_internal::AtomicHook<void (*)(const void *, long)>::DoStore(absl::base_internal::AtomicHook<type-parameter-0-0 (*)(type-parameter-0-1...)>::FnPtr) [T = void (*)(const void *, long)]\00", align 1
@.str.4 = private unnamed_addr constant [21 x i8] c"./absl/b/call_once.h\00", align 1
@.str.5 = private unnamed_addr constant [41 x i8] c"Unexpected value for control word: 0x%lx\00", align 1
@"_ZZN4absl13base_internal12CallOnceImplIZNS0_8SpinLock8SpinLoopEvE3$_0JEEEvPNSt3__16atomicIjEENS0_14SchedulingModeEOT_DpOT0_E5trans" = internal constant [3 x %"struct.absl::base_internal::SpinLockWaitTransition"] [%"struct.absl::base_internal::SpinLockWaitTransition" { i32 0, i32 1707250555, i8 1 }, %"struct.absl::base_internal::SpinLockWaitTransition" { i32 1707250555, i32 94570706, i8 0 }, %"struct.absl::base_internal::SpinLockWaitTransition" { i32 221, i32 221, i8 1 }], align 16, !dbg !1301
@_ZN4absl13base_internal12_GLOBAL__N_118cycle_clock_sourceE.llvm.3813935268175738080 = external hidden unnamed_addr global %"struct.std::__1::atomic", align 8, !dbg !1432
@_ZN4absl13base_internalL18init_num_cpus_onceE.llvm.6697759406150871507 = external hidden global { { { i32 } } }, align 4, !dbg !1437
@_ZN4absl13base_internalL8num_cpusE.llvm.6697759406150871507 = external hidden unnamed_addr global i32, align 4, !dbg !1440
@_ZN4absl13base_internal19thread_identity_ptrE = external protected thread_local local_unnamed_addr global %"struct.absl::base_internal::ThreadIdentity"*, align 8, !dbg !1442
@_ZN4absl13base_internal8SpinLockC1ENS0_14SchedulingModeE = unnamed_addr alias void (%"class.absl::base_internal::SpinLock"*, i32), void (%"class.absl::base_internal::SpinLock"*, i32)* @_ZN4absl13base_internal8SpinLockC2ENS0_14SchedulingModeE
; Function Attrs: nounwind uwtable mustprogress
define void @_ZN4absl13base_internal24RegisterSpinLockProfilerEPFvPKvlE(void (i8*, i64)* %0) local_unnamed_addr #0 !dbg !1400 {
call void @llvm.dbg.value(metadata void (i8*, i64)* %0, metadata !1407, metadata !DIExpression()), !dbg !1456
call void @llvm.dbg.value(metadata void (i8*, i64)* %0, metadata !1457, metadata !DIExpression()) #10, !dbg !1463
call void @llvm.dbg.value(metadata void (i8*, i64)* %0, metadata !1465, metadata !DIExpression()) #10, !dbg !1472
%2 = icmp eq void (i8*, i64)* %0, null, !dbg !1474
br i1 %2, label %3, label %4, !dbg !1474
3: ; preds = %1
tail call void @__assert_fail(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.2, i64 0, i64 0), i32 158, i8* getelementptr inbounds ([198 x i8], [198 x i8]* @__PRETTY_FUNCTION__._ZN4absl13base_internal10AtomicHookIPFvPKvlEE7DoStoreES5_, i64 0, i64 0)) #10, !dbg !1474
tail call void @llvm.ubsantrap(i8 1) #11, !dbg !1474, !nosanitize !1018
unreachable, !dbg !1474, !nosanitize !1018
4: ; preds = %1
%5 = load void (i8*, i64)*, void (i8*, i64)** getelementptr inbounds ({ { { void (i8*, i64)* } }, void (i8*, i64)* }, { { { void (i8*, i64)* } }, void (i8*, i64)* }* @_ZN4absl13base_internalL19submit_profile_dataE, i64 0, i32 1), align 8, !dbg !1475
call void @llvm.dbg.value(metadata void (i8*, i64)* %5, metadata !1469, metadata !DIExpression()) #10, !dbg !1472
call void @llvm.dbg.value(metadata void (i8*, i64)** undef, metadata !1476, metadata !DIExpression()) #10, !dbg !1484
call void @llvm.dbg.value(metadata void (i8*, i64)* %0, metadata !1481, metadata !DIExpression()) #10, !dbg !1484
call void @llvm.dbg.value(metadata i32 4, metadata !1482, metadata !DIExpression()) #10, !dbg !1484
call void @llvm.dbg.value(metadata i32 2, metadata !1483, metadata !DIExpression()) #10, !dbg !1484
call void @llvm.dbg.value(metadata void (i8*, i64)** undef, metadata !1486, metadata !DIExpression()) #10, !dbg !1497
call void @llvm.dbg.value(metadata void (i8*, i64)* %0, metadata !1494, metadata !DIExpression()) #10, !dbg !1497
call void @llvm.dbg.value(metadata i32 4, metadata !1495, metadata !DIExpression()) #10, !dbg !1497
call void @llvm.dbg.value(metadata i32 2, metadata !1496, metadata !DIExpression()) #10, !dbg !1497
%6 = ptrtoint void (i8*, i64)* %5 to i64, !dbg !1499
%7 = ptrtoint void (i8*, i64)* %0 to i64, !dbg !1499
%8 = cmpxchg i64* bitcast ({ { { void (i8*, i64)* } }, void (i8*, i64)* }* @_ZN4absl13base_internalL19submit_profile_dataE to i64*), i64 %6, i64 %7 acq_rel acquire, !dbg !1499
%9 = extractvalue { i64, i1 } %8, 1, !dbg !1499
%10 = extractvalue { i64, i1 } %8, 0, !dbg !1499
%11 = inttoptr i64 %10 to void (i8*, i64)*, !dbg !1499
%12 = select i1 %9, void (i8*, i64)* %5, void (i8*, i64)* %11, !dbg !1499
call void @llvm.dbg.value(metadata i1 %9, metadata !1470, metadata !DIExpression(DW_OP_LLVM_convert, 1, DW_ATE_unsigned, DW_OP_LLVM_convert, 8, DW_ATE_unsigned, DW_OP_stack_value)) #10, !dbg !1472
call void @llvm.dbg.value(metadata void (i8*, i64)* %12, metadata !1469, metadata !DIExpression()) #10, !dbg !1472
%13 = icmp eq void (i8*, i64)* %12, %0, !dbg !1500
call void @llvm.dbg.value(metadata i1 %13, metadata !1471, metadata !DIExpression(DW_OP_LLVM_convert, 1, DW_ATE_unsigned, DW_OP_LLVM_convert, 8, DW_ATE_unsigned, DW_OP_stack_value)) #10, !dbg !1472
%14 = or i1 %9, %13, !dbg !1501
call void @llvm.dbg.value(metadata i1 %14, metadata !1462, metadata !DIExpression(DW_OP_LLVM_convert, 1, DW_ATE_unsigned, DW_OP_LLVM_convert, 8, DW_ATE_unsigned, DW_OP_stack_value)) #10, !dbg !1463
br i1 %14, label %16, label %15, !dbg !1502
15: ; preds = %4
tail call void @__assert_fail(i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.2, i64 0, i64 0), i32 110, i8* getelementptr inbounds ([196 x i8], [196 x i8]* @__PRETTY_FUNCTION__._ZN4absl13base_internal10AtomicHookIPFvPKvlEE5StoreES5_, i64 0, i64 0)) #10, !dbg !1502
tail call void @llvm.ubsantrap(i8 1) #11, !dbg !1502, !nosanitize !1018
unreachable, !dbg !1502, !nosanitize !1018
16: ; preds = %4
ret void, !dbg !1503
}
; Function Attrs: nofree nosync nounwind readnone speculatable willreturn
declare void @llvm.dbg.declare(metadata, metadata, metadata) #1
; Function Attrs: nofree norecurse nounwind uwtable willreturn writeonly
define void @_ZN4absl13base_internal8SpinLockC2ENS0_14SchedulingModeE(%"class.absl::base_internal::SpinLock"* nocapture nonnull dereferenceable(4) %0, i32 %1) unnamed_addr #2 align 2 !dbg !1504 {
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1506, metadata !DIExpression()), !dbg !1508
call void @llvm.dbg.value(metadata i32 %1, metadata !1507, metadata !DIExpression()), !dbg !1508
call void @llvm.dbg.value(metadata i32 %1, metadata !1509, metadata !DIExpression()), !dbg !1512
%3 = icmp eq i32 %1, 1, !dbg !1514
%4 = select i1 %3, i32 2, i32 0, !dbg !1515
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1516, metadata !DIExpression()), !dbg !1520
call void @llvm.dbg.value(metadata i32 %4, metadata !1519, metadata !DIExpression()), !dbg !1520
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1522, metadata !DIExpression()), !dbg !1527
call void @llvm.dbg.value(metadata i32 %4, metadata !1525, metadata !DIExpression()), !dbg !1527
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1529, metadata !DIExpression()), !dbg !1534
call void @llvm.dbg.value(metadata i32 %4, metadata !1532, metadata !DIExpression()), !dbg !1534
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1536, metadata !DIExpression()), !dbg !1541
call void @llvm.dbg.value(metadata i32 %4, metadata !1539, metadata !DIExpression()), !dbg !1541
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1543, metadata !DIExpression()), !dbg !1548
call void @llvm.dbg.value(metadata i32 %4, metadata !1546, metadata !DIExpression()), !dbg !1548
%5 = getelementptr inbounds %"class.absl::base_internal::SpinLock", %"class.absl::base_internal::SpinLock"* %0, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, !dbg !1550
store i32 %4, i32* %5, align 4, !dbg !1550
ret void, !dbg !1551
}
; Function Attrs: nounwind uwtable mustprogress
define i32 @_ZN4absl13base_internal8SpinLock8SpinLoopEv(%"class.absl::base_internal::SpinLock"* nocapture nonnull readonly dereferenceable(4) %0) local_unnamed_addr #0 align 2 !dbg !1075 {
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1077, metadata !DIExpression()), !dbg !1552
call void @llvm.dbg.value(metadata %class.anon* undef, metadata !1553, metadata !DIExpression()) #10, !dbg !1562
call void @llvm.dbg.value(metadata %"struct.std::__1::atomic.0"* bitcast ({ { { i32 } } }* @_ZZN4absl13base_internal8SpinLock8SpinLoopEvE24init_adaptive_spin_count to %"struct.std::__1::atomic.0"*), metadata !1560, metadata !DIExpression()) #10, !dbg !1562
call void @llvm.dbg.value(metadata i32 2, metadata !1564, metadata !DIExpression()) #10, !dbg !1569
call void @llvm.dbg.value(metadata i32 2, metadata !1034, metadata !DIExpression()) #10, !dbg !1571
%2 = load atomic i32, i32* getelementptr inbounds ({ { { i32 } } }, { { { i32 } } }* @_ZZN4absl13base_internal8SpinLock8SpinLoopEvE24init_adaptive_spin_count, i64 0, i32 0, i32 0, i32 0) acquire, align 4, !dbg !1573
call void @llvm.dbg.value(metadata i32 %2, metadata !1561, metadata !DIExpression()) #10, !dbg !1562
%3 = icmp eq i32 %2, 221, !dbg !1574
br i1 %3, label %5, label %4, !dbg !1576, !prof !1577
4: ; preds = %1
tail call fastcc void @"_ZN4absl13base_internal12CallOnceImplIZNS0_8SpinLock8SpinLoopEvE3$_0JEEEvPNSt3__16atomicIjEENS0_14SchedulingModeEOT_DpOT0_"() #10, !dbg !1578
br label %5, !dbg !1580
5: ; preds = %4, %1
%6 = load i32, i32* @_ZZN4absl13base_internal8SpinLock8SpinLoopEvE19adaptive_spin_count, align 4, !dbg !1581
call void @llvm.dbg.value(metadata i32 %6, metadata !1078, metadata !DIExpression()), !dbg !1552
%7 = getelementptr inbounds %"class.absl::base_internal::SpinLock", %"class.absl::base_internal::SpinLock"* %0, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0
br label %8, !dbg !1582
8: ; preds = %8, %5
%9 = phi i32 [ %6, %5 ], [ %13, %8 ], !dbg !1552
call void @llvm.dbg.value(metadata i32 %9, metadata !1078, metadata !DIExpression()), !dbg !1552
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1567, metadata !DIExpression()), !dbg !1583
call void @llvm.dbg.value(metadata i32 0, metadata !1564, metadata !DIExpression()), !dbg !1583
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1033, metadata !DIExpression()), !dbg !1586
call void @llvm.dbg.value(metadata i32 0, metadata !1034, metadata !DIExpression()), !dbg !1586
%10 = load atomic i32, i32* %7 monotonic, align 4, !dbg !1588
call void @llvm.dbg.value(metadata i32 %10, metadata !1079, metadata !DIExpression()), !dbg !1552
%11 = and i32 %10, 1, !dbg !1589
%12 = icmp ne i32 %11, 0, !dbg !1590
%13 = add nsw i32 %9, -1
%14 = icmp sgt i32 %9, 1
%15 = and i1 %14, %12, !dbg !1591
call void @llvm.dbg.value(metadata i32 %13, metadata !1078, metadata !DIExpression()), !dbg !1552
br i1 %15, label %8, label %16, !dbg !1591, !llvm.loop !1592
16: ; preds = %8
ret i32 %10, !dbg !1595
}
; Function Attrs: cold nounwind optsize uwtable mustprogress
define void @_ZN4absl13base_internal8SpinLock8SlowLockEv(%"class.absl::base_internal::SpinLock"* nonnull dereferenceable(4) %0) local_unnamed_addr #3 align 2 !dbg !1596 {
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1598, metadata !DIExpression()), !dbg !1604
%2 = tail call i32 @_ZN4absl13base_internal8SpinLock8SpinLoopEv(%"class.absl::base_internal::SpinLock"* nonnull dereferenceable(4) %0), !dbg !1605
call void @llvm.dbg.value(metadata i32 %2, metadata !1599, metadata !DIExpression()), !dbg !1604
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1606, metadata !DIExpression()), !dbg !1612
call void @llvm.dbg.value(metadata i32 %2, metadata !1609, metadata !DIExpression()), !dbg !1612
call void @llvm.dbg.value(metadata i32 0, metadata !1610, metadata !DIExpression()), !dbg !1612
%3 = and i32 %2, 1, !dbg !1614
%4 = icmp eq i32 %3, 0, !dbg !1616
br i1 %4, label %5, label %35, !dbg !1617
5: ; preds = %1
call void @llvm.dbg.value(metadata i32 0, metadata !1611, metadata !DIExpression()), !dbg !1612
%6 = and i32 %2, 2, !dbg !1618
%7 = icmp eq i32 %6, 0, !dbg !1620
br i1 %7, label %8, label %24, !dbg !1621
8: ; preds = %5
%9 = load %"struct.absl::base_internal::ThreadIdentity"*, %"struct.absl::base_internal::ThreadIdentity"** @_ZN4absl13base_internal19thread_identity_ptrE, align 8, !dbg !1622
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %9, metadata !1626, metadata !DIExpression()), !dbg !1633
%10 = icmp eq %"struct.absl::base_internal::ThreadIdentity"* %9, null, !dbg !1634
br i1 %10, label %11, label %16, !dbg !1635
11: ; preds = %8
call void @llvm.dbg.value(metadata i32 0, metadata !1611, metadata !DIExpression()), !dbg !1612
call void @llvm.dbg.value(metadata i32 %2, metadata !1609, metadata !DIExpression()), !dbg !1612
%12 = or i32 %2, 1, !dbg !1636
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1638, metadata !DIExpression()) #10, !dbg !1645
call void @llvm.dbg.value(metadata i32* undef, metadata !1641, metadata !DIExpression()) #10, !dbg !1645
call void @llvm.dbg.value(metadata i32 %12, metadata !1642, metadata !DIExpression()) #10, !dbg !1645
call void @llvm.dbg.value(metadata i32 2, metadata !1643, metadata !DIExpression()) #10, !dbg !1645
call void @llvm.dbg.value(metadata i32 0, metadata !1644, metadata !DIExpression()) #10, !dbg !1645
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1647, metadata !DIExpression()), !dbg !1657
call void @llvm.dbg.value(metadata i32* undef, metadata !1653, metadata !DIExpression()), !dbg !1657
call void @llvm.dbg.value(metadata i32 %12, metadata !1654, metadata !DIExpression()), !dbg !1657
call void @llvm.dbg.value(metadata i32 2, metadata !1655, metadata !DIExpression()), !dbg !1657
call void @llvm.dbg.value(metadata i32 0, metadata !1656, metadata !DIExpression()), !dbg !1657
%13 = getelementptr inbounds %"class.absl::base_internal::SpinLock", %"class.absl::base_internal::SpinLock"* %0, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, !dbg !1659
%14 = cmpxchg i32* %13, i32 %2, i32 %12 acquire monotonic, !dbg !1660
%15 = extractvalue { i32, i1 } %14, 0
br label %35, !dbg !1660
16: ; preds = %8
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %9, metadata !1661, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1666
call void @llvm.dbg.value(metadata i32 0, metadata !1664, metadata !DIExpression()), !dbg !1666
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %9, metadata !1012, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1668
call void @llvm.dbg.value(metadata i32 0, metadata !1013, metadata !DIExpression()), !dbg !1668
%17 = getelementptr inbounds %"struct.absl::base_internal::ThreadIdentity", %"struct.absl::base_internal::ThreadIdentity"* %9, i64 0, i32 1, i32 2, i32 0, i32 0, i32 0, i32 0, i32 0, !dbg !1670
%18 = load atomic i32, i32* %17 monotonic, align 4, !dbg !1671
call void @llvm.dbg.value(metadata i32 %18, metadata !1627, metadata !DIExpression()), !dbg !1672
%19 = add nsw i32 %18, 1, !dbg !1673
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %9, metadata !1674, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1680
call void @llvm.dbg.value(metadata i32 %19, metadata !1677, metadata !DIExpression()), !dbg !1680
call void @llvm.dbg.value(metadata i32 0, metadata !1678, metadata !DIExpression()), !dbg !1680
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %9, metadata !1682, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1690
call void @llvm.dbg.value(metadata i32 %19, metadata !1688, metadata !DIExpression()), !dbg !1690
call void @llvm.dbg.value(metadata i32 0, metadata !1689, metadata !DIExpression()), !dbg !1690
store atomic i32 %19, i32* %17 monotonic, align 4, !dbg !1692
call void @llvm.dbg.value(metadata i32 0, metadata !1611, metadata !DIExpression()), !dbg !1612
call void @llvm.dbg.value(metadata i32 %2, metadata !1609, metadata !DIExpression()), !dbg !1612
%20 = or i32 %2, 5, !dbg !1636
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1638, metadata !DIExpression()) #10, !dbg !1645
call void @llvm.dbg.value(metadata i32* undef, metadata !1641, metadata !DIExpression()) #10, !dbg !1645
call void @llvm.dbg.value(metadata i32 %12, metadata !1642, metadata !DIExpression()) #10, !dbg !1645
call void @llvm.dbg.value(metadata i32 2, metadata !1643, metadata !DIExpression()) #10, !dbg !1645
call void @llvm.dbg.value(metadata i32 0, metadata !1644, metadata !DIExpression()) #10, !dbg !1645
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1647, metadata !DIExpression()), !dbg !1657
call void @llvm.dbg.value(metadata i32* undef, metadata !1653, metadata !DIExpression()), !dbg !1657
call void @llvm.dbg.value(metadata i32 %12, metadata !1654, metadata !DIExpression()), !dbg !1657
call void @llvm.dbg.value(metadata i32 2, metadata !1655, metadata !DIExpression()), !dbg !1657
call void @llvm.dbg.value(metadata i32 0, metadata !1656, metadata !DIExpression()), !dbg !1657
%21 = getelementptr inbounds %"class.absl::base_internal::SpinLock", %"class.absl::base_internal::SpinLock"* %0, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, !dbg !1659
%22 = cmpxchg i32* %21, i32 %2, i32 %20 acquire monotonic, !dbg !1660
%23 = extractvalue { i32, i1 } %22, 1, !dbg !1660
br i1 %23, label %35, label %29, !dbg !1660
24: ; preds = %5
call void @llvm.dbg.value(metadata i32 0, metadata !1611, metadata !DIExpression()), !dbg !1612
call void @llvm.dbg.value(metadata i32 %2, metadata !1609, metadata !DIExpression()), !dbg !1612
%25 = or i32 %2, 1, !dbg !1636
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1638, metadata !DIExpression()) #10, !dbg !1645
call void @llvm.dbg.value(metadata i32* undef, metadata !1641, metadata !DIExpression()) #10, !dbg !1645
call void @llvm.dbg.value(metadata i32 %12, metadata !1642, metadata !DIExpression()) #10, !dbg !1645
call void @llvm.dbg.value(metadata i32 2, metadata !1643, metadata !DIExpression()) #10, !dbg !1645
call void @llvm.dbg.value(metadata i32 0, metadata !1644, metadata !DIExpression()) #10, !dbg !1645
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1647, metadata !DIExpression()), !dbg !1657
call void @llvm.dbg.value(metadata i32* undef, metadata !1653, metadata !DIExpression()), !dbg !1657
call void @llvm.dbg.value(metadata i32 %12, metadata !1654, metadata !DIExpression()), !dbg !1657
call void @llvm.dbg.value(metadata i32 2, metadata !1655, metadata !DIExpression()), !dbg !1657
call void @llvm.dbg.value(metadata i32 0, metadata !1656, metadata !DIExpression()), !dbg !1657
%26 = getelementptr inbounds %"class.absl::base_internal::SpinLock", %"class.absl::base_internal::SpinLock"* %0, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, !dbg !1659
%27 = cmpxchg i32* %26, i32 %2, i32 %25 acquire monotonic, !dbg !1660
%28 = extractvalue { i32, i1 } %27, 0
br label %35, !dbg !1660
29: ; preds = %16
%30 = extractvalue { i32, i1 } %22, 0, !dbg !1660
call void @llvm.dbg.value(metadata i1 %10, metadata !1693, metadata !DIExpression(DW_OP_constu, 18446744073709551615, DW_OP_xor, DW_OP_LLVM_convert, 1, DW_ATE_unsigned, DW_OP_LLVM_convert, 8, DW_ATE_unsigned, DW_OP_stack_value)), !dbg !1698
%31 = load %"struct.absl::base_internal::ThreadIdentity"*, %"struct.absl::base_internal::ThreadIdentity"** @_ZN4absl13base_internal19thread_identity_ptrE, align 8, !dbg !1701
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %31, metadata !1696, metadata !DIExpression()), !dbg !1698
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %31, metadata !1661, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1703
call void @llvm.dbg.value(metadata i32 0, metadata !1664, metadata !DIExpression()), !dbg !1703
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %31, metadata !1012, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1705
call void @llvm.dbg.value(metadata i32 0, metadata !1013, metadata !DIExpression()), !dbg !1705
%32 = getelementptr inbounds %"struct.absl::base_internal::ThreadIdentity", %"struct.absl::base_internal::ThreadIdentity"* %31, i64 0, i32 1, i32 2, i32 0, i32 0, i32 0, i32 0, i32 0, !dbg !1707
%33 = load atomic i32, i32* %32 monotonic, align 4, !dbg !1708
call void @llvm.dbg.value(metadata i32 %33, metadata !1697, metadata !DIExpression()), !dbg !1698
%34 = add nsw i32 %33, -1, !dbg !1709
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %31, metadata !1674, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1710
call void @llvm.dbg.value(metadata i32 %34, metadata !1677, metadata !DIExpression()), !dbg !1710
call void @llvm.dbg.value(metadata i32 0, metadata !1678, metadata !DIExpression()), !dbg !1710
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %31, metadata !1682, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1712
call void @llvm.dbg.value(metadata i32 %34, metadata !1688, metadata !DIExpression()), !dbg !1712
call void @llvm.dbg.value(metadata i32 0, metadata !1689, metadata !DIExpression()), !dbg !1712
store atomic i32 %34, i32* %32 monotonic, align 4, !dbg !1714
br label %35
35: ; preds = %29, %24, %16, %11, %1
%36 = phi i32 [ %2, %1 ], [ %30, %29 ], [ %28, %24 ], [ %2, %16 ], [ %15, %11 ], !dbg !1612
call void @llvm.dbg.value(metadata i32 %36, metadata !1599, metadata !DIExpression()), !dbg !1604
%37 = and i32 %36, 1, !dbg !1715
%38 = icmp eq i32 %37, 0, !dbg !1717
br i1 %38, label %.loopexit, label %39, !dbg !1718
39: ; preds = %35
%40 = lshr i32 %36, 1, !dbg !1719
%41 = and i32 %40, 1, !dbg !1719
call void @llvm.dbg.value(metadata i32 %41, metadata !1600, metadata !DIExpression()), !dbg !1604
call void @llvm.dbg.value(metadata i32 0, metadata !1720, metadata !DIExpression()) #10, !dbg !1734
call void @llvm.dbg.value(metadata i32 0, metadata !1747, metadata !DIExpression()) #10, !dbg !1758
%42 = load atomic i64, i64* bitcast (%"struct.std::__1::atomic"* @_ZN4absl13base_internal12_GLOBAL__N_118cycle_clock_sourceE.llvm.3813935268175738080 to i64*) monotonic, align 8, !dbg !1760
%43 = icmp eq i64 %42, 0, !dbg !1761
br i1 %43, label %47, label %44, !dbg !1762
44: ; preds = %39
call void @llvm.dbg.value(metadata i32 2, metadata !1720, metadata !DIExpression()) #10, !dbg !1763
call void @llvm.dbg.value(metadata i32 2, metadata !1747, metadata !DIExpression()) #10, !dbg !1765
%45 = load atomic i64, i64* bitcast (%"struct.std::__1::atomic"* @_ZN4absl13base_internal12_GLOBAL__N_118cycle_clock_sourceE.llvm.3813935268175738080 to i64*) acquire, align 8, !dbg !1767
call void @llvm.dbg.value(metadata i64 %45, metadata !1745, metadata !DIExpression()) #10, !dbg !1768
%46 = icmp eq i64 %45, 0, !dbg !1769
br i1 %46, label %47, label %53, !dbg !1771
47: ; preds = %44, %39
%48 = tail call { i64, i64 } asm sideeffect "rdtsc", "={ax},={dx},~{dirflag},~{fpsr},~{flags}"() #10, !dbg !1772, !srcloc !1782
%49 = extractvalue { i64, i64 } %48, 0, !dbg !1772
%50 = extractvalue { i64, i64 } %48, 1, !dbg !1772
call void @llvm.dbg.value(metadata i64 %49, metadata !1778, metadata !DIExpression()) #10, !dbg !1783
call void @llvm.dbg.value(metadata i64 %50, metadata !1779, metadata !DIExpression()) #10, !dbg !1783
%51 = shl i64 %50, 32, !dbg !1784
%52 = or i64 %51, %49, !dbg !1785
br label %_ZN4absl13base_internal10CycleClock3NowEv.exit, !dbg !1786
53: ; preds = %44
%54 = inttoptr i64 %45 to i64 ()*, !dbg !1767
call void @llvm.dbg.value(metadata i64 ()* %54, metadata !1745, metadata !DIExpression()) #10, !dbg !1768
%55 = tail call i64 %54() #10, !dbg !1787
br label %_ZN4absl13base_internal10CycleClock3NowEv.exit, !dbg !1788
_ZN4absl13base_internal10CycleClock3NowEv.exit: ; preds = %47, %53
%56 = phi i64 [ %52, %47 ], [ %55, %53 ]
%57 = ashr i64 %56, 2, !dbg !1768
call void @llvm.dbg.value(metadata i64 %57, metadata !1601, metadata !DIExpression()), !dbg !1604
call void @llvm.dbg.value(metadata i32 0, metadata !1602, metadata !DIExpression()), !dbg !1604
call void @llvm.dbg.value(metadata i32 0, metadata !1603, metadata !DIExpression()), !dbg !1604
call void @llvm.dbg.value(metadata i32 %36, metadata !1599, metadata !DIExpression()), !dbg !1604
%58 = getelementptr inbounds %"class.absl::base_internal::SpinLock", %"class.absl::base_internal::SpinLock"* %0, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0
%59 = getelementptr inbounds %"class.absl::base_internal::SpinLock", %"class.absl::base_internal::SpinLock"* %0, i64 0, i32 0
br label %60, !dbg !1789
60: ; preds = %172, %_ZN4absl13base_internal10CycleClock3NowEv.exit
%61 = phi i32 [ 0, %_ZN4absl13base_internal10CycleClock3NowEv.exit ], [ %112, %172 ]
%62 = phi i32 [ 0, %_ZN4absl13base_internal10CycleClock3NowEv.exit ], [ %140, %172 ]
%63 = phi i32 [ %36, %_ZN4absl13base_internal10CycleClock3NowEv.exit ], [ %173, %172 ]
call void @llvm.dbg.value(metadata i32 %61, metadata !1603, metadata !DIExpression()), !dbg !1604
call void @llvm.dbg.value(metadata i32 %62, metadata !1602, metadata !DIExpression()), !dbg !1604
call void @llvm.dbg.value(metadata i32 %63, metadata !1599, metadata !DIExpression()), !dbg !1604
br label %64, !dbg !1789
64: ; preds = %104, %60
%65 = phi i32 [ %63, %60 ], [ %105, %104 ]
call void @llvm.dbg.value(metadata i32 %65, metadata !1599, metadata !DIExpression()), !dbg !1604
%66 = icmp ult i32 %65, 8, !dbg !1790
br i1 %66, label %67, label %.split.loop.exit12, !dbg !1793
67: ; preds = %64
%68 = or i32 %65, 8, !dbg !1794
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1638, metadata !DIExpression()) #10, !dbg !1797
call void @llvm.dbg.value(metadata i32* undef, metadata !1641, metadata !DIExpression()) #10, !dbg !1797
call void @llvm.dbg.value(metadata i32 %68, metadata !1642, metadata !DIExpression()) #10, !dbg !1797
call void @llvm.dbg.value(metadata i32 0, metadata !1643, metadata !DIExpression()) #10, !dbg !1797
call void @llvm.dbg.value(metadata i32 0, metadata !1644, metadata !DIExpression()) #10, !dbg !1797
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1647, metadata !DIExpression()), !dbg !1799
call void @llvm.dbg.value(metadata i32* undef, metadata !1653, metadata !DIExpression()), !dbg !1799
call void @llvm.dbg.value(metadata i32 %68, metadata !1654, metadata !DIExpression()), !dbg !1799
call void @llvm.dbg.value(metadata i32 0, metadata !1655, metadata !DIExpression()), !dbg !1799
call void @llvm.dbg.value(metadata i32 0, metadata !1656, metadata !DIExpression()), !dbg !1799
%69 = cmpxchg i32* %58, i32 %65, i32 %68 monotonic monotonic, !dbg !1801
%70 = extractvalue { i32, i1 } %69, 1, !dbg !1801
br i1 %70, label %.split.loop.exit12, label %71, !dbg !1801
71: ; preds = %67
%72 = extractvalue { i32, i1 } %69, 0, !dbg !1801
call void @llvm.dbg.value(metadata i32 %72, metadata !1599, metadata !DIExpression()), !dbg !1604
%73 = and i32 %72, 1, !dbg !1802
%74 = icmp eq i32 %73, 0, !dbg !1804
br i1 %74, label %75, label %108, !dbg !1805
75: ; preds = %71
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1606, metadata !DIExpression()), !dbg !1806
call void @llvm.dbg.value(metadata i32 %72, metadata !1609, metadata !DIExpression()), !dbg !1806
call void @llvm.dbg.value(metadata i32 undef, metadata !1610, metadata !DIExpression()), !dbg !1806
call void @llvm.dbg.value(metadata i32 0, metadata !1611, metadata !DIExpression()), !dbg !1806
%76 = and i32 %72, 2, !dbg !1809
%77 = icmp eq i32 %76, 0, !dbg !1810
br i1 %77, label %78, label %93, !dbg !1811
78: ; preds = %75
%79 = load %"struct.absl::base_internal::ThreadIdentity"*, %"struct.absl::base_internal::ThreadIdentity"** @_ZN4absl13base_internal19thread_identity_ptrE, align 8, !dbg !1812
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %79, metadata !1626, metadata !DIExpression()), !dbg !1815
%80 = icmp eq %"struct.absl::base_internal::ThreadIdentity"* %79, null, !dbg !1816
br i1 %80, label %81, label %.thread, !dbg !1817
81: ; preds = %78
call void @llvm.dbg.value(metadata i32 0, metadata !1611, metadata !DIExpression()), !dbg !1806
call void @llvm.dbg.value(metadata i32 %72, metadata !1609, metadata !DIExpression()), !dbg !1806
%82 = or i32 %72, %62, !dbg !1818
%83 = or i32 %82, 1, !dbg !1818
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1638, metadata !DIExpression()) #10, !dbg !1819
call void @llvm.dbg.value(metadata i32* undef, metadata !1641, metadata !DIExpression()) #10, !dbg !1819
call void @llvm.dbg.value(metadata i32 %83, metadata !1642, metadata !DIExpression()) #10, !dbg !1819
call void @llvm.dbg.value(metadata i32 2, metadata !1643, metadata !DIExpression()) #10, !dbg !1819
call void @llvm.dbg.value(metadata i32 0, metadata !1644, metadata !DIExpression()) #10, !dbg !1819
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1647, metadata !DIExpression()), !dbg !1821
call void @llvm.dbg.value(metadata i32* undef, metadata !1653, metadata !DIExpression()), !dbg !1821
call void @llvm.dbg.value(metadata i32 %83, metadata !1654, metadata !DIExpression()), !dbg !1821
call void @llvm.dbg.value(metadata i32 2, metadata !1655, metadata !DIExpression()), !dbg !1821
call void @llvm.dbg.value(metadata i32 0, metadata !1656, metadata !DIExpression()), !dbg !1821
%84 = cmpxchg i32* %58, i32 %72, i32 %83 acquire monotonic, !dbg !1823
%85 = extractvalue { i32, i1 } %84, 0
br label %104, !dbg !1823
.thread: ; preds = %78
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %79, metadata !1661, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1824
call void @llvm.dbg.value(metadata i32 0, metadata !1664, metadata !DIExpression()), !dbg !1824
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %79, metadata !1012, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1826
call void @llvm.dbg.value(metadata i32 0, metadata !1013, metadata !DIExpression()), !dbg !1826
%86 = getelementptr inbounds %"struct.absl::base_internal::ThreadIdentity", %"struct.absl::base_internal::ThreadIdentity"* %79, i64 0, i32 1, i32 2, i32 0, i32 0, i32 0, i32 0, i32 0, !dbg !1828
%87 = load atomic i32, i32* %86 monotonic, align 4, !dbg !1829
call void @llvm.dbg.value(metadata i32 %87, metadata !1627, metadata !DIExpression()), !dbg !1830
%88 = add nsw i32 %87, 1, !dbg !1831
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %79, metadata !1674, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1832
call void @llvm.dbg.value(metadata i32 %88, metadata !1677, metadata !DIExpression()), !dbg !1832
call void @llvm.dbg.value(metadata i32 0, metadata !1678, metadata !DIExpression()), !dbg !1832
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %79, metadata !1682, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1834
call void @llvm.dbg.value(metadata i32 %88, metadata !1688, metadata !DIExpression()), !dbg !1834
call void @llvm.dbg.value(metadata i32 0, metadata !1689, metadata !DIExpression()), !dbg !1834
store atomic i32 %88, i32* %86 monotonic, align 4, !dbg !1836
call void @llvm.dbg.value(metadata i32 0, metadata !1611, metadata !DIExpression()), !dbg !1806
call void @llvm.dbg.value(metadata i32 %72, metadata !1609, metadata !DIExpression()), !dbg !1806
%89 = or i32 %72, %62, !dbg !1818
%90 = or i32 %89, 5, !dbg !1818
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1638, metadata !DIExpression()) #10, !dbg !1819
call void @llvm.dbg.value(metadata i32* undef, metadata !1641, metadata !DIExpression()) #10, !dbg !1819
call void @llvm.dbg.value(metadata i32 %83, metadata !1642, metadata !DIExpression()) #10, !dbg !1819
call void @llvm.dbg.value(metadata i32 2, metadata !1643, metadata !DIExpression()) #10, !dbg !1819
call void @llvm.dbg.value(metadata i32 0, metadata !1644, metadata !DIExpression()) #10, !dbg !1819
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1647, metadata !DIExpression()), !dbg !1821
call void @llvm.dbg.value(metadata i32* undef, metadata !1653, metadata !DIExpression()), !dbg !1821
call void @llvm.dbg.value(metadata i32 %83, metadata !1654, metadata !DIExpression()), !dbg !1821
call void @llvm.dbg.value(metadata i32 2, metadata !1655, metadata !DIExpression()), !dbg !1821
call void @llvm.dbg.value(metadata i32 0, metadata !1656, metadata !DIExpression()), !dbg !1821
%91 = cmpxchg i32* %58, i32 %72, i32 %90 acquire monotonic, !dbg !1823
%92 = extractvalue { i32, i1 } %91, 1, !dbg !1823
br i1 %92, label %104, label %98, !dbg !1823
93: ; preds = %75
call void @llvm.dbg.value(metadata i32 0, metadata !1611, metadata !DIExpression()), !dbg !1806
call void @llvm.dbg.value(metadata i32 %72, metadata !1609, metadata !DIExpression()), !dbg !1806
%94 = or i32 %72, %62, !dbg !1818
%95 = or i32 %94, 1, !dbg !1818
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1638, metadata !DIExpression()) #10, !dbg !1819
call void @llvm.dbg.value(metadata i32* undef, metadata !1641, metadata !DIExpression()) #10, !dbg !1819
call void @llvm.dbg.value(metadata i32 %83, metadata !1642, metadata !DIExpression()) #10, !dbg !1819
call void @llvm.dbg.value(metadata i32 2, metadata !1643, metadata !DIExpression()) #10, !dbg !1819
call void @llvm.dbg.value(metadata i32 0, metadata !1644, metadata !DIExpression()) #10, !dbg !1819
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1647, metadata !DIExpression()), !dbg !1821
call void @llvm.dbg.value(metadata i32* undef, metadata !1653, metadata !DIExpression()), !dbg !1821
call void @llvm.dbg.value(metadata i32 %83, metadata !1654, metadata !DIExpression()), !dbg !1821
call void @llvm.dbg.value(metadata i32 2, metadata !1655, metadata !DIExpression()), !dbg !1821
call void @llvm.dbg.value(metadata i32 0, metadata !1656, metadata !DIExpression()), !dbg !1821
%96 = cmpxchg i32* %58, i32 %72, i32 %95 acquire monotonic, !dbg !1823
%97 = extractvalue { i32, i1 } %96, 0
br label %104, !dbg !1823
98: ; preds = %.thread
%99 = extractvalue { i32, i1 } %91, 0, !dbg !1823
call void @llvm.dbg.value(metadata i1 %80, metadata !1693, metadata !DIExpression(DW_OP_constu, 18446744073709551615, DW_OP_xor, DW_OP_LLVM_convert, 1, DW_ATE_unsigned, DW_OP_LLVM_convert, 8, DW_ATE_unsigned, DW_OP_stack_value)), !dbg !1837
%100 = load %"struct.absl::base_internal::ThreadIdentity"*, %"struct.absl::base_internal::ThreadIdentity"** @_ZN4absl13base_internal19thread_identity_ptrE, align 8, !dbg !1839
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %100, metadata !1696, metadata !DIExpression()), !dbg !1837
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %100, metadata !1661, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1841
call void @llvm.dbg.value(metadata i32 0, metadata !1664, metadata !DIExpression()), !dbg !1841
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %100, metadata !1012, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1843
call void @llvm.dbg.value(metadata i32 0, metadata !1013, metadata !DIExpression()), !dbg !1843
%101 = getelementptr inbounds %"struct.absl::base_internal::ThreadIdentity", %"struct.absl::base_internal::ThreadIdentity"* %100, i64 0, i32 1, i32 2, i32 0, i32 0, i32 0, i32 0, i32 0, !dbg !1845
%102 = load atomic i32, i32* %101 monotonic, align 4, !dbg !1846
call void @llvm.dbg.value(metadata i32 %102, metadata !1697, metadata !DIExpression()), !dbg !1837
%103 = add nsw i32 %102, -1, !dbg !1847
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %100, metadata !1674, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1848
call void @llvm.dbg.value(metadata i32 %103, metadata !1677, metadata !DIExpression()), !dbg !1848
call void @llvm.dbg.value(metadata i32 0, metadata !1678, metadata !DIExpression()), !dbg !1848
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %100, metadata !1682, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1850
call void @llvm.dbg.value(metadata i32 %103, metadata !1688, metadata !DIExpression()), !dbg !1850
call void @llvm.dbg.value(metadata i32 0, metadata !1689, metadata !DIExpression()), !dbg !1850
store atomic i32 %103, i32* %101 monotonic, align 4, !dbg !1852
br label %104
104: ; preds = %81, %.thread, %108, %98, %93
%105 = phi i32 [ %72, %108 ], [ %99, %98 ], [ %97, %93 ], [ %72, %.thread ], [ %85, %81 ]
call void @llvm.dbg.value(metadata i32 %61, metadata !1603, metadata !DIExpression()), !dbg !1604
call void @llvm.dbg.value(metadata i32 undef, metadata !1602, metadata !DIExpression()), !dbg !1604
call void @llvm.dbg.value(metadata i32 %105, metadata !1599, metadata !DIExpression()), !dbg !1604
%106 = and i32 %105, 1, !dbg !1853
%107 = icmp eq i32 %106, 0, !dbg !1854
br i1 %107, label %.loopexit, label %64, !dbg !1789, !llvm.loop !1855
108: ; preds = %71
%109 = icmp ult i32 %72, 8, !dbg !1857
br i1 %109, label %104, label %.split.loop.exit12.split.loop.exit21, !dbg !1859
.split.loop.exit12.split.loop.exit21: ; preds = %108
%110 = extractvalue { i32, i1 } %69, 0, !dbg !1801
br label %.split.loop.exit12, !dbg !1860
.split.loop.exit12: ; preds = %67, %64, %.split.loop.exit12.split.loop.exit21
%111 = phi i32 [ %110, %.split.loop.exit12.split.loop.exit21 ], [ %65, %64 ], [ %68, %67 ], !dbg !1604
call void @llvm.dbg.value(metadata i32 %111, metadata !1599, metadata !DIExpression()), !dbg !1604
%112 = add nuw nsw i32 %61, 1, !dbg !1860
call void @llvm.dbg.value(metadata i32 %112, metadata !1603, metadata !DIExpression()), !dbg !1604
call void @llvm.dbg.value(metadata %"struct.std::__1::atomic.0"* %59, metadata !1861, metadata !DIExpression()) #10, !dbg !1869
call void @llvm.dbg.value(metadata i32 %111, metadata !1866, metadata !DIExpression()) #10, !dbg !1869
call void @llvm.dbg.value(metadata i32 %112, metadata !1867, metadata !DIExpression()) #10, !dbg !1869
call void @llvm.dbg.value(metadata i32 %41, metadata !1868, metadata !DIExpression()) #10, !dbg !1869
tail call void @AbslInternalSpinLockDelay(%"struct.std::__1::atomic.0"* nonnull %59, i32 %111, i32 %112, i32 %41) #10, !dbg !1871
%113 = tail call i32 @_ZN4absl13base_internal8SpinLock8SpinLoopEv(%"class.absl::base_internal::SpinLock"* nonnull dereferenceable(4) %0), !dbg !1872
call void @llvm.dbg.value(metadata i32 %113, metadata !1599, metadata !DIExpression()), !dbg !1604
call void @llvm.dbg.value(metadata i32 0, metadata !1720, metadata !DIExpression()) #10, !dbg !1873
call void @llvm.dbg.value(metadata i32 0, metadata !1747, metadata !DIExpression()) #10, !dbg !1877
%114 = load atomic i64, i64* bitcast (%"struct.std::__1::atomic"* @_ZN4absl13base_internal12_GLOBAL__N_118cycle_clock_sourceE.llvm.3813935268175738080 to i64*) monotonic, align 8, !dbg !1879
%115 = icmp eq i64 %114, 0, !dbg !1880
br i1 %115, label %119, label %116, !dbg !1881
116: ; preds = %.split.loop.exit12
call void @llvm.dbg.value(metadata i32 2, metadata !1720, metadata !DIExpression()) #10, !dbg !1882
call void @llvm.dbg.value(metadata i32 2, metadata !1747, metadata !DIExpression()) #10, !dbg !1884
%117 = load atomic i64, i64* bitcast (%"struct.std::__1::atomic"* @_ZN4absl13base_internal12_GLOBAL__N_118cycle_clock_sourceE.llvm.3813935268175738080 to i64*) acquire, align 8, !dbg !1886
call void @llvm.dbg.value(metadata i64 %117, metadata !1745, metadata !DIExpression()) #10, !dbg !1887
%118 = icmp eq i64 %117, 0, !dbg !1888
br i1 %118, label %119, label %125, !dbg !1889
119: ; preds = %116, %.split.loop.exit12
%120 = tail call { i64, i64 } asm sideeffect "rdtsc", "={ax},={dx},~{dirflag},~{fpsr},~{flags}"() #10, !dbg !1890, !srcloc !1782
%121 = extractvalue { i64, i64 } %120, 0, !dbg !1890
%122 = extractvalue { i64, i64 } %120, 1, !dbg !1890
call void @llvm.dbg.value(metadata i64 %121, metadata !1778, metadata !DIExpression()) #10, !dbg !1892
call void @llvm.dbg.value(metadata i64 %122, metadata !1779, metadata !DIExpression()) #10, !dbg !1892
%123 = shl i64 %122, 32, !dbg !1893
%124 = or i64 %123, %121, !dbg !1894
br label %_ZN4absl13base_internal10CycleClock3NowEv.exit6, !dbg !1895
125: ; preds = %116
%126 = inttoptr i64 %117 to i64 ()*, !dbg !1886
call void @llvm.dbg.value(metadata i64 ()* %126, metadata !1745, metadata !DIExpression()) #10, !dbg !1887
%127 = tail call i64 %126() #10, !dbg !1896
br label %_ZN4absl13base_internal10CycleClock3NowEv.exit6, !dbg !1897
_ZN4absl13base_internal10CycleClock3NowEv.exit6: ; preds = %119, %125
%128 = phi i64 [ %124, %119 ], [ %127, %125 ]
%129 = ashr i64 %128, 2, !dbg !1887
call void @llvm.dbg.value(metadata i64 %57, metadata !1102, metadata !DIExpression()), !dbg !1898
call void @llvm.dbg.value(metadata i64 %129, metadata !1103, metadata !DIExpression()), !dbg !1898
%130 = sub nsw i64 %129, %57, !dbg !1900
%131 = ashr i64 %130, 7, !dbg !1901
call void @llvm.dbg.value(metadata i64 %131, metadata !1104, metadata !DIExpression()), !dbg !1898
%132 = icmp slt i64 %131, 536870911, !dbg !1902
%133 = select i1 %132, i64 %131, i64 536870911, !dbg !1902
%134 = trunc i64 %133 to i32, !dbg !1902
%135 = shl i32 %134, 3, !dbg !1902
call void @llvm.dbg.value(metadata i32 %135, metadata !1105, metadata !DIExpression()), !dbg !1898
switch i32 %135, label %136 [
i32 0, label %139
i32 8, label %137
], !dbg !1903
136: ; preds = %_ZN4absl13base_internal10CycleClock3NowEv.exit6
br label %137, !dbg !1904
137: ; preds = %136, %_ZN4absl13base_internal10CycleClock3NowEv.exit6
%138 = phi i32 [ %135, %136 ], [ 16, %_ZN4absl13base_internal10CycleClock3NowEv.exit6 ], !dbg !1898
br label %139
139: ; preds = %137, %_ZN4absl13base_internal10CycleClock3NowEv.exit6
%140 = phi i32 [ %138, %137 ], [ 8, %_ZN4absl13base_internal10CycleClock3NowEv.exit6 ], !dbg !1898
call void @llvm.dbg.value(metadata i32 %140, metadata !1602, metadata !DIExpression()), !dbg !1604
call void @llvm.dbg.value(metadata i32 %113, metadata !1599, metadata !DIExpression()), !dbg !1604
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1606, metadata !DIExpression()), !dbg !1905
call void @llvm.dbg.value(metadata i32 %113, metadata !1609, metadata !DIExpression()), !dbg !1905
call void @llvm.dbg.value(metadata i32 %140, metadata !1610, metadata !DIExpression()), !dbg !1905
%141 = and i32 %113, 1, !dbg !1907
%142 = icmp eq i32 %141, 0, !dbg !1908
br i1 %142, label %143, label %172, !dbg !1909
143: ; preds = %139
call void @llvm.dbg.value(metadata i32 0, metadata !1611, metadata !DIExpression()), !dbg !1905
%144 = and i32 %113, 2, !dbg !1910
%145 = icmp eq i32 %144, 0, !dbg !1911
br i1 %145, label %146, label %161, !dbg !1912
146: ; preds = %143
%147 = load %"struct.absl::base_internal::ThreadIdentity"*, %"struct.absl::base_internal::ThreadIdentity"** @_ZN4absl13base_internal19thread_identity_ptrE, align 8, !dbg !1913
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %147, metadata !1626, metadata !DIExpression()), !dbg !1916
%148 = icmp eq %"struct.absl::base_internal::ThreadIdentity"* %147, null, !dbg !1917
br i1 %148, label %149, label %.thread8, !dbg !1918
149: ; preds = %146
call void @llvm.dbg.value(metadata i32 0, metadata !1611, metadata !DIExpression()), !dbg !1905
call void @llvm.dbg.value(metadata i32 %113, metadata !1609, metadata !DIExpression()), !dbg !1905
%150 = or i32 %140, %113, !dbg !1919
%151 = or i32 %150, 1, !dbg !1919
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1638, metadata !DIExpression()) #10, !dbg !1920
call void @llvm.dbg.value(metadata i32* undef, metadata !1641, metadata !DIExpression()) #10, !dbg !1920
call void @llvm.dbg.value(metadata i32 %151, metadata !1642, metadata !DIExpression()) #10, !dbg !1920
call void @llvm.dbg.value(metadata i32 2, metadata !1643, metadata !DIExpression()) #10, !dbg !1920
call void @llvm.dbg.value(metadata i32 0, metadata !1644, metadata !DIExpression()) #10, !dbg !1920
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1647, metadata !DIExpression()), !dbg !1922
call void @llvm.dbg.value(metadata i32* undef, metadata !1653, metadata !DIExpression()), !dbg !1922
call void @llvm.dbg.value(metadata i32 %151, metadata !1654, metadata !DIExpression()), !dbg !1922
call void @llvm.dbg.value(metadata i32 2, metadata !1655, metadata !DIExpression()), !dbg !1922
call void @llvm.dbg.value(metadata i32 0, metadata !1656, metadata !DIExpression()), !dbg !1922
%152 = cmpxchg i32* %58, i32 %113, i32 %151 acquire monotonic, !dbg !1924
%153 = extractvalue { i32, i1 } %152, 0
br label %172, !dbg !1924
.thread8: ; preds = %146
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %147, metadata !1661, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1925
call void @llvm.dbg.value(metadata i32 0, metadata !1664, metadata !DIExpression()), !dbg !1925
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %147, metadata !1012, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1927
call void @llvm.dbg.value(metadata i32 0, metadata !1013, metadata !DIExpression()), !dbg !1927
%154 = getelementptr inbounds %"struct.absl::base_internal::ThreadIdentity", %"struct.absl::base_internal::ThreadIdentity"* %147, i64 0, i32 1, i32 2, i32 0, i32 0, i32 0, i32 0, i32 0, !dbg !1929
%155 = load atomic i32, i32* %154 monotonic, align 4, !dbg !1930
call void @llvm.dbg.value(metadata i32 %155, metadata !1627, metadata !DIExpression()), !dbg !1931
%156 = add nsw i32 %155, 1, !dbg !1932
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %147, metadata !1674, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1933
call void @llvm.dbg.value(metadata i32 %156, metadata !1677, metadata !DIExpression()), !dbg !1933
call void @llvm.dbg.value(metadata i32 0, metadata !1678, metadata !DIExpression()), !dbg !1933
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %147, metadata !1682, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1935
call void @llvm.dbg.value(metadata i32 %156, metadata !1688, metadata !DIExpression()), !dbg !1935
call void @llvm.dbg.value(metadata i32 0, metadata !1689, metadata !DIExpression()), !dbg !1935
store atomic i32 %156, i32* %154 monotonic, align 4, !dbg !1937
call void @llvm.dbg.value(metadata i32 0, metadata !1611, metadata !DIExpression()), !dbg !1905
call void @llvm.dbg.value(metadata i32 %113, metadata !1609, metadata !DIExpression()), !dbg !1905
%157 = or i32 %140, %113, !dbg !1919
%158 = or i32 %157, 5, !dbg !1919
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1638, metadata !DIExpression()) #10, !dbg !1920
call void @llvm.dbg.value(metadata i32* undef, metadata !1641, metadata !DIExpression()) #10, !dbg !1920
call void @llvm.dbg.value(metadata i32 %151, metadata !1642, metadata !DIExpression()) #10, !dbg !1920
call void @llvm.dbg.value(metadata i32 2, metadata !1643, metadata !DIExpression()) #10, !dbg !1920
call void @llvm.dbg.value(metadata i32 0, metadata !1644, metadata !DIExpression()) #10, !dbg !1920
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1647, metadata !DIExpression()), !dbg !1922
call void @llvm.dbg.value(metadata i32* undef, metadata !1653, metadata !DIExpression()), !dbg !1922
call void @llvm.dbg.value(metadata i32 %151, metadata !1654, metadata !DIExpression()), !dbg !1922
call void @llvm.dbg.value(metadata i32 2, metadata !1655, metadata !DIExpression()), !dbg !1922
call void @llvm.dbg.value(metadata i32 0, metadata !1656, metadata !DIExpression()), !dbg !1922
%159 = cmpxchg i32* %58, i32 %113, i32 %158 acquire monotonic, !dbg !1924
%160 = extractvalue { i32, i1 } %159, 1, !dbg !1924
br i1 %160, label %172, label %166, !dbg !1924
161: ; preds = %143
call void @llvm.dbg.value(metadata i32 0, metadata !1611, metadata !DIExpression()), !dbg !1905
call void @llvm.dbg.value(metadata i32 %113, metadata !1609, metadata !DIExpression()), !dbg !1905
%162 = or i32 %140, %113, !dbg !1919
%163 = or i32 %162, 1, !dbg !1919
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1638, metadata !DIExpression()) #10, !dbg !1920
call void @llvm.dbg.value(metadata i32* undef, metadata !1641, metadata !DIExpression()) #10, !dbg !1920
call void @llvm.dbg.value(metadata i32 %151, metadata !1642, metadata !DIExpression()) #10, !dbg !1920
call void @llvm.dbg.value(metadata i32 2, metadata !1643, metadata !DIExpression()) #10, !dbg !1920
call void @llvm.dbg.value(metadata i32 0, metadata !1644, metadata !DIExpression()) #10, !dbg !1920
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1647, metadata !DIExpression()), !dbg !1922
call void @llvm.dbg.value(metadata i32* undef, metadata !1653, metadata !DIExpression()), !dbg !1922
call void @llvm.dbg.value(metadata i32 %151, metadata !1654, metadata !DIExpression()), !dbg !1922
call void @llvm.dbg.value(metadata i32 2, metadata !1655, metadata !DIExpression()), !dbg !1922
call void @llvm.dbg.value(metadata i32 0, metadata !1656, metadata !DIExpression()), !dbg !1922
%164 = cmpxchg i32* %58, i32 %113, i32 %163 acquire monotonic, !dbg !1924
%165 = extractvalue { i32, i1 } %164, 0
br label %172, !dbg !1924
166: ; preds = %.thread8
%167 = extractvalue { i32, i1 } %159, 0, !dbg !1924
call void @llvm.dbg.value(metadata i1 %148, metadata !1693, metadata !DIExpression(DW_OP_constu, 18446744073709551615, DW_OP_xor, DW_OP_LLVM_convert, 1, DW_ATE_unsigned, DW_OP_LLVM_convert, 8, DW_ATE_unsigned, DW_OP_stack_value)), !dbg !1938
%168 = load %"struct.absl::base_internal::ThreadIdentity"*, %"struct.absl::base_internal::ThreadIdentity"** @_ZN4absl13base_internal19thread_identity_ptrE, align 8, !dbg !1940
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %168, metadata !1696, metadata !DIExpression()), !dbg !1938
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %168, metadata !1661, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1942
call void @llvm.dbg.value(metadata i32 0, metadata !1664, metadata !DIExpression()), !dbg !1942
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %168, metadata !1012, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1944
call void @llvm.dbg.value(metadata i32 0, metadata !1013, metadata !DIExpression()), !dbg !1944
%169 = getelementptr inbounds %"struct.absl::base_internal::ThreadIdentity", %"struct.absl::base_internal::ThreadIdentity"* %168, i64 0, i32 1, i32 2, i32 0, i32 0, i32 0, i32 0, i32 0, !dbg !1946
%170 = load atomic i32, i32* %169 monotonic, align 4, !dbg !1947
call void @llvm.dbg.value(metadata i32 %170, metadata !1697, metadata !DIExpression()), !dbg !1938
%171 = add nsw i32 %170, -1, !dbg !1948
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %168, metadata !1674, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1949
call void @llvm.dbg.value(metadata i32 %171, metadata !1677, metadata !DIExpression()), !dbg !1949
call void @llvm.dbg.value(metadata i32 0, metadata !1678, metadata !DIExpression()), !dbg !1949
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %168, metadata !1682, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !1951
call void @llvm.dbg.value(metadata i32 %171, metadata !1688, metadata !DIExpression()), !dbg !1951
call void @llvm.dbg.value(metadata i32 0, metadata !1689, metadata !DIExpression()), !dbg !1951
store atomic i32 %171, i32* %169 monotonic, align 4, !dbg !1953
br label %172
172: ; preds = %149, %.thread8, %166, %161, %139
%173 = phi i32 [ %113, %139 ], [ %167, %166 ], [ %165, %161 ], [ %113, %.thread8 ], [ %153, %149 ], !dbg !1905
call void @llvm.dbg.value(metadata i32 %112, metadata !1603, metadata !DIExpression()), !dbg !1604
call void @llvm.dbg.value(metadata i32 %140, metadata !1602, metadata !DIExpression()), !dbg !1604
call void @llvm.dbg.value(metadata i32 %173, metadata !1599, metadata !DIExpression()), !dbg !1604
%174 = and i32 %173, 1, !dbg !1853
%175 = icmp eq i32 %174, 0, !dbg !1854
br i1 %175, label %.loopexit, label %60, !dbg !1789, !llvm.loop !1855
.loopexit: ; preds = %172, %104, %35
ret void, !dbg !1954
}
; Function Attrs: norecurse nounwind readnone uwtable willreturn mustprogress
define i32 @_ZN4absl13base_internal8SpinLock16EncodeWaitCyclesEll(i64 %0, i64 %1) local_unnamed_addr #4 align 2 !dbg !1100 {
call void @llvm.dbg.value(metadata i64 %0, metadata !1102, metadata !DIExpression()), !dbg !1955
call void @llvm.dbg.value(metadata i64 %1, metadata !1103, metadata !DIExpression()), !dbg !1955
%3 = sub nsw i64 %1, %0, !dbg !1956
%4 = ashr i64 %3, 7, !dbg !1957
call void @llvm.dbg.value(metadata i64 %4, metadata !1104, metadata !DIExpression()), !dbg !1955
%5 = icmp slt i64 %4, 536870911, !dbg !1958
%6 = select i1 %5, i64 %4, i64 536870911, !dbg !1958
%7 = trunc i64 %6 to i32, !dbg !1958
%8 = shl i32 %7, 3, !dbg !1958
call void @llvm.dbg.value(metadata i32 %8, metadata !1105, metadata !DIExpression()), !dbg !1955
switch i32 %8, label %9 [
i32 0, label %12
i32 8, label %10
], !dbg !1959
9: ; preds = %2
br label %10, !dbg !1960
10: ; preds = %9, %2
%11 = phi i32 [ %8, %9 ], [ 16, %2 ], !dbg !1955
br label %12
12: ; preds = %10, %2
%13 = phi i32 [ %11, %10 ], [ 8, %2 ], !dbg !1955
ret i32 %13, !dbg !1961
}
; Function Attrs: cold nounwind optsize uwtable mustprogress
define void @_ZN4absl13base_internal8SpinLock10SlowUnlockEj(%"class.absl::base_internal::SpinLock"* nonnull dereferenceable(4) %0, i32 %1) local_unnamed_addr #3 align 2 !dbg !1962 {
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"* %0, metadata !1964, metadata !DIExpression()), !dbg !1970
call void @llvm.dbg.value(metadata i32 %1, metadata !1965, metadata !DIExpression()), !dbg !1970
%3 = getelementptr inbounds %"class.absl::base_internal::SpinLock", %"class.absl::base_internal::SpinLock"* %0, i64 0, i32 0, !dbg !1971
call void @llvm.dbg.value(metadata %"struct.std::__1::atomic.0"* %3, metadata !1972, metadata !DIExpression()) #10, !dbg !1978
call void @llvm.dbg.value(metadata i1 false, metadata !1977, metadata !DIExpression(DW_OP_LLVM_convert, 1, DW_ATE_unsigned, DW_OP_LLVM_convert, 8, DW_ATE_unsigned, DW_OP_stack_value)) #10, !dbg !1978
tail call void @AbslInternalSpinLockWake(%"struct.std::__1::atomic.0"* nonnull %3, i1 zeroext false) #10, !dbg !1980
%4 = and i32 %1, -8, !dbg !1981
%5 = icmp eq i32 %4, 8, !dbg !1982
br i1 %5, label %12, label %6, !dbg !1983
6: ; preds = %2
call void @llvm.dbg.value(metadata i32 %1, metadata !1984, metadata !DIExpression()), !dbg !1988
%7 = zext i32 %4 to i64, !dbg !1990
call void @llvm.dbg.value(metadata i64 %7, metadata !1987, metadata !DIExpression()), !dbg !1988
%8 = shl nuw nsw i64 %7, 4, !dbg !1991
call void @llvm.dbg.value(metadata i64 %8, metadata !1966, metadata !DIExpression()), !dbg !1992
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SpinLock"** undef, metadata !1993, metadata !DIExpression()) #10, !dbg !2010
call void @llvm.dbg.value(metadata i64* undef, metadata !2009, metadata !DIExpression()) #10, !dbg !2010
call void @llvm.dbg.value(metadata i32 2, metadata !2012, metadata !DIExpression()) #10, !dbg !2017
call void @llvm.dbg.value(metadata i32 2, metadata !1066, metadata !DIExpression()) #10, !dbg !2023
%9 = load atomic i64, i64* bitcast ({ { { void (i8*, i64)* } }, void (i8*, i64)* }* @_ZN4absl13base_internalL19submit_profile_dataE to i64*) acquire, align 8, !dbg !2025
%10 = inttoptr i64 %9 to void (i8*, i64)*, !dbg !2025
%11 = bitcast %"class.absl::base_internal::SpinLock"* %0 to i8*, !dbg !2026
tail call void %10(i8* nonnull %11, i64 %8) #10, !dbg !2027
br label %12, !dbg !2028
12: ; preds = %6, %2
ret void, !dbg !2029
}
; Function Attrs: norecurse nounwind readnone uwtable willreturn mustprogress
define i64 @_ZN4absl13base_internal8SpinLock16DecodeWaitCyclesEj(i32 %0) local_unnamed_addr #4 align 2 !dbg !1985 {
call void @llvm.dbg.value(metadata i32 %0, metadata !1984, metadata !DIExpression()), !dbg !2030
%2 = and i32 %0, -8, !dbg !2031
%3 = zext i32 %2 to i64, !dbg !2032
call void @llvm.dbg.value(metadata i64 %3, metadata !1987, metadata !DIExpression()), !dbg !2030
%4 = shl nuw nsw i64 %3, 4, !dbg !2033
ret i64 %4, !dbg !2034
}
; Function Attrs: nounwind uwtable willreturn mustprogress
define weak_odr void @_ZN4absl13base_internal10AtomicHookIPFvPKvlEE13DummyFunctionES3_l(i8* %0, i64 %1) #5 comdat align 2 !dbg !2035 {
call void @llvm.dbg.value(metadata i8* %0, metadata !2037, metadata !DIExpression()), !dbg !2039
call void @llvm.dbg.value(metadata i64 %1, metadata !2038, metadata !DIExpression()), !dbg !2039
ret void, !dbg !2040
}
declare !dbg !2041 void @AbslInternalSpinLockDelay(%"struct.std::__1::atomic.0"*, i32, i32, i32) local_unnamed_addr #6
declare !dbg !2044 void @AbslInternalSpinLockWake(%"struct.std::__1::atomic.0"*, i1 zeroext) local_unnamed_addr #6
; Function Attrs: nounwind
declare void @__assert_fail(i8*, i8*, i32, i8*) local_unnamed_addr #7
; Function Attrs: cold noreturn nounwind
declare void @llvm.ubsantrap(i8 immarg) #8
; Function Attrs: noinline nounwind uwtable
define internal fastcc void @"_ZN4absl13base_internal12CallOnceImplIZNS0_8SpinLock8SpinLoopEvE3$_0JEEEvPNSt3__16atomicIjEENS0_14SchedulingModeEOT_DpOT0_"() unnamed_addr #9 !dbg !1303 {
call void @llvm.dbg.declare(metadata [3 x i8]* undef, metadata !1322, metadata !DIExpression(DW_OP_LLVM_fragment, 40, 24)), !dbg !2045
call void @llvm.dbg.value(metadata %"struct.std::__1::atomic.0"* bitcast ({ { { i32 } } }* @_ZZN4absl13base_internal8SpinLock8SpinLoopEvE24init_adaptive_spin_count to %"struct.std::__1::atomic.0"*), metadata !1310, metadata !DIExpression()), !dbg !2046
call void @llvm.dbg.value(metadata i32 0, metadata !1311, metadata !DIExpression()), !dbg !2046
call void @llvm.dbg.value(metadata %class.anon* undef, metadata !1312, metadata !DIExpression()), !dbg !2046
call void @llvm.dbg.value(metadata %"struct.std::__1::atomic.0"* bitcast ({ { { i32 } } }* @_ZZN4absl13base_internal8SpinLock8SpinLoopEvE24init_adaptive_spin_count to %"struct.std::__1::atomic.0"*), metadata !1567, metadata !DIExpression()), !dbg !2047
call void @llvm.dbg.value(metadata i32 0, metadata !1564, metadata !DIExpression()), !dbg !2047
call void @llvm.dbg.value(metadata %"struct.std::__1::atomic.0"* bitcast ({ { { i32 } } }* @_ZZN4absl13base_internal8SpinLock8SpinLoopEvE24init_adaptive_spin_count to %"struct.std::__1::atomic.0"*), metadata !1033, metadata !DIExpression()), !dbg !2049
call void @llvm.dbg.value(metadata i32 0, metadata !1034, metadata !DIExpression()), !dbg !2049
%1 = load atomic i32, i32* getelementptr inbounds ({ { { i32 } } }, { { { i32 } } }* @_ZZN4absl13base_internal8SpinLock8SpinLoopEvE24init_adaptive_spin_count, i64 0, i32 0, i32 0, i32 0) monotonic, align 4, !dbg !2051
call void @llvm.dbg.value(metadata i32 %1, metadata !1313, metadata !DIExpression()), !dbg !2052
switch i32 %1, label %2 [
i32 1707250555, label %4
i32 94570706, label %4
i32 221, label %4
i32 0, label %4
], !dbg !2053
2: ; preds = %0
%3 = zext i32 %1 to i64, !dbg !2054
tail call void (i32, i8*, i32, i8*, ...) @_ZN4absl20raw_logging_internal6RawLogENS_11LogSeverityEPKciS3_z(i32 3, i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.4, i64 0, i64 24), i32 164, i8* getelementptr inbounds ([41 x i8], [41 x i8]* @.str.5, i64 0, i64 0), i64 %3) #10, !dbg !2054
br label %4, !dbg !2055
4: ; preds = %2, %0, %0, %0, %0
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SchedulingHelper"* undef, metadata !2056, metadata !DIExpression()), !dbg !2061
call void @llvm.dbg.value(metadata i32 0, metadata !2059, metadata !DIExpression()), !dbg !2061
call void @llvm.dbg.value(metadata i32 0, metadata !1322, metadata !DIExpression(DW_OP_LLVM_fragment, 0, 32)), !dbg !2046
%5 = load %"struct.absl::base_internal::ThreadIdentity"*, %"struct.absl::base_internal::ThreadIdentity"** @_ZN4absl13base_internal19thread_identity_ptrE, align 8, !dbg !2063
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %5, metadata !1626, metadata !DIExpression()), !dbg !2069
%6 = icmp eq %"struct.absl::base_internal::ThreadIdentity"* %5, null, !dbg !2070
br i1 %6, label %11, label %7, !dbg !2071
7: ; preds = %4
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %5, metadata !1661, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !2072
call void @llvm.dbg.value(metadata i32 0, metadata !1664, metadata !DIExpression()), !dbg !2072
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %5, metadata !1012, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !2074
call void @llvm.dbg.value(metadata i32 0, metadata !1013, metadata !DIExpression()), !dbg !2074
%8 = getelementptr inbounds %"struct.absl::base_internal::ThreadIdentity", %"struct.absl::base_internal::ThreadIdentity"* %5, i64 0, i32 1, i32 2, i32 0, i32 0, i32 0, i32 0, i32 0, !dbg !2076
%9 = load atomic i32, i32* %8 monotonic, align 4, !dbg !2077
call void @llvm.dbg.value(metadata i32 %9, metadata !1627, metadata !DIExpression()), !dbg !2078
%10 = add nsw i32 %9, 1, !dbg !2079
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %5, metadata !1674, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !2080
call void @llvm.dbg.value(metadata i32 %10, metadata !1677, metadata !DIExpression()), !dbg !2080
call void @llvm.dbg.value(metadata i32 0, metadata !1678, metadata !DIExpression()), !dbg !2080
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %5, metadata !1682, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !2082
call void @llvm.dbg.value(metadata i32 %10, metadata !1688, metadata !DIExpression()), !dbg !2082
call void @llvm.dbg.value(metadata i32 0, metadata !1689, metadata !DIExpression()), !dbg !2082
store atomic i32 %10, i32* %8 monotonic, align 4, !dbg !2084
br label %11
11: ; preds = %7, %4
call void @llvm.dbg.value(metadata i1 %6, metadata !1322, metadata !DIExpression(DW_OP_constu, 18446744073709551615, DW_OP_xor, DW_OP_LLVM_convert, 1, DW_ATE_unsigned, DW_OP_LLVM_convert, 8, DW_ATE_unsigned, DW_OP_stack_value, DW_OP_LLVM_fragment, 32, 8)), !dbg !2046
call void @llvm.dbg.value(metadata i32 0, metadata !1334, metadata !DIExpression()), !dbg !2046
call void @llvm.dbg.value(metadata %"struct.std::__1::atomic.0"* bitcast ({ { { i32 } } }* @_ZZN4absl13base_internal8SpinLock8SpinLoopEvE24init_adaptive_spin_count to %"struct.std::__1::atomic.0"*), metadata !2085, metadata !DIExpression()) #10, !dbg !2091
call void @llvm.dbg.value(metadata i32* undef, metadata !2088, metadata !DIExpression()) #10, !dbg !2091
call void @llvm.dbg.value(metadata i32 1707250555, metadata !2089, metadata !DIExpression()) #10, !dbg !2091
call void @llvm.dbg.value(metadata i32 0, metadata !2090, metadata !DIExpression()) #10, !dbg !2091
call void @llvm.dbg.value(metadata %"struct.std::__1::atomic.0"* bitcast ({ { { i32 } } }* @_ZZN4absl13base_internal8SpinLock8SpinLoopEvE24init_adaptive_spin_count to %"struct.std::__1::atomic.0"*), metadata !1647, metadata !DIExpression()), !dbg !2094
call void @llvm.dbg.value(metadata i32* undef, metadata !1653, metadata !DIExpression()), !dbg !2094
call void @llvm.dbg.value(metadata i32 1707250555, metadata !1654, metadata !DIExpression()), !dbg !2094
call void @llvm.dbg.value(metadata i32 0, metadata !1655, metadata !DIExpression()), !dbg !2094
call void @llvm.dbg.value(metadata i32 0, metadata !1656, metadata !DIExpression()), !dbg !2094
%12 = cmpxchg i32* getelementptr inbounds ({ { { i32 } } }, { { { i32 } } }* @_ZZN4absl13base_internal8SpinLock8SpinLoopEvE24init_adaptive_spin_count, i64 0, i32 0, i32 0, i32 0), i32 0, i32 1707250555 monotonic monotonic, !dbg !2096
%13 = extractvalue { i32, i1 } %12, 1, !dbg !2096
br i1 %13, label %17, label %14, !dbg !2096
14: ; preds = %11
%15 = tail call i32 @_ZN4absl13base_internal12SpinLockWaitEPNSt3__16atomicIjEEiPKNS0_22SpinLockWaitTransitionENS0_14SchedulingModeE(%"struct.std::__1::atomic.0"* nonnull bitcast ({ { { i32 } } }* @_ZZN4absl13base_internal8SpinLock8SpinLoopEvE24init_adaptive_spin_count to %"struct.std::__1::atomic.0"*), i32 3, %"struct.absl::base_internal::SpinLockWaitTransition"* getelementptr inbounds ([3 x %"struct.absl::base_internal::SpinLockWaitTransition"], [3 x %"struct.absl::base_internal::SpinLockWaitTransition"]* @"_ZZN4absl13base_internal12CallOnceImplIZNS0_8SpinLock8SpinLoopEvE3$_0JEEEvPNSt3__16atomicIjEENS0_14SchedulingModeEOT_DpOT0_E5trans", i64 0, i64 0), i32 0) #10, !dbg !2097
%16 = icmp eq i32 %15, 0, !dbg !2098
br i1 %16, label %17, label %27, !dbg !2099
17: ; preds = %14, %11
call void @llvm.dbg.value(metadata %class.anon* undef, metadata !2100, metadata !DIExpression()) #10, !dbg !2109
call void @llvm.dbg.value(metadata %class.anon* undef, metadata !2112, metadata !DIExpression()) #10, !dbg !2119
call void @llvm.dbg.value(metadata %class.anon* undef, metadata !2121, metadata !DIExpression()) #10, !dbg !2133
call void @llvm.dbg.value(metadata %"struct.std::__1::__cxx_atomic_base_impl.21"* undef, metadata !2135, metadata !DIExpression()) #10, !dbg !2150
call void @llvm.dbg.value(metadata %"struct.std::__1::atomic.0"* bitcast ({ { { i32 } } }* @_ZN4absl13base_internalL18init_num_cpus_onceE.llvm.6697759406150871507 to %"struct.std::__1::atomic.0"*), metadata !2146, metadata !DIExpression()) #10, !dbg !2150
call void @llvm.dbg.value(metadata i32 2, metadata !2153, metadata !DIExpression()) #10, !dbg !2157
call void @llvm.dbg.value(metadata i32 2, metadata !2159, metadata !DIExpression()) #10, !dbg !2163
%18 = load atomic i32, i32* getelementptr inbounds ({ { { i32 } } }, { { { i32 } } }* @_ZN4absl13base_internalL18init_num_cpus_onceE.llvm.6697759406150871507, i64 0, i32 0, i32 0, i32 0) acquire, align 4, !dbg !2165
call void @llvm.dbg.value(metadata i32 %18, metadata !2147, metadata !DIExpression()) #10, !dbg !2150
%19 = icmp eq i32 %18, 221, !dbg !2166
br i1 %19, label %_ZN4absl13base_internal7NumCPUsEv.exit, label %20, !dbg !2168, !prof !1577
20: ; preds = %17
tail call fastcc void @"_ZN4absl13base_internal12CallOnceImplIZNS0_7NumCPUsEvE3$_0JEEEvPNSt3__16atomicIjEENS0_14SchedulingModeEOT_DpOT0_.llvm.6697759406150871507"(%"struct.std::__1::atomic.0"* bitcast ({ { { i32 } } }* @_ZN4absl13base_internalL18init_num_cpus_onceE.llvm.6697759406150871507 to %"struct.std::__1::atomic.0"*)) #10, !dbg !2169
br label %_ZN4absl13base_internal7NumCPUsEv.exit, !dbg !2171
_ZN4absl13base_internal7NumCPUsEv.exit: ; preds = %17, %20
%21 = load i32, i32* @_ZN4absl13base_internalL8num_cpusE.llvm.6697759406150871507, align 4, !dbg !2172
%22 = icmp sgt i32 %21, 1, !dbg !2173
%23 = select i1 %22, i32 1000, i32 1, !dbg !2174
store i32 %23, i32* @_ZZN4absl13base_internal8SpinLock8SpinLoopEvE19adaptive_spin_count, align 4, !dbg !2175
call void @llvm.dbg.value(metadata %"struct.std::__1::atomic.0"* bitcast ({ { { i32 } } }* @_ZZN4absl13base_internal8SpinLock8SpinLoopEvE24init_adaptive_spin_count to %"struct.std::__1::atomic.0"*), metadata !2176, metadata !DIExpression()), !dbg !2181
call void @llvm.dbg.value(metadata i32 221, metadata !2179, metadata !DIExpression()), !dbg !2181
call void @llvm.dbg.value(metadata i32 3, metadata !2180, metadata !DIExpression()), !dbg !2181
call void @llvm.dbg.value(metadata %"struct.std::__1::atomic.0"* bitcast ({ { { i32 } } }* @_ZZN4absl13base_internal8SpinLock8SpinLoopEvE24init_adaptive_spin_count to %"struct.std::__1::atomic.0"*), metadata !2183, metadata !DIExpression()), !dbg !2190
call void @llvm.dbg.value(metadata i32 221, metadata !2188, metadata !DIExpression()), !dbg !2190
call void @llvm.dbg.value(metadata i32 3, metadata !2189, metadata !DIExpression()), !dbg !2190
%24 = atomicrmw xchg i32* getelementptr inbounds ({ { { i32 } } }, { { { i32 } } }* @_ZZN4absl13base_internal8SpinLock8SpinLoopEvE24init_adaptive_spin_count, i64 0, i32 0, i32 0, i32 0), i32 221 release, !dbg !2192
call void @llvm.dbg.value(metadata i32 %24, metadata !1334, metadata !DIExpression()), !dbg !2046
%25 = icmp eq i32 %24, 94570706, !dbg !2193
br i1 %25, label %26, label %27, !dbg !2195
26: ; preds = %_ZN4absl13base_internal7NumCPUsEv.exit
call void @llvm.dbg.value(metadata %"struct.std::__1::atomic.0"* bitcast ({ { { i32 } } }* @_ZZN4absl13base_internal8SpinLock8SpinLoopEvE24init_adaptive_spin_count to %"struct.std::__1::atomic.0"*), metadata !1972, metadata !DIExpression()) #10, !dbg !2196
call void @llvm.dbg.value(metadata i1 true, metadata !1977, metadata !DIExpression(DW_OP_LLVM_convert, 1, DW_ATE_unsigned, DW_OP_LLVM_convert, 8, DW_ATE_unsigned, DW_OP_stack_value)) #10, !dbg !2196
tail call void @AbslInternalSpinLockWake(%"struct.std::__1::atomic.0"* nonnull bitcast ({ { { i32 } } }* @_ZZN4absl13base_internal8SpinLock8SpinLoopEvE24init_adaptive_spin_count to %"struct.std::__1::atomic.0"*), i1 zeroext true) #10, !dbg !2199
br label %27, !dbg !2200
27: ; preds = %26, %_ZN4absl13base_internal7NumCPUsEv.exit, %14
call void @llvm.dbg.value(metadata %"class.absl::base_internal::SchedulingHelper"* undef, metadata !2201, metadata !DIExpression()), !dbg !2204
call void @llvm.dbg.value(metadata i1 %6, metadata !1693, metadata !DIExpression(DW_OP_LLVM_convert, 1, DW_ATE_unsigned, DW_OP_LLVM_convert, 8, DW_ATE_unsigned, DW_OP_stack_value)), !dbg !2206
br i1 %6, label %33, label %28, !dbg !2211
28: ; preds = %27
%29 = load %"struct.absl::base_internal::ThreadIdentity"*, %"struct.absl::base_internal::ThreadIdentity"** @_ZN4absl13base_internal19thread_identity_ptrE, align 8, !dbg !2212
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %29, metadata !1696, metadata !DIExpression()), !dbg !2206
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %29, metadata !1661, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !2214
call void @llvm.dbg.value(metadata i32 0, metadata !1664, metadata !DIExpression()), !dbg !2214
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %29, metadata !1012, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !2216
call void @llvm.dbg.value(metadata i32 0, metadata !1013, metadata !DIExpression()), !dbg !2216
%30 = getelementptr inbounds %"struct.absl::base_internal::ThreadIdentity", %"struct.absl::base_internal::ThreadIdentity"* %29, i64 0, i32 1, i32 2, i32 0, i32 0, i32 0, i32 0, i32 0, !dbg !2218
%31 = load atomic i32, i32* %30 monotonic, align 4, !dbg !2219
call void @llvm.dbg.value(metadata i32 %31, metadata !1697, metadata !DIExpression()), !dbg !2206
%32 = add nsw i32 %31, -1, !dbg !2220
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %29, metadata !1674, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !2221
call void @llvm.dbg.value(metadata i32 %32, metadata !1677, metadata !DIExpression()), !dbg !2221
call void @llvm.dbg.value(metadata i32 0, metadata !1678, metadata !DIExpression()), !dbg !2221
call void @llvm.dbg.value(metadata %"struct.absl::base_internal::ThreadIdentity"* %29, metadata !1682, metadata !DIExpression(DW_OP_plus_uconst, 76, DW_OP_stack_value)), !dbg !2223
call void @llvm.dbg.value(metadata i32 %32, metadata !1688, metadata !DIExpression()), !dbg !2223
call void @llvm.dbg.value(metadata i32 0, metadata !1689, metadata !DIExpression()), !dbg !2223
store atomic i32 %32, i32* %30 monotonic, align 4, !dbg !2225
br label %33
33: ; preds = %28, %27
ret void, !dbg !2226
}
declare !dbg !2227 void @_ZN4absl20raw_logging_internal6RawLogENS_11LogSeverityEPKciS3_z(i32, i8*, i32, i8*, ...) local_unnamed_addr #6
declare !dbg !2232 i32 @_ZN4absl13base_internal12SpinLockWaitEPNSt3__16atomicIjEEiPKNS0_22SpinLockWaitTransitionENS0_14SchedulingModeE(%"struct.std::__1::atomic.0"*, i32, %"struct.absl::base_internal::SpinLockWaitTransition"*, i32) local_unnamed_addr #6
; Function Attrs: nofree nosync nounwind readnone speculatable willreturn
declare void @llvm.dbg.value(metadata, metadata, metadata) #1
; Function Attrs: noinline nounwind uwtable
declare hidden fastcc void @"_ZN4absl13base_internal12CallOnceImplIZNS0_7NumCPUsEvE3$_0JEEEvPNSt3__16atomicIjEENS0_14SchedulingModeEOT_DpOT0_.llvm.6697759406150871507"(%"struct.std::__1::atomic.0"*) unnamed_addr #9
attributes #0 = { nounwind uwtable mustprogress "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "min-legal-vector-width"="0" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="true" "prefer-vector-width"="128" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+aes,+cx16,+cx8,+fxsr,+mmx,+pclmul,+popcnt,+sse,+sse2,+sse3,+sse4.1,+sse4.2,+ssse3,+x87" "tune-cpu"="generic" "unsafe-fp-math"="false" "use-soft-float"="false" }
attributes #1 = { nofree nosync nounwind readnone speculatable willreturn }
attributes #2 = { nofree norecurse nounwind uwtable willreturn writeonly "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "min-legal-vector-width"="0" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="true" "prefer-vector-width"="128" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+aes,+cx16,+cx8,+fxsr,+mmx,+pclmul,+popcnt,+sse,+sse2,+sse3,+sse4.1,+sse4.2,+ssse3,+x87" "tune-cpu"="generic" "unsafe-fp-math"="false" "use-soft-float"="false" }
attributes #3 = { cold nounwind optsize uwtable mustprogress "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "min-legal-vector-width"="0" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="true" "prefer-vector-width"="128" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+aes,+cx16,+cx8,+fxsr,+mmx,+pclmul,+popcnt,+sse,+sse2,+sse3,+sse4.1,+sse4.2,+ssse3,+x87" "tune-cpu"="generic" "unsafe-fp-math"="false" "use-soft-float"="false" }
attributes #4 = { norecurse nounwind readnone uwtable willreturn mustprogress "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "min-legal-vector-width"="0" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="true" "prefer-vector-width"="128" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+aes,+cx16,+cx8,+fxsr,+mmx,+pclmul,+popcnt,+sse,+sse2,+sse3,+sse4.1,+sse4.2,+ssse3,+x87" "tune-cpu"="generic" "unsafe-fp-math"="false" "use-soft-float"="false" }
attributes #5 = { nounwind uwtable willreturn mustprogress "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "min-legal-vector-width"="0" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="true" "prefer-vector-width"="128" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+aes,+cx16,+cx8,+fxsr,+mmx,+pclmul,+popcnt,+sse,+sse2,+sse3,+sse4.1,+sse4.2,+ssse3,+x87" "tune-cpu"="generic" "unsafe-fp-math"="false" "use-soft-float"="false" }
attributes #6 = { "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="true" "prefer-vector-width"="128" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+aes,+cx16,+cx8,+fxsr,+mmx,+pclmul,+popcnt,+sse,+sse2,+sse3,+sse4.1,+sse4.2,+ssse3,+x87" "tune-cpu"="generic" "unsafe-fp-math"="false" "use-soft-float"="false" }
attributes #7 = { nounwind "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="true" "prefer-vector-width"="128" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+aes,+cx16,+cx8,+fxsr,+mmx,+pclmul,+popcnt,+sse,+sse2,+sse3,+sse4.1,+sse4.2,+ssse3,+x87" "tune-cpu"="generic" "unsafe-fp-math"="false" "use-soft-float"="false" }
attributes #8 = { cold noreturn nounwind }
attributes #9 = { noinline nounwind uwtable "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "min-legal-vector-width"="0" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="true" "prefer-vector-width"="128" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+aes,+cx16,+cx8,+fxsr,+mmx,+pclmul,+popcnt,+sse,+sse2,+sse3,+sse4.1,+sse4.2,+ssse3,+x87" "tune-cpu"="generic" "unsafe-fp-math"="false" "use-soft-float"="false" }
attributes #10 = { nounwind }
attributes #11 = { noreturn nounwind }
!llvm.dbg.cu = !{!2, !1445, !1446, !1447, !1448}
!llvm.linker.options = !{}
!llvm.module.flags = !{!1450, !1451, !1452, !1453, !1454}
!llvm.ident = !{!1455, !1455, !1455, !1455, !1455}
!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = distinct !DIGlobalVariable(name: "kSpinLockHeld", linkageName: "_ZN4absl13base_internal8SpinLock13kSpinLockHeldE", scope: !2, file: !566, line: 161, type: !569, isLocal: false, isDefinition: true, declaration: !568)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus_14, file: !3, producer: "clang version (91e7a17133324ac4beaf6ed45c170436c2d91c98)", isOptimized: true, runtimeVersion: 0, splitDebugFilename: "dbg/bin/_objs/b/spinlock.pic.dwo", emissionKind: FullDebug, enums: !4, retainedTypes: !1004, globals: !1072, imports: !1348, nameTableKind: GNU)
!3 = !DIFile(filename: "internal/spinlock.cc", directory: "/proc/self/cwd", checksumkind: CSK_MD5, checksum: "1914e538e54d1b5889ec18d2b5737c7f")
!4 = !{!5, !78, !772, !780, !982, !990, !997}
!5 = distinct !DICompositeType(tag: DW_TAG_enumeration_type, name: "State", scope: !7, file: !6, line: 122, baseType: !79, size: 32, elements: !979, identifier: "_ZTSN4absl13base_internal14PerThreadSynch5StateE")
!6 = !DIFile(filename: "./internal/thread_identity.h", directory: "/proc/self/cwd", checksumkind: CSK_MD5, checksum: "94dcc7e91d3df0682d8d31e00075e469")
!7 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "PerThreadSynch", scope: !8, file: !6, line: 64, size: 512, flags: DIFlagTypePassByReference, elements: !10, identifier: "_ZTSN4absl13base_internal14PerThreadSynchE")
!8 = !DINamespace(name: "base_internal", scope: !9)
!9 = !DINamespace(name: "absl", scope: null)
!10 = !{!11, !14, !15, !17, !18, !20, !21, !22, !23, !24, !25, !174, !177, !181, !183, !186}
!11 = !DIDerivedType(tag: DW_TAG_member, name: "kLowZeroBits", scope: !7, file: !6, line: 70, baseType: !12, flags: DIFlagStaticMember, extraData: i32 8)
!12 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !13)
!13 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed)
!14 = !DIDerivedType(tag: DW_TAG_member, name: "kAlignment", scope: !7, file: !6, line: 71, baseType: !12, flags: DIFlagStaticMember, extraData: i32 256)
!15 = !DIDerivedType(tag: DW_TAG_member, name: "next", scope: !7, file: !6, line: 80, baseType: !16, size: 64)
!16 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !7, size: 64)
!17 = !DIDerivedType(tag: DW_TAG_member, name: "skip", scope: !7, file: !6, line: 81, baseType: !16, size: 64, offset: 64)
!18 = !DIDerivedType(tag: DW_TAG_member, name: "may_skip", scope: !7, file: !6, line: 84, baseType: !19, size: 8, offset: 128)
!19 = !DIBasicType(name: "bool", size: 8, encoding: DW_ATE_boolean)
!20 = !DIDerivedType(tag: DW_TAG_member, name: "wake", scope: !7, file: !6, line: 88, baseType: !19, size: 8, offset: 136)
!21 = !DIDerivedType(tag: DW_TAG_member, name: "cond_waiter", scope: !7, file: !6, line: 94, baseType: !19, size: 8, offset: 144)
!22 = !DIDerivedType(tag: DW_TAG_member, name: "maybe_unlocking", scope: !7, file: !6, line: 95, baseType: !19, size: 8, offset: 152)
!23 = !DIDerivedType(tag: DW_TAG_member, name: "suppress_fatal_errors", scope: !7, file: !6, line: 104, baseType: !19, size: 8, offset: 160)
!24 = !DIDerivedType(tag: DW_TAG_member, name: "priority", scope: !7, file: !6, line: 109, baseType: !13, size: 32, offset: 192)
!25 = !DIDerivedType(tag: DW_TAG_member, name: "state", scope: !7, file: !6, line: 126, baseType: !26, size: 32, offset: 224)
!26 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "atomic<absl::base_internal::PerThreadSynch::State>", scope: !28, file: !27, line: 1806, size: 32, flags: DIFlagTypePassByReference, elements: !30, templateParams: !49, identifier: "_ZTSNSt3__16atomicIN4absl13base_internal14PerThreadSynch5StateEEE")
!27 = !DIFile(filename: "toolchain/bin/../include/c++/v1/atomic", directory: "/proc/self/cwd")
!28 = !DINamespace(name: "__1", scope: !29, exportSymbols: true)
!29 = !DINamespace(name: "std", scope: null)
!30 = !{!31, !150, !154, !157, !162, !165, !171}
!31 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !26, baseType: !32, extraData: i32 0)
!32 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__atomic_base<absl::base_internal::PerThreadSynch::State, false>", scope: !28, file: !27, line: 1612, size: 32, flags: DIFlagTypePassByReference, elements: !33, templateParams: !148, identifier: "_ZTSNSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EEE")
!33 = !{!34, !60, !62, !68, !73, !87, !91, !94, !97, !100, !103, !106, !109, !113, !116, !117, !118, !121, !124, !125, !126, !129, !132, !135, !138, !139, !140, !141, !144}
!34 = !DIDerivedType(tag: DW_TAG_member, name: "__a_", scope: !32, file: !27, line: 1614, baseType: !35, size: 32)
!35 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__cxx_atomic_impl<absl::base_internal::PerThreadSynch::State, std::__cxx_atomic_base_impl<absl::base_internal::PerThreadSynch::State> >", scope: !28, file: !27, line: 1514, size: 32, flags: DIFlagTypePassByValue, elements: !36, templateParams: !58, identifier: "_ZTSNSt3__117__cxx_atomic_implIN4absl13base_internal14PerThreadSynch5StateENS_22__cxx_atomic_base_implIS4_EEEE")
!36 = !{!37, !51, !55}
!37 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !35, baseType: !38, extraData: i32 0)
!38 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__cxx_atomic_base_impl<absl::base_internal::PerThreadSynch::State>", scope: !28, file: !27, line: 958, size: 32, flags: DIFlagTypePassByValue, elements: !39, templateParams: !49, identifier: "_ZTSNSt3__122__cxx_atomic_base_implIN4absl13base_internal14PerThreadSynch5StateEEE")
!39 = !{!40, !42, !46}
!40 = !DIDerivedType(tag: DW_TAG_member, name: "__a_value", scope: !38, file: !27, line: 968, baseType: !41, size: 32)
!41 = !DIDerivedType(tag: DW_TAG_atomic_type, baseType: !5)
!42 = !DISubprogram(name: "__cxx_atomic_base_impl", scope: !38, file: !27, line: 962, type: !43, scopeLine: 962, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!43 = !DISubroutineType(types: !44)
!44 = !{null, !45}
!45 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !38, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!46 = !DISubprogram(name: "__cxx_atomic_base_impl", scope: !38, file: !27, line: 966, type: !47, scopeLine: 966, flags: DIFlagExplicit | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!47 = !DISubroutineType(types: !48)
!48 = !{null, !45, !5}
!49 = !{!50}
!50 = !DITemplateTypeParameter(name: "_Tp", type: !5)
!51 = !DISubprogram(name: "__cxx_atomic_impl", scope: !35, file: !27, line: 1521, type: !52, scopeLine: 1521, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!52 = !DISubroutineType(types: !53)
!53 = !{null, !54}
!54 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !35, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!55 = !DISubprogram(name: "__cxx_atomic_impl", scope: !35, file: !27, line: 1522, type: !56, scopeLine: 1522, flags: DIFlagExplicit | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!56 = !DISubroutineType(types: !57)
!57 = !{null, !54, !5}
!58 = !{!50, !59}
!59 = !DITemplateTypeParameter(name: "_Base", type: !38)
!60 = !DIDerivedType(tag: DW_TAG_member, name: "is_always_lock_free", scope: !32, file: !27, line: 1617, baseType: !61, flags: DIFlagStaticMember)
!61 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !19)
!62 = !DISubprogram(name: "is_lock_free", linkageName: "_ZNVKSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EE12is_lock_freeEv", scope: !32, file: !27, line: 1621, type: !63, scopeLine: 1621, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!63 = !DISubroutineType(types: !64)
!64 = !{!19, !65}
!65 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !66, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!66 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !67)
!67 = !DIDerivedType(tag: DW_TAG_volatile_type, baseType: !32)
!68 = !DISubprogram(name: "is_lock_free", linkageName: "_ZNKSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EE12is_lock_freeEv", scope: !32, file: !27, line: 1624, type: !69, scopeLine: 1624, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!69 = !DISubroutineType(types: !70)
!70 = !{!19, !71}
!71 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !72, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!72 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !32)
!73 = !DISubprogram(name: "store", linkageName: "_ZNVSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EE5storeES4_NS_12memory_orderE", scope: !32, file: !27, line: 1627, type: !74, scopeLine: 1627, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!74 = !DISubroutineType(types: !75)
!75 = !{null, !76, !5, !77}
!76 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !67, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!77 = !DIDerivedType(tag: DW_TAG_typedef, name: "memory_order", scope: !28, file: !27, line: 668, baseType: !78)
!78 = distinct !DICompositeType(tag: DW_TAG_enumeration_type, name: "memory_order", scope: !28, file: !27, line: 661, baseType: !79, size: 32, elements: !80, identifier: "_ZTSNSt3__112memory_orderE")
!79 = !DIBasicType(name: "unsigned int", size: 32, encoding: DW_ATE_unsigned)
!80 = !{!81, !82, !83, !84, !85, !86}
!81 = !DIEnumerator(name: "memory_order_relaxed", value: 0, isUnsigned: true)
!82 = !DIEnumerator(name: "memory_order_consume", value: 1, isUnsigned: true)
!83 = !DIEnumerator(name: "memory_order_acquire", value: 2, isUnsigned: true)
!84 = !DIEnumerator(name: "memory_order_release", value: 3, isUnsigned: true)
!85 = !DIEnumerator(name: "memory_order_acq_rel", value: 4, isUnsigned: true)
!86 = !DIEnumerator(name: "memory_order_seq_cst", value: 5, isUnsigned: true)
!87 = !DISubprogram(name: "store", linkageName: "_ZNSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EE5storeES4_NS_12memory_orderE", scope: !32, file: !27, line: 1631, type: !88, scopeLine: 1631, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!88 = !DISubroutineType(types: !89)
!89 = !{null, !90, !5, !77}
!90 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !32, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!91 = !DISubprogram(name: "load", linkageName: "_ZNVKSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EE4loadENS_12memory_orderE", scope: !32, file: !27, line: 1635, type: !92, scopeLine: 1635, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!92 = !DISubroutineType(types: !93)
!93 = !{!5, !65, !77}
!94 = !DISubprogram(name: "load", linkageName: "_ZNKSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EE4loadENS_12memory_orderE", scope: !32, file: !27, line: 1639, type: !95, scopeLine: 1639, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!95 = !DISubroutineType(types: !96)
!96 = !{!5, !71, !77}
!97 = !DISubprogram(name: "operator absl::base_internal::PerThreadSynch::State", linkageName: "_ZNVKSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EEcvS4_Ev", scope: !32, file: !27, line: 1643, type: !98, scopeLine: 1643, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!98 = !DISubroutineType(types: !99)
!99 = !{!5, !65}
!100 = !DISubprogram(name: "operator absl::base_internal::PerThreadSynch::State", linkageName: "_ZNKSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EEcvS4_Ev", scope: !32, file: !27, line: 1645, type: !101, scopeLine: 1645, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!101 = !DISubroutineType(types: !102)
!102 = !{!5, !71}
!103 = !DISubprogram(name: "exchange", linkageName: "_ZNVSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EE8exchangeES4_NS_12memory_orderE", scope: !32, file: !27, line: 1647, type: !104, scopeLine: 1647, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!104 = !DISubroutineType(types: !105)
!105 = !{!5, !76, !5, !77}
!106 = !DISubprogram(name: "exchange", linkageName: "_ZNSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EE8exchangeES4_NS_12memory_orderE", scope: !32, file: !27, line: 1650, type: !107, scopeLine: 1650, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!107 = !DISubroutineType(types: !108)
!108 = !{!5, !90, !5, !77}
!109 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNVSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EE21compare_exchange_weakERS4_S4_NS_12memory_orderES7_", scope: !32, file: !27, line: 1653, type: !110, scopeLine: 1653, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!110 = !DISubroutineType(types: !111)
!111 = !{!19, !76, !112, !5, !77, !77}
!112 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !5, size: 64)
!113 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EE21compare_exchange_weakERS4_S4_NS_12memory_orderES7_", scope: !32, file: !27, line: 1658, type: !114, scopeLine: 1658, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!114 = !DISubroutineType(types: !115)
!115 = !{!19, !90, !112, !5, !77, !77}
!116 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNVSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EE23compare_exchange_strongERS4_S4_NS_12memory_orderES7_", scope: !32, file: !27, line: 1663, type: !110, scopeLine: 1663, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!117 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EE23compare_exchange_strongERS4_S4_NS_12memory_orderES7_", scope: !32, file: !27, line: 1668, type: !114, scopeLine: 1668, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!118 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNVSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EE21compare_exchange_weakERS4_S4_NS_12memory_orderE", scope: !32, file: !27, line: 1673, type: !119, scopeLine: 1673, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!119 = !DISubroutineType(types: !120)
!120 = !{!19, !76, !112, !5, !77}
!121 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EE21compare_exchange_weakERS4_S4_NS_12memory_orderE", scope: !32, file: !27, line: 1677, type: !122, scopeLine: 1677, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!122 = !DISubroutineType(types: !123)
!123 = !{!19, !90, !112, !5, !77}
!124 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNVSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EE23compare_exchange_strongERS4_S4_NS_12memory_orderE", scope: !32, file: !27, line: 1681, type: !119, scopeLine: 1681, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!125 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EE23compare_exchange_strongERS4_S4_NS_12memory_orderE", scope: !32, file: !27, line: 1685, type: !122, scopeLine: 1685, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!126 = !DISubprogram(name: "wait", linkageName: "_ZNVKSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EE4waitES4_NS_12memory_orderE", scope: !32, file: !27, line: 1689, type: !127, scopeLine: 1689, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!127 = !DISubroutineType(types: !128)
!128 = !{null, !65, !5, !77}
!129 = !DISubprogram(name: "wait", linkageName: "_ZNKSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EE4waitES4_NS_12memory_orderE", scope: !32, file: !27, line: 1691, type: !130, scopeLine: 1691, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!130 = !DISubroutineType(types: !131)
!131 = !{null, !71, !5, !77}
!132 = !DISubprogram(name: "notify_one", linkageName: "_ZNVSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EE10notify_oneEv", scope: !32, file: !27, line: 1693, type: !133, scopeLine: 1693, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!133 = !DISubroutineType(types: !134)
!134 = !{null, !76}
!135 = !DISubprogram(name: "notify_one", linkageName: "_ZNSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EE10notify_oneEv", scope: !32, file: !27, line: 1695, type: !136, scopeLine: 1695, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!136 = !DISubroutineType(types: !137)
!137 = !{null, !90}
!138 = !DISubprogram(name: "notify_all", linkageName: "_ZNVSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EE10notify_allEv", scope: !32, file: !27, line: 1697, type: !133, scopeLine: 1697, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!139 = !DISubprogram(name: "notify_all", linkageName: "_ZNSt3__113__atomic_baseIN4absl13base_internal14PerThreadSynch5StateELb0EE10notify_allEv", scope: !32, file: !27, line: 1699, type: !136, scopeLine: 1699, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!140 = !DISubprogram(name: "__atomic_base", scope: !32, file: !27, line: 1703, type: !136, scopeLine: 1703, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!141 = !DISubprogram(name: "__atomic_base", scope: !32, file: !27, line: 1706, type: !142, scopeLine: 1706, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!142 = !DISubroutineType(types: !143)
!143 = !{null, !90, !5}
!144 = !DISubprogram(name: "__atomic_base", scope: !32, file: !27, line: 1709, type: !145, scopeLine: 1709, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!145 = !DISubroutineType(types: !146)
!146 = !{null, !90, !147}
!147 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !72, size: 64)
!148 = !{!50, !149}
!149 = !DITemplateValueParameter(type: !19, value: i1 false)
!150 = !DISubprogram(name: "atomic", scope: !26, file: !27, line: 1813, type: !151, scopeLine: 1813, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!151 = !DISubroutineType(types: !152)
!152 = !{null, !153}
!153 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !26, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!154 = !DISubprogram(name: "atomic", scope: !26, file: !27, line: 1815, type: !155, scopeLine: 1815, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!155 = !DISubroutineType(types: !156)
!156 = !{null, !153, !5}
!157 = !DISubprogram(name: "operator=", linkageName: "_ZNVSt3__16atomicIN4absl13base_internal14PerThreadSynch5StateEEaSES4_", scope: !26, file: !27, line: 1818, type: !158, scopeLine: 1818, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!158 = !DISubroutineType(types: !159)
!159 = !{!5, !160, !5}
!160 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !161, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!161 = !DIDerivedType(tag: DW_TAG_volatile_type, baseType: !26)
!162 = !DISubprogram(name: "operator=", linkageName: "_ZNSt3__16atomicIN4absl13base_internal14PerThreadSynch5StateEEaSES4_", scope: !26, file: !27, line: 1821, type: !163, scopeLine: 1821, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!163 = !DISubroutineType(types: !164)
!164 = !{!5, !153, !5}
!165 = !DISubprogram(name: "operator=", linkageName: "_ZNSt3__16atomicIN4absl13base_internal14PerThreadSynch5StateEEaSERKS5_", scope: !26, file: !27, line: 1824, type: !166, scopeLine: 1824, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!166 = !DISubroutineType(types: !167)
!167 = !{!168, !153, !169}
!168 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !26, size: 64)
!169 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !170, size: 64)
!170 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !26)
!171 = !DISubprogram(name: "operator=", linkageName: "_ZNVSt3__16atomicIN4absl13base_internal14PerThreadSynch5StateEEaSERKS5_", scope: !26, file: !27, line: 1825, type: !172, scopeLine: 1825, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!172 = !DISubroutineType(types: !173)
!173 = !{!168, !160, !169}
!174 = !DIDerivedType(tag: DW_TAG_member, name: "waitp", scope: !7, file: !6, line: 138, baseType: !175, size: 64, offset: 256)
!175 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !176, size: 64)
!176 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "SynchWaitParams", scope: !9, file: !6, line: 56, flags: DIFlagFwdDecl | DIFlagNonTrivial, identifier: "_ZTSN4absl15SynchWaitParamsE")
!177 = !DIDerivedType(tag: DW_TAG_member, name: "readers", scope: !7, file: !6, line: 140, baseType: !178, size: 64, offset: 320)
!178 = !DIDerivedType(tag: DW_TAG_typedef, name: "intptr_t", file: !179, line: 119, baseType: !180)
!179 = !DIFile(filename: "libc/include/stdint.h", directory: "/proc/self/cwd", checksumkind: CSK_MD5, checksum: "2276b93f86af1d89a2ad1e9d25cc87bd")
!180 = !DIBasicType(name: "long int", size: 64, encoding: DW_ATE_signed)
!181 = !DIDerivedType(tag: DW_TAG_member, name: "next_priority_read_cycles", scope: !7, file: !6, line: 143, baseType: !182, size: 64, offset: 384)
!182 = !DIDerivedType(tag: DW_TAG_typedef, name: "int64_t", file: !179, line: 40, baseType: !180)
!183 = !DIDerivedType(tag: DW_TAG_member, name: "all_locks", scope: !7, file: !6, line: 147, baseType: !184, size: 64, offset: 448)
!184 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !185, size: 64)
!185 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "SynchLocksHeld", scope: !9, file: !6, line: 55, flags: DIFlagFwdDecl | DIFlagNonTrivial, identifier: "_ZTSN4absl14SynchLocksHeldE")
!186 = !DISubprogram(name: "thread_identity", linkageName: "_ZN4absl13base_internal14PerThreadSynch15thread_identityEv", scope: !7, file: !6, line: 76, type: !187, scopeLine: 76, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!187 = !DISubroutineType(types: !188)
!188 = !{!189, !978}
!189 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !190, size: 64)
!190 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "ThreadIdentity", scope: !8, file: !6, line: 152, size: 2304, flags: DIFlagTypePassByReference | DIFlagNonTrivial, elements: !191, identifier: "_ZTSN4absl13base_internal14ThreadIdentityE")
!191 = !{!192, !193, !831, !836, !843, !845, !846, !847, !977}
!192 = !DIDerivedType(tag: DW_TAG_member, name: "per_thread_synch", scope: !190, file: !6, line: 157, baseType: !7, size: 512)
!193 = !DIDerivedType(tag: DW_TAG_member, name: "scheduler_state", scope: !190, file: !6, line: 182, baseType: !194, size: 256, offset: 512)
!194 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "SchedulerState", scope: !190, file: !6, line: 160, size: 256, flags: DIFlagTypePassByReference | DIFlagNonTrivial, elements: !195, identifier: "_ZTSN4absl13base_internal14ThreadIdentity14SchedulerStateE")
!195 = !{!196, !368, !370, !558, !559, !560, !561, !826}
!196 = !DIDerivedType(tag: DW_TAG_member, name: "bound_schedulable", scope: !194, file: !6, line: 161, baseType: !197, size: 64)
!197 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "atomic<base::scheduling::Schedulable *>", scope: !28, file: !27, line: 1831, size: 64, flags: DIFlagTypePassByReference, elements: !198, templateParams: !221, identifier: "_ZTSNSt3__16atomicIPN4base10scheduling11SchedulableEEE")
!198 = !{!199, !310, !314, !317, !322, !325, !330, !333, !334, !335, !338, !341, !342, !343, !346, !349, !350, !351, !354, !357, !358, !359, !365}
!199 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !197, baseType: !200, extraData: i32 0)
!200 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__atomic_base<base::scheduling::Schedulable *, false>", scope: !28, file: !27, line: 1612, size: 64, flags: DIFlagTypePassByReference, elements: !201, templateParams: !309, identifier: "_ZTSNSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EEE")
!201 = !{!202, !232, !233, !239, !244, !248, !252, !255, !258, !261, !264, !267, !270, !274, !277, !278, !279, !282, !285, !286, !287, !290, !293, !296, !299, !300, !301, !302, !305}
!202 = !DIDerivedType(tag: DW_TAG_member, name: "__a_", scope: !200, file: !27, line: 1614, baseType: !203, size: 64)
!203 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__cxx_atomic_impl<base::scheduling::Schedulable *, std::__cxx_atomic_base_impl<base::scheduling::Schedulable *> >", scope: !28, file: !27, line: 1514, size: 64, flags: DIFlagTypePassByValue, elements: !204, templateParams: !230, identifier: "_ZTSNSt3__117__cxx_atomic_implIPN4base10scheduling11SchedulableENS_22__cxx_atomic_base_implIS4_EEEE")
!204 = !{!205, !223, !227}
!205 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !203, baseType: !206, extraData: i32 0)
!206 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__cxx_atomic_base_impl<base::scheduling::Schedulable *>", scope: !28, file: !27, line: 958, size: 64, flags: DIFlagTypePassByValue, elements: !207, templateParams: !221, identifier: "_ZTSNSt3__122__cxx_atomic_base_implIPN4base10scheduling11SchedulableEEE")
!207 = !{!208, !214, !218}
!208 = !DIDerivedType(tag: DW_TAG_member, name: "__a_value", scope: !206, file: !27, line: 968, baseType: !209, size: 64)
!209 = !DIDerivedType(tag: DW_TAG_atomic_type, baseType: !210)
!210 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !211, size: 64)
!211 = distinct !DICompositeType(tag: DW_TAG_class_type, name: "Schedulable", scope: !212, file: !6, line: 47, flags: DIFlagFwdDecl | DIFlagNonTrivial, identifier: "_ZTSN4base10scheduling11SchedulableE")
!212 = !DINamespace(name: "scheduling", scope: !213)
!213 = !DINamespace(name: "base", scope: null)
!214 = !DISubprogram(name: "__cxx_atomic_base_impl", scope: !206, file: !27, line: 962, type: !215, scopeLine: 962, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!215 = !DISubroutineType(types: !216)
!216 = !{null, !217}
!217 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !206, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!218 = !DISubprogram(name: "__cxx_atomic_base_impl", scope: !206, file: !27, line: 966, type: !219, scopeLine: 966, flags: DIFlagExplicit | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!219 = !DISubroutineType(types: !220)
!220 = !{null, !217, !210}
!221 = !{!222}
!222 = !DITemplateTypeParameter(name: "_Tp", type: !210)
!223 = !DISubprogram(name: "__cxx_atomic_impl", scope: !203, file: !27, line: 1521, type: !224, scopeLine: 1521, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!224 = !DISubroutineType(types: !225)
!225 = !{null, !226}
!226 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !203, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!227 = !DISubprogram(name: "__cxx_atomic_impl", scope: !203, file: !27, line: 1522, type: !228, scopeLine: 1522, flags: DIFlagExplicit | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!228 = !DISubroutineType(types: !229)
!229 = !{null, !226, !210}
!230 = !{!222, !231}
!231 = !DITemplateTypeParameter(name: "_Base", type: !206)
!232 = !DIDerivedType(tag: DW_TAG_member, name: "is_always_lock_free", scope: !200, file: !27, line: 1617, baseType: !61, flags: DIFlagStaticMember)
!233 = !DISubprogram(name: "is_lock_free", linkageName: "_ZNVKSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EE12is_lock_freeEv", scope: !200, file: !27, line: 1621, type: !234, scopeLine: 1621, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!234 = !DISubroutineType(types: !235)
!235 = !{!19, !236}
!236 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !237, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!237 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !238)
!238 = !DIDerivedType(tag: DW_TAG_volatile_type, baseType: !200)
!239 = !DISubprogram(name: "is_lock_free", linkageName: "_ZNKSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EE12is_lock_freeEv", scope: !200, file: !27, line: 1624, type: !240, scopeLine: 1624, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!240 = !DISubroutineType(types: !241)
!241 = !{!19, !242}
!242 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !243, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!243 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !200)
!244 = !DISubprogram(name: "store", linkageName: "_ZNVSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EE5storeES4_NS_12memory_orderE", scope: !200, file: !27, line: 1627, type: !245, scopeLine: 1627, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!245 = !DISubroutineType(types: !246)
!246 = !{null, !247, !210, !77}
!247 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !238, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!248 = !DISubprogram(name: "store", linkageName: "_ZNSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EE5storeES4_NS_12memory_orderE", scope: !200, file: !27, line: 1631, type: !249, scopeLine: 1631, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!249 = !DISubroutineType(types: !250)
!250 = !{null, !251, !210, !77}
!251 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !200, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!252 = !DISubprogram(name: "load", linkageName: "_ZNVKSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EE4loadENS_12memory_orderE", scope: !200, file: !27, line: 1635, type: !253, scopeLine: 1635, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!253 = !DISubroutineType(types: !254)
!254 = !{!210, !236, !77}
!255 = !DISubprogram(name: "load", linkageName: "_ZNKSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EE4loadENS_12memory_orderE", scope: !200, file: !27, line: 1639, type: !256, scopeLine: 1639, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!256 = !DISubroutineType(types: !257)
!257 = !{!210, !242, !77}
!258 = !DISubprogram(name: "operator base::scheduling::Schedulable *", linkageName: "_ZNVKSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EEcvS4_Ev", scope: !200, file: !27, line: 1643, type: !259, scopeLine: 1643, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!259 = !DISubroutineType(types: !260)
!260 = !{!210, !236}
!261 = !DISubprogram(name: "operator base::scheduling::Schedulable *", linkageName: "_ZNKSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EEcvS4_Ev", scope: !200, file: !27, line: 1645, type: !262, scopeLine: 1645, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!262 = !DISubroutineType(types: !263)
!263 = !{!210, !242}
!264 = !DISubprogram(name: "exchange", linkageName: "_ZNVSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EE8exchangeES4_NS_12memory_orderE", scope: !200, file: !27, line: 1647, type: !265, scopeLine: 1647, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!265 = !DISubroutineType(types: !266)
!266 = !{!210, !247, !210, !77}
!267 = !DISubprogram(name: "exchange", linkageName: "_ZNSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EE8exchangeES4_NS_12memory_orderE", scope: !200, file: !27, line: 1650, type: !268, scopeLine: 1650, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!268 = !DISubroutineType(types: !269)
!269 = !{!210, !251, !210, !77}
!270 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNVSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EE21compare_exchange_weakERS4_S4_NS_12memory_orderES7_", scope: !200, file: !27, line: 1653, type: !271, scopeLine: 1653, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!271 = !DISubroutineType(types: !272)
!272 = !{!19, !247, !273, !210, !77, !77}
!273 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !210, size: 64)
!274 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EE21compare_exchange_weakERS4_S4_NS_12memory_orderES7_", scope: !200, file: !27, line: 1658, type: !275, scopeLine: 1658, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!275 = !DISubroutineType(types: !276)
!276 = !{!19, !251, !273, !210, !77, !77}
!277 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNVSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EE23compare_exchange_strongERS4_S4_NS_12memory_orderES7_", scope: !200, file: !27, line: 1663, type: !271, scopeLine: 1663, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!278 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EE23compare_exchange_strongERS4_S4_NS_12memory_orderES7_", scope: !200, file: !27, line: 1668, type: !275, scopeLine: 1668, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!279 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNVSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EE21compare_exchange_weakERS4_S4_NS_12memory_orderE", scope: !200, file: !27, line: 1673, type: !280, scopeLine: 1673, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!280 = !DISubroutineType(types: !281)
!281 = !{!19, !247, !273, !210, !77}
!282 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EE21compare_exchange_weakERS4_S4_NS_12memory_orderE", scope: !200, file: !27, line: 1677, type: !283, scopeLine: 1677, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!283 = !DISubroutineType(types: !284)
!284 = !{!19, !251, !273, !210, !77}
!285 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNVSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EE23compare_exchange_strongERS4_S4_NS_12memory_orderE", scope: !200, file: !27, line: 1681, type: !280, scopeLine: 1681, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!286 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EE23compare_exchange_strongERS4_S4_NS_12memory_orderE", scope: !200, file: !27, line: 1685, type: !283, scopeLine: 1685, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!287 = !DISubprogram(name: "wait", linkageName: "_ZNVKSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EE4waitES4_NS_12memory_orderE", scope: !200, file: !27, line: 1689, type: !288, scopeLine: 1689, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!288 = !DISubroutineType(types: !289)
!289 = !{null, !236, !210, !77}
!290 = !DISubprogram(name: "wait", linkageName: "_ZNKSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EE4waitES4_NS_12memory_orderE", scope: !200, file: !27, line: 1691, type: !291, scopeLine: 1691, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!291 = !DISubroutineType(types: !292)
!292 = !{null, !242, !210, !77}
!293 = !DISubprogram(name: "notify_one", linkageName: "_ZNVSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EE10notify_oneEv", scope: !200, file: !27, line: 1693, type: !294, scopeLine: 1693, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!294 = !DISubroutineType(types: !295)
!295 = !{null, !247}
!296 = !DISubprogram(name: "notify_one", linkageName: "_ZNSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EE10notify_oneEv", scope: !200, file: !27, line: 1695, type: !297, scopeLine: 1695, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!297 = !DISubroutineType(types: !298)
!298 = !{null, !251}
!299 = !DISubprogram(name: "notify_all", linkageName: "_ZNVSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EE10notify_allEv", scope: !200, file: !27, line: 1697, type: !294, scopeLine: 1697, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!300 = !DISubprogram(name: "notify_all", linkageName: "_ZNSt3__113__atomic_baseIPN4base10scheduling11SchedulableELb0EE10notify_allEv", scope: !200, file: !27, line: 1699, type: !297, scopeLine: 1699, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!301 = !DISubprogram(name: "__atomic_base", scope: !200, file: !27, line: 1703, type: !297, scopeLine: 1703, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!302 = !DISubprogram(name: "__atomic_base", scope: !200, file: !27, line: 1706, type: !303, scopeLine: 1706, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!303 = !DISubroutineType(types: !304)
!304 = !{null, !251, !210}
!305 = !DISubprogram(name: "__atomic_base", scope: !200, file: !27, line: 1709, type: !306, scopeLine: 1709, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!306 = !DISubroutineType(types: !307)
!307 = !{null, !251, !308}
!308 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !243, size: 64)
!309 = !{!222, !149}
!310 = !DISubprogram(name: "atomic", scope: !197, file: !27, line: 1838, type: !311, scopeLine: 1838, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!311 = !DISubroutineType(types: !312)
!312 = !{null, !313}
!313 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !197, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!314 = !DISubprogram(name: "atomic", scope: !197, file: !27, line: 1840, type: !315, scopeLine: 1840, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!315 = !DISubroutineType(types: !316)
!316 = !{null, !313, !210}
!317 = !DISubprogram(name: "operator=", linkageName: "_ZNVSt3__16atomicIPN4base10scheduling11SchedulableEEaSES4_", scope: !197, file: !27, line: 1843, type: !318, scopeLine: 1843, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!318 = !DISubroutineType(types: !319)
!319 = !{!210, !320, !210}
!320 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !321, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!321 = !DIDerivedType(tag: DW_TAG_volatile_type, baseType: !197)
!322 = !DISubprogram(name: "operator=", linkageName: "_ZNSt3__16atomicIPN4base10scheduling11SchedulableEEaSES4_", scope: !197, file: !27, line: 1846, type: !323, scopeLine: 1846, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!323 = !DISubroutineType(types: !324)
!324 = !{!210, !313, !210}
!325 = !DISubprogram(name: "fetch_add", linkageName: "_ZNVSt3__16atomicIPN4base10scheduling11SchedulableEE9fetch_addElNS_12memory_orderE", scope: !197, file: !27, line: 1850, type: !326, scopeLine: 1850, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!326 = !DISubroutineType(types: !327)
!327 = !{!210, !320, !328, !77}
!328 = !DIDerivedType(tag: DW_TAG_typedef, name: "ptrdiff_t", file: !329, line: 35, baseType: !180)
!329 = !DIFile(filename: "toolchain/lib/clang/trunk/include/stddef.h", directory: "/proc/self/cwd", checksumkind: CSK_MD5, checksum: "2499dd2361b915724b073282bea3a7bc")
!330 = !DISubprogram(name: "fetch_add", linkageName: "_ZNSt3__16atomicIPN4base10scheduling11SchedulableEE9fetch_addElNS_12memory_orderE", scope: !197, file: !27, line: 1854, type: !331, scopeLine: 1854, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!331 = !DISubroutineType(types: !332)
!332 = !{!210, !313, !328, !77}
!333 = !DISubprogram(name: "fetch_sub", linkageName: "_ZNVSt3__16atomicIPN4base10scheduling11SchedulableEE9fetch_subElNS_12memory_orderE", scope: !197, file: !27, line: 1857, type: !326, scopeLine: 1857, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!334 = !DISubprogram(name: "fetch_sub", linkageName: "_ZNSt3__16atomicIPN4base10scheduling11SchedulableEE9fetch_subElNS_12memory_orderE", scope: !197, file: !27, line: 1861, type: !331, scopeLine: 1861, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!335 = !DISubprogram(name: "operator++", linkageName: "_ZNVSt3__16atomicIPN4base10scheduling11SchedulableEEppEi", scope: !197, file: !27, line: 1865, type: !336, scopeLine: 1865, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!336 = !DISubroutineType(types: !337)
!337 = !{!210, !320, !13}
!338 = !DISubprogram(name: "operator++", linkageName: "_ZNSt3__16atomicIPN4base10scheduling11SchedulableEEppEi", scope: !197, file: !27, line: 1867, type: !339, scopeLine: 1867, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!339 = !DISubroutineType(types: !340)
!340 = !{!210, !313, !13}
!341 = !DISubprogram(name: "operator--", linkageName: "_ZNVSt3__16atomicIPN4base10scheduling11SchedulableEEmmEi", scope: !197, file: !27, line: 1869, type: !336, scopeLine: 1869, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!342 = !DISubprogram(name: "operator--", linkageName: "_ZNSt3__16atomicIPN4base10scheduling11SchedulableEEmmEi", scope: !197, file: !27, line: 1871, type: !339, scopeLine: 1871, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!343 = !DISubprogram(name: "operator++", linkageName: "_ZNVSt3__16atomicIPN4base10scheduling11SchedulableEEppEv", scope: !197, file: !27, line: 1873, type: !344, scopeLine: 1873, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!344 = !DISubroutineType(types: !345)
!345 = !{!210, !320}
!346 = !DISubprogram(name: "operator++", linkageName: "_ZNSt3__16atomicIPN4base10scheduling11SchedulableEEppEv", scope: !197, file: !27, line: 1875, type: !347, scopeLine: 1875, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!347 = !DISubroutineType(types: !348)
!348 = !{!210, !313}
!349 = !DISubprogram(name: "operator--", linkageName: "_ZNVSt3__16atomicIPN4base10scheduling11SchedulableEEmmEv", scope: !197, file: !27, line: 1877, type: !344, scopeLine: 1877, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!350 = !DISubprogram(name: "operator--", linkageName: "_ZNSt3__16atomicIPN4base10scheduling11SchedulableEEmmEv", scope: !197, file: !27, line: 1879, type: !347, scopeLine: 1879, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!351 = !DISubprogram(name: "operator+=", linkageName: "_ZNVSt3__16atomicIPN4base10scheduling11SchedulableEEpLEl", scope: !197, file: !27, line: 1881, type: !352, scopeLine: 1881, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!352 = !DISubroutineType(types: !353)
!353 = !{!210, !320, !328}
!354 = !DISubprogram(name: "operator+=", linkageName: "_ZNSt3__16atomicIPN4base10scheduling11SchedulableEEpLEl", scope: !197, file: !27, line: 1883, type: !355, scopeLine: 1883, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!355 = !DISubroutineType(types: !356)
!356 = !{!210, !313, !328}
!357 = !DISubprogram(name: "operator-=", linkageName: "_ZNVSt3__16atomicIPN4base10scheduling11SchedulableEEmIEl", scope: !197, file: !27, line: 1885, type: !352, scopeLine: 1885, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!358 = !DISubprogram(name: "operator-=", linkageName: "_ZNSt3__16atomicIPN4base10scheduling11SchedulableEEmIEl", scope: !197, file: !27, line: 1887, type: !355, scopeLine: 1887, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!359 = !DISubprogram(name: "operator=", linkageName: "_ZNSt3__16atomicIPN4base10scheduling11SchedulableEEaSERKS5_", scope: !197, file: !27, line: 1889, type: !360, scopeLine: 1889, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!360 = !DISubroutineType(types: !361)
!361 = !{!362, !313, !363}
!362 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !197, size: 64)
!363 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !364, size: 64)
!364 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !197)
!365 = !DISubprogram(name: "operator=", linkageName: "_ZNVSt3__16atomicIPN4base10scheduling11SchedulableEEaSERKS5_", scope: !197, file: !27, line: 1890, type: !366, scopeLine: 1890, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!366 = !DISubroutineType(types: !367)
!367 = !{!362, !320, !363}
!368 = !DIDerivedType(tag: DW_TAG_member, name: "association_lock_word", scope: !194, file: !6, line: 164, baseType: !369, size: 32, offset: 64)
!369 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint32_t", file: !179, line: 51, baseType: !79)
!370 = !DIDerivedType(tag: DW_TAG_member, name: "scheduling_disabled_depth", scope: !194, file: !6, line: 165, baseType: !371, size: 32, offset: 96)
!371 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "atomic<int>", scope: !28, file: !27, line: 1806, size: 32, flags: DIFlagTypePassByReference, elements: !372, templateParams: !394, identifier: "_ZTSNSt3__16atomicIiEE")
!372 = !{!373, !534, !538, !541, !546, !549, !555}
!373 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !371, baseType: !374, extraData: i32 0)
!374 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__atomic_base<int, true>", scope: !28, file: !27, line: 1725, size: 32, flags: DIFlagTypePassByReference, elements: !375, templateParams: !532, identifier: "_ZTSNSt3__113__atomic_baseIiLb1EEE")
!375 = !{!376, !483, !487, !490, !495, !498, !499, !500, !501, !502, !503, !504, !505, !506, !509, !512, !513, !514, !517, !520, !521, !522, !523, !524, !525, !526, !527, !528, !529, !530, !531}
!376 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !374, baseType: !377, extraData: i32 0)
!377 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__atomic_base<int, false>", scope: !28, file: !27, line: 1612, size: 32, flags: DIFlagTypePassByReference, elements: !378, templateParams: !482, identifier: "_ZTSNSt3__113__atomic_baseIiLb0EEE")
!378 = !{!379, !405, !406, !412, !417, !421, !425, !428, !431, !434, !437, !440, !443, !447, !450, !451, !452, !455, !458, !459, !460, !463, !466, !469, !472, !473, !474, !475, !478}
!379 = !DIDerivedType(tag: DW_TAG_member, name: "__a_", scope: !377, file: !27, line: 1614, baseType: !380, size: 32)
!380 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__cxx_atomic_impl<int, std::__cxx_atomic_base_impl<int> >", scope: !28, file: !27, line: 1514, size: 32, flags: DIFlagTypePassByValue, elements: !381, templateParams: !403, identifier: "_ZTSNSt3__117__cxx_atomic_implIiNS_22__cxx_atomic_base_implIiEEEE")
!381 = !{!382, !396, !400}
!382 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !380, baseType: !383, extraData: i32 0)
!383 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__cxx_atomic_base_impl<int>", scope: !28, file: !27, line: 958, size: 32, flags: DIFlagTypePassByValue, elements: !384, templateParams: !394, identifier: "_ZTSNSt3__122__cxx_atomic_base_implIiEE")
!384 = !{!385, !387, !391}
!385 = !DIDerivedType(tag: DW_TAG_member, name: "__a_value", scope: !383, file: !27, line: 968, baseType: !386, size: 32)
!386 = !DIDerivedType(tag: DW_TAG_atomic_type, baseType: !13)
!387 = !DISubprogram(name: "__cxx_atomic_base_impl", scope: !383, file: !27, line: 962, type: !388, scopeLine: 962, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!388 = !DISubroutineType(types: !389)
!389 = !{null, !390}
!390 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !383, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!391 = !DISubprogram(name: "__cxx_atomic_base_impl", scope: !383, file: !27, line: 966, type: !392, scopeLine: 966, flags: DIFlagExplicit | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!392 = !DISubroutineType(types: !393)
!393 = !{null, !390, !13}
!394 = !{!395}
!395 = !DITemplateTypeParameter(name: "_Tp", type: !13)
!396 = !DISubprogram(name: "__cxx_atomic_impl", scope: !380, file: !27, line: 1521, type: !397, scopeLine: 1521, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!397 = !DISubroutineType(types: !398)
!398 = !{null, !399}
!399 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !380, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!400 = !DISubprogram(name: "__cxx_atomic_impl", scope: !380, file: !27, line: 1522, type: !401, scopeLine: 1522, flags: DIFlagExplicit | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!401 = !DISubroutineType(types: !402)
!402 = !{null, !399, !13}
!403 = !{!395, !404}
!404 = !DITemplateTypeParameter(name: "_Base", type: !383)
!405 = !DIDerivedType(tag: DW_TAG_member, name: "is_always_lock_free", scope: !377, file: !27, line: 1617, baseType: !61, flags: DIFlagStaticMember)
!406 = !DISubprogram(name: "is_lock_free", linkageName: "_ZNVKSt3__113__atomic_baseIiLb0EE12is_lock_freeEv", scope: !377, file: !27, line: 1621, type: !407, scopeLine: 1621, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!407 = !DISubroutineType(types: !408)
!408 = !{!19, !409}
!409 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !410, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!410 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !411)
!411 = !DIDerivedType(tag: DW_TAG_volatile_type, baseType: !377)
!412 = !DISubprogram(name: "is_lock_free", linkageName: "_ZNKSt3__113__atomic_baseIiLb0EE12is_lock_freeEv", scope: !377, file: !27, line: 1624, type: !413, scopeLine: 1624, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!413 = !DISubroutineType(types: !414)
!414 = !{!19, !415}
!415 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !416, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!416 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !377)
!417 = !DISubprogram(name: "store", linkageName: "_ZNVSt3__113__atomic_baseIiLb0EE5storeEiNS_12memory_orderE", scope: !377, file: !27, line: 1627, type: !418, scopeLine: 1627, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!418 = !DISubroutineType(types: !419)
!419 = !{null, !420, !13, !77}
!420 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !411, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!421 = !DISubprogram(name: "store", linkageName: "_ZNSt3__113__atomic_baseIiLb0EE5storeEiNS_12memory_orderE", scope: !377, file: !27, line: 1631, type: !422, scopeLine: 1631, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!422 = !DISubroutineType(types: !423)
!423 = !{null, !424, !13, !77}
!424 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !377, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!425 = !DISubprogram(name: "load", linkageName: "_ZNVKSt3__113__atomic_baseIiLb0EE4loadENS_12memory_orderE", scope: !377, file: !27, line: 1635, type: !426, scopeLine: 1635, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!426 = !DISubroutineType(types: !427)
!427 = !{!13, !409, !77}
!428 = !DISubprogram(name: "load", linkageName: "_ZNKSt3__113__atomic_baseIiLb0EE4loadENS_12memory_orderE", scope: !377, file: !27, line: 1639, type: !429, scopeLine: 1639, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!429 = !DISubroutineType(types: !430)
!430 = !{!13, !415, !77}
!431 = !DISubprogram(name: "operator int", linkageName: "_ZNVKSt3__113__atomic_baseIiLb0EEcviEv", scope: !377, file: !27, line: 1643, type: !432, scopeLine: 1643, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!432 = !DISubroutineType(types: !433)
!433 = !{!13, !409}
!434 = !DISubprogram(name: "operator int", linkageName: "_ZNKSt3__113__atomic_baseIiLb0EEcviEv", scope: !377, file: !27, line: 1645, type: !435, scopeLine: 1645, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!435 = !DISubroutineType(types: !436)
!436 = !{!13, !415}
!437 = !DISubprogram(name: "exchange", linkageName: "_ZNVSt3__113__atomic_baseIiLb0EE8exchangeEiNS_12memory_orderE", scope: !377, file: !27, line: 1647, type: !438, scopeLine: 1647, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!438 = !DISubroutineType(types: !439)
!439 = !{!13, !420, !13, !77}
!440 = !DISubprogram(name: "exchange", linkageName: "_ZNSt3__113__atomic_baseIiLb0EE8exchangeEiNS_12memory_orderE", scope: !377, file: !27, line: 1650, type: !441, scopeLine: 1650, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!441 = !DISubroutineType(types: !442)
!442 = !{!13, !424, !13, !77}
!443 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNVSt3__113__atomic_baseIiLb0EE21compare_exchange_weakERiiNS_12memory_orderES3_", scope: !377, file: !27, line: 1653, type: !444, scopeLine: 1653, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!444 = !DISubroutineType(types: !445)
!445 = !{!19, !420, !446, !13, !77, !77}
!446 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !13, size: 64)
!447 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNSt3__113__atomic_baseIiLb0EE21compare_exchange_weakERiiNS_12memory_orderES3_", scope: !377, file: !27, line: 1658, type: !448, scopeLine: 1658, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!448 = !DISubroutineType(types: !449)
!449 = !{!19, !424, !446, !13, !77, !77}
!450 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNVSt3__113__atomic_baseIiLb0EE23compare_exchange_strongERiiNS_12memory_orderES3_", scope: !377, file: !27, line: 1663, type: !444, scopeLine: 1663, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!451 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNSt3__113__atomic_baseIiLb0EE23compare_exchange_strongERiiNS_12memory_orderES3_", scope: !377, file: !27, line: 1668, type: !448, scopeLine: 1668, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!452 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNVSt3__113__atomic_baseIiLb0EE21compare_exchange_weakERiiNS_12memory_orderE", scope: !377, file: !27, line: 1673, type: !453, scopeLine: 1673, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!453 = !DISubroutineType(types: !454)
!454 = !{!19, !420, !446, !13, !77}
!455 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNSt3__113__atomic_baseIiLb0EE21compare_exchange_weakERiiNS_12memory_orderE", scope: !377, file: !27, line: 1677, type: !456, scopeLine: 1677, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!456 = !DISubroutineType(types: !457)
!457 = !{!19, !424, !446, !13, !77}
!458 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNVSt3__113__atomic_baseIiLb0EE23compare_exchange_strongERiiNS_12memory_orderE", scope: !377, file: !27, line: 1681, type: !453, scopeLine: 1681, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!459 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNSt3__113__atomic_baseIiLb0EE23compare_exchange_strongERiiNS_12memory_orderE", scope: !377, file: !27, line: 1685, type: !456, scopeLine: 1685, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!460 = !DISubprogram(name: "wait", linkageName: "_ZNVKSt3__113__atomic_baseIiLb0EE4waitEiNS_12memory_orderE", scope: !377, file: !27, line: 1689, type: !461, scopeLine: 1689, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!461 = !DISubroutineType(types: !462)
!462 = !{null, !409, !13, !77}
!463 = !DISubprogram(name: "wait", linkageName: "_ZNKSt3__113__atomic_baseIiLb0EE4waitEiNS_12memory_orderE", scope: !377, file: !27, line: 1691, type: !464, scopeLine: 1691, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!464 = !DISubroutineType(types: !465)
!465 = !{null, !415, !13, !77}
!466 = !DISubprogram(name: "notify_one", linkageName: "_ZNVSt3__113__atomic_baseIiLb0EE10notify_oneEv", scope: !377, file: !27, line: 1693, type: !467, scopeLine: 1693, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!467 = !DISubroutineType(types: !468)
!468 = !{null, !420}
!469 = !DISubprogram(name: "notify_one", linkageName: "_ZNSt3__113__atomic_baseIiLb0EE10notify_oneEv", scope: !377, file: !27, line: 1695, type: !470, scopeLine: 1695, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!470 = !DISubroutineType(types: !471)
!471 = !{null, !424}
!472 = !DISubprogram(name: "notify_all", linkageName: "_ZNVSt3__113__atomic_baseIiLb0EE10notify_allEv", scope: !377, file: !27, line: 1697, type: !467, scopeLine: 1697, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!473 = !DISubprogram(name: "notify_all", linkageName: "_ZNSt3__113__atomic_baseIiLb0EE10notify_allEv", scope: !377, file: !27, line: 1699, type: !470, scopeLine: 1699, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!474 = !DISubprogram(name: "__atomic_base", scope: !377, file: !27, line: 1703, type: !470, scopeLine: 1703, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!475 = !DISubprogram(name: "__atomic_base", scope: !377, file: !27, line: 1706, type: !476, scopeLine: 1706, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!476 = !DISubroutineType(types: !477)
!477 = !{null, !424, !13}
!478 = !DISubprogram(name: "__atomic_base", scope: !377, file: !27, line: 1709, type: !479, scopeLine: 1709, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!479 = !DISubroutineType(types: !480)
!480 = !{null, !424, !481}
!481 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !416, size: 64)
!482 = !{!395, !149}
!483 = !DISubprogram(name: "__atomic_base", scope: !374, file: !27, line: 1730, type: !484, scopeLine: 1730, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!484 = !DISubroutineType(types: !485)
!485 = !{null, !486}
!486 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !374, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!487 = !DISubprogram(name: "__atomic_base", scope: !374, file: !27, line: 1732, type: !488, scopeLine: 1732, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!488 = !DISubroutineType(types: !489)
!489 = !{null, !486, !13}
!490 = !DISubprogram(name: "fetch_add", linkageName: "_ZNVSt3__113__atomic_baseIiLb1EE9fetch_addEiNS_12memory_orderE", scope: !374, file: !27, line: 1735, type: !491, scopeLine: 1735, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!491 = !DISubroutineType(types: !492)
!492 = !{!13, !493, !13, !77}
!493 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !494, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!494 = !DIDerivedType(tag: DW_TAG_volatile_type, baseType: !374)
!495 = !DISubprogram(name: "fetch_add", linkageName: "_ZNSt3__113__atomic_baseIiLb1EE9fetch_addEiNS_12memory_orderE", scope: !374, file: !27, line: 1738, type: !496, scopeLine: 1738, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!496 = !DISubroutineType(types: !497)
!497 = !{!13, !486, !13, !77}
!498 = !DISubprogram(name: "fetch_sub", linkageName: "_ZNVSt3__113__atomic_baseIiLb1EE9fetch_subEiNS_12memory_orderE", scope: !374, file: !27, line: 1741, type: !491, scopeLine: 1741, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!499 = !DISubprogram(name: "fetch_sub", linkageName: "_ZNSt3__113__atomic_baseIiLb1EE9fetch_subEiNS_12memory_orderE", scope: !374, file: !27, line: 1744, type: !496, scopeLine: 1744, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!500 = !DISubprogram(name: "fetch_and", linkageName: "_ZNVSt3__113__atomic_baseIiLb1EE9fetch_andEiNS_12memory_orderE", scope: !374, file: !27, line: 1747, type: !491, scopeLine: 1747, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!501 = !DISubprogram(name: "fetch_and", linkageName: "_ZNSt3__113__atomic_baseIiLb1EE9fetch_andEiNS_12memory_orderE", scope: !374, file: !27, line: 1750, type: !496, scopeLine: 1750, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!502 = !DISubprogram(name: "fetch_or", linkageName: "_ZNVSt3__113__atomic_baseIiLb1EE8fetch_orEiNS_12memory_orderE", scope: !374, file: !27, line: 1753, type: !491, scopeLine: 1753, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!503 = !DISubprogram(name: "fetch_or", linkageName: "_ZNSt3__113__atomic_baseIiLb1EE8fetch_orEiNS_12memory_orderE", scope: !374, file: !27, line: 1756, type: !496, scopeLine: 1756, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!504 = !DISubprogram(name: "fetch_xor", linkageName: "_ZNVSt3__113__atomic_baseIiLb1EE9fetch_xorEiNS_12memory_orderE", scope: !374, file: !27, line: 1759, type: !491, scopeLine: 1759, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!505 = !DISubprogram(name: "fetch_xor", linkageName: "_ZNSt3__113__atomic_baseIiLb1EE9fetch_xorEiNS_12memory_orderE", scope: !374, file: !27, line: 1762, type: !496, scopeLine: 1762, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!506 = !DISubprogram(name: "operator++", linkageName: "_ZNVSt3__113__atomic_baseIiLb1EEppEi", scope: !374, file: !27, line: 1766, type: !507, scopeLine: 1766, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!507 = !DISubroutineType(types: !508)
!508 = !{!13, !493, !13}
!509 = !DISubprogram(name: "operator++", linkageName: "_ZNSt3__113__atomic_baseIiLb1EEppEi", scope: !374, file: !27, line: 1768, type: !510, scopeLine: 1768, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!510 = !DISubroutineType(types: !511)
!511 = !{!13, !486, !13}
!512 = !DISubprogram(name: "operator--", linkageName: "_ZNVSt3__113__atomic_baseIiLb1EEmmEi", scope: !374, file: !27, line: 1770, type: !507, scopeLine: 1770, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!513 = !DISubprogram(name: "operator--", linkageName: "_ZNSt3__113__atomic_baseIiLb1EEmmEi", scope: !374, file: !27, line: 1772, type: !510, scopeLine: 1772, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!514 = !DISubprogram(name: "operator++", linkageName: "_ZNVSt3__113__atomic_baseIiLb1EEppEv", scope: !374, file: !27, line: 1774, type: !515, scopeLine: 1774, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!515 = !DISubroutineType(types: !516)
!516 = !{!13, !493}
!517 = !DISubprogram(name: "operator++", linkageName: "_ZNSt3__113__atomic_baseIiLb1EEppEv", scope: !374, file: !27, line: 1776, type: !518, scopeLine: 1776, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!518 = !DISubroutineType(types: !519)
!519 = !{!13, !486}
!520 = !DISubprogram(name: "operator--", linkageName: "_ZNVSt3__113__atomic_baseIiLb1EEmmEv", scope: !374, file: !27, line: 1778, type: !515, scopeLine: 1778, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!521 = !DISubprogram(name: "operator--", linkageName: "_ZNSt3__113__atomic_baseIiLb1EEmmEv", scope: !374, file: !27, line: 1780, type: !518, scopeLine: 1780, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!522 = !DISubprogram(name: "operator+=", linkageName: "_ZNVSt3__113__atomic_baseIiLb1EEpLEi", scope: !374, file: !27, line: 1782, type: !507, scopeLine: 1782, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!523 = !DISubprogram(name: "operator+=", linkageName: "_ZNSt3__113__atomic_baseIiLb1EEpLEi", scope: !374, file: !27, line: 1784, type: !510, scopeLine: 1784, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!524 = !DISubprogram(name: "operator-=", linkageName: "_ZNVSt3__113__atomic_baseIiLb1EEmIEi", scope: !374, file: !27, line: 1786, type: !507, scopeLine: 1786, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!525 = !DISubprogram(name: "operator-=", linkageName: "_ZNSt3__113__atomic_baseIiLb1EEmIEi", scope: !374, file: !27, line: 1788, type: !510, scopeLine: 1788, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!526 = !DISubprogram(name: "operator&=", linkageName: "_ZNVSt3__113__atomic_baseIiLb1EEaNEi", scope: !374, file: !27, line: 1790, type: !507, scopeLine: 1790, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!527 = !DISubprogram(name: "operator&=", linkageName: "_ZNSt3__113__atomic_baseIiLb1EEaNEi", scope: !374, file: !27, line: 1792, type: !510, scopeLine: 1792, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!528 = !DISubprogram(name: "operator|=", linkageName: "_ZNVSt3__113__atomic_baseIiLb1EEoREi", scope: !374, file: !27, line: 1794, type: !507, scopeLine: 1794, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!529 = !DISubprogram(name: "operator|=", linkageName: "_ZNSt3__113__atomic_baseIiLb1EEoREi", scope: !374, file: !27, line: 1796, type: !510, scopeLine: 1796, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!530 = !DISubprogram(name: "operator^=", linkageName: "_ZNVSt3__113__atomic_baseIiLb1EEeOEi", scope: !374, file: !27, line: 1798, type: !507, scopeLine: 1798, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!531 = !DISubprogram(name: "operator^=", linkageName: "_ZNSt3__113__atomic_baseIiLb1EEeOEi", scope: !374, file: !27, line: 1800, type: !510, scopeLine: 1800, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!532 = !{!395, !533}
!533 = !DITemplateValueParameter(type: !19, value: i1 true)
!534 = !DISubprogram(name: "atomic", scope: !371, file: !27, line: 1813, type: !535, scopeLine: 1813, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!535 = !DISubroutineType(types: !536)
!536 = !{null, !537}
!537 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !371, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!538 = !DISubprogram(name: "atomic", scope: !371, file: !27, line: 1815, type: !539, scopeLine: 1815, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!539 = !DISubroutineType(types: !540)
!540 = !{null, !537, !13}
!541 = !DISubprogram(name: "operator=", linkageName: "_ZNVSt3__16atomicIiEaSEi", scope: !371, file: !27, line: 1818, type: !542, scopeLine: 1818, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!542 = !DISubroutineType(types: !543)
!543 = !{!13, !544, !13}
!544 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !545, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!545 = !DIDerivedType(tag: DW_TAG_volatile_type, baseType: !371)
!546 = !DISubprogram(name: "operator=", linkageName: "_ZNSt3__16atomicIiEaSEi", scope: !371, file: !27, line: 1821, type: !547, scopeLine: 1821, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!547 = !DISubroutineType(types: !548)
!548 = !{!13, !537, !13}
!549 = !DISubprogram(name: "operator=", linkageName: "_ZNSt3__16atomicIiEaSERKS1_", scope: !371, file: !27, line: 1824, type: !550, scopeLine: 1824, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!550 = !DISubroutineType(types: !551)
!551 = !{!552, !537, !553}
!552 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !371, size: 64)
!553 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !554, size: 64)
!554 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !371)
!555 = !DISubprogram(name: "operator=", linkageName: "_ZNVSt3__16atomicIiEaSERKS1_", scope: !371, file: !27, line: 1825, type: !556, scopeLine: 1825, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!556 = !DISubroutineType(types: !557)
!557 = !{!552, !544, !553}
!558 = !DIDerivedType(tag: DW_TAG_member, name: "potentially_blocking_depth", scope: !194, file: !6, line: 166, baseType: !13, size: 32, offset: 128)
!559 = !DIDerivedType(tag: DW_TAG_member, name: "schedule_next_state", scope: !194, file: !6, line: 167, baseType: !369, size: 32, offset: 160)
!560 = !DIDerivedType(tag: DW_TAG_member, name: "waking_designated_waker", scope: !194, file: !6, line: 173, baseType: !19, size: 8, offset: 192)
!561 = !DISubprogram(name: "association_lock", linkageName: "_ZN4absl13base_internal14ThreadIdentity14SchedulerState16association_lockEv", scope: !194, file: !6, line: 175, type: !562, scopeLine: 175, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!562 = !DISubroutineType(types: !563)
!563 = !{!564, !825}
!564 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !565, size: 64)
!565 = distinct !DICompositeType(tag: DW_TAG_class_type, name: "SpinLock", scope: !8, file: !566, line: 57, size: 32, flags: DIFlagTypePassByReference | DIFlagNonTrivial, elements: !567, identifier: "_ZTSN4absl13base_internal8SpinLockE")
!566 = !DIFile(filename: "./internal/spinlock.h", directory: "/proc/self/cwd", checksumkind: CSK_MD5, checksum: "78b03d4c0fb31dd356f7614a43d610a6")
!567 = !{!568, !570, !571, !572, !573, !574, !765, !769, !777, !784, !785, !786, !789, !790, !795, !798, !803, !806, !809, !810, !813, !816, !817, !821}
!568 = !DIDerivedType(tag: DW_TAG_member, name: "kSpinLockHeld", scope: !565, file: !566, line: 161, baseType: !569, flags: DIFlagStaticMember, extraData: i32 1)
!569 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !369)
!570 = !DIDerivedType(tag: DW_TAG_member, name: "kSpinLockCooperative", scope: !565, file: !566, line: 162, baseType: !569, flags: DIFlagStaticMember, extraData: i32 2)
!571 = !DIDerivedType(tag: DW_TAG_member, name: "kSpinLockDisabledScheduling", scope: !565, file: !566, line: 163, baseType: !569, flags: DIFlagStaticMember, extraData: i32 4)
!572 = !DIDerivedType(tag: DW_TAG_member, name: "kSpinLockSleeper", scope: !565, file: !566, line: 164, baseType: !569, flags: DIFlagStaticMember, extraData: i32 8)
!573 = !DIDerivedType(tag: DW_TAG_member, name: "kWaitTimeMask", scope: !565, file: !566, line: 166, baseType: !569, flags: DIFlagStaticMember, extraData: i32 -8)
!574 = !DIDerivedType(tag: DW_TAG_member, name: "lockword_", scope: !565, file: !566, line: 185, baseType: !575, size: 32)
!575 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "atomic<unsigned int>", scope: !28, file: !27, line: 1806, size: 32, flags: DIFlagTypePassByReference, elements: !576, templateParams: !598, identifier: "_ZTSNSt3__16atomicIjEE")
!576 = !{!577, !741, !745, !748, !753, !756, !762}
!577 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !575, baseType: !578, extraData: i32 0)
!578 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__atomic_base<unsigned int, true>", scope: !28, file: !27, line: 1725, size: 32, flags: DIFlagTypePassByReference, elements: !579, templateParams: !740, identifier: "_ZTSNSt3__113__atomic_baseIjLb1EEE")
!579 = !{!580, !687, !691, !694, !699, !702, !703, !704, !705, !706, !707, !708, !709, !710, !713, !716, !717, !718, !721, !724, !725, !726, !729, !732, !733, !734, !735, !736, !737, !738, !739}
!580 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !578, baseType: !581, extraData: i32 0)
!581 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__atomic_base<unsigned int, false>", scope: !28, file: !27, line: 1612, size: 32, flags: DIFlagTypePassByReference, elements: !582, templateParams: !686, identifier: "_ZTSNSt3__113__atomic_baseIjLb0EEE")
!582 = !{!583, !609, !610, !616, !621, !625, !629, !632, !635, !638, !641, !644, !647, !651, !654, !655, !656, !659, !662, !663, !664, !667, !670, !673, !676, !677, !678, !679, !682}
!583 = !DIDerivedType(tag: DW_TAG_member, name: "__a_", scope: !581, file: !27, line: 1614, baseType: !584, size: 32)
!584 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__cxx_atomic_impl<unsigned int, std::__cxx_atomic_base_impl<unsigned int> >", scope: !28, file: !27, line: 1514, size: 32, flags: DIFlagTypePassByValue, elements: !585, templateParams: !607, identifier: "_ZTSNSt3__117__cxx_atomic_implIjNS_22__cxx_atomic_base_implIjEEEE")
!585 = !{!586, !600, !604}
!586 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !584, baseType: !587, extraData: i32 0)
!587 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__cxx_atomic_base_impl<unsigned int>", scope: !28, file: !27, line: 958, size: 32, flags: DIFlagTypePassByValue, elements: !588, templateParams: !598, identifier: "_ZTSNSt3__122__cxx_atomic_base_implIjEE")
!588 = !{!589, !591, !595}
!589 = !DIDerivedType(tag: DW_TAG_member, name: "__a_value", scope: !587, file: !27, line: 968, baseType: !590, size: 32)
!590 = !DIDerivedType(tag: DW_TAG_atomic_type, baseType: !79)
!591 = !DISubprogram(name: "__cxx_atomic_base_impl", scope: !587, file: !27, line: 962, type: !592, scopeLine: 962, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!592 = !DISubroutineType(types: !593)
!593 = !{null, !594}
!594 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !587, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!595 = !DISubprogram(name: "__cxx_atomic_base_impl", scope: !587, file: !27, line: 966, type: !596, scopeLine: 966, flags: DIFlagExplicit | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!596 = !DISubroutineType(types: !597)
!597 = !{null, !594, !79}
!598 = !{!599}
!599 = !DITemplateTypeParameter(name: "_Tp", type: !79)
!600 = !DISubprogram(name: "__cxx_atomic_impl", scope: !584, file: !27, line: 1521, type: !601, scopeLine: 1521, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!601 = !DISubroutineType(types: !602)
!602 = !{null, !603}
!603 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !584, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!604 = !DISubprogram(name: "__cxx_atomic_impl", scope: !584, file: !27, line: 1522, type: !605, scopeLine: 1522, flags: DIFlagExplicit | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!605 = !DISubroutineType(types: !606)
!606 = !{null, !603, !79}
!607 = !{!599, !608}
!608 = !DITemplateTypeParameter(name: "_Base", type: !587)
!609 = !DIDerivedType(tag: DW_TAG_member, name: "is_always_lock_free", scope: !581, file: !27, line: 1617, baseType: !61, flags: DIFlagStaticMember)
!610 = !DISubprogram(name: "is_lock_free", linkageName: "_ZNVKSt3__113__atomic_baseIjLb0EE12is_lock_freeEv", scope: !581, file: !27, line: 1621, type: !611, scopeLine: 1621, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!611 = !DISubroutineType(types: !612)
!612 = !{!19, !613}
!613 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !614, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!614 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !615)
!615 = !DIDerivedType(tag: DW_TAG_volatile_type, baseType: !581)
!616 = !DISubprogram(name: "is_lock_free", linkageName: "_ZNKSt3__113__atomic_baseIjLb0EE12is_lock_freeEv", scope: !581, file: !27, line: 1624, type: !617, scopeLine: 1624, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!617 = !DISubroutineType(types: !618)
!618 = !{!19, !619}
!619 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !620, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!620 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !581)
!621 = !DISubprogram(name: "store", linkageName: "_ZNVSt3__113__atomic_baseIjLb0EE5storeEjNS_12memory_orderE", scope: !581, file: !27, line: 1627, type: !622, scopeLine: 1627, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!622 = !DISubroutineType(types: !623)
!623 = !{null, !624, !79, !77}
!624 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !615, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!625 = !DISubprogram(name: "store", linkageName: "_ZNSt3__113__atomic_baseIjLb0EE5storeEjNS_12memory_orderE", scope: !581, file: !27, line: 1631, type: !626, scopeLine: 1631, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!626 = !DISubroutineType(types: !627)
!627 = !{null, !628, !79, !77}
!628 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !581, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!629 = !DISubprogram(name: "load", linkageName: "_ZNVKSt3__113__atomic_baseIjLb0EE4loadENS_12memory_orderE", scope: !581, file: !27, line: 1635, type: !630, scopeLine: 1635, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!630 = !DISubroutineType(types: !631)
!631 = !{!79, !613, !77}
!632 = !DISubprogram(name: "load", linkageName: "_ZNKSt3__113__atomic_baseIjLb0EE4loadENS_12memory_orderE", scope: !581, file: !27, line: 1639, type: !633, scopeLine: 1639, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!633 = !DISubroutineType(types: !634)
!634 = !{!79, !619, !77}
!635 = !DISubprogram(name: "operator unsigned int", linkageName: "_ZNVKSt3__113__atomic_baseIjLb0EEcvjEv", scope: !581, file: !27, line: 1643, type: !636, scopeLine: 1643, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!636 = !DISubroutineType(types: !637)
!637 = !{!79, !613}
!638 = !DISubprogram(name: "operator unsigned int", linkageName: "_ZNKSt3__113__atomic_baseIjLb0EEcvjEv", scope: !581, file: !27, line: 1645, type: !639, scopeLine: 1645, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!639 = !DISubroutineType(types: !640)
!640 = !{!79, !619}
!641 = !DISubprogram(name: "exchange", linkageName: "_ZNVSt3__113__atomic_baseIjLb0EE8exchangeEjNS_12memory_orderE", scope: !581, file: !27, line: 1647, type: !642, scopeLine: 1647, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!642 = !DISubroutineType(types: !643)
!643 = !{!79, !624, !79, !77}
!644 = !DISubprogram(name: "exchange", linkageName: "_ZNSt3__113__atomic_baseIjLb0EE8exchangeEjNS_12memory_orderE", scope: !581, file: !27, line: 1650, type: !645, scopeLine: 1650, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!645 = !DISubroutineType(types: !646)
!646 = !{!79, !628, !79, !77}
!647 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNVSt3__113__atomic_baseIjLb0EE21compare_exchange_weakERjjNS_12memory_orderES3_", scope: !581, file: !27, line: 1653, type: !648, scopeLine: 1653, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!648 = !DISubroutineType(types: !649)
!649 = !{!19, !624, !650, !79, !77, !77}
!650 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !79, size: 64)
!651 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNSt3__113__atomic_baseIjLb0EE21compare_exchange_weakERjjNS_12memory_orderES3_", scope: !581, file: !27, line: 1658, type: !652, scopeLine: 1658, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!652 = !DISubroutineType(types: !653)
!653 = !{!19, !628, !650, !79, !77, !77}
!654 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNVSt3__113__atomic_baseIjLb0EE23compare_exchange_strongERjjNS_12memory_orderES3_", scope: !581, file: !27, line: 1663, type: !648, scopeLine: 1663, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!655 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNSt3__113__atomic_baseIjLb0EE23compare_exchange_strongERjjNS_12memory_orderES3_", scope: !581, file: !27, line: 1668, type: !652, scopeLine: 1668, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!656 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNVSt3__113__atomic_baseIjLb0EE21compare_exchange_weakERjjNS_12memory_orderE", scope: !581, file: !27, line: 1673, type: !657, scopeLine: 1673, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!657 = !DISubroutineType(types: !658)
!658 = !{!19, !624, !650, !79, !77}
!659 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNSt3__113__atomic_baseIjLb0EE21compare_exchange_weakERjjNS_12memory_orderE", scope: !581, file: !27, line: 1677, type: !660, scopeLine: 1677, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!660 = !DISubroutineType(types: !661)
!661 = !{!19, !628, !650, !79, !77}
!662 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNVSt3__113__atomic_baseIjLb0EE23compare_exchange_strongERjjNS_12memory_orderE", scope: !581, file: !27, line: 1681, type: !657, scopeLine: 1681, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!663 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNSt3__113__atomic_baseIjLb0EE23compare_exchange_strongERjjNS_12memory_orderE", scope: !581, file: !27, line: 1685, type: !660, scopeLine: 1685, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!664 = !DISubprogram(name: "wait", linkageName: "_ZNVKSt3__113__atomic_baseIjLb0EE4waitEjNS_12memory_orderE", scope: !581, file: !27, line: 1689, type: !665, scopeLine: 1689, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!665 = !DISubroutineType(types: !666)
!666 = !{null, !613, !79, !77}
!667 = !DISubprogram(name: "wait", linkageName: "_ZNKSt3__113__atomic_baseIjLb0EE4waitEjNS_12memory_orderE", scope: !581, file: !27, line: 1691, type: !668, scopeLine: 1691, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!668 = !DISubroutineType(types: !669)
!669 = !{null, !619, !79, !77}
!670 = !DISubprogram(name: "notify_one", linkageName: "_ZNVSt3__113__atomic_baseIjLb0EE10notify_oneEv", scope: !581, file: !27, line: 1693, type: !671, scopeLine: 1693, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!671 = !DISubroutineType(types: !672)
!672 = !{null, !624}
!673 = !DISubprogram(name: "notify_one", linkageName: "_ZNSt3__113__atomic_baseIjLb0EE10notify_oneEv", scope: !581, file: !27, line: 1695, type: !674, scopeLine: 1695, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!674 = !DISubroutineType(types: !675)
!675 = !{null, !628}
!676 = !DISubprogram(name: "notify_all", linkageName: "_ZNVSt3__113__atomic_baseIjLb0EE10notify_allEv", scope: !581, file: !27, line: 1697, type: !671, scopeLine: 1697, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!677 = !DISubprogram(name: "notify_all", linkageName: "_ZNSt3__113__atomic_baseIjLb0EE10notify_allEv", scope: !581, file: !27, line: 1699, type: !674, scopeLine: 1699, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!678 = !DISubprogram(name: "__atomic_base", scope: !581, file: !27, line: 1703, type: !674, scopeLine: 1703, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!679 = !DISubprogram(name: "__atomic_base", scope: !581, file: !27, line: 1706, type: !680, scopeLine: 1706, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!680 = !DISubroutineType(types: !681)
!681 = !{null, !628, !79}
!682 = !DISubprogram(name: "__atomic_base", scope: !581, file: !27, line: 1709, type: !683, scopeLine: 1709, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!683 = !DISubroutineType(types: !684)
!684 = !{null, !628, !685}
!685 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !620, size: 64)
!686 = !{!599, !149}
!687 = !DISubprogram(name: "__atomic_base", scope: !578, file: !27, line: 1730, type: !688, scopeLine: 1730, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!688 = !DISubroutineType(types: !689)
!689 = !{null, !690}
!690 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !578, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!691 = !DISubprogram(name: "__atomic_base", scope: !578, file: !27, line: 1732, type: !692, scopeLine: 1732, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!692 = !DISubroutineType(types: !693)
!693 = !{null, !690, !79}
!694 = !DISubprogram(name: "fetch_add", linkageName: "_ZNVSt3__113__atomic_baseIjLb1EE9fetch_addEjNS_12memory_orderE", scope: !578, file: !27, line: 1735, type: !695, scopeLine: 1735, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!695 = !DISubroutineType(types: !696)
!696 = !{!79, !697, !79, !77}
!697 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !698, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!698 = !DIDerivedType(tag: DW_TAG_volatile_type, baseType: !578)
!699 = !DISubprogram(name: "fetch_add", linkageName: "_ZNSt3__113__atomic_baseIjLb1EE9fetch_addEjNS_12memory_orderE", scope: !578, file: !27, line: 1738, type: !700, scopeLine: 1738, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!700 = !DISubroutineType(types: !701)
!701 = !{!79, !690, !79, !77}
!702 = !DISubprogram(name: "fetch_sub", linkageName: "_ZNVSt3__113__atomic_baseIjLb1EE9fetch_subEjNS_12memory_orderE", scope: !578, file: !27, line: 1741, type: !695, scopeLine: 1741, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!703 = !DISubprogram(name: "fetch_sub", linkageName: "_ZNSt3__113__atomic_baseIjLb1EE9fetch_subEjNS_12memory_orderE", scope: !578, file: !27, line: 1744, type: !700, scopeLine: 1744, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!704 = !DISubprogram(name: "fetch_and", linkageName: "_ZNVSt3__113__atomic_baseIjLb1EE9fetch_andEjNS_12memory_orderE", scope: !578, file: !27, line: 1747, type: !695, scopeLine: 1747, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!705 = !DISubprogram(name: "fetch_and", linkageName: "_ZNSt3__113__atomic_baseIjLb1EE9fetch_andEjNS_12memory_orderE", scope: !578, file: !27, line: 1750, type: !700, scopeLine: 1750, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!706 = !DISubprogram(name: "fetch_or", linkageName: "_ZNVSt3__113__atomic_baseIjLb1EE8fetch_orEjNS_12memory_orderE", scope: !578, file: !27, line: 1753, type: !695, scopeLine: 1753, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!707 = !DISubprogram(name: "fetch_or", linkageName: "_ZNSt3__113__atomic_baseIjLb1EE8fetch_orEjNS_12memory_orderE", scope: !578, file: !27, line: 1756, type: !700, scopeLine: 1756, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!708 = !DISubprogram(name: "fetch_xor", linkageName: "_ZNVSt3__113__atomic_baseIjLb1EE9fetch_xorEjNS_12memory_orderE", scope: !578, file: !27, line: 1759, type: !695, scopeLine: 1759, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!709 = !DISubprogram(name: "fetch_xor", linkageName: "_ZNSt3__113__atomic_baseIjLb1EE9fetch_xorEjNS_12memory_orderE", scope: !578, file: !27, line: 1762, type: !700, scopeLine: 1762, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!710 = !DISubprogram(name: "operator++", linkageName: "_ZNVSt3__113__atomic_baseIjLb1EEppEi", scope: !578, file: !27, line: 1766, type: !711, scopeLine: 1766, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!711 = !DISubroutineType(types: !712)
!712 = !{!79, !697, !13}
!713 = !DISubprogram(name: "operator++", linkageName: "_ZNSt3__113__atomic_baseIjLb1EEppEi", scope: !578, file: !27, line: 1768, type: !714, scopeLine: 1768, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!714 = !DISubroutineType(types: !715)
!715 = !{!79, !690, !13}
!716 = !DISubprogram(name: "operator--", linkageName: "_ZNVSt3__113__atomic_baseIjLb1EEmmEi", scope: !578, file: !27, line: 1770, type: !711, scopeLine: 1770, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!717 = !DISubprogram(name: "operator--", linkageName: "_ZNSt3__113__atomic_baseIjLb1EEmmEi", scope: !578, file: !27, line: 1772, type: !714, scopeLine: 1772, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!718 = !DISubprogram(name: "operator++", linkageName: "_ZNVSt3__113__atomic_baseIjLb1EEppEv", scope: !578, file: !27, line: 1774, type: !719, scopeLine: 1774, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!719 = !DISubroutineType(types: !720)
!720 = !{!79, !697}
!721 = !DISubprogram(name: "operator++", linkageName: "_ZNSt3__113__atomic_baseIjLb1EEppEv", scope: !578, file: !27, line: 1776, type: !722, scopeLine: 1776, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!722 = !DISubroutineType(types: !723)
!723 = !{!79, !690}
!724 = !DISubprogram(name: "operator--", linkageName: "_ZNVSt3__113__atomic_baseIjLb1EEmmEv", scope: !578, file: !27, line: 1778, type: !719, scopeLine: 1778, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!725 = !DISubprogram(name: "operator--", linkageName: "_ZNSt3__113__atomic_baseIjLb1EEmmEv", scope: !578, file: !27, line: 1780, type: !722, scopeLine: 1780, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!726 = !DISubprogram(name: "operator+=", linkageName: "_ZNVSt3__113__atomic_baseIjLb1EEpLEj", scope: !578, file: !27, line: 1782, type: !727, scopeLine: 1782, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!727 = !DISubroutineType(types: !728)
!728 = !{!79, !697, !79}
!729 = !DISubprogram(name: "operator+=", linkageName: "_ZNSt3__113__atomic_baseIjLb1EEpLEj", scope: !578, file: !27, line: 1784, type: !730, scopeLine: 1784, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!730 = !DISubroutineType(types: !731)
!731 = !{!79, !690, !79}
!732 = !DISubprogram(name: "operator-=", linkageName: "_ZNVSt3__113__atomic_baseIjLb1EEmIEj", scope: !578, file: !27, line: 1786, type: !727, scopeLine: 1786, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!733 = !DISubprogram(name: "operator-=", linkageName: "_ZNSt3__113__atomic_baseIjLb1EEmIEj", scope: !578, file: !27, line: 1788, type: !730, scopeLine: 1788, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!734 = !DISubprogram(name: "operator&=", linkageName: "_ZNVSt3__113__atomic_baseIjLb1EEaNEj", scope: !578, file: !27, line: 1790, type: !727, scopeLine: 1790, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!735 = !DISubprogram(name: "operator&=", linkageName: "_ZNSt3__113__atomic_baseIjLb1EEaNEj", scope: !578, file: !27, line: 1792, type: !730, scopeLine: 1792, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!736 = !DISubprogram(name: "operator|=", linkageName: "_ZNVSt3__113__atomic_baseIjLb1EEoREj", scope: !578, file: !27, line: 1794, type: !727, scopeLine: 1794, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!737 = !DISubprogram(name: "operator|=", linkageName: "_ZNSt3__113__atomic_baseIjLb1EEoREj", scope: !578, file: !27, line: 1796, type: !730, scopeLine: 1796, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!738 = !DISubprogram(name: "operator^=", linkageName: "_ZNVSt3__113__atomic_baseIjLb1EEeOEj", scope: !578, file: !27, line: 1798, type: !727, scopeLine: 1798, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!739 = !DISubprogram(name: "operator^=", linkageName: "_ZNSt3__113__atomic_baseIjLb1EEeOEj", scope: !578, file: !27, line: 1800, type: !730, scopeLine: 1800, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!740 = !{!599, !533}
!741 = !DISubprogram(name: "atomic", scope: !575, file: !27, line: 1813, type: !742, scopeLine: 1813, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!742 = !DISubroutineType(types: !743)
!743 = !{null, !744}
!744 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !575, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!745 = !DISubprogram(name: "atomic", scope: !575, file: !27, line: 1815, type: !746, scopeLine: 1815, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!746 = !DISubroutineType(types: !747)
!747 = !{null, !744, !79}
!748 = !DISubprogram(name: "operator=", linkageName: "_ZNVSt3__16atomicIjEaSEj", scope: !575, file: !27, line: 1818, type: !749, scopeLine: 1818, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!749 = !DISubroutineType(types: !750)
!750 = !{!79, !751, !79}
!751 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !752, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!752 = !DIDerivedType(tag: DW_TAG_volatile_type, baseType: !575)
!753 = !DISubprogram(name: "operator=", linkageName: "_ZNSt3__16atomicIjEaSEj", scope: !575, file: !27, line: 1821, type: !754, scopeLine: 1821, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!754 = !DISubroutineType(types: !755)
!755 = !{!79, !744, !79}
!756 = !DISubprogram(name: "operator=", linkageName: "_ZNSt3__16atomicIjEaSERKS1_", scope: !575, file: !27, line: 1824, type: !757, scopeLine: 1824, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!757 = !DISubroutineType(types: !758)
!758 = !{!759, !744, !760}
!759 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !575, size: 64)
!760 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !761, size: 64)
!761 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !575)
!762 = !DISubprogram(name: "operator=", linkageName: "_ZNVSt3__16atomicIjEaSERKS1_", scope: !575, file: !27, line: 1825, type: !763, scopeLine: 1825, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!763 = !DISubroutineType(types: !764)
!764 = !{!759, !751, !760}
!765 = !DISubprogram(name: "SpinLock", scope: !565, file: !566, line: 59, type: !766, scopeLine: 59, flags: DIFlagPublic | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!766 = !DISubroutineType(types: !767)
!767 = !{null, !768}
!768 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !565, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!769 = !DISubprogram(name: "SpinLock", scope: !565, file: !566, line: 65, type: !770, scopeLine: 65, flags: DIFlagPublic | DIFlagExplicit | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!770 = !DISubroutineType(types: !771)
!771 = !{null, !768, !772}
!772 = distinct !DICompositeType(tag: DW_TAG_enumeration_type, name: "SchedulingMode", scope: !8, file: !773, line: 49, baseType: !79, size: 32, elements: !774, identifier: "_ZTSN4absl13base_internal14SchedulingModeE")
!773 = !DIFile(filename: "internal/scheduling_mode.h", directory: "/proc/self/cwd", checksumkind: CSK_MD5, checksum: "e70cae15ea2c13061e9e402c635cfb40")
!774 = !{!775, !776}
!775 = !DIEnumerator(name: "SCHEDULE_KERNEL_ONLY", value: 0, isUnsigned: true)
!776 = !DIEnumerator(name: "SCHEDULE_COOPERATIVE_AND_KERNEL", value: 1, isUnsigned: true)
!777 = !DISubprogram(name: "SpinLock", scope: !565, file: !566, line: 68, type: !778, scopeLine: 68, flags: DIFlagPublic | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!778 = !DISubroutineType(types: !779)
!779 = !{null, !768, !780, !772}
!780 = distinct !DICompositeType(tag: DW_TAG_enumeration_type, name: "ConstInitType", scope: !9, file: !781, line: 75, baseType: !79, size: 32, elements: !782, identifier: "_ZTSN4absl13ConstInitTypeE")
!781 = !DIFile(filename: "absl/b/const_init.h", directory: "/proc/self/cwd", checksumkind: CSK_MD5, checksum: "72a063c5f0747b5033d809ad67d19690")
!782 = !{!783}
!783 = !DIEnumerator(name: "kConstInit", value: 0, isUnsigned: true)
!784 = !DISubprogram(name: "~SpinLock", scope: !565, file: !566, line: 77, type: !766, scopeLine: 77, flags: DIFlagPublic | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!785 = !DISubprogram(name: "Lock", linkageName: "_ZN4absl13base_internal8SpinLock4LockEv", scope: !565, file: !566, line: 81, type: !766, scopeLine: 81, flags: DIFlagPublic | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!786 = !DISubprogram(name: "TryLock", linkageName: "_ZN4absl13base_internal8SpinLock7TryLockEv", scope: !565, file: !566, line: 93, type: !787, scopeLine: 93, flags: DIFlagPublic | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!787 = !DISubroutineType(types: !788)
!788 = !{!19, !768}
!789 = !DISubprogram(name: "Unlock", linkageName: "_ZN4absl13base_internal8SpinLock6UnlockEv", scope: !565, file: !566, line: 103, type: !766, scopeLine: 103, flags: DIFlagPublic | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!790 = !DISubprogram(name: "IsHeld", linkageName: "_ZNK4absl13base_internal8SpinLock6IsHeldEv", scope: !565, file: !566, line: 124, type: !791, scopeLine: 124, flags: DIFlagPublic | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!791 = !DISubroutineType(types: !792)
!792 = !{!19, !793}
!793 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !794, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!794 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !565)
!795 = !DISubprogram(name: "EncodeWaitCycles", linkageName: "_ZN4absl13base_internal8SpinLock16EncodeWaitCyclesEll", scope: !565, file: !566, line: 133, type: !796, scopeLine: 133, flags: DIFlagProtected | DIFlagPrototyped | DIFlagStaticMember, spFlags: DISPFlagOptimized)
!796 = !DISubroutineType(types: !797)
!797 = !{!369, !182, !182}
!798 = !DISubprogram(name: "DecodeWaitCycles", linkageName: "_ZN4absl13base_internal8SpinLock16DecodeWaitCyclesEj", scope: !565, file: !566, line: 137, type: !799, scopeLine: 137, flags: DIFlagProtected | DIFlagPrototyped | DIFlagStaticMember, spFlags: DISPFlagOptimized)
!799 = !DISubroutineType(types: !800)
!800 = !{!801, !369}
!801 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint64_t", file: !179, line: 55, baseType: !802)
!802 = !DIBasicType(name: "long unsigned int", size: 64, encoding: DW_ATE_unsigned)
!803 = !DISubprogram(name: "IsCooperative", linkageName: "_ZN4absl13base_internal8SpinLock13IsCooperativeENS0_14SchedulingModeE", scope: !565, file: !566, line: 170, type: !804, scopeLine: 170, flags: DIFlagPrototyped | DIFlagStaticMember, spFlags: DISPFlagOptimized)
!804 = !DISubroutineType(types: !805)
!805 = !{!19, !772}
!806 = !DISubprogram(name: "TryLockInternal", linkageName: "_ZN4absl13base_internal8SpinLock15TryLockInternalEjj", scope: !565, file: !566, line: 175, type: !807, scopeLine: 175, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!807 = !DISubroutineType(types: !808)
!808 = !{!369, !768, !369, !369}
!809 = !DISubprogram(name: "SlowLock", linkageName: "_ZN4absl13base_internal8SpinLock8SlowLockEv", scope: !565, file: !566, line: 176, type: !766, scopeLine: 176, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!810 = !DISubprogram(name: "SlowUnlock", linkageName: "_ZN4absl13base_internal8SpinLock10SlowUnlockEj", scope: !565, file: !566, line: 177, type: !811, scopeLine: 177, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!811 = !DISubroutineType(types: !812)
!812 = !{null, !768, !369}
!813 = !DISubprogram(name: "SpinLoop", linkageName: "_ZN4absl13base_internal8SpinLock8SpinLoopEv", scope: !565, file: !566, line: 178, type: !814, scopeLine: 178, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!814 = !DISubroutineType(types: !815)
!815 = !{!369, !768}
!816 = !DISubprogram(name: "TryLockImpl", linkageName: "_ZN4absl13base_internal8SpinLock11TryLockImplEv", scope: !565, file: !566, line: 180, type: !787, scopeLine: 180, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!817 = !DISubprogram(name: "SpinLock", scope: !565, file: !566, line: 187, type: !818, scopeLine: 187, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!818 = !DISubroutineType(types: !819)
!819 = !{null, !768, !820}
!820 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !794, size: 64)
!821 = !DISubprogram(name: "operator=", linkageName: "_ZN4absl13base_internal8SpinLockaSERKS1_", scope: !565, file: !566, line: 188, type: !822, scopeLine: 188, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!822 = !DISubroutineType(types: !823)
!823 = !{!824, !768, !820}
!824 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !565, size: 64)
!825 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !194, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!826 = !DISubprogram(name: "get_bound_schedulable", linkageName: "_ZNK4absl13base_internal14ThreadIdentity14SchedulerState21get_bound_schedulableEv", scope: !194, file: !6, line: 179, type: !827, scopeLine: 179, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!827 = !DISubroutineType(types: !828)
!828 = !{!210, !829}
!829 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !830, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!830 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !194)
!831 = !DIDerivedType(tag: DW_TAG_member, name: "padding", scope: !190, file: !6, line: 186, baseType: !832, size: 256, offset: 768)
!832 = !DICompositeType(tag: DW_TAG_array_type, baseType: !833, size: 256, elements: !834)
!833 = !DIBasicType(name: "char", size: 8, encoding: DW_ATE_unsigned_char)
!834 = !{!835}
!835 = !DISubrange(count: 32)
!836 = !DIDerivedType(tag: DW_TAG_member, name: "waiter_state", scope: !190, file: !6, line: 192, baseType: !837, size: 1024, offset: 1024)
!837 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "WaiterState", scope: !190, file: !6, line: 190, size: 1024, flags: DIFlagTypePassByValue, elements: !838, identifier: "_ZTSN4absl13base_internal14ThreadIdentity11WaiterStateE")
!838 = !{!839}
!839 = !DIDerivedType(tag: DW_TAG_member, name: "data", scope: !837, file: !6, line: 191, baseType: !840, size: 1024)
!840 = !DICompositeType(tag: DW_TAG_array_type, baseType: !833, size: 1024, elements: !841)
!841 = !{!842}
!842 = !DISubrange(count: 128)
!843 = !DIDerivedType(tag: DW_TAG_member, name: "blocked_count_ptr", scope: !190, file: !6, line: 195, baseType: !844, size: 64, offset: 2048)
!844 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !371, size: 64)
!845 = !DIDerivedType(tag: DW_TAG_member, name: "ticker", scope: !190, file: !6, line: 200, baseType: !371, size: 32, offset: 2112)
!846 = !DIDerivedType(tag: DW_TAG_member, name: "wait_start", scope: !190, file: !6, line: 201, baseType: !371, size: 32, offset: 2144)
!847 = !DIDerivedType(tag: DW_TAG_member, name: "is_idle", scope: !190, file: !6, line: 202, baseType: !848, size: 8, offset: 2176)
!848 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "atomic<bool>", scope: !28, file: !27, line: 1806, size: 8, flags: DIFlagTypePassByReference, elements: !849, templateParams: !868, identifier: "_ZTSNSt3__16atomicIbEE")
!849 = !{!850, !953, !957, !960, !965, !968, !974}
!850 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !848, baseType: !851, extraData: i32 0)
!851 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__atomic_base<bool, false>", scope: !28, file: !27, line: 1612, size: 8, flags: DIFlagTypePassByReference, elements: !852, templateParams: !952, identifier: "_ZTSNSt3__113__atomic_baseIbLb0EEE")
!852 = !{!853, !879, !880, !886, !891, !895, !899, !902, !905, !906, !907, !910, !913, !917, !920, !921, !922, !925, !928, !929, !930, !933, !936, !939, !942, !943, !944, !945, !948}
!853 = !DIDerivedType(tag: DW_TAG_member, name: "__a_", scope: !851, file: !27, line: 1614, baseType: !854, size: 8)
!854 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__cxx_atomic_impl<bool, std::__cxx_atomic_base_impl<bool> >", scope: !28, file: !27, line: 1514, size: 8, flags: DIFlagTypePassByValue, elements: !855, templateParams: !877, identifier: "_ZTSNSt3__117__cxx_atomic_implIbNS_22__cxx_atomic_base_implIbEEEE")
!855 = !{!856, !870, !874}
!856 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !854, baseType: !857, extraData: i32 0)
!857 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__cxx_atomic_base_impl<bool>", scope: !28, file: !27, line: 958, size: 8, flags: DIFlagTypePassByValue, elements: !858, templateParams: !868, identifier: "_ZTSNSt3__122__cxx_atomic_base_implIbEE")
!858 = !{!859, !861, !865}
!859 = !DIDerivedType(tag: DW_TAG_member, name: "__a_value", scope: !857, file: !27, line: 968, baseType: !860, size: 8)
!860 = !DIDerivedType(tag: DW_TAG_atomic_type, baseType: !19)
!861 = !DISubprogram(name: "__cxx_atomic_base_impl", scope: !857, file: !27, line: 962, type: !862, scopeLine: 962, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!862 = !DISubroutineType(types: !863)
!863 = !{null, !864}
!864 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !857, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!865 = !DISubprogram(name: "__cxx_atomic_base_impl", scope: !857, file: !27, line: 966, type: !866, scopeLine: 966, flags: DIFlagExplicit | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!866 = !DISubroutineType(types: !867)
!867 = !{null, !864, !19}
!868 = !{!869}
!869 = !DITemplateTypeParameter(name: "_Tp", type: !19)
!870 = !DISubprogram(name: "__cxx_atomic_impl", scope: !854, file: !27, line: 1521, type: !871, scopeLine: 1521, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!871 = !DISubroutineType(types: !872)
!872 = !{null, !873}
!873 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !854, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!874 = !DISubprogram(name: "__cxx_atomic_impl", scope: !854, file: !27, line: 1522, type: !875, scopeLine: 1522, flags: DIFlagExplicit | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!875 = !DISubroutineType(types: !876)
!876 = !{null, !873, !19}
!877 = !{!869, !878}
!878 = !DITemplateTypeParameter(name: "_Base", type: !857)
!879 = !DIDerivedType(tag: DW_TAG_member, name: "is_always_lock_free", scope: !851, file: !27, line: 1617, baseType: !61, flags: DIFlagStaticMember)
!880 = !DISubprogram(name: "is_lock_free", linkageName: "_ZNVKSt3__113__atomic_baseIbLb0EE12is_lock_freeEv", scope: !851, file: !27, line: 1621, type: !881, scopeLine: 1621, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!881 = !DISubroutineType(types: !882)
!882 = !{!19, !883}
!883 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !884, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!884 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !885)
!885 = !DIDerivedType(tag: DW_TAG_volatile_type, baseType: !851)
!886 = !DISubprogram(name: "is_lock_free", linkageName: "_ZNKSt3__113__atomic_baseIbLb0EE12is_lock_freeEv", scope: !851, file: !27, line: 1624, type: !887, scopeLine: 1624, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!887 = !DISubroutineType(types: !888)
!888 = !{!19, !889}
!889 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !890, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!890 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !851)
!891 = !DISubprogram(name: "store", linkageName: "_ZNVSt3__113__atomic_baseIbLb0EE5storeEbNS_12memory_orderE", scope: !851, file: !27, line: 1627, type: !892, scopeLine: 1627, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!892 = !DISubroutineType(types: !893)
!893 = !{null, !894, !19, !77}
!894 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !885, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!895 = !DISubprogram(name: "store", linkageName: "_ZNSt3__113__atomic_baseIbLb0EE5storeEbNS_12memory_orderE", scope: !851, file: !27, line: 1631, type: !896, scopeLine: 1631, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!896 = !DISubroutineType(types: !897)
!897 = !{null, !898, !19, !77}
!898 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !851, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!899 = !DISubprogram(name: "load", linkageName: "_ZNVKSt3__113__atomic_baseIbLb0EE4loadENS_12memory_orderE", scope: !851, file: !27, line: 1635, type: !900, scopeLine: 1635, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!900 = !DISubroutineType(types: !901)
!901 = !{!19, !883, !77}
!902 = !DISubprogram(name: "load", linkageName: "_ZNKSt3__113__atomic_baseIbLb0EE4loadENS_12memory_orderE", scope: !851, file: !27, line: 1639, type: !903, scopeLine: 1639, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!903 = !DISubroutineType(types: !904)
!904 = !{!19, !889, !77}
!905 = !DISubprogram(name: "operator bool", linkageName: "_ZNVKSt3__113__atomic_baseIbLb0EEcvbEv", scope: !851, file: !27, line: 1643, type: !881, scopeLine: 1643, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!906 = !DISubprogram(name: "operator bool", linkageName: "_ZNKSt3__113__atomic_baseIbLb0EEcvbEv", scope: !851, file: !27, line: 1645, type: !887, scopeLine: 1645, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!907 = !DISubprogram(name: "exchange", linkageName: "_ZNVSt3__113__atomic_baseIbLb0EE8exchangeEbNS_12memory_orderE", scope: !851, file: !27, line: 1647, type: !908, scopeLine: 1647, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!908 = !DISubroutineType(types: !909)
!909 = !{!19, !894, !19, !77}
!910 = !DISubprogram(name: "exchange", linkageName: "_ZNSt3__113__atomic_baseIbLb0EE8exchangeEbNS_12memory_orderE", scope: !851, file: !27, line: 1650, type: !911, scopeLine: 1650, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!911 = !DISubroutineType(types: !912)
!912 = !{!19, !898, !19, !77}
!913 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNVSt3__113__atomic_baseIbLb0EE21compare_exchange_weakERbbNS_12memory_orderES3_", scope: !851, file: !27, line: 1653, type: !914, scopeLine: 1653, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!914 = !DISubroutineType(types: !915)
!915 = !{!19, !894, !916, !19, !77, !77}
!916 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !19, size: 64)
!917 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNSt3__113__atomic_baseIbLb0EE21compare_exchange_weakERbbNS_12memory_orderES3_", scope: !851, file: !27, line: 1658, type: !918, scopeLine: 1658, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!918 = !DISubroutineType(types: !919)
!919 = !{!19, !898, !916, !19, !77, !77}
!920 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNVSt3__113__atomic_baseIbLb0EE23compare_exchange_strongERbbNS_12memory_orderES3_", scope: !851, file: !27, line: 1663, type: !914, scopeLine: 1663, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!921 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNSt3__113__atomic_baseIbLb0EE23compare_exchange_strongERbbNS_12memory_orderES3_", scope: !851, file: !27, line: 1668, type: !918, scopeLine: 1668, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!922 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNVSt3__113__atomic_baseIbLb0EE21compare_exchange_weakERbbNS_12memory_orderE", scope: !851, file: !27, line: 1673, type: !923, scopeLine: 1673, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!923 = !DISubroutineType(types: !924)
!924 = !{!19, !894, !916, !19, !77}
!925 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNSt3__113__atomic_baseIbLb0EE21compare_exchange_weakERbbNS_12memory_orderE", scope: !851, file: !27, line: 1677, type: !926, scopeLine: 1677, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!926 = !DISubroutineType(types: !927)
!927 = !{!19, !898, !916, !19, !77}
!928 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNVSt3__113__atomic_baseIbLb0EE23compare_exchange_strongERbbNS_12memory_orderE", scope: !851, file: !27, line: 1681, type: !923, scopeLine: 1681, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!929 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNSt3__113__atomic_baseIbLb0EE23compare_exchange_strongERbbNS_12memory_orderE", scope: !851, file: !27, line: 1685, type: !926, scopeLine: 1685, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!930 = !DISubprogram(name: "wait", linkageName: "_ZNVKSt3__113__atomic_baseIbLb0EE4waitEbNS_12memory_orderE", scope: !851, file: !27, line: 1689, type: !931, scopeLine: 1689, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!931 = !DISubroutineType(types: !932)
!932 = !{null, !883, !19, !77}
!933 = !DISubprogram(name: "wait", linkageName: "_ZNKSt3__113__atomic_baseIbLb0EE4waitEbNS_12memory_orderE", scope: !851, file: !27, line: 1691, type: !934, scopeLine: 1691, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!934 = !DISubroutineType(types: !935)
!935 = !{null, !889, !19, !77}
!936 = !DISubprogram(name: "notify_one", linkageName: "_ZNVSt3__113__atomic_baseIbLb0EE10notify_oneEv", scope: !851, file: !27, line: 1693, type: !937, scopeLine: 1693, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!937 = !DISubroutineType(types: !938)
!938 = !{null, !894}
!939 = !DISubprogram(name: "notify_one", linkageName: "_ZNSt3__113__atomic_baseIbLb0EE10notify_oneEv", scope: !851, file: !27, line: 1695, type: !940, scopeLine: 1695, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!940 = !DISubroutineType(types: !941)
!941 = !{null, !898}
!942 = !DISubprogram(name: "notify_all", linkageName: "_ZNVSt3__113__atomic_baseIbLb0EE10notify_allEv", scope: !851, file: !27, line: 1697, type: !937, scopeLine: 1697, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!943 = !DISubprogram(name: "notify_all", linkageName: "_ZNSt3__113__atomic_baseIbLb0EE10notify_allEv", scope: !851, file: !27, line: 1699, type: !940, scopeLine: 1699, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!944 = !DISubprogram(name: "__atomic_base", scope: !851, file: !27, line: 1703, type: !940, scopeLine: 1703, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!945 = !DISubprogram(name: "__atomic_base", scope: !851, file: !27, line: 1706, type: !946, scopeLine: 1706, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!946 = !DISubroutineType(types: !947)
!947 = !{null, !898, !19}
!948 = !DISubprogram(name: "__atomic_base", scope: !851, file: !27, line: 1709, type: !949, scopeLine: 1709, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!949 = !DISubroutineType(types: !950)
!950 = !{null, !898, !951}
!951 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !890, size: 64)
!952 = !{!869, !149}
!953 = !DISubprogram(name: "atomic", scope: !848, file: !27, line: 1813, type: !954, scopeLine: 1813, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!954 = !DISubroutineType(types: !955)
!955 = !{null, !956}
!956 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !848, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!957 = !DISubprogram(name: "atomic", scope: !848, file: !27, line: 1815, type: !958, scopeLine: 1815, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!958 = !DISubroutineType(types: !959)
!959 = !{null, !956, !19}
!960 = !DISubprogram(name: "operator=", linkageName: "_ZNVSt3__16atomicIbEaSEb", scope: !848, file: !27, line: 1818, type: !961, scopeLine: 1818, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!961 = !DISubroutineType(types: !962)
!962 = !{!19, !963, !19}
!963 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !964, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!964 = !DIDerivedType(tag: DW_TAG_volatile_type, baseType: !848)
!965 = !DISubprogram(name: "operator=", linkageName: "_ZNSt3__16atomicIbEaSEb", scope: !848, file: !27, line: 1821, type: !966, scopeLine: 1821, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!966 = !DISubroutineType(types: !967)
!967 = !{!19, !956, !19}
!968 = !DISubprogram(name: "operator=", linkageName: "_ZNSt3__16atomicIbEaSERKS1_", scope: !848, file: !27, line: 1824, type: !969, scopeLine: 1824, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!969 = !DISubroutineType(types: !970)
!970 = !{!971, !956, !972}
!971 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !848, size: 64)
!972 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !973, size: 64)
!973 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !848)
!974 = !DISubprogram(name: "operator=", linkageName: "_ZNVSt3__16atomicIbEaSERKS1_", scope: !848, file: !27, line: 1825, type: !975, scopeLine: 1825, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!975 = !DISubroutineType(types: !976)
!976 = !{!971, !963, !972}
!977 = !DIDerivedType(tag: DW_TAG_member, name: "next", scope: !190, file: !6, line: 204, baseType: !189, size: 64, offset: 2240)
!978 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !7, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!979 = !{!980, !981}
!980 = !DIEnumerator(name: "kAvailable", value: 0, isUnsigned: true)
!981 = !DIEnumerator(name: "kQueued", value: 1, isUnsigned: true)
!982 = distinct !DICompositeType(tag: DW_TAG_enumeration_type, name: "__legacy_memory_order", scope: !28, file: !27, line: 630, baseType: !79, size: 32, elements: !983, identifier: "_ZTSNSt3__121__legacy_memory_orderE")
!983 = !{!984, !985, !986, !987, !988, !989}
!984 = !DIEnumerator(name: "__mo_relaxed", value: 0, isUnsigned: true)
!985 = !DIEnumerator(name: "__mo_consume", value: 1, isUnsigned: true)
!986 = !DIEnumerator(name: "__mo_acquire", value: 2, isUnsigned: true)
!987 = !DIEnumerator(name: "__mo_release", value: 3, isUnsigned: true)
!988 = !DIEnumerator(name: "__mo_acq_rel", value: 4, isUnsigned: true)
!989 = !DIEnumerator(name: "__mo_seq_cst", value: 5, isUnsigned: true)
!990 = !DICompositeType(tag: DW_TAG_enumeration_type, scope: !8, file: !991, line: 135, baseType: !79, size: 32, elements: !992)
!991 = !DIFile(filename: "./absl/b/call_once.h", directory: "/proc/self/cwd", checksumkind: CSK_MD5, checksum: "ed937495025b68b773bac7db3c0e7f9f")
!992 = !{!993, !994, !995, !996}
!993 = !DIEnumerator(name: "kOnceInit", value: 0, isUnsigned: true)
!994 = !DIEnumerator(name: "kOnceRunning", value: 1707250555, isUnsigned: true)
!995 = !DIEnumerator(name: "kOnceWaiter", value: 94570706, isUnsigned: true)
!996 = !DIEnumerator(name: "kOnceDone", value: 221, isUnsigned: true)
!997 = distinct !DICompositeType(tag: DW_TAG_enumeration_type, name: "LogSeverity", scope: !9, file: !998, line: 73, baseType: !13, size: 32, flags: DIFlagEnumClass, elements: !999, identifier: "_ZTSN4absl11LogSeverityE")
!998 = !DIFile(filename: "absl/b/log_severity.h", directory: "/proc/self/cwd", checksumkind: CSK_MD5, checksum: "073a8c3d6cf979f4c9eb1b2d82a5b712")
!999 = !{!1000, !1001, !1002, !1003}
!1000 = !DIEnumerator(name: "kInfo", value: 0)
!1001 = !DIEnumerator(name: "kWarning", value: 1)
!1002 = !DIEnumerator(name: "kError", value: 2)
!1003 = !DIEnumerator(name: "kFatal", value: 3)
!1004 = !{!369, !1005, !1021, !1026, !802, !1040, !565}
!1005 = !DIDerivedType(tag: DW_TAG_typedef, name: "__ptr_type", scope: !1006, file: !27, line: 1014, baseType: !1014)
!1006 = distinct !DISubprogram(name: "__cxx_atomic_load<int>", linkageName: "_ZNSt3__117__cxx_atomic_loadIiEET_PKNS_22__cxx_atomic_base_implIS1_EENS_12memory_orderE", scope: !28, file: !27, line: 1013, type: !1007, scopeLine: 1013, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, templateParams: !394, retainedNodes: !1011)
!1007 = !DISubroutineType(types: !1008)
!1008 = !{!13, !1009, !77}
!1009 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1010, size: 64)
!1010 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !383)
!1011 = !{!1012, !1013}
!1012 = !DILocalVariable(name: "__a", arg: 1, scope: !1006, file: !27, line: 1013, type: !1009)
!1013 = !DILocalVariable(name: "__order", arg: 2, scope: !1006, file: !27, line: 1013, type: !77)
!1014 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1015, size: 64)
!1015 = !DIDerivedType(tag: DW_TAG_typedef, name: "type", scope: !1017, file: !1016, line: 668, baseType: !386)
!1016 = !DIFile(filename: "toolchain/bin/../include/c++/v1/type_traits", directory: "/proc/self/cwd")
!1017 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "remove_const<_Atomic(int)>", scope: !28, file: !1016, line: 668, size: 8, flags: DIFlagTypePassByValue, elements: !1018, templateParams: !1019, identifier: "_ZTSNSt3__112remove_constIU7_AtomiciEE")
!1018 = !{}
!1019 = !{!1020}
!1020 = !DITemplateTypeParameter(name: "_Tp", type: !386)
!1021 = !DIDerivedType(tag: DW_TAG_typedef, name: "__memory_order_underlying_t", scope: !28, file: !27, line: 639, baseType: !1022)
!1022 = !DIDerivedType(tag: DW_TAG_typedef, name: "type", scope: !1023, file: !1016, line: 4108, baseType: !79)
!1023 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__1nderlying_type_impl<std::__legacy_memory_order, true>", scope: !28, file: !1016, line: 4106, size: 8, flags: DIFlagTypePassByValue, elements: !1018, templateParams: !1024, identifier: "_ZTSNSt3__122__1nderlying_type_implINS_21__legacy_memory_orderELb1EEE")
!1024 = !{!1025, !533}
!1025 = !DITemplateTypeParameter(name: "_Tp", type: !982)
!1026 = !DIDerivedType(tag: DW_TAG_typedef, name: "__ptr_type", scope: !1027, file: !27, line: 1014, baseType: !1035)
!1027 = distinct !DISubprogram(name: "__cxx_atomic_load<unsigned int>", linkageName: "_ZNSt3__117__cxx_atomic_loadIjEET_PKNS_22__cxx_atomic_base_implIS1_EENS_12memory_orderE", scope: !28, file: !27, line: 1013, type: !1028, scopeLine: 1013, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, templateParams: !598, retainedNodes: !1032)
!1028 = !DISubroutineType(types: !1029)
!1029 = !{!79, !1030, !77}
!1030 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1031, size: 64)
!1031 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !587)
!1032 = !{!1033, !1034}
!1033 = !DILocalVariable(name: "__a", arg: 1, scope: !1027, file: !27, line: 1013, type: !1030)
!1034 = !DILocalVariable(name: "__order", arg: 2, scope: !1027, file: !27, line: 1013, type: !77)
!1035 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1036, size: 64)
!1036 = !DIDerivedType(tag: DW_TAG_typedef, name: "type", scope: !1037, file: !1016, line: 668, baseType: !590)
!1037 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "remove_const<_Atomic(unsigned int)>", scope: !28, file: !1016, line: 668, size: 8, flags: DIFlagTypePassByValue, elements: !1018, templateParams: !1038, identifier: "_ZTSNSt3__112remove_constIU7_AtomicjEE")
!1038 = !{!1039}
!1039 = !DITemplateTypeParameter(name: "_Tp", type: !590)
!1040 = !DIDerivedType(tag: DW_TAG_typedef, name: "__ptr_type", scope: !1041, file: !27, line: 1014, baseType: !1067)
!1041 = distinct !DISubprogram(name: "__cxx_atomic_load<void (*)(const void *, long)>", linkageName: "_ZNSt3__117__cxx_atomic_loadIPFvPKvlEEET_PKNS_22__cxx_atomic_base_implIS5_EENS_12memory_orderE", scope: !28, file: !27, line: 1013, type: !1042, scopeLine: 1013, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, templateParams: !1062, retainedNodes: !1064)
!1042 = !DISubroutineType(types: !1043)
!1043 = !{!1044, !1049, !77}
!1044 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1045, size: 64)
!1045 = !DISubroutineType(types: !1046)
!1046 = !{null, !1047, !180}
!1047 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1048, size: 64)
!1048 = !DIDerivedType(tag: DW_TAG_const_type, baseType: null)
!1049 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1050, size: 64)
!1050 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !1051)
!1051 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__cxx_atomic_base_impl<void (*)(const void *, long)>", scope: !28, file: !27, line: 958, size: 64, flags: DIFlagTypePassByValue, elements: !1052, templateParams: !1062, identifier: "_ZTSNSt3__122__cxx_atomic_base_implIPFvPKvlEEE")
!1052 = !{!1053, !1055, !1059}
!1053 = !DIDerivedType(tag: DW_TAG_member, name: "__a_value", scope: !1051, file: !27, line: 968, baseType: !1054, size: 64)
!1054 = !DIDerivedType(tag: DW_TAG_atomic_type, baseType: !1044)
!1055 = !DISubprogram(name: "__cxx_atomic_base_impl", scope: !1051, file: !27, line: 962, type: !1056, scopeLine: 962, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1056 = !DISubroutineType(types: !1057)
!1057 = !{null, !1058}
!1058 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1051, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!1059 = !DISubprogram(name: "__cxx_atomic_base_impl", scope: !1051, file: !27, line: 966, type: !1060, scopeLine: 966, flags: DIFlagExplicit | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1060 = !DISubroutineType(types: !1061)
!1061 = !{null, !1058, !1044}
!1062 = !{!1063}
!1063 = !DITemplateTypeParameter(name: "_Tp", type: !1044)
!1064 = !{!1065, !1066}
!1065 = !DILocalVariable(name: "__a", arg: 1, scope: !1041, file: !27, line: 1013, type: !1049)
!1066 = !DILocalVariable(name: "__order", arg: 2, scope: !1041, file: !27, line: 1013, type: !77)
!1067 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1068, size: 64)
!1068 = !DIDerivedType(tag: DW_TAG_typedef, name: "type", scope: !1069, file: !1016, line: 668, baseType: !1054)
!1069 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "remove_const<_Atomic(void (*)(const void *, long))>", scope: !28, file: !1016, line: 668, size: 8, flags: DIFlagTypePassByValue, elements: !1018, templateParams: !1070, identifier: "_ZTSNSt3__112remove_constIU7_AtomicPFvPKvlEEE")
!1070 = !{!1071}
!1071 = !DITemplateTypeParameter(name: "_Tp", type: !1054)
!1072 = !{!1073, !1096, !1098, !1108, !1110, !1112, !0, !1293, !1295, !1297, !1299, !1301}
!1073 = !DIGlobalVariableExpression(var: !1074, expr: !DIExpression())
!1074 = distinct !DIGlobalVariable(name: "init_adaptive_spin_count", scope: !1075, file: !3, line: 88, type: !1080, isLocal: true, isDefinition: true)
!1075 = distinct !DISubprogram(name: "SpinLoop", linkageName: "_ZN4absl13base_internal8SpinLock8SpinLoopEv", scope: !565, file: !3, line: 85, type: !814, scopeLine: 85, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !813, retainedNodes: !1076)
!1076 = !{!1077, !1078, !1079}
!1077 = !DILocalVariable(name: "this", arg: 1, scope: !1075, type: !564, flags: DIFlagArtificial | DIFlagObjectPointer)
!1078 = !DILocalVariable(name: "c", scope: !1075, file: !3, line: 94, type: !13)
!1079 = !DILocalVariable(name: "lock_value", scope: !1075, file: !3, line: 95, type: !369)
!1080 = distinct !DICompositeType(tag: DW_TAG_class_type, name: "once_flag", scope: !9, file: !991, line: 85, size: 32, flags: DIFlagTypePassByReference | DIFlagNonTrivial, elements: !1081, identifier: "_ZTSN4absl9once_flagE")
!1081 = !{!1082, !1083, !1087, !1092}
!1082 = !DIDerivedType(tag: DW_TAG_member, name: "control_", scope: !1080, file: !991, line: 93, baseType: !575, size: 32)
!1083 = !DISubprogram(name: "once_flag", scope: !1080, file: !991, line: 87, type: !1084, scopeLine: 87, flags: DIFlagPublic | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1084 = !DISubroutineType(types: !1085)
!1085 = !{null, !1086}
!1086 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1080, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!1087 = !DISubprogram(name: "once_flag", scope: !1080, file: !991, line: 88, type: !1088, scopeLine: 88, flags: DIFlagPublic | DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!1088 = !DISubroutineType(types: !1089)
!1089 = !{null, !1086, !1090}
!1090 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !1091, size: 64)
!1091 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !1080)
!1092 = !DISubprogram(name: "operator=", linkageName: "_ZN4absl9once_flagaSERKS0_", scope: !1080, file: !991, line: 89, type: !1093, scopeLine: 89, flags: DIFlagPublic | DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!1093 = !DISubroutineType(types: !1094)
!1094 = !{!1095, !1086, !1090}
!1095 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !1080, size: 64)
!1096 = !DIGlobalVariableExpression(var: !1097, expr: !DIExpression())
!1097 = distinct !DIGlobalVariable(name: "adaptive_spin_count", scope: !1075, file: !3, line: 89, type: !13, isLocal: true, isDefinition: true)
!1098 = !DIGlobalVariableExpression(var: !1099, expr: !DIExpression())
!1099 = distinct !DIGlobalVariable(name: "kMaxWaitTime", scope: !1100, file: !3, line: 198, type: !1107, isLocal: true, isDefinition: true)
!1100 = distinct !DISubprogram(name: "EncodeWaitCycles", linkageName: "_ZN4absl13base_internal8SpinLock16EncodeWaitCyclesEll", scope: !565, file: !3, line: 196, type: !796, scopeLine: 197, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !795, retainedNodes: !1101)
!1101 = !{!1102, !1103, !1104, !1105, !1106}
!1102 = !DILocalVariable(name: "wait_start_time", arg: 1, scope: !1100, file: !3, line: 196, type: !182)
!1103 = !DILocalVariable(name: "wait_end_time", arg: 2, scope: !1100, file: !3, line: 197, type: !182)
!1104 = !DILocalVariable(name: "scaled_wait_time", scope: !1100, file: !3, line: 200, type: !182)
!1105 = !DILocalVariable(name: "clamped", scope: !1100, file: !3, line: 205, type: !369)
!1106 = !DILocalVariable(name: "kMinWaitTime", scope: !1100, file: !3, line: 212, type: !569)
!1107 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !182)
!1108 = !DIGlobalVariableExpression(var: !1109, expr: !DIExpression(DW_OP_constu, 7, DW_OP_stack_value))
!1109 = distinct !DIGlobalVariable(name: "kProfileTimestampShift", scope: !8, file: !3, line: 191, type: !12, isLocal: true, isDefinition: true)
!1110 = !DIGlobalVariableExpression(var: !1111, expr: !DIExpression(DW_OP_constu, 3, DW_OP_stack_value))
!1111 = distinct !DIGlobalVariable(name: "kLockwordReservedShift", scope: !8, file: !3, line: 194, type: !12, isLocal: true, isDefinition: true)
!1112 = !DIGlobalVariableExpression(var: !1113, expr: !DIExpression())
!1113 = distinct !DIGlobalVariable(name: "submit_profile_data", linkageName: "_ZN4absl13base_internalL19submit_profile_dataE", scope: !8, file: !3, line: 62, type: !1114, isLocal: true, isDefinition: true)
!1114 = distinct !DICompositeType(tag: DW_TAG_class_type, name: "AtomicHook<void (*)(const void *, long)>", scope: !8, file: !1115, line: 72, size: 128, flags: DIFlagTypePassByReference | DIFlagNonTrivial, elements: !1116, templateParams: !1291, identifier: "_ZTSN4absl13base_internal10AtomicHookIPFvPKvlEEE")
!1115 = !DIFile(filename: "internal/atomic_hook.h", directory: "/proc/self/cwd", checksumkind: CSK_MD5, checksum: "15f53aa705dabf56a91c16d21913e484")
!1116 = !{!1117, !1270, !1273, !1277, !1280, !1281, !1286, !1287, !1288}
!1117 = !DIDerivedType(tag: DW_TAG_member, name: "hook_", scope: !1114, file: !1115, line: 166, baseType: !1118, size: 64)
!1118 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "atomic<void (*)(const void *, long)>", scope: !28, file: !27, line: 1831, size: 64, flags: DIFlagTypePassByReference, elements: !1119, templateParams: !1062, identifier: "_ZTSNSt3__16atomicIPFvPKvlEEE")
!1119 = !{!1120, !1214, !1218, !1221, !1226, !1229, !1232, !1235, !1236, !1237, !1240, !1243, !1244, !1245, !1248, !1251, !1252, !1253, !1256, !1259, !1260, !1261, !1267}
!1120 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !1118, baseType: !1121, extraData: i32 0)
!1121 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__atomic_base<void (*)(const void *, long), false>", scope: !28, file: !27, line: 1612, size: 64, flags: DIFlagTypePassByReference, elements: !1122, templateParams: !1213, identifier: "_ZTSNSt3__113__atomic_baseIPFvPKvlELb0EEE")
!1122 = !{!1123, !1136, !1137, !1143, !1148, !1152, !1156, !1159, !1162, !1165, !1168, !1171, !1174, !1178, !1181, !1182, !1183, !1186, !1189, !1190, !1191, !1194, !1197, !1200, !1203, !1204, !1205, !1206, !1209}
!1123 = !DIDerivedType(tag: DW_TAG_member, name: "__a_", scope: !1121, file: !27, line: 1614, baseType: !1124, size: 64)
!1124 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__cxx_atomic_impl<void (*)(const void *, long), std::__cxx_atomic_base_impl<void (*)(const void *, long)> >", scope: !28, file: !27, line: 1514, size: 64, flags: DIFlagTypePassByValue, elements: !1125, templateParams: !1134, identifier: "_ZTSNSt3__117__cxx_atomic_implIPFvPKvlENS_22__cxx_atomic_base_implIS4_EEEE")
!1125 = !{!1126, !1127, !1131}
!1126 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !1124, baseType: !1051, extraData: i32 0)
!1127 = !DISubprogram(name: "__cxx_atomic_impl", scope: !1124, file: !27, line: 1521, type: !1128, scopeLine: 1521, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1128 = !DISubroutineType(types: !1129)
!1129 = !{null, !1130}
!1130 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1124, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!1131 = !DISubprogram(name: "__cxx_atomic_impl", scope: !1124, file: !27, line: 1522, type: !1132, scopeLine: 1522, flags: DIFlagExplicit | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1132 = !DISubroutineType(types: !1133)
!1133 = !{null, !1130, !1044}
!1134 = !{!1063, !1135}
!1135 = !DITemplateTypeParameter(name: "_Base", type: !1051)
!1136 = !DIDerivedType(tag: DW_TAG_member, name: "is_always_lock_free", scope: !1121, file: !27, line: 1617, baseType: !61, flags: DIFlagStaticMember)
!1137 = !DISubprogram(name: "is_lock_free", linkageName: "_ZNVKSt3__113__atomic_baseIPFvPKvlELb0EE12is_lock_freeEv", scope: !1121, file: !27, line: 1621, type: !1138, scopeLine: 1621, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1138 = !DISubroutineType(types: !1139)
!1139 = !{!19, !1140}
!1140 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1141, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!1141 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !1142)
!1142 = !DIDerivedType(tag: DW_TAG_volatile_type, baseType: !1121)
!1143 = !DISubprogram(name: "is_lock_free", linkageName: "_ZNKSt3__113__atomic_baseIPFvPKvlELb0EE12is_lock_freeEv", scope: !1121, file: !27, line: 1624, type: !1144, scopeLine: 1624, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1144 = !DISubroutineType(types: !1145)
!1145 = !{!19, !1146}
!1146 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1147, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!1147 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !1121)
!1148 = !DISubprogram(name: "store", linkageName: "_ZNVSt3__113__atomic_baseIPFvPKvlELb0EE5storeES4_NS_12memory_orderE", scope: !1121, file: !27, line: 1627, type: !1149, scopeLine: 1627, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1149 = !DISubroutineType(types: !1150)
!1150 = !{null, !1151, !1044, !77}
!1151 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1142, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!1152 = !DISubprogram(name: "store", linkageName: "_ZNSt3__113__atomic_baseIPFvPKvlELb0EE5storeES4_NS_12memory_orderE", scope: !1121, file: !27, line: 1631, type: !1153, scopeLine: 1631, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1153 = !DISubroutineType(types: !1154)
!1154 = !{null, !1155, !1044, !77}
!1155 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1121, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!1156 = !DISubprogram(name: "load", linkageName: "_ZNVKSt3__113__atomic_baseIPFvPKvlELb0EE4loadENS_12memory_orderE", scope: !1121, file: !27, line: 1635, type: !1157, scopeLine: 1635, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1157 = !DISubroutineType(types: !1158)
!1158 = !{!1044, !1140, !77}
!1159 = !DISubprogram(name: "load", linkageName: "_ZNKSt3__113__atomic_baseIPFvPKvlELb0EE4loadENS_12memory_orderE", scope: !1121, file: !27, line: 1639, type: !1160, scopeLine: 1639, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1160 = !DISubroutineType(types: !1161)
!1161 = !{!1044, !1146, !77}
!1162 = !DISubprogram(name: "operator void (*)(const void *, long)", linkageName: "_ZNVKSt3__113__atomic_baseIPFvPKvlELb0EEcvS4_Ev", scope: !1121, file: !27, line: 1643, type: !1163, scopeLine: 1643, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1163 = !DISubroutineType(types: !1164)
!1164 = !{!1044, !1140}
!1165 = !DISubprogram(name: "operator void (*)(const void *, long)", linkageName: "_ZNKSt3__113__atomic_baseIPFvPKvlELb0EEcvS4_Ev", scope: !1121, file: !27, line: 1645, type: !1166, scopeLine: 1645, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1166 = !DISubroutineType(types: !1167)
!1167 = !{!1044, !1146}
!1168 = !DISubprogram(name: "exchange", linkageName: "_ZNVSt3__113__atomic_baseIPFvPKvlELb0EE8exchangeES4_NS_12memory_orderE", scope: !1121, file: !27, line: 1647, type: !1169, scopeLine: 1647, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1169 = !DISubroutineType(types: !1170)
!1170 = !{!1044, !1151, !1044, !77}
!1171 = !DISubprogram(name: "exchange", linkageName: "_ZNSt3__113__atomic_baseIPFvPKvlELb0EE8exchangeES4_NS_12memory_orderE", scope: !1121, file: !27, line: 1650, type: !1172, scopeLine: 1650, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1172 = !DISubroutineType(types: !1173)
!1173 = !{!1044, !1155, !1044, !77}
!1174 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNVSt3__113__atomic_baseIPFvPKvlELb0EE21compare_exchange_weakERS4_S4_NS_12memory_orderES7_", scope: !1121, file: !27, line: 1653, type: !1175, scopeLine: 1653, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1175 = !DISubroutineType(types: !1176)
!1176 = !{!19, !1151, !1177, !1044, !77, !77}
!1177 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !1044, size: 64)
!1178 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNSt3__113__atomic_baseIPFvPKvlELb0EE21compare_exchange_weakERS4_S4_NS_12memory_orderES7_", scope: !1121, file: !27, line: 1658, type: !1179, scopeLine: 1658, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1179 = !DISubroutineType(types: !1180)
!1180 = !{!19, !1155, !1177, !1044, !77, !77}
!1181 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNVSt3__113__atomic_baseIPFvPKvlELb0EE23compare_exchange_strongERS4_S4_NS_12memory_orderES7_", scope: !1121, file: !27, line: 1663, type: !1175, scopeLine: 1663, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1182 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNSt3__113__atomic_baseIPFvPKvlELb0EE23compare_exchange_strongERS4_S4_NS_12memory_orderES7_", scope: !1121, file: !27, line: 1668, type: !1179, scopeLine: 1668, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1183 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNVSt3__113__atomic_baseIPFvPKvlELb0EE21compare_exchange_weakERS4_S4_NS_12memory_orderE", scope: !1121, file: !27, line: 1673, type: !1184, scopeLine: 1673, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1184 = !DISubroutineType(types: !1185)
!1185 = !{!19, !1151, !1177, !1044, !77}
!1186 = !DISubprogram(name: "compare_exchange_weak", linkageName: "_ZNSt3__113__atomic_baseIPFvPKvlELb0EE21compare_exchange_weakERS4_S4_NS_12memory_orderE", scope: !1121, file: !27, line: 1677, type: !1187, scopeLine: 1677, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1187 = !DISubroutineType(types: !1188)
!1188 = !{!19, !1155, !1177, !1044, !77}
!1189 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNVSt3__113__atomic_baseIPFvPKvlELb0EE23compare_exchange_strongERS4_S4_NS_12memory_orderE", scope: !1121, file: !27, line: 1681, type: !1184, scopeLine: 1681, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1190 = !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNSt3__113__atomic_baseIPFvPKvlELb0EE23compare_exchange_strongERS4_S4_NS_12memory_orderE", scope: !1121, file: !27, line: 1685, type: !1187, scopeLine: 1685, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1191 = !DISubprogram(name: "wait", linkageName: "_ZNVKSt3__113__atomic_baseIPFvPKvlELb0EE4waitES4_NS_12memory_orderE", scope: !1121, file: !27, line: 1689, type: !1192, scopeLine: 1689, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1192 = !DISubroutineType(types: !1193)
!1193 = !{null, !1140, !1044, !77}
!1194 = !DISubprogram(name: "wait", linkageName: "_ZNKSt3__113__atomic_baseIPFvPKvlELb0EE4waitES4_NS_12memory_orderE", scope: !1121, file: !27, line: 1691, type: !1195, scopeLine: 1691, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1195 = !DISubroutineType(types: !1196)
!1196 = !{null, !1146, !1044, !77}
!1197 = !DISubprogram(name: "notify_one", linkageName: "_ZNVSt3__113__atomic_baseIPFvPKvlELb0EE10notify_oneEv", scope: !1121, file: !27, line: 1693, type: !1198, scopeLine: 1693, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1198 = !DISubroutineType(types: !1199)
!1199 = !{null, !1151}
!1200 = !DISubprogram(name: "notify_one", linkageName: "_ZNSt3__113__atomic_baseIPFvPKvlELb0EE10notify_oneEv", scope: !1121, file: !27, line: 1695, type: !1201, scopeLine: 1695, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1201 = !DISubroutineType(types: !1202)
!1202 = !{null, !1155}
!1203 = !DISubprogram(name: "notify_all", linkageName: "_ZNVSt3__113__atomic_baseIPFvPKvlELb0EE10notify_allEv", scope: !1121, file: !27, line: 1697, type: !1198, scopeLine: 1697, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1204 = !DISubprogram(name: "notify_all", linkageName: "_ZNSt3__113__atomic_baseIPFvPKvlELb0EE10notify_allEv", scope: !1121, file: !27, line: 1699, type: !1201, scopeLine: 1699, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1205 = !DISubprogram(name: "__atomic_base", scope: !1121, file: !27, line: 1703, type: !1201, scopeLine: 1703, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1206 = !DISubprogram(name: "__atomic_base", scope: !1121, file: !27, line: 1706, type: !1207, scopeLine: 1706, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1207 = !DISubroutineType(types: !1208)
!1208 = !{null, !1155, !1044}
!1209 = !DISubprogram(name: "__atomic_base", scope: !1121, file: !27, line: 1709, type: !1210, scopeLine: 1709, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!1210 = !DISubroutineType(types: !1211)
!1211 = !{null, !1155, !1212}
!1212 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !1147, size: 64)
!1213 = !{!1063, !149}
!1214 = !DISubprogram(name: "atomic", scope: !1118, file: !27, line: 1838, type: !1215, scopeLine: 1838, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1215 = !DISubroutineType(types: !1216)
!1216 = !{null, !1217}
!1217 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1118, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!1218 = !DISubprogram(name: "atomic", scope: !1118, file: !27, line: 1840, type: !1219, scopeLine: 1840, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1219 = !DISubroutineType(types: !1220)
!1220 = !{null, !1217, !1044}
!1221 = !DISubprogram(name: "operator=", linkageName: "_ZNVSt3__16atomicIPFvPKvlEEaSES4_", scope: !1118, file: !27, line: 1843, type: !1222, scopeLine: 1843, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1222 = !DISubroutineType(types: !1223)
!1223 = !{!1044, !1224, !1044}
!1224 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1225, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!1225 = !DIDerivedType(tag: DW_TAG_volatile_type, baseType: !1118)
!1226 = !DISubprogram(name: "operator=", linkageName: "_ZNSt3__16atomicIPFvPKvlEEaSES4_", scope: !1118, file: !27, line: 1846, type: !1227, scopeLine: 1846, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1227 = !DISubroutineType(types: !1228)
!1228 = !{!1044, !1217, !1044}
!1229 = !DISubprogram(name: "fetch_add", linkageName: "_ZNVSt3__16atomicIPFvPKvlEE9fetch_addElNS_12memory_orderE", scope: !1118, file: !27, line: 1850, type: !1230, scopeLine: 1850, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1230 = !DISubroutineType(types: !1231)
!1231 = !{!1044, !1224, !328, !77}
!1232 = !DISubprogram(name: "fetch_add", linkageName: "_ZNSt3__16atomicIPFvPKvlEE9fetch_addElNS_12memory_orderE", scope: !1118, file: !27, line: 1854, type: !1233, scopeLine: 1854, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1233 = !DISubroutineType(types: !1234)
!1234 = !{!1044, !1217, !328, !77}
!1235 = !DISubprogram(name: "fetch_sub", linkageName: "_ZNVSt3__16atomicIPFvPKvlEE9fetch_subElNS_12memory_orderE", scope: !1118, file: !27, line: 1857, type: !1230, scopeLine: 1857, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1236 = !DISubprogram(name: "fetch_sub", linkageName: "_ZNSt3__16atomicIPFvPKvlEE9fetch_subElNS_12memory_orderE", scope: !1118, file: !27, line: 1861, type: !1233, scopeLine: 1861, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1237 = !DISubprogram(name: "operator++", linkageName: "_ZNVSt3__16atomicIPFvPKvlEEppEi", scope: !1118, file: !27, line: 1865, type: !1238, scopeLine: 1865, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1238 = !DISubroutineType(types: !1239)
!1239 = !{!1044, !1224, !13}
!1240 = !DISubprogram(name: "operator++", linkageName: "_ZNSt3__16atomicIPFvPKvlEEppEi", scope: !1118, file: !27, line: 1867, type: !1241, scopeLine: 1867, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1241 = !DISubroutineType(types: !1242)
!1242 = !{!1044, !1217, !13}
!1243 = !DISubprogram(name: "operator--", linkageName: "_ZNVSt3__16atomicIPFvPKvlEEmmEi", scope: !1118, file: !27, line: 1869, type: !1238, scopeLine: 1869, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1244 = !DISubprogram(name: "operator--", linkageName: "_ZNSt3__16atomicIPFvPKvlEEmmEi", scope: !1118, file: !27, line: 1871, type: !1241, scopeLine: 1871, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1245 = !DISubprogram(name: "operator++", linkageName: "_ZNVSt3__16atomicIPFvPKvlEEppEv", scope: !1118, file: !27, line: 1873, type: !1246, scopeLine: 1873, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1246 = !DISubroutineType(types: !1247)
!1247 = !{!1044, !1224}
!1248 = !DISubprogram(name: "operator++", linkageName: "_ZNSt3__16atomicIPFvPKvlEEppEv", scope: !1118, file: !27, line: 1875, type: !1249, scopeLine: 1875, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1249 = !DISubroutineType(types: !1250)
!1250 = !{!1044, !1217}
!1251 = !DISubprogram(name: "operator--", linkageName: "_ZNVSt3__16atomicIPFvPKvlEEmmEv", scope: !1118, file: !27, line: 1877, type: !1246, scopeLine: 1877, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1252 = !DISubprogram(name: "operator--", linkageName: "_ZNSt3__16atomicIPFvPKvlEEmmEv", scope: !1118, file: !27, line: 1879, type: !1249, scopeLine: 1879, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1253 = !DISubprogram(name: "operator+=", linkageName: "_ZNVSt3__16atomicIPFvPKvlEEpLEl", scope: !1118, file: !27, line: 1881, type: !1254, scopeLine: 1881, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1254 = !DISubroutineType(types: !1255)
!1255 = !{!1044, !1224, !328}
!1256 = !DISubprogram(name: "operator+=", linkageName: "_ZNSt3__16atomicIPFvPKvlEEpLEl", scope: !1118, file: !27, line: 1883, type: !1257, scopeLine: 1883, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1257 = !DISubroutineType(types: !1258)
!1258 = !{!1044, !1217, !328}
!1259 = !DISubprogram(name: "operator-=", linkageName: "_ZNVSt3__16atomicIPFvPKvlEEmIEl", scope: !1118, file: !27, line: 1885, type: !1254, scopeLine: 1885, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1260 = !DISubprogram(name: "operator-=", linkageName: "_ZNSt3__16atomicIPFvPKvlEEmIEl", scope: !1118, file: !27, line: 1887, type: !1257, scopeLine: 1887, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1261 = !DISubprogram(name: "operator=", linkageName: "_ZNSt3__16atomicIPFvPKvlEEaSERKS5_", scope: !1118, file: !27, line: 1889, type: !1262, scopeLine: 1889, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!1262 = !DISubroutineType(types: !1263)
!1263 = !{!1264, !1217, !1265}
!1264 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !1118, size: 64)
!1265 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !1266, size: 64)
!1266 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !1118)
!1267 = !DISubprogram(name: "operator=", linkageName: "_ZNVSt3__16atomicIPFvPKvlEEaSERKS5_", scope: !1118, file: !27, line: 1890, type: !1268, scopeLine: 1890, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!1268 = !DISubroutineType(types: !1269)
!1269 = !{!1264, !1224, !1265}
!1270 = !DIDerivedType(tag: DW_TAG_member, name: "default_fn_", scope: !1114, file: !1115, line: 195, baseType: !1271, size: 64, offset: 64)
!1271 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !1272)
!1272 = !DIDerivedType(tag: DW_TAG_typedef, name: "FnPtr", scope: !1114, file: !1115, line: 74, baseType: !1044)
!1273 = !DISubprogram(name: "AtomicHook", scope: !1114, file: !1115, line: 78, type: !1274, scopeLine: 78, flags: DIFlagPublic | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1274 = !DISubroutineType(types: !1275)
!1275 = !{null, !1276}
!1276 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1114, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!1277 = !DISubprogram(name: "AtomicHook", scope: !1114, file: !1115, line: 83, type: !1278, scopeLine: 83, flags: DIFlagPublic | DIFlagExplicit | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1278 = !DISubroutineType(types: !1279)
!1279 = !{null, !1276, !1272}
!1280 = !DISubprogram(name: "Store", linkageName: "_ZN4absl13base_internal10AtomicHookIPFvPKvlEE5StoreES5_", scope: !1114, file: !1115, line: 107, type: !1278, scopeLine: 107, flags: DIFlagPublic | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1281 = !DISubprogram(name: "Load", linkageName: "_ZNK4absl13base_internal10AtomicHookIPFvPKvlEE4LoadEv", scope: !1114, file: !1115, line: 129, type: !1282, scopeLine: 129, flags: DIFlagPublic | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1282 = !DISubroutineType(types: !1283)
!1283 = !{!1272, !1284}
!1284 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1285, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!1285 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !1114)
!1286 = !DISubprogram(name: "DummyFunction", linkageName: "_ZN4absl13base_internal10AtomicHookIPFvPKvlEE13DummyFunctionES3_l", scope: !1114, file: !1115, line: 135, type: !1045, scopeLine: 135, flags: DIFlagPrototyped | DIFlagStaticMember, spFlags: DISPFlagOptimized)
!1287 = !DISubprogram(name: "DoLoad", linkageName: "_ZNK4absl13base_internal10AtomicHookIPFvPKvlEE6DoLoadEv", scope: !1114, file: !1115, line: 153, type: !1282, scopeLine: 153, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1288 = !DISubprogram(name: "DoStore", linkageName: "_ZN4absl13base_internal10AtomicHookIPFvPKvlEE7DoStoreES5_", scope: !1114, file: !1115, line: 157, type: !1289, scopeLine: 157, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1289 = !DISubroutineType(types: !1290)
!1290 = !{!19, !1276, !1272}
!1291 = !{!1292}
!1292 = !DITemplateTypeParameter(name: "T", type: !1044)
!1293 = !DIGlobalVariableExpression(var: !1294, expr: !DIExpression())
!1294 = distinct !DIGlobalVariable(name: "kSpinLockCooperative", linkageName: "_ZN4absl13base_internal8SpinLock20kSpinLockCooperativeE", scope: !2, file: !566, line: 162, type: !569, isLocal: false, isDefinition: true, declaration: !570)
!1295 = !DIGlobalVariableExpression(var: !1296, expr: !DIExpression())
!1296 = distinct !DIGlobalVariable(name: "kSpinLockDisabledScheduling", linkageName: "_ZN4absl13base_internal8SpinLock27kSpinLockDisabledSchedulingE", scope: !2, file: !566, line: 163, type: !569, isLocal: false, isDefinition: true, declaration: !571)
!1297 = !DIGlobalVariableExpression(var: !1298, expr: !DIExpression())
!1298 = distinct !DIGlobalVariable(name: "kSpinLockSleeper", linkageName: "_ZN4absl13base_internal8SpinLock16kSpinLockSleeperE", scope: !2, file: !566, line: 164, type: !569, isLocal: false, isDefinition: true, declaration: !572)
!1299 = !DIGlobalVariableExpression(var: !1300, expr: !DIExpression())
!1300 = distinct !DIGlobalVariable(name: "kWaitTimeMask", linkageName: "_ZN4absl13base_internal8SpinLock13kWaitTimeMaskE", scope: !2, file: !566, line: 166, type: !569, isLocal: false, isDefinition: true, declaration: !573)
!1301 = !DIGlobalVariableExpression(var: !1302, expr: !DIExpression())
!1302 = distinct !DIGlobalVariable(name: "trans", scope: !1303, file: !991, line: 168, type: !1338, isLocal: true, isDefinition: true)
!1303 = distinct !DISubprogram(name: "CallOnceImpl<(lambda at internal/spinlock.cc:90:62)>", linkageName: "_ZN4absl13base_internal12CallOnceImplIZNS0_8SpinLock8SpinLoopEvE3$_0JEEEvPNSt3__16atomicIjEENS0_14SchedulingModeEOT_DpOT0_", scope: !8, file: !991, line: 147, type: !1304, scopeLine: 149, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, templateParams: !1335, retainedNodes: !1309)
!1304 = !DISubroutineType(types: !1305)
!1305 = !{null, !1306, !772, !1307}
!1306 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !575, size: 64)
!1307 = !DIDerivedType(tag: DW_TAG_rvalue_reference_type, baseType: !1308, size: 64)
!1308 = distinct !DICompositeType(tag: DW_TAG_class_type, scope: !1075, file: !3, line: 90, size: 8, flags: DIFlagTypePassByValue | DIFlagNonTrivial, elements: !1018)
!1309 = !{!1310, !1311, !1312, !1313, !1315, !1322, !1334}
!1310 = !DILocalVariable(name: "control", arg: 1, scope: !1303, file: !991, line: 147, type: !1306)
!1311 = !DILocalVariable(name: "scheduling_mode", arg: 2, scope: !1303, file: !991, line: 148, type: !772)
!1312 = !DILocalVariable(name: "fn", arg: 3, scope: !1303, file: !991, line: 148, type: !1307)
!1313 = !DILocalVariable(name: "old_control", scope: !1314, file: !991, line: 152, type: !369)
!1314 = distinct !DILexicalBlock(scope: !1303, file: !991, line: 151, column: 3)
!1315 = !DILocalVariable(name: "absl_raw_logging_internal_basename", scope: !1316, file: !991, line: 163, type: !1319)
!1316 = distinct !DILexicalBlock(scope: !1317, file: !991, line: 163, column: 7)
!1317 = distinct !DILexicalBlock(scope: !1318, file: !991, line: 156, column: 35)
!1318 = distinct !DILexicalBlock(scope: !1314, file: !991, line: 153, column: 9)
!1319 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !1320)
!1320 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1321, size: 64)
!1321 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !833)
!1322 = !DILocalVariable(name: "maybe_disable_scheduling", scope: !1303, file: !991, line: 174, type: !1323)
!1323 = distinct !DICompositeType(tag: DW_TAG_class_type, name: "SchedulingHelper", scope: !8, file: !991, line: 110, size: 64, flags: DIFlagTypePassByReference | DIFlagNonTrivial, elements: !1324, identifier: "_ZTSN4absl13base_internal16SchedulingHelperE")
!1324 = !{!1325, !1326, !1327, !1331}
!1325 = !DIDerivedType(tag: DW_TAG_member, name: "mode_", scope: !1323, file: !991, line: 125, baseType: !772, size: 32)
!1326 = !DIDerivedType(tag: DW_TAG_member, name: "guard_result_", scope: !1323, file: !991, line: 126, baseType: !19, size: 8, offset: 32)
!1327 = !DISubprogram(name: "SchedulingHelper", scope: !1323, file: !991, line: 112, type: !1328, scopeLine: 112, flags: DIFlagPublic | DIFlagExplicit | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1328 = !DISubroutineType(types: !1329)
!1329 = !{null, !1330, !772}
!1330 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1323, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!1331 = !DISubprogram(name: "~SchedulingHelper", scope: !1323, file: !991, line: 118, type: !1332, scopeLine: 118, flags: DIFlagPublic | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1332 = !DISubroutineType(types: !1333)
!1333 = !{null, !1330}
!1334 = !DILocalVariable(name: "old_control", scope: !1303, file: !991, line: 179, type: !369)
!1335 = !{!1336, !1337}
!1336 = !DITemplateTypeParameter(name: "Callable", type: !1308)
!1337 = !DITemplateValueParameter(tag: DW_TAG_GNU_template_parameter_pack, name: "Args", value: !1018)
!1338 = !DICompositeType(tag: DW_TAG_array_type, baseType: !1339, size: 288, elements: !1346)
!1339 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !1340)
!1340 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "SpinLockWaitTransition", scope: !8, file: !1341, line: 43, size: 96, flags: DIFlagTypePassByValue, elements: !1342, identifier: "_ZTSN4absl13base_internal22SpinLockWaitTransitionE")
!1341 = !DIFile(filename: "internal/spinlock_wait.h", directory: "/proc/self/cwd", checksumkind: CSK_MD5, checksum: "1911ca230a071cdb81c003cc5a532b31")
!1342 = !{!1343, !1344, !1345}
!1343 = !DIDerivedType(tag: DW_TAG_member, name: "from", scope: !1340, file: !1341, line: 44, baseType: !369, size: 32)
!1344 = !DIDerivedType(tag: DW_TAG_member, name: "to", scope: !1340, file: !1341, line: 45, baseType: !369, size: 32, offset: 32)
!1345 = !DIDerivedType(tag: DW_TAG_member, name: "done", scope: !1340, file: !1341, line: 46, baseType: !19, size: 8, offset: 64)
!1346 = !{!1347}
!1347 = !DISubrange(count: 3)
!1348 = !{!1349, !1350, !1351, !1356, !1357, !1378, !1379, !1399, !1408}
!1349 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !2, entity: !7, file: !6, line: 306)
!1350 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !213, entity: !7, file: !6, line: 308)
!1351 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !1352, entity: !1353, file: !6, line: 310)
!1352 = !DINamespace(name: "subtle", scope: !213)
!1353 = distinct !DISubprogram(name: "CurrentThreadIdentityIfPresent", linkageName: "_ZN4absl13base_internal30CurrentThreadIdentityIfPresentEv", scope: !8, file: !6, line: 291, type: !1354, scopeLine: 291, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, retainedNodes: !1018)
!1354 = !DISubroutineType(types: !1355)
!1355 = !{!189}
!1356 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !1352, entity: !190, file: !6, line: 311)
!1357 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !212, entity: !1358, file: !1359, line: 290)
!1358 = distinct !DICompositeType(tag: DW_TAG_class_type, name: "SchedulingGuard", scope: !8, file: !1359, line: 107, size: 8, flags: DIFlagTypePassByReference | DIFlagNonTrivial, elements: !1360, identifier: "_ZTSN4absl13base_internal15SchedulingGuardE")
!1359 = !DIFile(filename: "./internal/low_level_scheduling.h", directory: "/proc/self/cwd", checksumkind: CSK_MD5, checksum: "ffd0bb51435b5607e72ac0d143a5f1f4")
!1360 = !{!1361, !1364, !1370, !1374, !1375}
!1361 = !DISubprogram(name: "ReschedulingIsAllowed", linkageName: "_ZN4absl13base_internal15SchedulingGuard21ReschedulingIsAllowedEv", scope: !1358, file: !1359, line: 110, type: !1362, scopeLine: 110, flags: DIFlagPublic | DIFlagPrototyped | DIFlagStaticMember, spFlags: DISPFlagOptimized)
!1362 = !DISubroutineType(types: !1363)
!1363 = !{!19}
!1364 = !DISubprogram(name: "SchedulingGuard", scope: !1358, file: !1359, line: 111, type: !1365, scopeLine: 111, flags: DIFlagPublic | DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!1365 = !DISubroutineType(types: !1366)
!1366 = !{null, !1367, !1368}
!1367 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1358, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!1368 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !1369, size: 64)
!1369 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !1358)
!1370 = !DISubprogram(name: "operator=", linkageName: "_ZN4absl13base_internal15SchedulingGuardaSERKS1_", scope: !1358, file: !1359, line: 112, type: !1371, scopeLine: 112, flags: DIFlagPublic | DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!1371 = !DISubroutineType(types: !1372)
!1372 = !{!1373, !1367, !1368}
!1373 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !1358, size: 64)
!1374 = !DISubprogram(name: "DisableRescheduling", linkageName: "_ZN4absl13base_internal15SchedulingGuard19DisableReschedulingEv", scope: !1358, file: !1359, line: 120, type: !1362, scopeLine: 120, flags: DIFlagPrototyped | DIFlagStaticMember, spFlags: DISPFlagOptimized)
!1375 = !DISubprogram(name: "EnableRescheduling", linkageName: "_ZN4absl13base_internal15SchedulingGuard18EnableReschedulingEb", scope: !1358, file: !1359, line: 125, type: !1376, scopeLine: 125, flags: DIFlagPrototyped | DIFlagStaticMember, spFlags: DISPFlagOptimized)
!1376 = !DISubroutineType(types: !1377)
!1377 = !{null, !19}
!1378 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !2, entity: !565, file: !566, line: 254)
!1379 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !2, entity: !1380, file: !566, line: 255)
!1380 = distinct !DICompositeType(tag: DW_TAG_class_type, name: "SpinLockHolder", scope: !8, file: !566, line: 193, size: 64, flags: DIFlagTypePassByReference | DIFlagNonTrivial, elements: !1381, identifier: "_ZTSN4absl13base_internal14SpinLockHolderE")
!1381 = !{!1382, !1383, !1387, !1390, !1395}
!1382 = !DIDerivedType(tag: DW_TAG_member, name: "lock_", scope: !1380, file: !566, line: 205, baseType: !564, size: 64)
!1383 = !DISubprogram(name: "SpinLockHolder", scope: !1380, file: !566, line: 195, type: !1384, scopeLine: 195, flags: DIFlagPublic | DIFlagExplicit | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1384 = !DISubroutineType(types: !1385)
!1385 = !{null, !1386, !564}
!1386 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1380, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!1387 = !DISubprogram(name: "~SpinLockHolder", scope: !1380, file: !566, line: 199, type: !1388, scopeLine: 199, flags: DIFlagPublic | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1388 = !DISubroutineType(types: !1389)
!1389 = !{null, !1386}
!1390 = !DISubprogram(name: "SpinLockHolder", scope: !1380, file: !566, line: 201, type: !1391, scopeLine: 201, flags: DIFlagPublic | DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!1391 = !DISubroutineType(types: !1392)
!1392 = !{null, !1386, !1393}
!1393 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !1394, size: 64)
!1394 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !1380)
!1395 = !DISubprogram(name: "operator=", linkageName: "_ZN4absl13base_internal14SpinLockHolderaSERKS1_", scope: !1380, file: !566, line: 202, type: !1396, scopeLine: 202, flags: DIFlagPublic | DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!1396 = !DISubroutineType(types: !1397)
!1397 = !{!1398, !1386, !1393}
!1398 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !1380, size: 64)
!1399 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !213, entity: !1400, file: !566, line: 257)
!1400 = distinct !DISubprogram(name: "RegisterSpinLockProfiler", linkageName: "_ZN4absl13base_internal24RegisterSpinLockProfilerEPFvPKvlE", scope: !8, file: !3, line: 64, type: !1401, scopeLine: 65, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, retainedNodes: !1406)
!1401 = !DISubroutineType(types: !1402)
!1402 = !{null, !1403}
!1403 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1404, size: 64)
!1404 = !DISubroutineType(types: !1405)
!1405 = !{null, !1047, !182}
!1406 = !{!1407}
!1407 = !DILocalVariable(name: "fn", arg: 1, scope: !1400, file: !3, line: 64, type: !1403)
!1408 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !2, entity: !1409, file: !1410, line: 113)
!1409 = distinct !DICompositeType(tag: DW_TAG_class_type, name: "CycleClock", scope: !8, file: !1410, line: 70, size: 8, flags: DIFlagTypePassByReference, elements: !1411, identifier: "_ZTSN4absl13base_internal10CycleClockE")
!1410 = !DIFile(filename: "./internal/cycleclock.h", directory: "/proc/self/cwd", checksumkind: CSK_MD5, checksum: "d8f72cc533ffe9f03f48dbfc0ebd650b")
!1411 = !{!1412, !1415, !1419, !1423, !1428}
!1412 = !DISubprogram(name: "Now", linkageName: "_ZN4absl13base_internal10CycleClock3NowEv", scope: !1409, file: !1410, line: 76, type: !1413, scopeLine: 76, flags: DIFlagPublic | DIFlagPrototyped | DIFlagStaticMember, spFlags: DISPFlagOptimized)
!1413 = !DISubroutineType(types: !1414)
!1414 = !{!182}
!1415 = !DISubprogram(name: "Frequency", linkageName: "_ZN4absl13base_internal10CycleClock9FrequencyEv", scope: !1409, file: !1410, line: 82, type: !1416, scopeLine: 82, flags: DIFlagPublic | DIFlagPrototyped | DIFlagStaticMember, spFlags: DISPFlagOptimized)
!1416 = !DISubroutineType(types: !1417)
!1417 = !{!1418}
!1418 = !DIBasicType(name: "double", size: 64, encoding: DW_ATE_float)
!1419 = !DISubprogram(name: "CycleClock", scope: !1409, file: !1410, line: 85, type: !1420, scopeLine: 85, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!1420 = !DISubroutineType(types: !1421)
!1421 = !{null, !1422}
!1422 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1409, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!1423 = !DISubprogram(name: "CycleClock", scope: !1409, file: !1410, line: 86, type: !1424, scopeLine: 86, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!1424 = !DISubroutineType(types: !1425)
!1425 = !{null, !1422, !1426}
!1426 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !1427, size: 64)
!1427 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !1409)
!1428 = !DISubprogram(name: "operator=", linkageName: "_ZN4absl13base_internal10CycleClockaSERKS1_", scope: !1409, file: !1410, line: 87, type: !1429, scopeLine: 87, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized | DISPFlagDeleted)
!1429 = !DISubroutineType(types: !1430)
!1430 = !{!1431, !1422, !1426}
!1431 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !1409, size: 64)
!1432 = !DIGlobalVariableExpression(var: !1433, expr: !DIExpression())
!1433 = distinct !DIGlobalVariable(name: "cycle_clock_source", linkageName: "_ZN4absl13base_internal12_GLOBAL__N_118cycle_clock_sourceE", scope: !1434, file: !1435, line: 57, type: !1436, isLocal: true, isDefinition: true)
!1434 = !DINamespace(scope: !8)
!1435 = !DIFile(filename: "internal/cycleclock.cc", directory: "/proc/self/cwd", checksumkind: CSK_MD5, checksum: "61bab11972c6a93b8b336f7d077db701")
!1436 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "atomic<long (*)()>", scope: !28, file: !27, line: 1831, size: 64, flags: DIFlagFwdDecl | DIFlagTypePassByReference, identifier: "_ZTSNSt3__16atomicIPFlvEEE")
!1437 = !DIGlobalVariableExpression(var: !1438, expr: !DIExpression())
!1438 = distinct !DIGlobalVariable(name: "init_num_cpus_once", linkageName: "_ZN4absl13base_internalL18init_num_cpus_onceE", scope: !8, file: !1439, line: 292, type: !1080, isLocal: true, isDefinition: true)
!1439 = !DIFile(filename: "internal/sysinfo.cc", directory: "/proc/self/cwd", checksumkind: CSK_MD5, checksum: "3428787ce8808889dde85a1ef8e1bd0c")
!1440 = !DIGlobalVariableExpression(var: !1441, expr: !DIExpression())
!1441 = distinct !DIGlobalVariable(name: "num_cpus", linkageName: "_ZN4absl13base_internalL8num_cpusE", scope: !8, file: !1439, line: 293, type: !13, isLocal: true, isDefinition: true)
!1442 = !DIGlobalVariableExpression(var: !1443, expr: !DIExpression())
!1443 = distinct !DIGlobalVariable(name: "thread_identity_ptr", linkageName: "_ZN4absl13base_internal19thread_identity_ptrE", scope: !8, file: !1444, line: 68, type: !189, isLocal: false, isDefinition: true)
!1444 = !DIFile(filename: "internal/thread_identity.cc", directory: "/proc/self/cwd", checksumkind: CSK_MD5, checksum: "9ee663fb57f63ed017c6ba63fb9d07af")
!1445 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus_14, file: !1435, producer: "clang version (91e7a17133324ac4beaf6ed45c170436c2d91c98)", isOptimized: true, runtimeVersion: 0, splitDebugFilename: "dbg/bin/_objs/b/cycleclock.pic.dwo", emissionKind: FullDebug, nameTableKind: GNU)
!1446 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus_14, file: !1439, producer: "clang version (91e7a17133324ac4beaf6ed45c170436c2d91c98)", isOptimized: true, runtimeVersion: 0, splitDebugFilename: "dbg/bin/_objs/b/sysinfo.pic.dwo", emissionKind: FullDebug, nameTableKind: GNU)
!1447 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus_14, file: !1444, producer: "clang version (91e7a17133324ac4beaf6ed45c170436c2d91c98)", isOptimized: true, runtimeVersion: 0, splitDebugFilename: "dbg/bin/_objs/b/thread_identity.pic.dwo", emissionKind: FullDebug, nameTableKind: GNU)
!1448 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus_14, file: !1449, producer: "clang version (91e7a17133324ac4beaf6ed45c170436c2d91c98)", isOptimized: true, runtimeVersion: 0, splitDebugFilename: "dbg/bin/_objs/b/unscaledcycleclock.pic.dwo", emissionKind: FullDebug, nameTableKind: GNU)
!1449 = !DIFile(filename: "internal/unscaledcycleclock.cc", directory: "/proc/self/cwd", checksumkind: CSK_MD5, checksum: "4955d33815ef62646a5115b1cc4a435b")
!1450 = !{i32 7, !"Dwarf Version", i32 5}
!1451 = !{i32 2, !"Debug Info Version", i32 3}
!1452 = !{i32 1, !"wchar_size", i32 4}
!1453 = !{i32 7, !"PIC Level", i32 2}
!1454 = !{i32 1, !"EnableSplitLTOUnit", i32 0}
!1455 = !{!"clang version (91e7a17133324ac4beaf6ed45c170436c2d91c98)"}
!1456 = !DILocation(line: 0, scope: !1400)
!1457 = !DILocalVariable(name: "fn", arg: 2, scope: !1458, file: !1115, line: 107, type: !1272)
!1458 = distinct !DISubprogram(name: "Store", linkageName: "_ZN4absl13base_internal10AtomicHookIPFvPKvlEE5StoreES5_", scope: !1114, file: !1115, line: 107, type: !1278, scopeLine: 107, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !1280, retainedNodes: !1459)
!1459 = !{!1460, !1457, !1462}
!1460 = !DILocalVariable(name: "this", arg: 1, scope: !1458, type: !1461, flags: DIFlagArtificial | DIFlagObjectPointer)
!1461 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1114, size: 64)
!1462 = !DILocalVariable(name: "success", scope: !1458, file: !1115, line: 108, type: !19)
!1463 = !DILocation(line: 0, scope: !1458, inlinedAt: !1464)
!1464 = distinct !DILocation(line: 66, column: 23, scope: !1400)
!1465 = !DILocalVariable(name: "fn", arg: 2, scope: !1466, file: !1115, line: 157, type: !1272)
!1466 = distinct !DISubprogram(name: "DoStore", linkageName: "_ZN4absl13base_internal10AtomicHookIPFvPKvlEE7DoStoreES5_", scope: !1114, file: !1115, line: 157, type: !1289, scopeLine: 157, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !1288, retainedNodes: !1467)
!1467 = !{!1468, !1465, !1469, !1470, !1471}
!1468 = !DILocalVariable(name: "this", arg: 1, scope: !1466, type: !1461, flags: DIFlagArtificial | DIFlagObjectPointer)
!1469 = !DILocalVariable(name: "expected", scope: !1466, file: !1115, line: 159, type: !1272)
!1470 = !DILocalVariable(name: "store_succeeded", scope: !1466, file: !1115, line: 160, type: !61)
!1471 = !DILocalVariable(name: "same_value_already_stored", scope: !1466, file: !1115, line: 162, type: !61)
!1472 = !DILocation(line: 0, scope: !1466, inlinedAt: !1473)
!1473 = distinct !DILocation(line: 108, column: 20, scope: !1458, inlinedAt: !1464)
!1474 = !DILocation(line: 158, column: 5, scope: !1466, inlinedAt: !1473)
!1475 = !DILocation(line: 159, column: 22, scope: !1466, inlinedAt: !1473)
!1476 = !DILocalVariable(name: "__e", arg: 2, scope: !1477, file: !27, line: 1668, type: !1177)
!1477 = distinct !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNSt3__113__atomic_baseIPFvPKvlELb0EE23compare_exchange_strongERS4_S4_NS_12memory_orderES7_", scope: !1121, file: !27, line: 1668, type: !1179, scopeLine: 1671, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !1182, retainedNodes: !1478)
!1478 = !{!1479, !1476, !1481, !1482, !1483}
!1479 = !DILocalVariable(name: "this", arg: 1, scope: !1477, type: !1480, flags: DIFlagArtificial | DIFlagObjectPointer)
!1480 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1121, size: 64)
!1481 = !DILocalVariable(name: "__d", arg: 3, scope: !1477, file: !27, line: 1668, type: !1044)
!1482 = !DILocalVariable(name: "__s", arg: 4, scope: !1477, file: !27, line: 1669, type: !77)
!1483 = !DILocalVariable(name: "__f", arg: 5, scope: !1477, file: !27, line: 1669, type: !77)
!1484 = !DILocation(line: 0, scope: !1477, inlinedAt: !1485)
!1485 = distinct !DILocation(line: 160, column: 40, scope: !1466, inlinedAt: !1473)
!1486 = !DILocalVariable(name: "__expected", arg: 2, scope: !1487, file: !27, line: 1053, type: !1491)
!1487 = distinct !DISubprogram(name: "__cxx_atomic_compare_exchange_strong<void (*)(const void *, long)>", linkageName: "_ZNSt3__136__cxx_atomic_compare_exchange_strongIPFvPKvlEEEbPNS_22__cxx_atomic_base_implIT_EEPS6_S6_NS_12memory_orderESA_", scope: !28, file: !27, line: 1053, type: !1488, scopeLine: 1053, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, templateParams: !1062, retainedNodes: !1492)
!1488 = !DISubroutineType(types: !1489)
!1489 = !{!19, !1490, !1491, !1044, !77, !77}
!1490 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1051, size: 64)
!1491 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1044, size: 64)
!1492 = !{!1493, !1486, !1494, !1495, !1496}
!1493 = !DILocalVariable(name: "__a", arg: 1, scope: !1487, file: !27, line: 1053, type: !1490)
!1494 = !DILocalVariable(name: "__value", arg: 3, scope: !1487, file: !27, line: 1053, type: !1044)
!1495 = !DILocalVariable(name: "__success", arg: 4, scope: !1487, file: !27, line: 1053, type: !77)
!1496 = !DILocalVariable(name: "__failure", arg: 5, scope: !1487, file: !27, line: 1053, type: !77)
!1497 = !DILocation(line: 0, scope: !1487, inlinedAt: !1498)
!1498 = distinct !DILocation(line: 1671, column: 17, scope: !1477, inlinedAt: !1485)
!1499 = !DILocation(line: 1054, column: 12, scope: !1487, inlinedAt: !1498)
!1500 = !DILocation(line: 162, column: 54, scope: !1466, inlinedAt: !1473)
!1501 = !DILocation(line: 163, column: 28, scope: !1466, inlinedAt: !1473)
!1502 = !DILocation(line: 110, column: 5, scope: !1458, inlinedAt: !1464)
!1503 = !DILocation(line: 67, column: 1, scope: !1400)
!1504 = distinct !DISubprogram(name: "SpinLock", linkageName: "_ZN4absl13base_internal8SpinLockC2ENS0_14SchedulingModeE", scope: !565, file: !3, line: 77, type: !770, scopeLine: 78, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !769, retainedNodes: !1505)
!1505 = !{!1506, !1507}
!1506 = !DILocalVariable(name: "this", arg: 1, scope: !1504, type: !564, flags: DIFlagArtificial | DIFlagObjectPointer)
!1507 = !DILocalVariable(name: "mode", arg: 2, scope: !1504, file: !3, line: 77, type: !772)
!1508 = !DILocation(line: 0, scope: !1504)
!1509 = !DILocalVariable(name: "scheduling_mode", arg: 1, scope: !1510, file: !566, line: 171, type: !772)
!1510 = distinct !DISubprogram(name: "IsCooperative", linkageName: "_ZN4absl13base_internal8SpinLock13IsCooperativeENS0_14SchedulingModeE", scope: !565, file: !566, line: 170, type: !804, scopeLine: 171, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !803, retainedNodes: !1511)
!1511 = !{!1509}
!1512 = !DILocation(line: 0, scope: !1510, inlinedAt: !1513)
!1513 = distinct !DILocation(line: 78, column: 17, scope: !1504)
!1514 = !DILocation(line: 172, column: 28, scope: !1510, inlinedAt: !1513)
!1515 = !DILocation(line: 78, column: 17, scope: !1504)
!1516 = !DILocalVariable(name: "this", arg: 1, scope: !1517, type: !1306, flags: DIFlagArtificial | DIFlagObjectPointer)
!1517 = distinct !DISubprogram(name: "atomic", linkageName: "_ZNSt3__16atomicIjEC2Ej", scope: !575, file: !27, line: 1815, type: !746, scopeLine: 1815, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !745, retainedNodes: !1518)
!1518 = !{!1516, !1519}
!1519 = !DILocalVariable(name: "__d", arg: 2, scope: !1517, file: !27, line: 1815, type: !79)
!1520 = !DILocation(line: 0, scope: !1517, inlinedAt: !1521)
!1521 = distinct !DILocation(line: 78, column: 7, scope: !1504)
!1522 = !DILocalVariable(name: "this", arg: 1, scope: !1523, type: !1526, flags: DIFlagArtificial | DIFlagObjectPointer)
!1523 = distinct !DISubprogram(name: "__atomic_base", linkageName: "_ZNSt3__113__atomic_baseIjLb1EEC2Ej", scope: !578, file: !27, line: 1732, type: !692, scopeLine: 1732, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !691, retainedNodes: !1524)
!1524 = !{!1522, !1525}
!1525 = !DILocalVariable(name: "__d", arg: 2, scope: !1523, file: !27, line: 1732, type: !79)
!1526 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !578, size: 64)
!1527 = !DILocation(line: 0, scope: !1523, inlinedAt: !1528)
!1528 = distinct !DILocation(line: 1815, column: 51, scope: !1517, inlinedAt: !1521)
!1529 = !DILocalVariable(name: "this", arg: 1, scope: !1530, type: !1533, flags: DIFlagArtificial | DIFlagObjectPointer)
!1530 = distinct !DISubprogram(name: "__atomic_base", linkageName: "_ZNSt3__113__atomic_baseIjLb0EEC2Ej", scope: !581, file: !27, line: 1706, type: !680, scopeLine: 1706, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !679, retainedNodes: !1531)
!1531 = !{!1529, !1532}
!1532 = !DILocalVariable(name: "__d", arg: 2, scope: !1530, file: !27, line: 1706, type: !79)
!1533 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !581, size: 64)
!1534 = !DILocation(line: 0, scope: !1530, inlinedAt: !1535)
!1535 = distinct !DILocation(line: 1732, column: 58, scope: !1523, inlinedAt: !1528)
!1536 = !DILocalVariable(name: "this", arg: 1, scope: !1537, type: !1540, flags: DIFlagArtificial | DIFlagObjectPointer)
!1537 = distinct !DISubprogram(name: "__cxx_atomic_impl", linkageName: "_ZNSt3__117__cxx_atomic_implIjNS_22__cxx_atomic_base_implIjEEEC2Ej", scope: !584, file: !27, line: 1522, type: !605, scopeLine: 1523, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !604, retainedNodes: !1538)
!1538 = !{!1536, !1539}
!1539 = !DILocalVariable(name: "value", arg: 2, scope: !1537, file: !27, line: 1522, type: !79)
!1540 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !584, size: 64)
!1541 = !DILocation(line: 0, scope: !1537, inlinedAt: !1542)
!1542 = distinct !DILocation(line: 1706, column: 40, scope: !1530, inlinedAt: !1535)
!1543 = !DILocalVariable(name: "this", arg: 1, scope: !1544, type: !1547, flags: DIFlagArtificial | DIFlagObjectPointer)
!1544 = distinct !DISubprogram(name: "__cxx_atomic_base_impl", linkageName: "_ZNSt3__122__cxx_atomic_base_implIjEC2Ej", scope: !587, file: !27, line: 966, type: !596, scopeLine: 967, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !595, retainedNodes: !1545)
!1545 = !{!1543, !1546}
!1546 = !DILocalVariable(name: "value", arg: 2, scope: !1544, file: !27, line: 966, type: !79)
!1547 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !587, size: 64)
!1548 = !DILocation(line: 0, scope: !1544, inlinedAt: !1549)
!1549 = distinct !DILocation(line: 1523, column: 7, scope: !1537, inlinedAt: !1542)
!1550 = !DILocation(line: 967, column: 7, scope: !1544, inlinedAt: !1549)
!1551 = !DILocation(line: 80, column: 1, scope: !1504)
!1552 = !DILocation(line: 0, scope: !1075)
!1553 = !DILocalVariable(name: "fn", arg: 2, scope: !1554, file: !991, line: 199, type: !1307)
!1554 = distinct !DISubprogram(name: "LowLevelCallOnce<(lambda at internal/spinlock.cc:90:62)>", linkageName: "_ZN4absl13base_internal16LowLevelCallOnceIZNS0_8SpinLock8SpinLoopEvE3$_0JEEEvPNS_9once_flagEOT_DpOT0_", scope: !8, file: !991, line: 199, type: !1555, scopeLine: 199, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, templateParams: !1335, retainedNodes: !1558)
!1555 = !DISubroutineType(types: !1556)
!1556 = !{null, !1557, !1307}
!1557 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1080, size: 64)
!1558 = !{!1559, !1553, !1560, !1561}
!1559 = !DILocalVariable(name: "flag", arg: 1, scope: !1554, file: !991, line: 199, type: !1557)
!1560 = !DILocalVariable(name: "once", scope: !1554, file: !991, line: 200, type: !1306)
!1561 = !DILocalVariable(name: "s", scope: !1554, file: !991, line: 201, type: !369)
!1562 = !DILocation(line: 0, scope: !1554, inlinedAt: !1563)
!1563 = distinct !DILocation(line: 90, column: 3, scope: !1075)
!1564 = !DILocalVariable(name: "__m", arg: 2, scope: !1565, file: !27, line: 1639, type: !77)
!1565 = distinct !DISubprogram(name: "load", linkageName: "_ZNKSt3__113__atomic_baseIjLb0EE4loadENS_12memory_orderE", scope: !581, file: !27, line: 1639, type: !633, scopeLine: 1641, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !632, retainedNodes: !1566)
!1566 = !{!1567, !1564}
!1567 = !DILocalVariable(name: "this", arg: 1, scope: !1565, type: !1568, flags: DIFlagArtificial | DIFlagObjectPointer)
!1568 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !620, size: 64)
!1569 = !DILocation(line: 0, scope: !1565, inlinedAt: !1570)
!1570 = distinct !DILocation(line: 201, column: 22, scope: !1554, inlinedAt: !1563)
!1571 = !DILocation(line: 0, scope: !1027, inlinedAt: !1572)
!1572 = distinct !DILocation(line: 1641, column: 17, scope: !1565, inlinedAt: !1570)
!1573 = !DILocation(line: 1030, column: 12, scope: !1027, inlinedAt: !1572)
!1574 = !DILocation(line: 202, column: 7, scope: !1575, inlinedAt: !1563)
!1575 = distinct !DILexicalBlock(scope: !1554, file: !991, line: 202, column: 7)
!1576 = !DILocation(line: 202, column: 7, scope: !1554, inlinedAt: !1563)
!1577 = !{!"branch_weights", i32 2000, i32 1}
!1578 = !DILocation(line: 203, column: 5, scope: !1579, inlinedAt: !1563)
!1579 = distinct !DILexicalBlock(scope: !1575, file: !991, line: 202, column: 58)
!1580 = !DILocation(line: 206, column: 3, scope: !1579, inlinedAt: !1563)
!1581 = !DILocation(line: 94, column: 11, scope: !1075)
!1582 = !DILocation(line: 96, column: 3, scope: !1075)
!1583 = !DILocation(line: 0, scope: !1565, inlinedAt: !1584)
!1584 = distinct !DILocation(line: 97, column: 28, scope: !1585)
!1585 = distinct !DILexicalBlock(scope: !1075, file: !3, line: 96, column: 6)
!1586 = !DILocation(line: 0, scope: !1027, inlinedAt: !1587)
!1587 = distinct !DILocation(line: 1641, column: 17, scope: !1565, inlinedAt: !1584)
!1588 = !DILocation(line: 1030, column: 12, scope: !1027, inlinedAt: !1587)
!1589 = !DILocation(line: 98, column: 24, scope: !1075)
!1590 = !DILocation(line: 98, column: 41, scope: !1075)
!1591 = !DILocation(line: 98, column: 46, scope: !1075)
!1592 = distinct !{!1592, !1582, !1593, !1594}
!1593 = !DILocation(line: 98, column: 56, scope: !1075)
!1594 = !{!"llvm.loop.mustprogress"}
!1595 = !DILocation(line: 99, column: 3, scope: !1075)
!1596 = distinct !DISubprogram(name: "SlowLock", linkageName: "_ZN4absl13base_internal8SpinLock8SlowLockEv", scope: !565, file: !3, line: 102, type: !766, scopeLine: 102, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !809, retainedNodes: !1597)
!1597 = !{!1598, !1599, !1600, !1601, !1602, !1603}
!1598 = !DILocalVariable(name: "this", arg: 1, scope: !1596, type: !564, flags: DIFlagArtificial | DIFlagObjectPointer)
!1599 = !DILocalVariable(name: "lock_value", scope: !1596, file: !3, line: 103, type: !369)
!1600 = !DILocalVariable(name: "scheduling_mode", scope: !1596, file: !3, line: 109, type: !772)
!1601 = !DILocalVariable(name: "wait_start_time", scope: !1596, file: !3, line: 120, type: !182)
!1602 = !DILocalVariable(name: "wait_cycles", scope: !1596, file: !3, line: 121, type: !369)
!1603 = !DILocalVariable(name: "lock_wait_call_count", scope: !1596, file: !3, line: 122, type: !13)
!1604 = !DILocation(line: 0, scope: !1596)
!1605 = !DILocation(line: 103, column: 25, scope: !1596)
!1606 = !DILocalVariable(name: "this", arg: 1, scope: !1607, type: !564, flags: DIFlagArtificial | DIFlagObjectPointer)
!1607 = distinct !DISubprogram(name: "TryLockInternal", linkageName: "_ZN4absl13base_internal8SpinLock15TryLockInternalEjj", scope: !565, file: !566, line: 224, type: !807, scopeLine: 225, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !806, retainedNodes: !1608)
!1608 = !{!1606, !1609, !1610, !1611}
!1609 = !DILocalVariable(name: "lock_value", arg: 2, scope: !1607, file: !566, line: 224, type: !369)
!1610 = !DILocalVariable(name: "wait_cycles", arg: 3, scope: !1607, file: !566, line: 225, type: !369)
!1611 = !DILocalVariable(name: "sched_disabled_bit", scope: !1607, file: !566, line: 230, type: !369)
!1612 = !DILocation(line: 0, scope: !1607, inlinedAt: !1613)
!1613 = distinct !DILocation(line: 104, column: 16, scope: !1596)
!1614 = !DILocation(line: 226, column: 19, scope: !1615, inlinedAt: !1613)
!1615 = distinct !DILexicalBlock(scope: !1607, file: !566, line: 226, column: 7)
!1616 = !DILocation(line: 226, column: 36, scope: !1615, inlinedAt: !1613)
!1617 = !DILocation(line: 226, column: 7, scope: !1607, inlinedAt: !1613)
!1618 = !DILocation(line: 231, column: 19, scope: !1619, inlinedAt: !1613)
!1619 = distinct !DILexicalBlock(scope: !1607, file: !566, line: 231, column: 7)
!1620 = !DILocation(line: 231, column: 43, scope: !1619, inlinedAt: !1613)
!1621 = !DILocation(line: 231, column: 7, scope: !1607, inlinedAt: !1613)
!1622 = !DILocation(line: 292, column: 10, scope: !1353, inlinedAt: !1623)
!1623 = distinct !DILocation(line: 197, column: 14, scope: !1624, inlinedAt: !1630)
!1624 = distinct !DISubprogram(name: "DisableRescheduling", linkageName: "_ZN4absl13base_internal15SchedulingGuard19DisableReschedulingEv", scope: !1358, file: !1359, line: 195, type: !1362, scopeLine: 195, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !1374, retainedNodes: !1625)
!1625 = !{!1626, !1627}
!1626 = !DILocalVariable(name: "identity", scope: !1624, file: !1359, line: 196, type: !189)
!1627 = !DILocalVariable(name: "old_val", scope: !1628, file: !1359, line: 202, type: !13)
!1628 = distinct !DILexicalBlock(scope: !1629, file: !1359, line: 198, column: 28)
!1629 = distinct !DILexicalBlock(scope: !1624, file: !1359, line: 198, column: 7)
!1630 = distinct !DILocation(line: 234, column: 9, scope: !1631, inlinedAt: !1613)
!1631 = distinct !DILexicalBlock(scope: !1632, file: !566, line: 234, column: 9)
!1632 = distinct !DILexicalBlock(scope: !1619, file: !566, line: 231, column: 49)
!1633 = !DILocation(line: 0, scope: !1624, inlinedAt: !1630)
!1634 = !DILocation(line: 198, column: 16, scope: !1629, inlinedAt: !1630)
!1635 = !DILocation(line: 198, column: 7, scope: !1624, inlinedAt: !1630)
!1636 = !DILocation(line: 241, column: 52, scope: !1637, inlinedAt: !1613)
!1637 = distinct !DILexicalBlock(scope: !1607, file: !566, line: 239, column: 7)
!1638 = !DILocalVariable(name: "this", arg: 1, scope: !1639, type: !1533, flags: DIFlagArtificial | DIFlagObjectPointer)
!1639 = distinct !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNSt3__113__atomic_baseIjLb0EE23compare_exchange_strongERjjNS_12memory_orderES3_", scope: !581, file: !27, line: 1668, type: !652, scopeLine: 1671, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !655, retainedNodes: !1640)
!1640 = !{!1638, !1641, !1642, !1643, !1644}
!1641 = !DILocalVariable(name: "__e", arg: 2, scope: !1639, file: !27, line: 1668, type: !650)
!1642 = !DILocalVariable(name: "__d", arg: 3, scope: !1639, file: !27, line: 1668, type: !79)
!1643 = !DILocalVariable(name: "__s", arg: 4, scope: !1639, file: !27, line: 1669, type: !77)
!1644 = !DILocalVariable(name: "__f", arg: 5, scope: !1639, file: !27, line: 1669, type: !77)
!1645 = !DILocation(line: 0, scope: !1639, inlinedAt: !1646)
!1646 = distinct !DILocation(line: 239, column: 18, scope: !1637, inlinedAt: !1613)
!1647 = !DILocalVariable(name: "__a", arg: 1, scope: !1648, file: !27, line: 1053, type: !1547)
!1648 = distinct !DISubprogram(name: "__cxx_atomic_compare_exchange_strong<unsigned int>", linkageName: "_ZNSt3__136__cxx_atomic_compare_exchange_strongIjEEbPNS_22__cxx_atomic_base_implIT_EEPS2_S2_NS_12memory_orderES6_", scope: !28, file: !27, line: 1053, type: !1649, scopeLine: 1053, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, templateParams: !598, retainedNodes: !1652)
!1649 = !DISubroutineType(types: !1650)
!1650 = !{!19, !1547, !1651, !79, !77, !77}
!1651 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !79, size: 64)
!1652 = !{!1647, !1653, !1654, !1655, !1656}
!1653 = !DILocalVariable(name: "__expected", arg: 2, scope: !1648, file: !27, line: 1053, type: !1651)
!1654 = !DILocalVariable(name: "__value", arg: 3, scope: !1648, file: !27, line: 1053, type: !79)
!1655 = !DILocalVariable(name: "__success", arg: 4, scope: !1648, file: !27, line: 1053, type: !77)
!1656 = !DILocalVariable(name: "__failure", arg: 5, scope: !1648, file: !27, line: 1053, type: !77)
!1657 = !DILocation(line: 0, scope: !1648, inlinedAt: !1658)
!1658 = distinct !DILocation(line: 1671, column: 17, scope: !1639, inlinedAt: !1646)
!1659 = !DILocation(line: 1054, column: 55, scope: !1648, inlinedAt: !1658)
!1660 = !DILocation(line: 1054, column: 12, scope: !1648, inlinedAt: !1658)
!1661 = !DILocalVariable(name: "this", arg: 1, scope: !1662, type: !1665, flags: DIFlagArtificial | DIFlagObjectPointer)
!1662 = distinct !DISubprogram(name: "load", linkageName: "_ZNKSt3__113__atomic_baseIiLb0EE4loadENS_12memory_orderE", scope: !377, file: !27, line: 1639, type: !429, scopeLine: 1641, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !428, retainedNodes: !1663)
!1663 = !{!1661, !1664}
!1664 = !DILocalVariable(name: "__m", arg: 2, scope: !1662, file: !27, line: 1639, type: !77)
!1665 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !416, size: 64)
!1666 = !DILocation(line: 0, scope: !1662, inlinedAt: !1667)
!1667 = distinct !DILocation(line: 202, column: 71, scope: !1628, inlinedAt: !1630)
!1668 = !DILocation(line: 0, scope: !1006, inlinedAt: !1669)
!1669 = distinct !DILocation(line: 1641, column: 17, scope: !1662, inlinedAt: !1667)
!1670 = !DILocation(line: 1030, column: 59, scope: !1006, inlinedAt: !1669)
!1671 = !DILocation(line: 1030, column: 12, scope: !1006, inlinedAt: !1669)
!1672 = !DILocation(line: 0, scope: !1628, inlinedAt: !1630)
!1673 = !DILocation(line: 205, column: 17, scope: !1628, inlinedAt: !1630)
!1674 = !DILocalVariable(name: "this", arg: 1, scope: !1675, type: !1679, flags: DIFlagArtificial | DIFlagObjectPointer)
!1675 = distinct !DISubprogram(name: "store", linkageName: "_ZNSt3__113__atomic_baseIiLb0EE5storeEiNS_12memory_orderE", scope: !377, file: !27, line: 1631, type: !422, scopeLine: 1633, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !421, retainedNodes: !1676)
!1676 = !{!1674, !1677, !1678}
!1677 = !DILocalVariable(name: "__d", arg: 2, scope: !1675, file: !27, line: 1631, type: !13)
!1678 = !DILocalVariable(name: "__m", arg: 3, scope: !1675, file: !27, line: 1631, type: !77)
!1679 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !377, size: 64)
!1680 = !DILocation(line: 0, scope: !1675, inlinedAt: !1681)
!1681 = distinct !DILocation(line: 204, column: 57, scope: !1628, inlinedAt: !1630)
!1682 = !DILocalVariable(name: "__a", arg: 1, scope: !1683, file: !27, line: 1001, type: !1686)
!1683 = distinct !DISubprogram(name: "__cxx_atomic_store<int>", linkageName: "_ZNSt3__118__cxx_atomic_storeIiEEvPNS_22__cxx_atomic_base_implIT_EES2_NS_12memory_orderE", scope: !28, file: !27, line: 1001, type: !1684, scopeLine: 1001, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, templateParams: !394, retainedNodes: !1687)
!1684 = !DISubroutineType(types: !1685)
!1685 = !{null, !1686, !13, !77}
!1686 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !383, size: 64)
!1687 = !{!1682, !1688, !1689}
!1688 = !DILocalVariable(name: "__val", arg: 2, scope: !1683, file: !27, line: 1001, type: !13)
!1689 = !DILocalVariable(name: "__order", arg: 3, scope: !1683, file: !27, line: 1001, type: !77)
!1690 = !DILocation(line: 0, scope: !1683, inlinedAt: !1691)
!1691 = distinct !DILocation(line: 1633, column: 10, scope: !1675, inlinedAt: !1681)
!1692 = !DILocation(line: 1002, column: 5, scope: !1683, inlinedAt: !1691)
!1693 = !DILocalVariable(name: "disable_result", arg: 1, scope: !1694, file: !1359, line: 212, type: !19)
!1694 = distinct !DISubprogram(name: "EnableRescheduling", linkageName: "_ZN4absl13base_internal15SchedulingGuard18EnableReschedulingEb", scope: !1358, file: !1359, line: 212, type: !1376, scopeLine: 212, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !1375, retainedNodes: !1695)
!1695 = !{!1693, !1696, !1697}
!1696 = !DILocalVariable(name: "identity", scope: !1694, file: !1359, line: 221, type: !189)
!1697 = !DILocalVariable(name: "old_val", scope: !1694, file: !1359, line: 227, type: !13)
!1698 = !DILocation(line: 0, scope: !1694, inlinedAt: !1699)
!1699 = distinct !DILocation(line: 243, column: 5, scope: !1700, inlinedAt: !1613)
!1700 = distinct !DILexicalBlock(scope: !1637, file: !566, line: 242, column: 66)
!1701 = !DILocation(line: 292, column: 10, scope: !1353, inlinedAt: !1702)
!1702 = distinct !DILocation(line: 223, column: 14, scope: !1694, inlinedAt: !1699)
!1703 = !DILocation(line: 0, scope: !1662, inlinedAt: !1704)
!1704 = distinct !DILocation(line: 227, column: 69, scope: !1694, inlinedAt: !1699)
!1705 = !DILocation(line: 0, scope: !1006, inlinedAt: !1706)
!1706 = distinct !DILocation(line: 1641, column: 17, scope: !1662, inlinedAt: !1704)
!1707 = !DILocation(line: 1030, column: 59, scope: !1006, inlinedAt: !1706)
!1708 = !DILocation(line: 1030, column: 12, scope: !1006, inlinedAt: !1706)
!1709 = !DILocation(line: 230, column: 15, scope: !1694, inlinedAt: !1699)
!1710 = !DILocation(line: 0, scope: !1675, inlinedAt: !1711)
!1711 = distinct !DILocation(line: 229, column: 55, scope: !1694, inlinedAt: !1699)
!1712 = !DILocation(line: 0, scope: !1683, inlinedAt: !1713)
!1713 = distinct !DILocation(line: 1633, column: 10, scope: !1675, inlinedAt: !1711)
!1714 = !DILocation(line: 1002, column: 5, scope: !1683, inlinedAt: !1713)
!1715 = !DILocation(line: 105, column: 19, scope: !1716)
!1716 = distinct !DILexicalBlock(scope: !1596, file: !3, line: 105, column: 7)
!1717 = !DILocation(line: 105, column: 36, scope: !1716)
!1718 = !DILocation(line: 105, column: 7, scope: !1596)
!1719 = !DILocation(line: 110, column: 7, scope: !1596)
!1720 = !DILocalVariable(name: "__m", arg: 2, scope: !1721, file: !27, line: 1639, type: !77)
!1721 = distinct !DISubprogram(name: "load", linkageName: "_ZNKSt3__113__atomic_baseIPFlvELb0EE4loadENS_12memory_orderE", scope: !1722, file: !27, line: 1639, type: !1723, scopeLine: 1641, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !1445, declaration: !1730, retainedNodes: !1731)
!1722 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__atomic_base<long (*)(), false>", scope: !28, file: !27, line: 1612, size: 64, flags: DIFlagFwdDecl | DIFlagTypePassByReference, identifier: "_ZTSNSt3__113__atomic_baseIPFlvELb0EEE")
!1723 = !DISubroutineType(types: !1724)
!1724 = !{!1725, !1728, !77}
!1725 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1726, size: 64)
!1726 = !DISubroutineType(types: !1727)
!1727 = !{!180}
!1728 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1729, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!1729 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !1722)
!1730 = !DISubprogram(name: "load", linkageName: "_ZNKSt3__113__atomic_baseIPFlvELb0EE4loadENS_12memory_orderE", scope: !1722, file: !27, line: 1639, type: !1723, scopeLine: 1639, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized)
!1731 = !{!1732, !1720}
!1732 = !DILocalVariable(name: "this", arg: 1, scope: !1721, type: !1733, flags: DIFlagArtificial | DIFlagObjectPointer)
!1733 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1729, size: 64)
!1734 = !DILocation(line: 0, scope: !1721, inlinedAt: !1735)
!1735 = distinct !DILocation(line: 62, column: 26, scope: !1736, inlinedAt: !1742)
!1736 = distinct !DILexicalBlock(scope: !1737, file: !1435, line: 62, column: 7)
!1737 = distinct !DISubprogram(name: "LoadCycleClockSource", linkageName: "_ZN4absl13base_internal12_GLOBAL__N_120LoadCycleClockSourceEv", scope: !1434, file: !1435, line: 59, type: !1738, scopeLine: 59, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !1445, retainedNodes: !1018)
!1738 = !DISubroutineType(types: !1739)
!1739 = !{!1740}
!1740 = !DIDerivedType(tag: DW_TAG_typedef, name: "CycleClockSourceFunc", scope: !8, file: !1410, line: 90, baseType: !1741)
!1741 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1413, size: 64)
!1742 = distinct !DILocation(line: 75, column: 13, scope: !1743, inlinedAt: !1746)
!1743 = distinct !DISubprogram(name: "Now", linkageName: "_ZN4absl13base_internal10CycleClock3NowEv", scope: !1409, file: !1435, line: 74, type: !1413, scopeLine: 74, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !1445, declaration: !1412, retainedNodes: !1744)
!1744 = !{!1745}
!1745 = !DILocalVariable(name: "fn", scope: !1743, file: !1435, line: 75, type: !1725)
!1746 = distinct !DILocation(line: 120, column: 29, scope: !1596)
!1747 = !DILocalVariable(name: "__order", arg: 2, scope: !1748, file: !27, line: 1013, type: !77)
!1748 = distinct !DISubprogram(name: "__cxx_atomic_load<long (*)()>", linkageName: "_ZNSt3__117__cxx_atomic_loadIPFlvEEET_PKNS_22__cxx_atomic_base_implIS3_EENS_12memory_orderE", scope: !28, file: !27, line: 1013, type: !1749, scopeLine: 1013, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !1445, templateParams: !1756, retainedNodes: !1754)
!1749 = !DISubroutineType(types: !1750)
!1750 = !{!1725, !1751, !77}
!1751 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1752, size: 64)
!1752 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !1753)
!1753 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__cxx_atomic_base_impl<long (*)()>", scope: !28, file: !27, line: 958, size: 64, flags: DIFlagFwdDecl | DIFlagTypePassByValue, identifier: "_ZTSNSt3__122__cxx_atomic_base_implIPFlvEEE")
!1754 = !{!1755, !1747}
!1755 = !DILocalVariable(name: "__a", arg: 1, scope: !1748, file: !27, line: 1013, type: !1751)
!1756 = !{!1757}
!1757 = !DITemplateTypeParameter(name: "_Tp", type: !1725)
!1758 = !DILocation(line: 0, scope: !1748, inlinedAt: !1759)
!1759 = distinct !DILocation(line: 1641, column: 17, scope: !1721, inlinedAt: !1735)
!1760 = !DILocation(line: 1030, column: 12, scope: !1748, inlinedAt: !1759)
!1761 = !DILocation(line: 62, column: 58, scope: !1736, inlinedAt: !1742)
!1762 = !DILocation(line: 62, column: 7, scope: !1737, inlinedAt: !1742)
!1763 = !DILocation(line: 0, scope: !1721, inlinedAt: !1764)
!1764 = distinct !DILocation(line: 69, column: 29, scope: !1737, inlinedAt: !1742)
!1765 = !DILocation(line: 0, scope: !1748, inlinedAt: !1766)
!1766 = distinct !DILocation(line: 1641, column: 17, scope: !1721, inlinedAt: !1764)
!1767 = !DILocation(line: 1030, column: 12, scope: !1748, inlinedAt: !1766)
!1768 = !DILocation(line: 0, scope: !1743, inlinedAt: !1746)
!1769 = !DILocation(line: 76, column: 10, scope: !1770, inlinedAt: !1746)
!1770 = distinct !DILexicalBlock(scope: !1743, file: !1435, line: 76, column: 7)
!1771 = !DILocation(line: 76, column: 7, scope: !1743, inlinedAt: !1746)
!1772 = !DILocation(line: 54, column: 3, scope: !1773, inlinedAt: !1780)
!1773 = distinct !DISubprogram(name: "Now", linkageName: "_ZN4absl13base_internal18UnscaledCycleClock3NowEv", scope: !1774, file: !1449, line: 52, type: !1413, scopeLine: 52, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !1448, declaration: !1776, retainedNodes: !1777)
!1774 = distinct !DICompositeType(tag: DW_TAG_class_type, name: "UnscaledCycleClock", scope: !8, file: !1775, line: 119, size: 8, flags: DIFlagFwdDecl | DIFlagTypePassByValue, identifier: "_ZTSN4absl13base_internal18UnscaledCycleClockE")
!1775 = !DIFile(filename: "./internal/unscaledcycleclock.h", directory: "/proc/self/cwd", checksumkind: CSK_MD5, checksum: "c8e0bfaaa957de3f65449fcf59de9af9")
!1776 = !DISubprogram(name: "Now", linkageName: "_ZN4absl13base_internal18UnscaledCycleClock3NowEv", scope: !1774, file: !1775, line: 125, type: !1413, scopeLine: 125, flags: DIFlagPrototyped | DIFlagStaticMember, spFlags: DISPFlagOptimized)
!1777 = !{!1778, !1779}
!1778 = !DILocalVariable(name: "low", scope: !1773, file: !1449, line: 53, type: !801)
!1779 = !DILocalVariable(name: "high", scope: !1773, file: !1449, line: 53, type: !801)
!1780 = distinct !DILocation(line: 77, column: 12, scope: !1781, inlinedAt: !1746)
!1781 = distinct !DILexicalBlock(scope: !1770, file: !1435, line: 76, column: 22)
!1782 = !{i32 1373}
!1783 = !DILocation(line: 0, scope: !1773, inlinedAt: !1780)
!1784 = !DILocation(line: 55, column: 16, scope: !1773, inlinedAt: !1780)
!1785 = !DILocation(line: 55, column: 23, scope: !1773, inlinedAt: !1780)
!1786 = !DILocation(line: 77, column: 5, scope: !1781, inlinedAt: !1746)
!1787 = !DILocation(line: 79, column: 10, scope: !1743, inlinedAt: !1746)
!1788 = !DILocation(line: 79, column: 3, scope: !1743, inlinedAt: !1746)
!1789 = !DILocation(line: 123, column: 3, scope: !1596)
!1790 = !DILocation(line: 126, column: 38, scope: !1791)
!1791 = distinct !DILexicalBlock(scope: !1792, file: !3, line: 126, column: 9)
!1792 = distinct !DILexicalBlock(scope: !1596, file: !3, line: 123, column: 45)
!1793 = !DILocation(line: 126, column: 9, scope: !1792)
!1794 = !DILocation(line: 132, column: 38, scope: !1795)
!1795 = distinct !DILexicalBlock(scope: !1796, file: !3, line: 131, column: 11)
!1796 = distinct !DILexicalBlock(scope: !1791, file: !3, line: 126, column: 44)
!1797 = !DILocation(line: 0, scope: !1639, inlinedAt: !1798)
!1798 = distinct !DILocation(line: 131, column: 21, scope: !1795)
!1799 = !DILocation(line: 0, scope: !1648, inlinedAt: !1800)
!1800 = distinct !DILocation(line: 1671, column: 17, scope: !1639, inlinedAt: !1798)
!1801 = !DILocation(line: 1054, column: 12, scope: !1648, inlinedAt: !1800)
!1802 = !DILocation(line: 138, column: 30, scope: !1803)
!1803 = distinct !DILexicalBlock(scope: !1795, file: !3, line: 138, column: 18)
!1804 = !DILocation(line: 138, column: 47, scope: !1803)
!1805 = !DILocation(line: 138, column: 18, scope: !1795)
!1806 = !DILocation(line: 0, scope: !1607, inlinedAt: !1807)
!1807 = distinct !DILocation(line: 142, column: 22, scope: !1808)
!1808 = distinct !DILexicalBlock(scope: !1803, file: !3, line: 138, column: 53)
!1809 = !DILocation(line: 231, column: 19, scope: !1619, inlinedAt: !1807)
!1810 = !DILocation(line: 231, column: 43, scope: !1619, inlinedAt: !1807)
!1811 = !DILocation(line: 231, column: 7, scope: !1607, inlinedAt: !1807)
!1812 = !DILocation(line: 292, column: 10, scope: !1353, inlinedAt: !1813)
!1813 = distinct !DILocation(line: 197, column: 14, scope: !1624, inlinedAt: !1814)
!1814 = distinct !DILocation(line: 234, column: 9, scope: !1631, inlinedAt: !1807)
!1815 = !DILocation(line: 0, scope: !1624, inlinedAt: !1814)
!1816 = !DILocation(line: 198, column: 16, scope: !1629, inlinedAt: !1814)
!1817 = !DILocation(line: 198, column: 7, scope: !1624, inlinedAt: !1814)
!1818 = !DILocation(line: 241, column: 52, scope: !1637, inlinedAt: !1807)
!1819 = !DILocation(line: 0, scope: !1639, inlinedAt: !1820)
!1820 = distinct !DILocation(line: 239, column: 18, scope: !1637, inlinedAt: !1807)
!1821 = !DILocation(line: 0, scope: !1648, inlinedAt: !1822)
!1822 = distinct !DILocation(line: 1671, column: 17, scope: !1639, inlinedAt: !1820)
!1823 = !DILocation(line: 1054, column: 12, scope: !1648, inlinedAt: !1822)
!1824 = !DILocation(line: 0, scope: !1662, inlinedAt: !1825)
!1825 = distinct !DILocation(line: 202, column: 71, scope: !1628, inlinedAt: !1814)
!1826 = !DILocation(line: 0, scope: !1006, inlinedAt: !1827)
!1827 = distinct !DILocation(line: 1641, column: 17, scope: !1662, inlinedAt: !1825)
!1828 = !DILocation(line: 1030, column: 59, scope: !1006, inlinedAt: !1827)
!1829 = !DILocation(line: 1030, column: 12, scope: !1006, inlinedAt: !1827)
!1830 = !DILocation(line: 0, scope: !1628, inlinedAt: !1814)
!1831 = !DILocation(line: 205, column: 17, scope: !1628, inlinedAt: !1814)
!1832 = !DILocation(line: 0, scope: !1675, inlinedAt: !1833)
!1833 = distinct !DILocation(line: 204, column: 57, scope: !1628, inlinedAt: !1814)
!1834 = !DILocation(line: 0, scope: !1683, inlinedAt: !1835)
!1835 = distinct !DILocation(line: 1633, column: 10, scope: !1675, inlinedAt: !1833)
!1836 = !DILocation(line: 1002, column: 5, scope: !1683, inlinedAt: !1835)
!1837 = !DILocation(line: 0, scope: !1694, inlinedAt: !1838)
!1838 = distinct !DILocation(line: 243, column: 5, scope: !1700, inlinedAt: !1807)
!1839 = !DILocation(line: 292, column: 10, scope: !1353, inlinedAt: !1840)
!1840 = distinct !DILocation(line: 223, column: 14, scope: !1694, inlinedAt: !1838)
!1841 = !DILocation(line: 0, scope: !1662, inlinedAt: !1842)
!1842 = distinct !DILocation(line: 227, column: 69, scope: !1694, inlinedAt: !1838)
!1843 = !DILocation(line: 0, scope: !1006, inlinedAt: !1844)
!1844 = distinct !DILocation(line: 1641, column: 17, scope: !1662, inlinedAt: !1842)
!1845 = !DILocation(line: 1030, column: 59, scope: !1006, inlinedAt: !1844)
!1846 = !DILocation(line: 1030, column: 12, scope: !1006, inlinedAt: !1844)
!1847 = !DILocation(line: 230, column: 15, scope: !1694, inlinedAt: !1838)
!1848 = !DILocation(line: 0, scope: !1675, inlinedAt: !1849)
!1849 = distinct !DILocation(line: 229, column: 55, scope: !1694, inlinedAt: !1838)
!1850 = !DILocation(line: 0, scope: !1683, inlinedAt: !1851)
!1851 = distinct !DILocation(line: 1633, column: 10, scope: !1675, inlinedAt: !1849)
!1852 = !DILocation(line: 1002, column: 5, scope: !1683, inlinedAt: !1851)
!1853 = !DILocation(line: 123, column: 22, scope: !1596)
!1854 = !DILocation(line: 123, column: 39, scope: !1596)
!1855 = distinct !{!1855, !1789, !1856, !1594}
!1856 = !DILocation(line: 167, column: 3, scope: !1596)
!1857 = !DILocation(line: 144, column: 47, scope: !1858)
!1858 = distinct !DILexicalBlock(scope: !1803, file: !3, line: 144, column: 18)
!1859 = !DILocation(line: 144, column: 18, scope: !1803)
!1860 = !DILocation(line: 159, column: 58, scope: !1792)
!1861 = !DILocalVariable(name: "w", arg: 1, scope: !1862, file: !1341, line: 97, type: !1306)
!1862 = distinct !DISubprogram(name: "SpinLockDelay", linkageName: "_ZN4absl13base_internal13SpinLockDelayEPNSt3__16atomicIjEEjiNS0_14SchedulingModeE", scope: !8, file: !1341, line: 96, type: !1863, scopeLine: 98, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, retainedNodes: !1865)
!1863 = !DISubroutineType(types: !1864)
!1864 = !{null, !1306, !369, !13, !772}
!1865 = !{!1861, !1866, !1867, !1868}
!1866 = !DILocalVariable(name: "value", arg: 2, scope: !1862, file: !1341, line: 97, type: !369)
!1867 = !DILocalVariable(name: "loop", arg: 3, scope: !1862, file: !1341, line: 97, type: !13)
!1868 = !DILocalVariable(name: "scheduling_mode", arg: 4, scope: !1862, file: !1341, line: 98, type: !772)
!1869 = !DILocation(line: 0, scope: !1862, inlinedAt: !1870)
!1870 = distinct !DILocation(line: 159, column: 5, scope: !1792)
!1871 = !DILocation(line: 99, column: 3, scope: !1862, inlinedAt: !1870)
!1872 = !DILocation(line: 164, column: 18, scope: !1792)
!1873 = !DILocation(line: 0, scope: !1721, inlinedAt: !1874)
!1874 = distinct !DILocation(line: 62, column: 26, scope: !1736, inlinedAt: !1875)
!1875 = distinct !DILocation(line: 75, column: 13, scope: !1743, inlinedAt: !1876)
!1876 = distinct !DILocation(line: 165, column: 53, scope: !1792)
!1877 = !DILocation(line: 0, scope: !1748, inlinedAt: !1878)
!1878 = distinct !DILocation(line: 1641, column: 17, scope: !1721, inlinedAt: !1874)
!1879 = !DILocation(line: 1030, column: 12, scope: !1748, inlinedAt: !1878)
!1880 = !DILocation(line: 62, column: 58, scope: !1736, inlinedAt: !1875)
!1881 = !DILocation(line: 62, column: 7, scope: !1737, inlinedAt: !1875)
!1882 = !DILocation(line: 0, scope: !1721, inlinedAt: !1883)
!1883 = distinct !DILocation(line: 69, column: 29, scope: !1737, inlinedAt: !1875)
!1884 = !DILocation(line: 0, scope: !1748, inlinedAt: !1885)
!1885 = distinct !DILocation(line: 1641, column: 17, scope: !1721, inlinedAt: !1883)
!1886 = !DILocation(line: 1030, column: 12, scope: !1748, inlinedAt: !1885)
!1887 = !DILocation(line: 0, scope: !1743, inlinedAt: !1876)
!1888 = !DILocation(line: 76, column: 10, scope: !1770, inlinedAt: !1876)
!1889 = !DILocation(line: 76, column: 7, scope: !1743, inlinedAt: !1876)
!1890 = !DILocation(line: 54, column: 3, scope: !1773, inlinedAt: !1891)
!1891 = distinct !DILocation(line: 77, column: 12, scope: !1781, inlinedAt: !1876)
!1892 = !DILocation(line: 0, scope: !1773, inlinedAt: !1891)
!1893 = !DILocation(line: 55, column: 16, scope: !1773, inlinedAt: !1891)
!1894 = !DILocation(line: 55, column: 23, scope: !1773, inlinedAt: !1891)
!1895 = !DILocation(line: 77, column: 5, scope: !1781, inlinedAt: !1876)
!1896 = !DILocation(line: 79, column: 10, scope: !1743, inlinedAt: !1876)
!1897 = !DILocation(line: 79, column: 3, scope: !1743, inlinedAt: !1876)
!1898 = !DILocation(line: 0, scope: !1100, inlinedAt: !1899)
!1899 = distinct !DILocation(line: 165, column: 19, scope: !1792)
!1900 = !DILocation(line: 201, column: 22, scope: !1100, inlinedAt: !1899)
!1901 = !DILocation(line: 201, column: 41, scope: !1100, inlinedAt: !1899)
!1902 = !DILocation(line: 206, column: 7, scope: !1100, inlinedAt: !1899)
!1903 = !DILocation(line: 208, column: 7, scope: !1100, inlinedAt: !1899)
!1904 = !DILocation(line: 217, column: 3, scope: !1100, inlinedAt: !1899)
!1905 = !DILocation(line: 0, scope: !1607, inlinedAt: !1906)
!1906 = distinct !DILocation(line: 166, column: 18, scope: !1792)
!1907 = !DILocation(line: 226, column: 19, scope: !1615, inlinedAt: !1906)
!1908 = !DILocation(line: 226, column: 36, scope: !1615, inlinedAt: !1906)
!1909 = !DILocation(line: 226, column: 7, scope: !1607, inlinedAt: !1906)
!1910 = !DILocation(line: 231, column: 19, scope: !1619, inlinedAt: !1906)
!1911 = !DILocation(line: 231, column: 43, scope: !1619, inlinedAt: !1906)
!1912 = !DILocation(line: 231, column: 7, scope: !1607, inlinedAt: !1906)
!1913 = !DILocation(line: 292, column: 10, scope: !1353, inlinedAt: !1914)
!1914 = distinct !DILocation(line: 197, column: 14, scope: !1624, inlinedAt: !1915)
!1915 = distinct !DILocation(line: 234, column: 9, scope: !1631, inlinedAt: !1906)
!1916 = !DILocation(line: 0, scope: !1624, inlinedAt: !1915)
!1917 = !DILocation(line: 198, column: 16, scope: !1629, inlinedAt: !1915)
!1918 = !DILocation(line: 198, column: 7, scope: !1624, inlinedAt: !1915)
!1919 = !DILocation(line: 241, column: 52, scope: !1637, inlinedAt: !1906)
!1920 = !DILocation(line: 0, scope: !1639, inlinedAt: !1921)
!1921 = distinct !DILocation(line: 239, column: 18, scope: !1637, inlinedAt: !1906)
!1922 = !DILocation(line: 0, scope: !1648, inlinedAt: !1923)
!1923 = distinct !DILocation(line: 1671, column: 17, scope: !1639, inlinedAt: !1921)
!1924 = !DILocation(line: 1054, column: 12, scope: !1648, inlinedAt: !1923)
!1925 = !DILocation(line: 0, scope: !1662, inlinedAt: !1926)
!1926 = distinct !DILocation(line: 202, column: 71, scope: !1628, inlinedAt: !1915)
!1927 = !DILocation(line: 0, scope: !1006, inlinedAt: !1928)
!1928 = distinct !DILocation(line: 1641, column: 17, scope: !1662, inlinedAt: !1926)
!1929 = !DILocation(line: 1030, column: 59, scope: !1006, inlinedAt: !1928)
!1930 = !DILocation(line: 1030, column: 12, scope: !1006, inlinedAt: !1928)
!1931 = !DILocation(line: 0, scope: !1628, inlinedAt: !1915)
!1932 = !DILocation(line: 205, column: 17, scope: !1628, inlinedAt: !1915)
!1933 = !DILocation(line: 0, scope: !1675, inlinedAt: !1934)
!1934 = distinct !DILocation(line: 204, column: 57, scope: !1628, inlinedAt: !1915)
!1935 = !DILocation(line: 0, scope: !1683, inlinedAt: !1936)
!1936 = distinct !DILocation(line: 1633, column: 10, scope: !1675, inlinedAt: !1934)
!1937 = !DILocation(line: 1002, column: 5, scope: !1683, inlinedAt: !1936)
!1938 = !DILocation(line: 0, scope: !1694, inlinedAt: !1939)
!1939 = distinct !DILocation(line: 243, column: 5, scope: !1700, inlinedAt: !1906)
!1940 = !DILocation(line: 292, column: 10, scope: !1353, inlinedAt: !1941)
!1941 = distinct !DILocation(line: 223, column: 14, scope: !1694, inlinedAt: !1939)
!1942 = !DILocation(line: 0, scope: !1662, inlinedAt: !1943)
!1943 = distinct !DILocation(line: 227, column: 69, scope: !1694, inlinedAt: !1939)
!1944 = !DILocation(line: 0, scope: !1006, inlinedAt: !1945)
!1945 = distinct !DILocation(line: 1641, column: 17, scope: !1662, inlinedAt: !1943)
!1946 = !DILocation(line: 1030, column: 59, scope: !1006, inlinedAt: !1945)
!1947 = !DILocation(line: 1030, column: 12, scope: !1006, inlinedAt: !1945)
!1948 = !DILocation(line: 230, column: 15, scope: !1694, inlinedAt: !1939)
!1949 = !DILocation(line: 0, scope: !1675, inlinedAt: !1950)
!1950 = distinct !DILocation(line: 229, column: 55, scope: !1694, inlinedAt: !1939)
!1951 = !DILocation(line: 0, scope: !1683, inlinedAt: !1952)
!1952 = distinct !DILocation(line: 1633, column: 10, scope: !1675, inlinedAt: !1950)
!1953 = !DILocation(line: 1002, column: 5, scope: !1683, inlinedAt: !1952)
!1954 = !DILocation(line: 168, column: 1, scope: !1596)
!1955 = !DILocation(line: 0, scope: !1100)
!1956 = !DILocation(line: 201, column: 22, scope: !1100)
!1957 = !DILocation(line: 201, column: 41, scope: !1100)
!1958 = !DILocation(line: 206, column: 7, scope: !1100)
!1959 = !DILocation(line: 208, column: 7, scope: !1100)
!1960 = !DILocation(line: 217, column: 3, scope: !1100)
!1961 = !DILocation(line: 218, column: 1, scope: !1100)
!1962 = distinct !DISubprogram(name: "SlowUnlock", linkageName: "_ZN4absl13base_internal8SpinLock10SlowUnlockEj", scope: !565, file: !3, line: 170, type: !811, scopeLine: 170, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !810, retainedNodes: !1963)
!1963 = !{!1964, !1965, !1966}
!1964 = !DILocalVariable(name: "this", arg: 1, scope: !1962, type: !564, flags: DIFlagArtificial | DIFlagObjectPointer)
!1965 = !DILocalVariable(name: "lock_value", arg: 2, scope: !1962, file: !3, line: 170, type: !369)
!1966 = !DILocalVariable(name: "wait_cycles", scope: !1967, file: !3, line: 178, type: !1969)
!1967 = distinct !DILexicalBlock(scope: !1968, file: !3, line: 177, column: 57)
!1968 = distinct !DILexicalBlock(scope: !1962, file: !3, line: 177, column: 7)
!1969 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !801)
!1970 = !DILocation(line: 0, scope: !1962)
!1971 = !DILocation(line: 171, column: 32, scope: !1962)
!1972 = !DILocalVariable(name: "w", arg: 1, scope: !1973, file: !1341, line: 91, type: !1306)
!1973 = distinct !DISubprogram(name: "SpinLockWake", linkageName: "_ZN4absl13base_internal12SpinLockWakeEPNSt3__16atomicIjEEb", scope: !8, file: !1341, line: 91, type: !1974, scopeLine: 92, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, retainedNodes: !1976)
!1974 = !DISubroutineType(types: !1975)
!1975 = !{null, !1306, !19}
!1976 = !{!1972, !1977}
!1977 = !DILocalVariable(name: "all", arg: 2, scope: !1973, file: !1341, line: 92, type: !19)
!1978 = !DILocation(line: 0, scope: !1973, inlinedAt: !1979)
!1979 = distinct !DILocation(line: 171, column: 3, scope: !1962)
!1980 = !DILocation(line: 93, column: 3, scope: !1973, inlinedAt: !1979)
!1981 = !DILocation(line: 177, column: 19, scope: !1968)
!1982 = !DILocation(line: 177, column: 36, scope: !1968)
!1983 = !DILocation(line: 177, column: 7, scope: !1962)
!1984 = !DILocalVariable(name: "lock_value", arg: 1, scope: !1985, file: !3, line: 220, type: !369)
!1985 = distinct !DISubprogram(name: "DecodeWaitCycles", linkageName: "_ZN4absl13base_internal8SpinLock16DecodeWaitCyclesEj", scope: !565, file: !3, line: 220, type: !799, scopeLine: 220, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !798, retainedNodes: !1986)
!1986 = !{!1984, !1987}
!1987 = !DILocalVariable(name: "scaled_wait_time", scope: !1985, file: !3, line: 222, type: !1969)
!1988 = !DILocation(line: 0, scope: !1985, inlinedAt: !1989)
!1989 = distinct !DILocation(line: 178, column: 34, scope: !1967)
!1990 = !DILocation(line: 223, column: 7, scope: !1985, inlinedAt: !1989)
!1991 = !DILocation(line: 224, column: 27, scope: !1985, inlinedAt: !1989)
!1992 = !DILocation(line: 0, scope: !1967)
!1993 = !DILocalVariable(name: "args", arg: 2, scope: !1994, file: !1115, line: 116, type: !1997)
!1994 = distinct !DISubprogram(name: "operator()<absl::base_internal::SpinLock *, const unsigned long &>", linkageName: "_ZNK4absl13base_internal10AtomicHookIPFvPKvlEEclIJPNS0_8SpinLockERKmEEEvDpOT_", scope: !1114, file: !1115, line: 116, type: !1995, scopeLine: 116, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, templateParams: !2001, declaration: !2000, retainedNodes: !2006)
!1995 = !DISubroutineType(types: !1996)
!1996 = !{null, !1284, !1997, !1998}
!1997 = !DIDerivedType(tag: DW_TAG_rvalue_reference_type, baseType: !564, size: 64)
!1998 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !1999, size: 64)
!1999 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !802)
!2000 = !DISubprogram(name: "operator()<absl::base_internal::SpinLock *, const unsigned long &>", linkageName: "_ZNK4absl13base_internal10AtomicHookIPFvPKvlEEclIJPNS0_8SpinLockERKmEEEvDpOT_", scope: !1114, file: !1115, line: 116, type: !1995, scopeLine: 116, flags: DIFlagPublic | DIFlagPrototyped, spFlags: DISPFlagOptimized, templateParams: !2001)
!2001 = !{!2002}
!2002 = !DITemplateValueParameter(tag: DW_TAG_GNU_template_parameter_pack, name: "CallArgs", value: !2003)
!2003 = !{!2004, !2005}
!2004 = !DITemplateTypeParameter(type: !564)
!2005 = !DITemplateTypeParameter(type: !1998)
!2006 = !{!2007, !1993, !2009}
!2007 = !DILocalVariable(name: "this", arg: 1, scope: !1994, type: !2008, flags: DIFlagArtificial | DIFlagObjectPointer)
!2008 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1285, size: 64)
!2009 = !DILocalVariable(name: "args", arg: 3, scope: !1994, file: !1115, line: 116, type: !1998)
!2010 = !DILocation(line: 0, scope: !1994, inlinedAt: !2011)
!2011 = distinct !DILocation(line: 180, column: 5, scope: !1967)
!2012 = !DILocalVariable(name: "__m", arg: 2, scope: !2013, file: !27, line: 1639, type: !77)
!2013 = distinct !DISubprogram(name: "load", linkageName: "_ZNKSt3__113__atomic_baseIPFvPKvlELb0EE4loadENS_12memory_orderE", scope: !1121, file: !27, line: 1639, type: !1160, scopeLine: 1641, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !1159, retainedNodes: !2014)
!2014 = !{!2015, !2012}
!2015 = !DILocalVariable(name: "this", arg: 1, scope: !2013, type: !2016, flags: DIFlagArtificial | DIFlagObjectPointer)
!2016 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1147, size: 64)
!2017 = !DILocation(line: 0, scope: !2013, inlinedAt: !2018)
!2018 = distinct !DILocation(line: 153, column: 39, scope: !2019, inlinedAt: !2022)
!2019 = distinct !DISubprogram(name: "DoLoad", linkageName: "_ZNK4absl13base_internal10AtomicHookIPFvPKvlEE6DoLoadEv", scope: !1114, file: !1115, line: 153, type: !1282, scopeLine: 153, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !1287, retainedNodes: !2020)
!2020 = !{!2021}
!2021 = !DILocalVariable(name: "this", arg: 1, scope: !2019, type: !2008, flags: DIFlagArtificial | DIFlagObjectPointer)
!2022 = distinct !DILocation(line: 117, column: 12, scope: !1994, inlinedAt: !2011)
!2023 = !DILocation(line: 0, scope: !1041, inlinedAt: !2024)
!2024 = distinct !DILocation(line: 1641, column: 17, scope: !2013, inlinedAt: !2018)
!2025 = !DILocation(line: 1030, column: 12, scope: !1041, inlinedAt: !2024)
!2026 = !DILocation(line: 117, column: 21, scope: !1994, inlinedAt: !2011)
!2027 = !DILocation(line: 117, column: 12, scope: !1994, inlinedAt: !2011)
!2028 = !DILocation(line: 182, column: 3, scope: !1967)
!2029 = !DILocation(line: 183, column: 1, scope: !1962)
!2030 = !DILocation(line: 0, scope: !1985)
!2031 = !DILocation(line: 223, column: 40, scope: !1985)
!2032 = !DILocation(line: 223, column: 7, scope: !1985)
!2033 = !DILocation(line: 224, column: 27, scope: !1985)
!2034 = !DILocation(line: 224, column: 3, scope: !1985)
!2035 = distinct !DISubprogram(name: "DummyFunction", linkageName: "_ZN4absl13base_internal10AtomicHookIPFvPKvlEE13DummyFunctionES3_l", scope: !1114, file: !1115, line: 135, type: !1045, scopeLine: 135, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !1286, retainedNodes: !2036)
!2036 = !{!2037, !2038}
!2037 = !DILocalVariable(arg: 1, scope: !2035, file: !1115, line: 135, type: !1047)
!2038 = !DILocalVariable(arg: 2, scope: !2035, file: !1115, line: 135, type: !180)
!2039 = !DILocation(line: 0, scope: !2035)
!2040 = !DILocation(line: 136, column: 5, scope: !2035)
!2041 = !DISubprogram(name: "AbslInternalSpinLockDelay", scope: !1341, file: !1341, line: 86, type: !2042, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized, retainedNodes: !1018)
!2042 = !DISubroutineType(types: !2043)
!2043 = !{null, !1306, !79, !13, !772}
!2044 = !DISubprogram(name: "AbslInternalSpinLockWake", scope: !1341, file: !1341, line: 85, type: !1974, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized, retainedNodes: !1018)
!2045 = !DILocation(line: 174, column: 35, scope: !1303)
!2046 = !DILocation(line: 0, scope: !1303)
!2047 = !DILocation(line: 0, scope: !1565, inlinedAt: !2048)
!2048 = distinct !DILocation(line: 152, column: 37, scope: !1314)
!2049 = !DILocation(line: 0, scope: !1027, inlinedAt: !2050)
!2050 = distinct !DILocation(line: 1641, column: 17, scope: !1565, inlinedAt: !2048)
!2051 = !DILocation(line: 1030, column: 12, scope: !1027, inlinedAt: !2050)
!2052 = !DILocation(line: 0, scope: !1314)
!2053 = !DILocation(line: 153, column: 34, scope: !1318)
!2054 = !DILocation(line: 163, column: 7, scope: !1316)
!2055 = !DILocation(line: 165, column: 5, scope: !1317)
!2056 = !DILocalVariable(name: "this", arg: 1, scope: !2057, type: !2060, flags: DIFlagArtificial | DIFlagObjectPointer)
!2057 = distinct !DISubprogram(name: "SchedulingHelper", linkageName: "_ZN4absl13base_internal16SchedulingHelperC2ENS0_14SchedulingModeE", scope: !1323, file: !991, line: 112, type: !1328, scopeLine: 112, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !1327, retainedNodes: !2058)
!2058 = !{!2056, !2059}
!2059 = !DILocalVariable(name: "mode", arg: 2, scope: !2057, file: !991, line: 112, type: !772)
!2060 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1323, size: 64)
!2061 = !DILocation(line: 0, scope: !2057, inlinedAt: !2062)
!2062 = distinct !DILocation(line: 174, column: 35, scope: !1303)
!2063 = !DILocation(line: 292, column: 10, scope: !1353, inlinedAt: !2064)
!2064 = distinct !DILocation(line: 197, column: 14, scope: !1624, inlinedAt: !2065)
!2065 = distinct !DILocation(line: 114, column: 23, scope: !2066, inlinedAt: !2062)
!2066 = distinct !DILexicalBlock(scope: !2067, file: !991, line: 113, column: 55)
!2067 = distinct !DILexicalBlock(scope: !2068, file: !991, line: 113, column: 9)
!2068 = distinct !DILexicalBlock(scope: !2057, file: !991, line: 112, column: 79)
!2069 = !DILocation(line: 0, scope: !1624, inlinedAt: !2065)
!2070 = !DILocation(line: 198, column: 16, scope: !1629, inlinedAt: !2065)
!2071 = !DILocation(line: 198, column: 7, scope: !1624, inlinedAt: !2065)
!2072 = !DILocation(line: 0, scope: !1662, inlinedAt: !2073)
!2073 = distinct !DILocation(line: 202, column: 71, scope: !1628, inlinedAt: !2065)
!2074 = !DILocation(line: 0, scope: !1006, inlinedAt: !2075)
!2075 = distinct !DILocation(line: 1641, column: 17, scope: !1662, inlinedAt: !2073)
!2076 = !DILocation(line: 1030, column: 59, scope: !1006, inlinedAt: !2075)
!2077 = !DILocation(line: 1030, column: 12, scope: !1006, inlinedAt: !2075)
!2078 = !DILocation(line: 0, scope: !1628, inlinedAt: !2065)
!2079 = !DILocation(line: 205, column: 17, scope: !1628, inlinedAt: !2065)
!2080 = !DILocation(line: 0, scope: !1675, inlinedAt: !2081)
!2081 = distinct !DILocation(line: 204, column: 57, scope: !1628, inlinedAt: !2065)
!2082 = !DILocation(line: 0, scope: !1683, inlinedAt: !2083)
!2083 = distinct !DILocation(line: 1633, column: 10, scope: !1675, inlinedAt: !2081)
!2084 = !DILocation(line: 1002, column: 5, scope: !1683, inlinedAt: !2083)
!2085 = !DILocalVariable(name: "this", arg: 1, scope: !2086, type: !1533, flags: DIFlagArtificial | DIFlagObjectPointer)
!2086 = distinct !DISubprogram(name: "compare_exchange_strong", linkageName: "_ZNSt3__113__atomic_baseIjLb0EE23compare_exchange_strongERjjNS_12memory_orderE", scope: !581, file: !27, line: 1685, type: !660, scopeLine: 1687, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !663, retainedNodes: !2087)
!2087 = !{!2085, !2088, !2089, !2090}
!2088 = !DILocalVariable(name: "__e", arg: 2, scope: !2086, file: !27, line: 1685, type: !650)
!2089 = !DILocalVariable(name: "__d", arg: 3, scope: !2086, file: !27, line: 1685, type: !79)
!2090 = !DILocalVariable(name: "__m", arg: 4, scope: !2086, file: !27, line: 1686, type: !77)
!2091 = !DILocation(line: 0, scope: !2086, inlinedAt: !2092)
!2092 = distinct !DILocation(line: 180, column: 16, scope: !2093)
!2093 = distinct !DILexicalBlock(scope: !1303, file: !991, line: 180, column: 7)
!2094 = !DILocation(line: 0, scope: !1648, inlinedAt: !2095)
!2095 = distinct !DILocation(line: 1687, column: 17, scope: !2086, inlinedAt: !2092)
!2096 = !DILocation(line: 1054, column: 12, scope: !1648, inlinedAt: !2095)
!2097 = !DILocation(line: 182, column: 7, scope: !2093)
!2098 = !DILocation(line: 183, column: 52, scope: !2093)
!2099 = !DILocation(line: 180, column: 7, scope: !1303)
!2100 = !DILocalVariable(name: "f", arg: 1, scope: !2101, file: !2102, line: 179, type: !1307)
!2101 = distinct !DISubprogram(name: "invoke<(lambda at internal/spinlock.cc:90:62)>", linkageName: "_ZN4absl13base_internal6invokeIZNS0_8SpinLock8SpinLoopEvE3$_0JEEEDTclsr7InvokerIT_DpT0_E4typeE6Invokeclsr3stdE7declvalIS4_EEspclsr3stdE7declvalIS5_EEEEOS4_DpOS5_", scope: !8, file: !2102, line: 179, type: !2103, scopeLine: 179, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, templateParams: !2107, retainedNodes: !2106)
!2102 = !DIFile(filename: "internal/invoke.h", directory: "/proc/self/cwd", checksumkind: CSK_MD5, checksum: "b38435ec421dbecc288a4883cde1b547")
!2103 = !DISubroutineType(types: !2104)
!2104 = !{!2105, !1307}
!2105 = !DIDerivedType(tag: DW_TAG_typedef, name: "invoke_result_t<(lambda at internal/spinlock.cc:90:62)>", scope: !8, file: !2102, line: 173, baseType: null)
!2106 = !{!2100}
!2107 = !{!2108, !1337}
!2108 = !DITemplateTypeParameter(name: "F", type: !1308)
!2109 = !DILocation(line: 0, scope: !2101, inlinedAt: !2110)
!2110 = distinct !DILocation(line: 184, column: 5, scope: !2111)
!2111 = distinct !DILexicalBlock(scope: !2093, file: !991, line: 183, column: 66)
!2112 = !DILocalVariable(name: "f", arg: 1, scope: !2113, file: !2102, line: 152, type: !1307)
!2113 = distinct !DISubprogram(name: "Invoke<(lambda at internal/spinlock.cc:90:62)>", linkageName: "_ZN4absl13base_internal8Callable6InvokeIZNS0_8SpinLock8SpinLoopEvE3$_0JEEEDTclclsr3stdE7declvalIT_EEspclsr3stdE7declvalIT0_EEEEOS5_DpOS6_", scope: !2114, file: !2102, line: 151, type: !2115, scopeLine: 152, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, templateParams: !2107, declaration: !2117, retainedNodes: !2118)
!2114 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "Callable", scope: !8, file: !2102, line: 147, size: 8, flags: DIFlagTypePassByValue, elements: !1018, identifier: "_ZTSN4absl13base_internal8CallableE")
!2115 = !DISubroutineType(types: !2116)
!2116 = !{null, !1307}
!2117 = !DISubprogram(name: "Invoke<(lambda at internal/spinlock.cc:90:62)>", linkageName: "_ZN4absl13base_internal8Callable6InvokeIZNS0_8SpinLock8SpinLoopEvE3$_0JEEEDTclclsr3stdE7declvalIT_EEspclsr3stdE7declvalIT0_EEEEOS5_DpOS6_", scope: !2114, file: !2102, line: 151, type: !2115, scopeLine: 151, flags: DIFlagPrototyped | DIFlagStaticMember, spFlags: DISPFlagOptimized, templateParams: !2107)
!2118 = !{!2112}
!2119 = !DILocation(line: 0, scope: !2113, inlinedAt: !2120)
!2120 = distinct !DILocation(line: 180, column: 10, scope: !2101, inlinedAt: !2110)
!2121 = !DILocalVariable(name: "this", arg: 1, scope: !2122, type: !2132, flags: DIFlagArtificial | DIFlagObjectPointer)
!2122 = distinct !DISubprogram(name: "operator()", linkageName: "_ZZN4absl13base_internal8SpinLock8SpinLoopEvENK3$_0clEv", scope: !1308, file: !3, line: 90, type: !2123, scopeLine: 90, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !2127, retainedNodes: !2131)
!2123 = !DISubroutineType(types: !2124)
!2124 = !{null, !2125}
!2125 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !2126, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!2126 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !1308)
!2127 = !DISubprogram(name: "operator()", scope: !1308, file: !3, line: 90, type: !2128, scopeLine: 90, flags: DIFlagPublic | DIFlagPrototyped, spFlags: DISPFlagOptimized)
!2128 = !DISubroutineType(types: !2129)
!2129 = !{!2130, !2125}
!2130 = !DIBasicType(tag: DW_TAG_unspecified_type, name: "auto")
!2131 = !{!2121}
!2132 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !2126, size: 64)
!2133 = !DILocation(line: 0, scope: !2122, inlinedAt: !2134)
!2134 = distinct !DILocation(line: 153, column: 12, scope: !2113, inlinedAt: !2120)
!2135 = !DILocalVariable(name: "fn", arg: 2, scope: !2136, file: !991, line: 199, type: !2139)
!2136 = distinct !DISubprogram(name: "LowLevelCallOnce<(lambda at internal/sysinfo.cc:299:28)>", linkageName: "_ZN4absl13base_internal16LowLevelCallOnceIZNS0_7NumCPUsEvE3$_0JEEEvPNS_9once_flagEOT_DpOT0_", scope: !8, file: !991, line: 199, type: !2137, scopeLine: 199, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !1446, templateParams: !2148, retainedNodes: !2144)
!2137 = !DISubroutineType(types: !2138)
!2138 = !{null, !1557, !2139}
!2139 = !DIDerivedType(tag: DW_TAG_rvalue_reference_type, baseType: !2140, size: 64)
!2140 = distinct !DICompositeType(tag: DW_TAG_class_type, scope: !2141, file: !1439, line: 299, size: 8, flags: DIFlagTypePassByValue | DIFlagNonTrivial, elements: !1018)
!2141 = distinct !DISubprogram(name: "NumCPUs", linkageName: "_ZN4absl13base_internal7NumCPUsEv", scope: !8, file: !1439, line: 297, type: !2142, scopeLine: 297, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !1446, retainedNodes: !1018)
!2142 = !DISubroutineType(types: !2143)
!2143 = !{!13}
!2144 = !{!2145, !2135, !2146, !2147}
!2145 = !DILocalVariable(name: "flag", arg: 1, scope: !2136, file: !991, line: 199, type: !1557)
!2146 = !DILocalVariable(name: "once", scope: !2136, file: !991, line: 200, type: !1306)
!2147 = !DILocalVariable(name: "s", scope: !2136, file: !991, line: 201, type: !369)
!2148 = !{!2149, !1337}
!2149 = !DITemplateTypeParameter(name: "Callable", type: !2140)
!2150 = !DILocation(line: 0, scope: !2136, inlinedAt: !2151)
!2151 = distinct !DILocation(line: 298, column: 3, scope: !2141, inlinedAt: !2152)
!2152 = distinct !DILocation(line: 91, column: 27, scope: !2122, inlinedAt: !2134)
!2153 = !DILocalVariable(name: "__m", arg: 2, scope: !2154, file: !27, line: 1639, type: !77)
!2154 = distinct !DISubprogram(name: "load", linkageName: "_ZNKSt3__113__atomic_baseIjLb0EE4loadENS_12memory_orderE", scope: !581, file: !27, line: 1639, type: !633, scopeLine: 1641, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !1446, declaration: !632, retainedNodes: !2155)
!2155 = !{!2156, !2153}
!2156 = !DILocalVariable(name: "this", arg: 1, scope: !2154, type: !1568, flags: DIFlagArtificial | DIFlagObjectPointer)
!2157 = !DILocation(line: 0, scope: !2154, inlinedAt: !2158)
!2158 = distinct !DILocation(line: 201, column: 22, scope: !2136, inlinedAt: !2151)
!2159 = !DILocalVariable(name: "__order", arg: 2, scope: !2160, file: !27, line: 1013, type: !77)
!2160 = distinct !DISubprogram(name: "__cxx_atomic_load<unsigned int>", linkageName: "_ZNSt3__117__cxx_atomic_loadIjEET_PKNS_22__cxx_atomic_base_implIS1_EENS_12memory_orderE", scope: !28, file: !27, line: 1013, type: !1028, scopeLine: 1013, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !1446, templateParams: !598, retainedNodes: !2161)
!2161 = !{!2162, !2159}
!2162 = !DILocalVariable(name: "__a", arg: 1, scope: !2160, file: !27, line: 1013, type: !1030)
!2163 = !DILocation(line: 0, scope: !2160, inlinedAt: !2164)
!2164 = distinct !DILocation(line: 1641, column: 17, scope: !2154, inlinedAt: !2158)
!2165 = !DILocation(line: 1030, column: 12, scope: !2160, inlinedAt: !2164)
!2166 = !DILocation(line: 202, column: 7, scope: !2167, inlinedAt: !2151)
!2167 = distinct !DILexicalBlock(scope: !2136, file: !991, line: 202, column: 7)
!2168 = !DILocation(line: 202, column: 7, scope: !2136, inlinedAt: !2151)
!2169 = !DILocation(line: 203, column: 5, scope: !2170, inlinedAt: !2151)
!2170 = distinct !DILexicalBlock(scope: !2167, file: !991, line: 202, column: 58)
!2171 = !DILocation(line: 206, column: 3, scope: !2170, inlinedAt: !2151)
!2172 = !DILocation(line: 300, column: 10, scope: !2141, inlinedAt: !2152)
!2173 = !DILocation(line: 91, column: 52, scope: !2122, inlinedAt: !2134)
!2174 = !DILocation(line: 91, column: 27, scope: !2122, inlinedAt: !2134)
!2175 = !DILocation(line: 91, column: 25, scope: !2122, inlinedAt: !2134)
!2176 = !DILocalVariable(name: "this", arg: 1, scope: !2177, type: !1533, flags: DIFlagArtificial | DIFlagObjectPointer)
!2177 = distinct !DISubprogram(name: "exchange", linkageName: "_ZNSt3__113__atomic_baseIjLb0EE8exchangeEjNS_12memory_orderE", scope: !581, file: !27, line: 1650, type: !645, scopeLine: 1651, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !644, retainedNodes: !2178)
!2178 = !{!2176, !2179, !2180}
!2179 = !DILocalVariable(name: "__d", arg: 2, scope: !2177, file: !27, line: 1650, type: !79)
!2180 = !DILocalVariable(name: "__m", arg: 3, scope: !2177, file: !27, line: 1650, type: !77)
!2181 = !DILocation(line: 0, scope: !2177, inlinedAt: !2182)
!2182 = distinct !DILocation(line: 187, column: 18, scope: !2111)
!2183 = !DILocalVariable(name: "__a", arg: 1, scope: !2184, file: !27, line: 1042, type: !1547)
!2184 = distinct !DISubprogram(name: "__cxx_atomic_exchange<unsigned int>", linkageName: "_ZNSt3__121__cxx_atomic_exchangeIjEET_PNS_22__cxx_atomic_base_implIS1_EES1_NS_12memory_orderE", scope: !28, file: !27, line: 1042, type: !2185, scopeLine: 1042, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, templateParams: !598, retainedNodes: !2187)
!2185 = !DISubroutineType(types: !2186)
!2186 = !{!79, !1547, !79, !77}
!2187 = !{!2183, !2188, !2189}
!2188 = !DILocalVariable(name: "__value", arg: 2, scope: !2184, file: !27, line: 1042, type: !79)
!2189 = !DILocalVariable(name: "__order", arg: 3, scope: !2184, file: !27, line: 1042, type: !77)
!2190 = !DILocation(line: 0, scope: !2184, inlinedAt: !2191)
!2191 = distinct !DILocation(line: 1651, column: 17, scope: !2177, inlinedAt: !2182)
!2192 = !DILocation(line: 1043, column: 12, scope: !2184, inlinedAt: !2191)
!2193 = !DILocation(line: 188, column: 21, scope: !2194)
!2194 = distinct !DILexicalBlock(scope: !2111, file: !991, line: 188, column: 9)
!2195 = !DILocation(line: 188, column: 9, scope: !2111)
!2196 = !DILocation(line: 0, scope: !1973, inlinedAt: !2197)
!2197 = distinct !DILocation(line: 189, column: 7, scope: !2198)
!2198 = distinct !DILexicalBlock(scope: !2194, file: !991, line: 188, column: 52)
!2199 = !DILocation(line: 93, column: 3, scope: !1973, inlinedAt: !2197)
!2200 = !DILocation(line: 190, column: 5, scope: !2198)
!2201 = !DILocalVariable(name: "this", arg: 1, scope: !2202, type: !2060, flags: DIFlagArtificial | DIFlagObjectPointer)
!2202 = distinct !DISubprogram(name: "~SchedulingHelper", linkageName: "_ZN4absl13base_internal16SchedulingHelperD2Ev", scope: !1323, file: !991, line: 118, type: !1332, scopeLine: 118, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, declaration: !1331, retainedNodes: !2203)
!2203 = !{!2201}
!2204 = !DILocation(line: 0, scope: !2202, inlinedAt: !2205)
!2205 = distinct !DILocation(line: 192, column: 1, scope: !1303)
!2206 = !DILocation(line: 0, scope: !1694, inlinedAt: !2207)
!2207 = distinct !DILocation(line: 120, column: 7, scope: !2208, inlinedAt: !2205)
!2208 = distinct !DILexicalBlock(scope: !2209, file: !991, line: 119, column: 55)
!2209 = distinct !DILexicalBlock(scope: !2210, file: !991, line: 119, column: 9)
!2210 = distinct !DILexicalBlock(scope: !2202, file: !991, line: 118, column: 23)
!2211 = !DILocation(line: 213, column: 7, scope: !1694, inlinedAt: !2207)
!2212 = !DILocation(line: 292, column: 10, scope: !1353, inlinedAt: !2213)
!2213 = distinct !DILocation(line: 223, column: 14, scope: !1694, inlinedAt: !2207)
!2214 = !DILocation(line: 0, scope: !1662, inlinedAt: !2215)
!2215 = distinct !DILocation(line: 227, column: 69, scope: !1694, inlinedAt: !2207)
!2216 = !DILocation(line: 0, scope: !1006, inlinedAt: !2217)
!2217 = distinct !DILocation(line: 1641, column: 17, scope: !1662, inlinedAt: !2215)
!2218 = !DILocation(line: 1030, column: 59, scope: !1006, inlinedAt: !2217)
!2219 = !DILocation(line: 1030, column: 12, scope: !1006, inlinedAt: !2217)
!2220 = !DILocation(line: 230, column: 15, scope: !1694, inlinedAt: !2207)
!2221 = !DILocation(line: 0, scope: !1675, inlinedAt: !2222)
!2222 = distinct !DILocation(line: 229, column: 55, scope: !1694, inlinedAt: !2207)
!2223 = !DILocation(line: 0, scope: !1683, inlinedAt: !2224)
!2224 = distinct !DILocation(line: 1633, column: 10, scope: !1675, inlinedAt: !2222)
!2225 = !DILocation(line: 1002, column: 5, scope: !1683, inlinedAt: !2224)
!2226 = !DILocation(line: 192, column: 1, scope: !1303)
!2227 = !DISubprogram(name: "RawLog", linkageName: "_ZN4absl20raw_logging_internal6RawLogENS_11LogSeverityEPKciS3_z", scope: !2229, file: !2228, line: 171, type: !2230, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized, retainedNodes: !1018)
!2228 = !DIFile(filename: "internal/raw_logging.h", directory: "/proc/self/cwd", checksumkind: CSK_MD5, checksum: "15c1ffca21779ae9eecb34f458ea1955")
!2229 = !DINamespace(name: "raw_logging_internal", scope: !9)
!2230 = !DISubroutineType(types: !2231)
!2231 = !{null, !997, !1320, !13, !1320, null}
!2232 = !DISubprogram(name: "SpinLockWait", linkageName: "_ZN4absl13base_internal12SpinLockWaitEPNSt3__16atomicIjEEiPKNS0_22SpinLockWaitTransitionENS0_14SchedulingModeE", scope: !8, file: !1341, line: 53, type: !2233, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized, retainedNodes: !1018)
!2233 = !DISubroutineType(types: !2234)
!2234 = !{!79, !1306, !13, !2235, !772}
!2235 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !1339, size: 64)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment