Rename Cretonne to Cranelift!
This commit is contained in:
104
cranelift/filetests/domtree/loops.clif
Normal file
104
cranelift/filetests/domtree/loops.clif
Normal file
@@ -0,0 +1,104 @@
|
||||
test domtree
|
||||
|
||||
function %test(i32) {
|
||||
ebb0(v0: i32):
|
||||
brz v0, ebb1 ; dominates: ebb1 ebb3 ebb4 ebb5
|
||||
jump ebb2 ; dominates: ebb2
|
||||
ebb1:
|
||||
jump ebb3
|
||||
ebb2:
|
||||
brz v0, ebb4
|
||||
jump ebb5
|
||||
ebb3:
|
||||
jump ebb4
|
||||
ebb4:
|
||||
brz v0, ebb3
|
||||
jump ebb5
|
||||
ebb5:
|
||||
brz v0, ebb4
|
||||
return
|
||||
}
|
||||
; Fall-through-first, prune-at-source DFT:
|
||||
;
|
||||
; ebb0 {
|
||||
; ebb0:brz v0, ebb1 {
|
||||
; ebb0:jump ebb2 {
|
||||
; ebb2 {
|
||||
; ebb2:brz v2, ebb2 -
|
||||
; ebb2:brz v3, ebb1 -
|
||||
; ebb2:brz v4, ebb4 {
|
||||
; ebb2: jump ebb5 {
|
||||
; ebb5 {}
|
||||
; }
|
||||
; ebb4 {}
|
||||
; }
|
||||
; } ebb2
|
||||
; }
|
||||
; ebb1 {
|
||||
; ebb1:jump ebb3 {
|
||||
; ebb3 {}
|
||||
; }
|
||||
; } ebb1
|
||||
; }
|
||||
; } ebb0
|
||||
;
|
||||
; check: cfg_postorder:
|
||||
; sameln: ebb5
|
||||
; sameln: ebb3
|
||||
; sameln: ebb4
|
||||
; sameln: ebb2
|
||||
; sameln: ebb1
|
||||
; sameln: ebb0
|
||||
|
||||
; check: domtree_preorder {
|
||||
; nextln: ebb0: ebb1 ebb2 ebb4 ebb3 ebb5
|
||||
; nextln: ebb1:
|
||||
; nextln: ebb2:
|
||||
; nextln: ebb4:
|
||||
; nextln: ebb3:
|
||||
; nextln: ebb5:
|
||||
; nextln: }
|
||||
|
||||
function %loop2(i32) system_v {
|
||||
ebb0(v0: i32):
|
||||
brz v0, ebb1 ; dominates: ebb1 ebb3 ebb4 ebb5
|
||||
jump ebb2 ; dominates: ebb2
|
||||
ebb1:
|
||||
jump ebb3
|
||||
ebb2:
|
||||
brz v0, ebb4
|
||||
jump ebb5
|
||||
ebb3:
|
||||
jump ebb4
|
||||
ebb4:
|
||||
brz v0, ebb3
|
||||
brnz v0, ebb5
|
||||
jump ebb6 ; dominates: ebb6
|
||||
ebb5:
|
||||
brz v0, ebb4
|
||||
trap user0
|
||||
ebb6:
|
||||
jump ebb7 ; dominates: ebb7
|
||||
ebb7:
|
||||
return
|
||||
}
|
||||
; check: cfg_postorder:
|
||||
; sameln: ebb5
|
||||
; sameln: ebb7
|
||||
; sameln: ebb6
|
||||
; sameln: ebb3
|
||||
; sameln: ebb4
|
||||
; sameln: ebb2
|
||||
; sameln: ebb1
|
||||
; sameln: ebb0
|
||||
|
||||
; check: domtree_preorder {
|
||||
; nextln: ebb0: ebb1 ebb2 ebb4 ebb3 ebb5
|
||||
; nextln: ebb1:
|
||||
; nextln: ebb2:
|
||||
; nextln: ebb4: ebb6
|
||||
; nextln: ebb6: ebb7
|
||||
; nextln: ebb7:
|
||||
; nextln: ebb3:
|
||||
; nextln: ebb5:
|
||||
; nextln: }
|
||||
Reference in New Issue
Block a user