If we reload a virtual register that's already been assigned, we want to mark
[oota-llvm.git] / test / CodeGen / ARM / 2008-02-29-RegAllocLocal.ll
1 ; RUN: llvm-as < %s | llc -mtriple=arm-apple-darwin -regalloc=local
2 ; PR1925
3
4         %struct..0._10 = type { i32 }
5         %struct..1__pthread_mutex_s = type { i32, i32, i32, i32, i32, %struct..0._10 }
6         %"struct.kc::impl_Ccode_option" = type { %"struct.kc::impl_abstract_phylum" }
7         %"struct.kc::impl_ID" = type { %"struct.kc::impl_abstract_phylum", %"struct.kc::impl_Ccode_option"*, %"struct.kc::impl_casestring__Str"*, i32, %"struct.kc::impl_casestring__Str"* }
8         %"struct.kc::impl_abstract_phylum" = type { i32 (...)** }
9         %"struct.kc::impl_casestring__Str" = type { %"struct.kc::impl_abstract_phylum", i8* }
10         %struct.pthread_attr_t = type { i32, [32 x i8] }
11         %struct.pthread_mutex_t = type { %struct..1__pthread_mutex_s }
12
13 @_ZL20__gthrw_pthread_oncePiPFvvE = alias weak i32 (i32*, void ()*)* @pthread_once              ; <i32 (i32*, void ()*)*> [#uses=0]
14 @_ZL27__gthrw_pthread_getspecificj = alias weak i8* (i32)* @pthread_getspecific         ; <i8* (i32)*> [#uses=0]
15 @_ZL27__gthrw_pthread_setspecificjPKv = alias weak i32 (i32, i8*)* @pthread_setspecific         ; <i32 (i32, i8*)*> [#uses=0]
16 @_ZL22__gthrw_pthread_createPmPK14pthread_attr_tPFPvS3_ES3_ = alias weak i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)* @pthread_create          ; <i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)*> [#uses=0]
17 @_ZL22__gthrw_pthread_cancelm = alias weak i32 (i32)* @pthread_cancel           ; <i32 (i32)*> [#uses=0]
18 @_ZL26__gthrw_pthread_mutex_lockP15pthread_mutex_t = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_lock             ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
19 @_ZL29__gthrw_pthread_mutex_trylockP15pthread_mutex_t = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_trylock               ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
20 @_ZL28__gthrw_pthread_mutex_unlockP15pthread_mutex_t = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_unlock         ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
21 @_ZL26__gthrw_pthread_mutex_initP15pthread_mutex_tPK19pthread_mutexattr_t = alias weak i32 (%struct.pthread_mutex_t*, %struct..0._10*)* @pthread_mutex_init             ; <i32 (%struct.pthread_mutex_t*, %struct..0._10*)*> [#uses=0]
22 @_ZL26__gthrw_pthread_key_createPjPFvPvE = alias weak i32 (i32*, void (i8*)*)* @pthread_key_create              ; <i32 (i32*, void (i8*)*)*> [#uses=0]
23 @_ZL26__gthrw_pthread_key_deletej = alias weak i32 (i32)* @pthread_key_delete           ; <i32 (i32)*> [#uses=0]
24 @_ZL30__gthrw_pthread_mutexattr_initP19pthread_mutexattr_t = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_init          ; <i32 (%struct..0._10*)*> [#uses=0]
25 @_ZL33__gthrw_pthread_mutexattr_settypeP19pthread_mutexattr_ti = alias weak i32 (%struct..0._10*, i32)* @pthread_mutexattr_settype              ; <i32 (%struct..0._10*, i32)*> [#uses=0]
26 @_ZL33__gthrw_pthread_mutexattr_destroyP19pthread_mutexattr_t = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_destroy            ; <i32 (%struct..0._10*)*> [#uses=0]
27 @_ZL20__gthrw_pthread_oncePiPFvvE3 = alias weak i32 (i32*, void ()*)* @pthread_once             ; <i32 (i32*, void ()*)*> [#uses=0]
28 @_ZL27__gthrw_pthread_getspecificj4 = alias weak i8* (i32)* @pthread_getspecific                ; <i8* (i32)*> [#uses=0]
29 @_ZL27__gthrw_pthread_setspecificjPKv5 = alias weak i32 (i32, i8*)* @pthread_setspecific                ; <i32 (i32, i8*)*> [#uses=0]
30 @_ZL22__gthrw_pthread_createPmPK14pthread_attr_tPFPvS3_ES3_6 = alias weak i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)* @pthread_create         ; <i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)*> [#uses=0]
31 @_ZL22__gthrw_pthread_cancelm7 = alias weak i32 (i32)* @pthread_cancel          ; <i32 (i32)*> [#uses=0]
32 @_ZL26__gthrw_pthread_mutex_lockP15pthread_mutex_t8 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_lock            ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
33 @_ZL29__gthrw_pthread_mutex_trylockP15pthread_mutex_t9 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_trylock              ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
34 @_ZL28__gthrw_pthread_mutex_unlockP15pthread_mutex_t10 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_unlock               ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
35 @_ZL26__gthrw_pthread_mutex_initP15pthread_mutex_tPK19pthread_mutexattr_t11 = alias weak i32 (%struct.pthread_mutex_t*, %struct..0._10*)* @pthread_mutex_init           ; <i32 (%struct.pthread_mutex_t*, %struct..0._10*)*> [#uses=0]
36 @_ZL26__gthrw_pthread_key_createPjPFvPvE12 = alias weak i32 (i32*, void (i8*)*)* @pthread_key_create            ; <i32 (i32*, void (i8*)*)*> [#uses=0]
37 @_ZL26__gthrw_pthread_key_deletej13 = alias weak i32 (i32)* @pthread_key_delete         ; <i32 (i32)*> [#uses=0]
38 @_ZL30__gthrw_pthread_mutexattr_initP19pthread_mutexattr_t14 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_init                ; <i32 (%struct..0._10*)*> [#uses=0]
39 @_ZL33__gthrw_pthread_mutexattr_settypeP19pthread_mutexattr_ti15 = alias weak i32 (%struct..0._10*, i32)* @pthread_mutexattr_settype            ; <i32 (%struct..0._10*, i32)*> [#uses=0]
40 @_ZL33__gthrw_pthread_mutexattr_destroyP19pthread_mutexattr_t16 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_destroy          ; <i32 (%struct..0._10*)*> [#uses=0]
41 @_ZL20__gthrw_pthread_oncePiPFvvE19 = alias weak i32 (i32*, void ()*)* @pthread_once            ; <i32 (i32*, void ()*)*> [#uses=0]
42 @_ZL27__gthrw_pthread_getspecificj20 = alias weak i8* (i32)* @pthread_getspecific               ; <i8* (i32)*> [#uses=0]
43 @_ZL27__gthrw_pthread_setspecificjPKv21 = alias weak i32 (i32, i8*)* @pthread_setspecific               ; <i32 (i32, i8*)*> [#uses=0]
44 @_ZL22__gthrw_pthread_createPmPK14pthread_attr_tPFPvS3_ES3_22 = alias weak i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)* @pthread_create                ; <i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)*> [#uses=0]
45 @_ZL22__gthrw_pthread_cancelm23 = alias weak i32 (i32)* @pthread_cancel         ; <i32 (i32)*> [#uses=0]
46 @_ZL26__gthrw_pthread_mutex_lockP15pthread_mutex_t24 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_lock           ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
47 @_ZL29__gthrw_pthread_mutex_trylockP15pthread_mutex_t25 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_trylock             ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
48 @_ZL28__gthrw_pthread_mutex_unlockP15pthread_mutex_t26 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_unlock               ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
49 @_ZL26__gthrw_pthread_mutex_initP15pthread_mutex_tPK19pthread_mutexattr_t27 = alias weak i32 (%struct.pthread_mutex_t*, %struct..0._10*)* @pthread_mutex_init           ; <i32 (%struct.pthread_mutex_t*, %struct..0._10*)*> [#uses=0]
50 @_ZL26__gthrw_pthread_key_createPjPFvPvE28 = alias weak i32 (i32*, void (i8*)*)* @pthread_key_create            ; <i32 (i32*, void (i8*)*)*> [#uses=0]
51 @_ZL26__gthrw_pthread_key_deletej29 = alias weak i32 (i32)* @pthread_key_delete         ; <i32 (i32)*> [#uses=0]
52 @_ZL30__gthrw_pthread_mutexattr_initP19pthread_mutexattr_t30 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_init                ; <i32 (%struct..0._10*)*> [#uses=0]
53 @_ZL33__gthrw_pthread_mutexattr_settypeP19pthread_mutexattr_ti31 = alias weak i32 (%struct..0._10*, i32)* @pthread_mutexattr_settype            ; <i32 (%struct..0._10*, i32)*> [#uses=0]
54 @_ZL33__gthrw_pthread_mutexattr_destroyP19pthread_mutexattr_t32 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_destroy          ; <i32 (%struct..0._10*)*> [#uses=0]
55 @_ZL20__gthrw_pthread_oncePiPFvvE45 = alias weak i32 (i32*, void ()*)* @pthread_once            ; <i32 (i32*, void ()*)*> [#uses=0]
56 @_ZL27__gthrw_pthread_getspecificj46 = alias weak i8* (i32)* @pthread_getspecific               ; <i8* (i32)*> [#uses=0]
57 @_ZL27__gthrw_pthread_setspecificjPKv47 = alias weak i32 (i32, i8*)* @pthread_setspecific               ; <i32 (i32, i8*)*> [#uses=0]
58 @_ZL22__gthrw_pthread_createPmPK14pthread_attr_tPFPvS3_ES3_48 = alias weak i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)* @pthread_create                ; <i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)*> [#uses=0]
59 @_ZL22__gthrw_pthread_cancelm49 = alias weak i32 (i32)* @pthread_cancel         ; <i32 (i32)*> [#uses=0]
60 @_ZL26__gthrw_pthread_mutex_lockP15pthread_mutex_t50 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_lock           ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
61 @_ZL29__gthrw_pthread_mutex_trylockP15pthread_mutex_t51 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_trylock             ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
62 @_ZL28__gthrw_pthread_mutex_unlockP15pthread_mutex_t52 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_unlock               ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
63 @_ZL26__gthrw_pthread_mutex_initP15pthread_mutex_tPK19pthread_mutexattr_t53 = alias weak i32 (%struct.pthread_mutex_t*, %struct..0._10*)* @pthread_mutex_init           ; <i32 (%struct.pthread_mutex_t*, %struct..0._10*)*> [#uses=0]
64 @_ZL26__gthrw_pthread_key_createPjPFvPvE54 = alias weak i32 (i32*, void (i8*)*)* @pthread_key_create            ; <i32 (i32*, void (i8*)*)*> [#uses=0]
65 @_ZL26__gthrw_pthread_key_deletej55 = alias weak i32 (i32)* @pthread_key_delete         ; <i32 (i32)*> [#uses=0]
66 @_ZL30__gthrw_pthread_mutexattr_initP19pthread_mutexattr_t56 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_init                ; <i32 (%struct..0._10*)*> [#uses=0]
67 @_ZL33__gthrw_pthread_mutexattr_settypeP19pthread_mutexattr_ti57 = alias weak i32 (%struct..0._10*, i32)* @pthread_mutexattr_settype            ; <i32 (%struct..0._10*, i32)*> [#uses=0]
68 @_ZL33__gthrw_pthread_mutexattr_destroyP19pthread_mutexattr_t58 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_destroy          ; <i32 (%struct..0._10*)*> [#uses=0]
69 @_ZL20__gthrw_pthread_oncePiPFvvE113 = alias weak i32 (i32*, void ()*)* @pthread_once           ; <i32 (i32*, void ()*)*> [#uses=0]
70 @_ZL27__gthrw_pthread_getspecificj114 = alias weak i8* (i32)* @pthread_getspecific              ; <i8* (i32)*> [#uses=0]
71 @_ZL27__gthrw_pthread_setspecificjPKv115 = alias weak i32 (i32, i8*)* @pthread_setspecific              ; <i32 (i32, i8*)*> [#uses=0]
72 @_ZL22__gthrw_pthread_createPmPK14pthread_attr_tPFPvS3_ES3_116 = alias weak i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)* @pthread_create               ; <i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)*> [#uses=0]
73 @_ZL22__gthrw_pthread_cancelm117 = alias weak i32 (i32)* @pthread_cancel                ; <i32 (i32)*> [#uses=0]
74 @_ZL26__gthrw_pthread_mutex_lockP15pthread_mutex_t118 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_lock          ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
75 @_ZL29__gthrw_pthread_mutex_trylockP15pthread_mutex_t119 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_trylock            ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
76 @_ZL28__gthrw_pthread_mutex_unlockP15pthread_mutex_t120 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_unlock              ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
77 @_ZL26__gthrw_pthread_mutex_initP15pthread_mutex_tPK19pthread_mutexattr_t121 = alias weak i32 (%struct.pthread_mutex_t*, %struct..0._10*)* @pthread_mutex_init          ; <i32 (%struct.pthread_mutex_t*, %struct..0._10*)*> [#uses=0]
78 @_ZL26__gthrw_pthread_key_createPjPFvPvE122 = alias weak i32 (i32*, void (i8*)*)* @pthread_key_create           ; <i32 (i32*, void (i8*)*)*> [#uses=0]
79 @_ZL26__gthrw_pthread_key_deletej123 = alias weak i32 (i32)* @pthread_key_delete                ; <i32 (i32)*> [#uses=0]
80 @_ZL30__gthrw_pthread_mutexattr_initP19pthread_mutexattr_t124 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_init               ; <i32 (%struct..0._10*)*> [#uses=0]
81 @_ZL33__gthrw_pthread_mutexattr_settypeP19pthread_mutexattr_ti125 = alias weak i32 (%struct..0._10*, i32)* @pthread_mutexattr_settype           ; <i32 (%struct..0._10*, i32)*> [#uses=0]
82 @_ZL33__gthrw_pthread_mutexattr_destroyP19pthread_mutexattr_t126 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_destroy         ; <i32 (%struct..0._10*)*> [#uses=0]
83 @_ZL20__gthrw_pthread_oncePiPFvvE547 = alias weak i32 (i32*, void ()*)* @pthread_once           ; <i32 (i32*, void ()*)*> [#uses=0]
84 @_ZL27__gthrw_pthread_getspecificj548 = alias weak i8* (i32)* @pthread_getspecific              ; <i8* (i32)*> [#uses=0]
85 @_ZL27__gthrw_pthread_setspecificjPKv549 = alias weak i32 (i32, i8*)* @pthread_setspecific              ; <i32 (i32, i8*)*> [#uses=0]
86 @_ZL22__gthrw_pthread_createPmPK14pthread_attr_tPFPvS3_ES3_550 = alias weak i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)* @pthread_create               ; <i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)*> [#uses=0]
87 @_ZL22__gthrw_pthread_cancelm551 = alias weak i32 (i32)* @pthread_cancel                ; <i32 (i32)*> [#uses=0]
88 @_ZL26__gthrw_pthread_mutex_lockP15pthread_mutex_t552 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_lock          ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
89 @_ZL29__gthrw_pthread_mutex_trylockP15pthread_mutex_t553 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_trylock            ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
90 @_ZL28__gthrw_pthread_mutex_unlockP15pthread_mutex_t554 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_unlock              ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
91 @_ZL26__gthrw_pthread_mutex_initP15pthread_mutex_tPK19pthread_mutexattr_t555 = alias weak i32 (%struct.pthread_mutex_t*, %struct..0._10*)* @pthread_mutex_init          ; <i32 (%struct.pthread_mutex_t*, %struct..0._10*)*> [#uses=0]
92 @_ZL26__gthrw_pthread_key_createPjPFvPvE556 = alias weak i32 (i32*, void (i8*)*)* @pthread_key_create           ; <i32 (i32*, void (i8*)*)*> [#uses=0]
93 @_ZL26__gthrw_pthread_key_deletej557 = alias weak i32 (i32)* @pthread_key_delete                ; <i32 (i32)*> [#uses=0]
94 @_ZL30__gthrw_pthread_mutexattr_initP19pthread_mutexattr_t558 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_init               ; <i32 (%struct..0._10*)*> [#uses=0]
95 @_ZL33__gthrw_pthread_mutexattr_settypeP19pthread_mutexattr_ti559 = alias weak i32 (%struct..0._10*, i32)* @pthread_mutexattr_settype           ; <i32 (%struct..0._10*, i32)*> [#uses=0]
96 @_ZL33__gthrw_pthread_mutexattr_destroyP19pthread_mutexattr_t560 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_destroy         ; <i32 (%struct..0._10*)*> [#uses=0]
97 @_ZL20__gthrw_pthread_oncePiPFvvE820 = alias weak i32 (i32*, void ()*)* @pthread_once           ; <i32 (i32*, void ()*)*> [#uses=0]
98 @_ZL27__gthrw_pthread_getspecificj821 = alias weak i8* (i32)* @pthread_getspecific              ; <i8* (i32)*> [#uses=0]
99 @_ZL27__gthrw_pthread_setspecificjPKv822 = alias weak i32 (i32, i8*)* @pthread_setspecific              ; <i32 (i32, i8*)*> [#uses=0]
100 @_ZL22__gthrw_pthread_createPmPK14pthread_attr_tPFPvS3_ES3_823 = alias weak i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)* @pthread_create               ; <i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)*> [#uses=0]
101 @_ZL22__gthrw_pthread_cancelm824 = alias weak i32 (i32)* @pthread_cancel                ; <i32 (i32)*> [#uses=0]
102 @_ZL26__gthrw_pthread_mutex_lockP15pthread_mutex_t825 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_lock          ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
103 @_ZL29__gthrw_pthread_mutex_trylockP15pthread_mutex_t826 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_trylock            ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
104 @_ZL28__gthrw_pthread_mutex_unlockP15pthread_mutex_t827 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_unlock              ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
105 @_ZL26__gthrw_pthread_mutex_initP15pthread_mutex_tPK19pthread_mutexattr_t828 = alias weak i32 (%struct.pthread_mutex_t*, %struct..0._10*)* @pthread_mutex_init          ; <i32 (%struct.pthread_mutex_t*, %struct..0._10*)*> [#uses=0]
106 @_ZL26__gthrw_pthread_key_createPjPFvPvE829 = alias weak i32 (i32*, void (i8*)*)* @pthread_key_create           ; <i32 (i32*, void (i8*)*)*> [#uses=0]
107 @_ZL26__gthrw_pthread_key_deletej830 = alias weak i32 (i32)* @pthread_key_delete                ; <i32 (i32)*> [#uses=0]
108 @_ZL30__gthrw_pthread_mutexattr_initP19pthread_mutexattr_t831 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_init               ; <i32 (%struct..0._10*)*> [#uses=0]
109 @_ZL33__gthrw_pthread_mutexattr_settypeP19pthread_mutexattr_ti832 = alias weak i32 (%struct..0._10*, i32)* @pthread_mutexattr_settype           ; <i32 (%struct..0._10*, i32)*> [#uses=0]
110 @_ZL33__gthrw_pthread_mutexattr_destroyP19pthread_mutexattr_t833 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_destroy         ; <i32 (%struct..0._10*)*> [#uses=0]
111 @_ZL20__gthrw_pthread_oncePiPFvvE963 = alias weak i32 (i32*, void ()*)* @pthread_once           ; <i32 (i32*, void ()*)*> [#uses=0]
112 @_ZL27__gthrw_pthread_getspecificj964 = alias weak i8* (i32)* @pthread_getspecific              ; <i8* (i32)*> [#uses=0]
113 @_ZL27__gthrw_pthread_setspecificjPKv965 = alias weak i32 (i32, i8*)* @pthread_setspecific              ; <i32 (i32, i8*)*> [#uses=0]
114 @_ZL22__gthrw_pthread_createPmPK14pthread_attr_tPFPvS3_ES3_966 = alias weak i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)* @pthread_create               ; <i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)*> [#uses=0]
115 @_ZL22__gthrw_pthread_cancelm967 = alias weak i32 (i32)* @pthread_cancel                ; <i32 (i32)*> [#uses=0]
116 @_ZL26__gthrw_pthread_mutex_lockP15pthread_mutex_t968 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_lock          ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
117 @_ZL29__gthrw_pthread_mutex_trylockP15pthread_mutex_t969 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_trylock            ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
118 @_ZL28__gthrw_pthread_mutex_unlockP15pthread_mutex_t970 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_unlock              ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
119 @_ZL26__gthrw_pthread_mutex_initP15pthread_mutex_tPK19pthread_mutexattr_t971 = alias weak i32 (%struct.pthread_mutex_t*, %struct..0._10*)* @pthread_mutex_init          ; <i32 (%struct.pthread_mutex_t*, %struct..0._10*)*> [#uses=0]
120 @_ZL26__gthrw_pthread_key_createPjPFvPvE972 = alias weak i32 (i32*, void (i8*)*)* @pthread_key_create           ; <i32 (i32*, void (i8*)*)*> [#uses=0]
121 @_ZL26__gthrw_pthread_key_deletej973 = alias weak i32 (i32)* @pthread_key_delete                ; <i32 (i32)*> [#uses=0]
122 @_ZL30__gthrw_pthread_mutexattr_initP19pthread_mutexattr_t974 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_init               ; <i32 (%struct..0._10*)*> [#uses=0]
123 @_ZL33__gthrw_pthread_mutexattr_settypeP19pthread_mutexattr_ti975 = alias weak i32 (%struct..0._10*, i32)* @pthread_mutexattr_settype           ; <i32 (%struct..0._10*, i32)*> [#uses=0]
124 @_ZL33__gthrw_pthread_mutexattr_destroyP19pthread_mutexattr_t976 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_destroy         ; <i32 (%struct..0._10*)*> [#uses=0]
125 @_ZL20__gthrw_pthread_oncePiPFvvE1058 = alias weak i32 (i32*, void ()*)* @pthread_once          ; <i32 (i32*, void ()*)*> [#uses=0]
126 @_ZL27__gthrw_pthread_getspecificj1059 = alias weak i8* (i32)* @pthread_getspecific             ; <i8* (i32)*> [#uses=0]
127 @_ZL27__gthrw_pthread_setspecificjPKv1060 = alias weak i32 (i32, i8*)* @pthread_setspecific             ; <i32 (i32, i8*)*> [#uses=0]
128 @_ZL22__gthrw_pthread_createPmPK14pthread_attr_tPFPvS3_ES3_1061 = alias weak i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)* @pthread_create              ; <i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)*> [#uses=0]
129 @_ZL22__gthrw_pthread_cancelm1062 = alias weak i32 (i32)* @pthread_cancel               ; <i32 (i32)*> [#uses=0]
130 @_ZL26__gthrw_pthread_mutex_lockP15pthread_mutex_t1063 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_lock         ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
131 @_ZL29__gthrw_pthread_mutex_trylockP15pthread_mutex_t1064 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_trylock           ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
132 @_ZL28__gthrw_pthread_mutex_unlockP15pthread_mutex_t1065 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_unlock             ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
133 @_ZL26__gthrw_pthread_mutex_initP15pthread_mutex_tPK19pthread_mutexattr_t1066 = alias weak i32 (%struct.pthread_mutex_t*, %struct..0._10*)* @pthread_mutex_init         ; <i32 (%struct.pthread_mutex_t*, %struct..0._10*)*> [#uses=0]
134 @_ZL26__gthrw_pthread_key_createPjPFvPvE1067 = alias weak i32 (i32*, void (i8*)*)* @pthread_key_create          ; <i32 (i32*, void (i8*)*)*> [#uses=0]
135 @_ZL26__gthrw_pthread_key_deletej1068 = alias weak i32 (i32)* @pthread_key_delete               ; <i32 (i32)*> [#uses=0]
136 @_ZL30__gthrw_pthread_mutexattr_initP19pthread_mutexattr_t1069 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_init              ; <i32 (%struct..0._10*)*> [#uses=0]
137 @_ZL33__gthrw_pthread_mutexattr_settypeP19pthread_mutexattr_ti1070 = alias weak i32 (%struct..0._10*, i32)* @pthread_mutexattr_settype          ; <i32 (%struct..0._10*, i32)*> [#uses=0]
138 @_ZL33__gthrw_pthread_mutexattr_destroyP19pthread_mutexattr_t1071 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_destroy                ; <i32 (%struct..0._10*)*> [#uses=0]
139 @_ZL20__gthrw_pthread_oncePiPFvvE1123 = alias weak i32 (i32*, void ()*)* @pthread_once          ; <i32 (i32*, void ()*)*> [#uses=0]
140 @_ZL27__gthrw_pthread_getspecificj1124 = alias weak i8* (i32)* @pthread_getspecific             ; <i8* (i32)*> [#uses=0]
141 @_ZL27__gthrw_pthread_setspecificjPKv1125 = alias weak i32 (i32, i8*)* @pthread_setspecific             ; <i32 (i32, i8*)*> [#uses=0]
142 @_ZL22__gthrw_pthread_createPmPK14pthread_attr_tPFPvS3_ES3_1126 = alias weak i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)* @pthread_create              ; <i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)*> [#uses=0]
143 @_ZL22__gthrw_pthread_cancelm1127 = alias weak i32 (i32)* @pthread_cancel               ; <i32 (i32)*> [#uses=0]
144 @_ZL26__gthrw_pthread_mutex_lockP15pthread_mutex_t1128 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_lock         ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
145 @_ZL29__gthrw_pthread_mutex_trylockP15pthread_mutex_t1129 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_trylock           ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
146 @_ZL28__gthrw_pthread_mutex_unlockP15pthread_mutex_t1130 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_unlock             ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
147 @_ZL26__gthrw_pthread_mutex_initP15pthread_mutex_tPK19pthread_mutexattr_t1131 = alias weak i32 (%struct.pthread_mutex_t*, %struct..0._10*)* @pthread_mutex_init         ; <i32 (%struct.pthread_mutex_t*, %struct..0._10*)*> [#uses=0]
148 @_ZL26__gthrw_pthread_key_createPjPFvPvE1132 = alias weak i32 (i32*, void (i8*)*)* @pthread_key_create          ; <i32 (i32*, void (i8*)*)*> [#uses=0]
149 @_ZL26__gthrw_pthread_key_deletej1133 = alias weak i32 (i32)* @pthread_key_delete               ; <i32 (i32)*> [#uses=0]
150 @_ZL30__gthrw_pthread_mutexattr_initP19pthread_mutexattr_t1134 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_init              ; <i32 (%struct..0._10*)*> [#uses=0]
151 @_ZL33__gthrw_pthread_mutexattr_settypeP19pthread_mutexattr_ti1135 = alias weak i32 (%struct..0._10*, i32)* @pthread_mutexattr_settype          ; <i32 (%struct..0._10*, i32)*> [#uses=0]
152 @_ZL33__gthrw_pthread_mutexattr_destroyP19pthread_mutexattr_t1136 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_destroy                ; <i32 (%struct..0._10*)*> [#uses=0]
153 @_ZL20__gthrw_pthread_oncePiPFvvE1179 = alias weak i32 (i32*, void ()*)* @pthread_once          ; <i32 (i32*, void ()*)*> [#uses=0]
154 @_ZL27__gthrw_pthread_getspecificj1180 = alias weak i8* (i32)* @pthread_getspecific             ; <i8* (i32)*> [#uses=0]
155 @_ZL27__gthrw_pthread_setspecificjPKv1181 = alias weak i32 (i32, i8*)* @pthread_setspecific             ; <i32 (i32, i8*)*> [#uses=0]
156 @_ZL22__gthrw_pthread_createPmPK14pthread_attr_tPFPvS3_ES3_1182 = alias weak i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)* @pthread_create              ; <i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)*> [#uses=0]
157 @_ZL22__gthrw_pthread_cancelm1183 = alias weak i32 (i32)* @pthread_cancel               ; <i32 (i32)*> [#uses=0]
158 @_ZL26__gthrw_pthread_mutex_lockP15pthread_mutex_t1184 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_lock         ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
159 @_ZL29__gthrw_pthread_mutex_trylockP15pthread_mutex_t1185 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_trylock           ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
160 @_ZL28__gthrw_pthread_mutex_unlockP15pthread_mutex_t1186 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_unlock             ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
161 @_ZL26__gthrw_pthread_mutex_initP15pthread_mutex_tPK19pthread_mutexattr_t1187 = alias weak i32 (%struct.pthread_mutex_t*, %struct..0._10*)* @pthread_mutex_init         ; <i32 (%struct.pthread_mutex_t*, %struct..0._10*)*> [#uses=0]
162 @_ZL26__gthrw_pthread_key_createPjPFvPvE1188 = alias weak i32 (i32*, void (i8*)*)* @pthread_key_create          ; <i32 (i32*, void (i8*)*)*> [#uses=0]
163 @_ZL26__gthrw_pthread_key_deletej1189 = alias weak i32 (i32)* @pthread_key_delete               ; <i32 (i32)*> [#uses=0]
164 @_ZL30__gthrw_pthread_mutexattr_initP19pthread_mutexattr_t1190 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_init              ; <i32 (%struct..0._10*)*> [#uses=0]
165 @_ZL33__gthrw_pthread_mutexattr_settypeP19pthread_mutexattr_ti1191 = alias weak i32 (%struct..0._10*, i32)* @pthread_mutexattr_settype          ; <i32 (%struct..0._10*, i32)*> [#uses=0]
166 @_ZL33__gthrw_pthread_mutexattr_destroyP19pthread_mutexattr_t1192 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_destroy                ; <i32 (%struct..0._10*)*> [#uses=0]
167 @_ZL20__gthrw_pthread_oncePiPFvvE1195 = alias weak i32 (i32*, void ()*)* @pthread_once          ; <i32 (i32*, void ()*)*> [#uses=0]
168 @_ZL27__gthrw_pthread_getspecificj1196 = alias weak i8* (i32)* @pthread_getspecific             ; <i8* (i32)*> [#uses=0]
169 @_ZL27__gthrw_pthread_setspecificjPKv1197 = alias weak i32 (i32, i8*)* @pthread_setspecific             ; <i32 (i32, i8*)*> [#uses=0]
170 @_ZL22__gthrw_pthread_createPmPK14pthread_attr_tPFPvS3_ES3_1198 = alias weak i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)* @pthread_create              ; <i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)*> [#uses=0]
171 @_ZL22__gthrw_pthread_cancelm1199 = alias weak i32 (i32)* @pthread_cancel               ; <i32 (i32)*> [#uses=0]
172 @_ZL26__gthrw_pthread_mutex_lockP15pthread_mutex_t1200 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_lock         ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
173 @_ZL29__gthrw_pthread_mutex_trylockP15pthread_mutex_t1201 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_trylock           ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
174 @_ZL28__gthrw_pthread_mutex_unlockP15pthread_mutex_t1202 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_unlock             ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
175 @_ZL26__gthrw_pthread_mutex_initP15pthread_mutex_tPK19pthread_mutexattr_t1203 = alias weak i32 (%struct.pthread_mutex_t*, %struct..0._10*)* @pthread_mutex_init         ; <i32 (%struct.pthread_mutex_t*, %struct..0._10*)*> [#uses=0]
176 @_ZL26__gthrw_pthread_key_createPjPFvPvE1204 = alias weak i32 (i32*, void (i8*)*)* @pthread_key_create          ; <i32 (i32*, void (i8*)*)*> [#uses=0]
177 @_ZL26__gthrw_pthread_key_deletej1205 = alias weak i32 (i32)* @pthread_key_delete               ; <i32 (i32)*> [#uses=0]
178 @_ZL30__gthrw_pthread_mutexattr_initP19pthread_mutexattr_t1206 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_init              ; <i32 (%struct..0._10*)*> [#uses=0]
179 @_ZL33__gthrw_pthread_mutexattr_settypeP19pthread_mutexattr_ti1207 = alias weak i32 (%struct..0._10*, i32)* @pthread_mutexattr_settype          ; <i32 (%struct..0._10*, i32)*> [#uses=0]
180 @_ZL33__gthrw_pthread_mutexattr_destroyP19pthread_mutexattr_t1208 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_destroy                ; <i32 (%struct..0._10*)*> [#uses=0]
181 @_ZL20__gthrw_pthread_oncePiPFvvE1749 = alias weak i32 (i32*, void ()*)* @pthread_once          ; <i32 (i32*, void ()*)*> [#uses=0]
182 @_ZL27__gthrw_pthread_getspecificj1750 = alias weak i8* (i32)* @pthread_getspecific             ; <i8* (i32)*> [#uses=0]
183 @_ZL27__gthrw_pthread_setspecificjPKv1751 = alias weak i32 (i32, i8*)* @pthread_setspecific             ; <i32 (i32, i8*)*> [#uses=0]
184 @_ZL22__gthrw_pthread_createPmPK14pthread_attr_tPFPvS3_ES3_1752 = alias weak i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)* @pthread_create              ; <i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)*> [#uses=0]
185 @_ZL22__gthrw_pthread_cancelm1753 = alias weak i32 (i32)* @pthread_cancel               ; <i32 (i32)*> [#uses=0]
186 @_ZL26__gthrw_pthread_mutex_lockP15pthread_mutex_t1754 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_lock         ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
187 @_ZL29__gthrw_pthread_mutex_trylockP15pthread_mutex_t1755 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_trylock           ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
188 @_ZL28__gthrw_pthread_mutex_unlockP15pthread_mutex_t1756 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_unlock             ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
189 @_ZL26__gthrw_pthread_mutex_initP15pthread_mutex_tPK19pthread_mutexattr_t1757 = alias weak i32 (%struct.pthread_mutex_t*, %struct..0._10*)* @pthread_mutex_init         ; <i32 (%struct.pthread_mutex_t*, %struct..0._10*)*> [#uses=0]
190 @_ZL26__gthrw_pthread_key_createPjPFvPvE1758 = alias weak i32 (i32*, void (i8*)*)* @pthread_key_create          ; <i32 (i32*, void (i8*)*)*> [#uses=0]
191 @_ZL26__gthrw_pthread_key_deletej1759 = alias weak i32 (i32)* @pthread_key_delete               ; <i32 (i32)*> [#uses=0]
192 @_ZL30__gthrw_pthread_mutexattr_initP19pthread_mutexattr_t1760 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_init              ; <i32 (%struct..0._10*)*> [#uses=0]
193 @_ZL33__gthrw_pthread_mutexattr_settypeP19pthread_mutexattr_ti1761 = alias weak i32 (%struct..0._10*, i32)* @pthread_mutexattr_settype          ; <i32 (%struct..0._10*, i32)*> [#uses=0]
194 @_ZL33__gthrw_pthread_mutexattr_destroyP19pthread_mutexattr_t1762 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_destroy                ; <i32 (%struct..0._10*)*> [#uses=0]
195 @_ZL20__gthrw_pthread_oncePiPFvvE1817 = alias weak i32 (i32*, void ()*)* @pthread_once          ; <i32 (i32*, void ()*)*> [#uses=0]
196 @_ZL27__gthrw_pthread_getspecificj1818 = alias weak i8* (i32)* @pthread_getspecific             ; <i8* (i32)*> [#uses=0]
197 @_ZL27__gthrw_pthread_setspecificjPKv1819 = alias weak i32 (i32, i8*)* @pthread_setspecific             ; <i32 (i32, i8*)*> [#uses=0]
198 @_ZL22__gthrw_pthread_createPmPK14pthread_attr_tPFPvS3_ES3_1820 = alias weak i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)* @pthread_create              ; <i32 (i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)*> [#uses=0]
199 @_ZL22__gthrw_pthread_cancelm1821 = alias weak i32 (i32)* @pthread_cancel               ; <i32 (i32)*> [#uses=0]
200 @_ZL26__gthrw_pthread_mutex_lockP15pthread_mutex_t1822 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_lock         ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
201 @_ZL29__gthrw_pthread_mutex_trylockP15pthread_mutex_t1823 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_trylock           ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
202 @_ZL28__gthrw_pthread_mutex_unlockP15pthread_mutex_t1824 = alias weak i32 (%struct.pthread_mutex_t*)* @pthread_mutex_unlock             ; <i32 (%struct.pthread_mutex_t*)*> [#uses=0]
203 @_ZL26__gthrw_pthread_mutex_initP15pthread_mutex_tPK19pthread_mutexattr_t1825 = alias weak i32 (%struct.pthread_mutex_t*, %struct..0._10*)* @pthread_mutex_init         ; <i32 (%struct.pthread_mutex_t*, %struct..0._10*)*> [#uses=0]
204 @_ZL26__gthrw_pthread_key_createPjPFvPvE1826 = alias weak i32 (i32*, void (i8*)*)* @pthread_key_create          ; <i32 (i32*, void (i8*)*)*> [#uses=0]
205 @_ZL26__gthrw_pthread_key_deletej1827 = alias weak i32 (i32)* @pthread_key_delete               ; <i32 (i32)*> [#uses=0]
206 @_ZL30__gthrw_pthread_mutexattr_initP19pthread_mutexattr_t1828 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_init              ; <i32 (%struct..0._10*)*> [#uses=0]
207 @_ZL33__gthrw_pthread_mutexattr_settypeP19pthread_mutexattr_ti1829 = alias weak i32 (%struct..0._10*, i32)* @pthread_mutexattr_settype          ; <i32 (%struct..0._10*, i32)*> [#uses=0]
208 @_ZL33__gthrw_pthread_mutexattr_destroyP19pthread_mutexattr_t1830 = alias weak i32 (%struct..0._10*)* @pthread_mutexattr_destroy                ; <i32 (%struct..0._10*)*> [#uses=0]
209
210 declare i32 @pthread_once(i32*, void ()*)
211
212 declare i8* @pthread_getspecific(i32)
213
214 declare i32 @pthread_setspecific(i32, i8*)
215
216 declare i32 @pthread_create(i32*, %struct.pthread_attr_t*, i8* (i8*)*, i8*)
217
218 declare i32 @pthread_cancel(i32)
219
220 declare i32 @pthread_mutex_lock(%struct.pthread_mutex_t*)
221
222 declare i32 @pthread_mutex_trylock(%struct.pthread_mutex_t*)
223
224 declare i32 @pthread_mutex_unlock(%struct.pthread_mutex_t*)
225
226 declare i32 @pthread_mutex_init(%struct.pthread_mutex_t*, %struct..0._10*)
227
228 declare i32 @pthread_key_create(i32*, void (i8*)*)
229
230 declare i32 @pthread_key_delete(i32)
231
232 declare i32 @pthread_mutexattr_init(%struct..0._10*)
233
234 declare i32 @pthread_mutexattr_settype(%struct..0._10*, i32)
235
236 declare i32 @pthread_mutexattr_destroy(%struct..0._10*)
237
238 define %"struct.kc::impl_ID"* @_ZN2kc18f_typeofunpsubtermEPNS_15impl_unpsubtermEPNS_7impl_IDE(%"struct.kc::impl_Ccode_option"* %a_unpsubterm, %"struct.kc::impl_ID"* %a_operator) {
239 entry:
240         %tmp8 = getelementptr %"struct.kc::impl_Ccode_option"* %a_unpsubterm, i32 0, i32 0, i32 0               ; <i32 (...)***> [#uses=0]
241         br i1 false, label %bb41, label %bb55
242
243 bb41:           ; preds = %entry
244         ret %"struct.kc::impl_ID"* null
245
246 bb55:           ; preds = %entry
247         %tmp67 = tail call i32 null( %"struct.kc::impl_abstract_phylum"* null )         ; <i32> [#uses=0]
248         %tmp97 = tail call i32 null( %"struct.kc::impl_abstract_phylum"* null )         ; <i32> [#uses=0]
249         ret %"struct.kc::impl_ID"* null
250 }