You've already forked linux-packaging-mono
Imported Upstream version 5.18.0.234
Former-commit-id: 8071ec1a8c5eaa9be24b41745add19297608001f
This commit is contained in:
parent
f32dbaf0b2
commit
212f6bafcb
@ -1,46 +0,0 @@
|
||||
;; A very basic test to make sure that splitting the backedge keeps working
|
||||
;; RUN: opt < %s -place-safepoints -spp-split-backedge=1 -S | FileCheck %s
|
||||
|
||||
define void @test(i32, i1 %cond) gc "statepoint-example" {
|
||||
; CHECK-LABEL: @test
|
||||
; CHECK-LABEL: loop.loop_crit_edge
|
||||
; CHECK: call void @do_safepoint
|
||||
; CHECK-NEXT: br label %loop
|
||||
entry:
|
||||
br label %loop
|
||||
|
||||
loop:
|
||||
br i1 %cond, label %loop, label %exit
|
||||
|
||||
exit:
|
||||
ret void
|
||||
}
|
||||
|
||||
; Test for the case where a single conditional branch jumps to two
|
||||
; different loop header blocks. Since we're currently using LoopSimplfy
|
||||
; this doesn't hit the interesting case, but once we remove that, we need
|
||||
; to be sure this keeps working.
|
||||
define void @test2(i32, i1 %cond) gc "statepoint-example" {
|
||||
; CHECK-LABEL: @test2
|
||||
; CHECK-LABEL: loop2.loop2_crit_edge:
|
||||
; CHECK: call void @do_safepoint
|
||||
; CHECK-NEXT: br label %loop2
|
||||
; CHECK-LABEL: loop2.loop_crit_edge:
|
||||
; CHECK: call void @do_safepoint
|
||||
; CHECK-NEXT: br label %loop
|
||||
entry:
|
||||
br label %loop
|
||||
|
||||
loop:
|
||||
br label %loop2
|
||||
|
||||
loop2:
|
||||
br i1 %cond, label %loop, label %loop2
|
||||
}
|
||||
|
||||
declare void @do_safepoint()
|
||||
define void @gc.safepoint_poll() {
|
||||
entry:
|
||||
call void @do_safepoint()
|
||||
ret void
|
||||
}
|
Reference in New Issue
Block a user