mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-11-01 00:11:00 +00:00
69ccadd753
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32115 91177308-0d34-0410-b5e6-96231b3b80d8
467 lines
15 KiB
LLVM
467 lines
15 KiB
LLVM
; RUN: llvm-upgrade < %s | llvm-as | opt -condprop -disable-output
|
|
; PR877
|
|
|
|
target endian = big
|
|
target pointersize = 32
|
|
target triple = "powerpc-apple-darwin9.0.0d1"
|
|
"struct.kc::impl_Ccode_option" = type { "struct.kc::impl_abstract_phylum" }
|
|
"struct.kc::impl_ID" = type { "struct.kc::impl_abstract_phylum", "struct.kc::impl_Ccode_option"*, "struct.kc::impl_casestring__Str"*, int, "struct.kc::impl_casestring__Str"* }
|
|
"struct.kc::impl_abstract_phylum" = type { int (...)** }
|
|
"struct.kc::impl_casestring__Str" = type { "struct.kc::impl_abstract_phylum", sbyte* }
|
|
"struct.kc::impl_elem_patternrepresentation" = type { "struct.kc::impl_abstract_phylum", int, "struct.kc::impl_casestring__Str"*, "struct.kc::impl_ID"* }
|
|
"struct.kc::impl_outmostpatterns" = type { "struct.kc::impl_Ccode_option", "struct.kc::impl_elem_patternrepresentation"*, "struct.kc::impl_outmostpatterns"* }
|
|
"struct.kc::impl_patternrepresentations" = type { "struct.kc::impl_Ccode_option", "struct.kc::impl_outmostpatterns"*, "struct.kc::impl_patternrepresentations"* }
|
|
|
|
implementation ; Functions:
|
|
|
|
void %_ZN2kc16compare_patternsEPNS_26impl_patternrepresentationES1_PNS_27impl_patternrepresentationsE() {
|
|
entry:
|
|
br label %bb1269.outer.outer.outer.outer
|
|
|
|
cond_true: ; preds = %cond_true1298
|
|
br label %bb1269.outer69
|
|
|
|
cond_false: ; preds = %cond_true1298
|
|
br bool false, label %cond_next, label %bb51
|
|
|
|
cond_next: ; preds = %cond_false
|
|
br bool false, label %bb52, label %bb51
|
|
|
|
bb51: ; preds = %cond_next, %cond_false
|
|
br label %bb52
|
|
|
|
bb52: ; preds = %bb51, %cond_next
|
|
br bool false, label %cond_false82, label %cond_true55
|
|
|
|
cond_true55: ; preds = %bb52
|
|
br bool false, label %UnifiedReturnBlock, label %cond_true57
|
|
|
|
cond_true57: ; preds = %cond_true55
|
|
br label %UnifiedReturnBlock
|
|
|
|
cond_false82: ; preds = %bb52
|
|
br bool false, label %cond_next97, label %bb113
|
|
|
|
cond_next97: ; preds = %cond_false82
|
|
br bool false, label %bb114, label %bb113
|
|
|
|
bb113: ; preds = %cond_next97, %cond_false82
|
|
br label %bb114
|
|
|
|
bb114: ; preds = %bb113, %cond_next97
|
|
br bool false, label %cond_false151, label %cond_true117
|
|
|
|
cond_true117: ; preds = %bb114
|
|
br bool false, label %UnifiedReturnBlock, label %cond_true120
|
|
|
|
cond_true120: ; preds = %cond_true117
|
|
br label %UnifiedReturnBlock
|
|
|
|
cond_false151: ; preds = %bb114
|
|
br bool false, label %cond_next166, label %bb182
|
|
|
|
cond_next166: ; preds = %cond_false151
|
|
br bool false, label %bb183, label %bb182
|
|
|
|
bb182: ; preds = %cond_next166, %cond_false151
|
|
br label %bb183
|
|
|
|
bb183: ; preds = %bb182, %cond_next166
|
|
br bool false, label %cond_false256, label %cond_true186
|
|
|
|
cond_true186: ; preds = %bb183
|
|
br bool false, label %cond_true207, label %cond_false214
|
|
|
|
cond_true207: ; preds = %cond_true186
|
|
br label %bb1269.outer38.backedge
|
|
|
|
bb1269.outer38.backedge: ; preds = %cond_true545, %cond_true432, %cond_true320, %cond_true207
|
|
br label %bb1269.outer38
|
|
|
|
cond_false214: ; preds = %cond_true186
|
|
br bool false, label %cond_true228, label %cond_false235
|
|
|
|
cond_true228: ; preds = %cond_false214
|
|
br label %bb1269.outer21.backedge
|
|
|
|
bb1269.outer21.backedge: ; preds = %cond_true566, %cond_true453, %cond_true341, %cond_true228
|
|
br label %bb1269.outer21
|
|
|
|
cond_false235: ; preds = %cond_false214
|
|
br bool false, label %UnifiedReturnBlock, label %cond_false250
|
|
|
|
cond_false250: ; preds = %cond_false235
|
|
br label %UnifiedUnreachableBlock
|
|
|
|
cond_false256: ; preds = %bb183
|
|
br bool false, label %cond_next271, label %bb287
|
|
|
|
cond_next271: ; preds = %cond_false256
|
|
br bool false, label %bb288, label %bb287
|
|
|
|
bb287: ; preds = %cond_next271, %cond_false256
|
|
br label %bb288
|
|
|
|
bb288: ; preds = %bb287, %cond_next271
|
|
br bool false, label %cond_false369, label %cond_true291
|
|
|
|
cond_true291: ; preds = %bb288
|
|
br bool false, label %cond_true320, label %cond_false327
|
|
|
|
cond_true320: ; preds = %cond_true291
|
|
br label %bb1269.outer38.backedge
|
|
|
|
cond_false327: ; preds = %cond_true291
|
|
br bool false, label %cond_true341, label %cond_false348
|
|
|
|
cond_true341: ; preds = %cond_false327
|
|
br label %bb1269.outer21.backedge
|
|
|
|
cond_false348: ; preds = %cond_false327
|
|
br bool false, label %UnifiedReturnBlock, label %cond_false363
|
|
|
|
cond_false363: ; preds = %cond_false348
|
|
br label %UnifiedUnreachableBlock
|
|
|
|
cond_false369: ; preds = %bb288
|
|
br bool false, label %cond_next384, label %bb400
|
|
|
|
cond_next384: ; preds = %cond_false369
|
|
br bool false, label %bb401, label %bb400
|
|
|
|
bb400: ; preds = %cond_next384, %cond_false369
|
|
br label %bb401
|
|
|
|
bb401: ; preds = %bb400, %cond_next384
|
|
br bool false, label %cond_false481, label %cond_true404
|
|
|
|
cond_true404: ; preds = %bb401
|
|
br bool false, label %cond_true432, label %cond_false439
|
|
|
|
cond_true432: ; preds = %cond_true404
|
|
br label %bb1269.outer38.backedge
|
|
|
|
cond_false439: ; preds = %cond_true404
|
|
br bool false, label %cond_true453, label %cond_false460
|
|
|
|
cond_true453: ; preds = %cond_false439
|
|
br label %bb1269.outer21.backedge
|
|
|
|
cond_false460: ; preds = %cond_false439
|
|
br bool false, label %UnifiedReturnBlock, label %cond_false475
|
|
|
|
cond_false475: ; preds = %cond_false460
|
|
br label %UnifiedUnreachableBlock
|
|
|
|
cond_false481: ; preds = %bb401
|
|
br bool false, label %cond_next496, label %bb512
|
|
|
|
cond_next496: ; preds = %cond_false481
|
|
br bool false, label %bb513, label %bb512
|
|
|
|
bb512: ; preds = %cond_next496, %cond_false481
|
|
br label %bb513
|
|
|
|
bb513: ; preds = %bb512, %cond_next496
|
|
br bool false, label %cond_false594, label %cond_true516
|
|
|
|
cond_true516: ; preds = %bb513
|
|
br bool false, label %cond_true545, label %cond_false552
|
|
|
|
cond_true545: ; preds = %cond_true516
|
|
br label %bb1269.outer38.backedge
|
|
|
|
cond_false552: ; preds = %cond_true516
|
|
br bool false, label %cond_true566, label %cond_false573
|
|
|
|
cond_true566: ; preds = %cond_false552
|
|
br label %bb1269.outer21.backedge
|
|
|
|
cond_false573: ; preds = %cond_false552
|
|
br bool false, label %UnifiedReturnBlock, label %cond_false588
|
|
|
|
cond_false588: ; preds = %cond_false573
|
|
br label %UnifiedUnreachableBlock
|
|
|
|
cond_false594: ; preds = %bb513
|
|
br bool false, label %cond_next609, label %bb625
|
|
|
|
cond_next609: ; preds = %cond_false594
|
|
br bool false, label %bb626, label %bb625
|
|
|
|
bb625: ; preds = %cond_next609, %cond_false594
|
|
br label %bb626
|
|
|
|
bb626: ; preds = %bb625, %cond_next609
|
|
br bool false, label %cond_false707, label %cond_true629
|
|
|
|
cond_true629: ; preds = %bb626
|
|
br bool false, label %cond_true658, label %cond_false665
|
|
|
|
cond_true658: ; preds = %cond_true629
|
|
br label %bb1269.outer2.backedge
|
|
|
|
bb1269.outer2.backedge: ; preds = %cond_true679, %cond_true658
|
|
br label %bb1269.outer2
|
|
|
|
cond_false665: ; preds = %cond_true629
|
|
br bool false, label %cond_true679, label %cond_false686
|
|
|
|
cond_true679: ; preds = %cond_false665
|
|
br label %bb1269.outer2.backedge
|
|
|
|
cond_false686: ; preds = %cond_false665
|
|
br bool false, label %UnifiedReturnBlock, label %cond_false701
|
|
|
|
cond_false701: ; preds = %cond_false686
|
|
br label %UnifiedUnreachableBlock
|
|
|
|
cond_false707: ; preds = %bb626
|
|
br bool false, label %cond_next722, label %bb738
|
|
|
|
cond_next722: ; preds = %cond_false707
|
|
br bool false, label %bb739, label %bb738
|
|
|
|
bb738: ; preds = %cond_next722, %cond_false707
|
|
br label %bb739
|
|
|
|
bb739: ; preds = %bb738, %cond_next722
|
|
br bool false, label %cond_false820, label %cond_true742
|
|
|
|
cond_true742: ; preds = %bb739
|
|
br bool false, label %cond_true771, label %cond_false778
|
|
|
|
cond_true771: ; preds = %cond_true742
|
|
br label %bb1269.outer.backedge
|
|
|
|
bb1269.outer.backedge: ; preds = %cond_true792, %cond_true771
|
|
br label %bb1269.outer
|
|
|
|
cond_false778: ; preds = %cond_true742
|
|
br bool false, label %cond_true792, label %cond_false799
|
|
|
|
cond_true792: ; preds = %cond_false778
|
|
br label %bb1269.outer.backedge
|
|
|
|
cond_false799: ; preds = %cond_false778
|
|
br bool false, label %UnifiedReturnBlock, label %cond_false814
|
|
|
|
cond_false814: ; preds = %cond_false799
|
|
br label %UnifiedUnreachableBlock
|
|
|
|
cond_false820: ; preds = %bb739
|
|
br bool false, label %cond_next835, label %bb851
|
|
|
|
cond_next835: ; preds = %cond_false820
|
|
br bool false, label %bb852, label %bb851
|
|
|
|
bb851: ; preds = %cond_next835, %cond_false820
|
|
br label %bb852
|
|
|
|
bb852: ; preds = %bb851, %cond_next835
|
|
br bool false, label %cond_false933, label %cond_true855
|
|
|
|
cond_true855: ; preds = %bb852
|
|
br bool false, label %cond_true884, label %cond_false891
|
|
|
|
cond_true884: ; preds = %cond_true855
|
|
br label %bb1269.outer.outer.backedge
|
|
|
|
bb1269.outer.outer.backedge: ; preds = %cond_true905, %cond_true884
|
|
br label %bb1269.outer.outer
|
|
|
|
cond_false891: ; preds = %cond_true855
|
|
br bool false, label %cond_true905, label %cond_false912
|
|
|
|
cond_true905: ; preds = %cond_false891
|
|
br label %bb1269.outer.outer.backedge
|
|
|
|
cond_false912: ; preds = %cond_false891
|
|
br bool false, label %UnifiedReturnBlock, label %cond_false927
|
|
|
|
cond_false927: ; preds = %cond_false912
|
|
br label %UnifiedUnreachableBlock
|
|
|
|
cond_false933: ; preds = %bb852
|
|
br bool false, label %cond_next948, label %bb964
|
|
|
|
cond_next948: ; preds = %cond_false933
|
|
br bool false, label %bb965, label %bb964
|
|
|
|
bb964: ; preds = %cond_next948, %cond_false933
|
|
br label %bb965
|
|
|
|
bb965: ; preds = %bb964, %cond_next948
|
|
br bool false, label %cond_false1046, label %cond_true968
|
|
|
|
cond_true968: ; preds = %bb965
|
|
br bool false, label %cond_true997, label %cond_false1004
|
|
|
|
cond_true997: ; preds = %cond_true968
|
|
br label %bb1269.outer.outer.outer.backedge
|
|
|
|
bb1269.outer.outer.outer.backedge: ; preds = %cond_true1018, %cond_true997
|
|
br label %bb1269.outer.outer.outer
|
|
|
|
cond_false1004: ; preds = %cond_true968
|
|
br bool false, label %cond_true1018, label %cond_false1025
|
|
|
|
cond_true1018: ; preds = %cond_false1004
|
|
br label %bb1269.outer.outer.outer.backedge
|
|
|
|
cond_false1025: ; preds = %cond_false1004
|
|
br bool false, label %UnifiedReturnBlock, label %cond_false1040
|
|
|
|
cond_false1040: ; preds = %cond_false1025
|
|
br label %UnifiedUnreachableBlock
|
|
|
|
cond_false1046: ; preds = %bb965
|
|
br bool false, label %cond_next1061, label %bb1077
|
|
|
|
cond_next1061: ; preds = %cond_false1046
|
|
br bool false, label %bb1078, label %bb1077
|
|
|
|
bb1077: ; preds = %cond_next1061, %cond_false1046
|
|
br label %bb1078
|
|
|
|
bb1078: ; preds = %bb1077, %cond_next1061
|
|
%tmp1080 = phi bool [ true, %bb1077 ], [ false, %cond_next1061 ] ; <bool> [#uses=1]
|
|
br bool %tmp1080, label %cond_false1159, label %cond_true1081
|
|
|
|
cond_true1081: ; preds = %bb1078
|
|
br bool false, label %cond_true1110, label %cond_false1117
|
|
|
|
cond_true1110: ; preds = %cond_true1081
|
|
br label %bb1269.outer.outer.outer.outer.backedge
|
|
|
|
bb1269.outer.outer.outer.outer.backedge: ; preds = %cond_true1131, %cond_true1110
|
|
br label %bb1269.outer.outer.outer.outer
|
|
|
|
cond_false1117: ; preds = %cond_true1081
|
|
br bool false, label %cond_true1131, label %cond_false1138
|
|
|
|
cond_true1131: ; preds = %cond_false1117
|
|
br label %bb1269.outer.outer.outer.outer.backedge
|
|
|
|
cond_false1138: ; preds = %cond_false1117
|
|
br bool false, label %UnifiedReturnBlock, label %cond_false1153
|
|
|
|
cond_false1153: ; preds = %cond_false1138
|
|
br label %UnifiedUnreachableBlock
|
|
|
|
cond_false1159: ; preds = %bb1078
|
|
%tmp.i119.lcssa35.lcssa.lcssa.lcssa.lcssa.lcssa = phi "struct.kc::impl_elem_patternrepresentation"* [ null, %bb1078 ] ; <"struct.kc::impl_elem_patternrepresentation"*> [#uses=0]
|
|
br bool false, label %UnifiedReturnBlock, label %cond_false1174
|
|
|
|
cond_false1174: ; preds = %cond_false1159
|
|
br bool false, label %UnifiedReturnBlock, label %cond_false1189
|
|
|
|
cond_false1189: ; preds = %cond_false1174
|
|
br bool false, label %UnifiedReturnBlock, label %cond_false1204
|
|
|
|
cond_false1204: ; preds = %cond_false1189
|
|
br bool false, label %UnifiedReturnBlock, label %cond_false1219
|
|
|
|
cond_false1219: ; preds = %cond_false1204
|
|
br bool false, label %UnifiedReturnBlock, label %cond_true1222
|
|
|
|
cond_true1222: ; preds = %cond_false1219
|
|
br label %UnifiedReturnBlock
|
|
|
|
bb1269.outer.outer.outer.outer: ; preds = %bb1269.outer.outer.outer.outer.backedge, %entry
|
|
br label %bb1269.outer.outer.outer
|
|
|
|
bb1269.outer.outer.outer: ; preds = %bb1269.outer.outer.outer.outer, %bb1269.outer.outer.outer.backedge
|
|
br label %bb1269.outer.outer
|
|
|
|
bb1269.outer.outer: ; preds = %bb1269.outer.outer.outer, %bb1269.outer.outer.backedge
|
|
br label %bb1269.outer
|
|
|
|
bb1269.outer: ; preds = %bb1269.outer.outer, %bb1269.outer.backedge
|
|
br label %bb1269.outer2
|
|
|
|
bb1269.outer2: ; preds = %bb1269.outer, %bb1269.outer2.backedge
|
|
br label %bb1269.outer21
|
|
|
|
bb1269.outer21: ; preds = %bb1269.outer2, %bb1269.outer21.backedge
|
|
br label %bb1269.outer38
|
|
|
|
bb1269.outer38: ; preds = %bb1269.outer21, %bb1269.outer38.backedge
|
|
br label %bb1269.outer54
|
|
|
|
bb1269.outer54: ; preds = %bb1269.outer38
|
|
br label %bb1269.outer69
|
|
|
|
bb1269.outer69: ; preds = %bb1269.outer54, %cond_true
|
|
br label %bb1269
|
|
|
|
bb1269: ; preds = %bb1269.outer69
|
|
br bool false, label %cond_next1281, label %bb1294
|
|
|
|
cond_next1281: ; preds = %bb1269
|
|
br bool false, label %cond_true1298, label %bb1294
|
|
|
|
bb1294: ; preds = %cond_next1281, %bb1269
|
|
br bool false, label %cond_true1331, label %cond_next1313
|
|
|
|
cond_true1298: ; preds = %cond_next1281
|
|
br bool false, label %cond_false, label %cond_true
|
|
|
|
cond_next1313: ; preds = %bb1294
|
|
br bool false, label %cond_true1331, label %cond_next1355
|
|
|
|
cond_true1331: ; preds = %cond_next1313, %bb1294
|
|
br bool false, label %cond_false1346, label %cond_true1342
|
|
|
|
cond_true1342: ; preds = %cond_true1331
|
|
br label %cond_next1350
|
|
|
|
cond_false1346: ; preds = %cond_true1331
|
|
br label %cond_next1350
|
|
|
|
cond_next1350: ; preds = %cond_false1346, %cond_true1342
|
|
br label %bb.i
|
|
|
|
bb.i: ; preds = %bb.i, %cond_next1350
|
|
br bool false, label %_ZN2kc18impl_abstract_list8freelistEv.exit, label %bb.i
|
|
|
|
_ZN2kc18impl_abstract_list8freelistEv.exit: ; preds = %bb.i
|
|
br label %cond_next1355
|
|
|
|
cond_next1355: ; preds = %_ZN2kc18impl_abstract_list8freelistEv.exit, %cond_next1313
|
|
br bool false, label %cond_next1363, label %bb1388
|
|
|
|
cond_next1363: ; preds = %cond_next1355
|
|
br bool false, label %UnifiedReturnBlock, label %cond_true1366
|
|
|
|
cond_true1366: ; preds = %cond_next1363
|
|
br label %UnifiedReturnBlock
|
|
|
|
bb1388: ; preds = %cond_next1355
|
|
br bool false, label %UnifiedReturnBlock, label %bb1414.preheader
|
|
|
|
bb1414.preheader: ; preds = %bb1388
|
|
br label %bb1414
|
|
|
|
bb1414: ; preds = %cond_true1426, %bb1414.preheader
|
|
br bool false, label %cond_true1426, label %bb1429
|
|
|
|
cond_true1426: ; preds = %bb1414
|
|
br label %bb1414
|
|
|
|
bb1429: ; preds = %bb1414
|
|
br bool false, label %cond_true1431, label %UnifiedReturnBlock
|
|
|
|
cond_true1431: ; preds = %bb1429
|
|
br bool false, label %UnifiedReturnBlock, label %cond_true1434
|
|
|
|
cond_true1434: ; preds = %cond_true1431
|
|
br label %UnifiedReturnBlock
|
|
|
|
UnifiedUnreachableBlock: ; preds = %cond_false1153, %cond_false1040, %cond_false927, %cond_false814, %cond_false701, %cond_false588, %cond_false475, %cond_false363, %cond_false250
|
|
unreachable
|
|
|
|
UnifiedReturnBlock: ; preds = %cond_true1434, %cond_true1431, %bb1429, %bb1388, %cond_true1366, %cond_next1363, %cond_true1222, %cond_false1219, %cond_false1204, %cond_false1189, %cond_false1174, %cond_false1159, %cond_false1138, %cond_false1025, %cond_false912, %cond_false799, %cond_false686, %cond_false573, %cond_false460, %cond_false348, %cond_false235, %cond_true120, %cond_true117, %cond_true57, %cond_true55
|
|
ret void
|
|
}
|