llvm.org GIT mirror llvm / release_20 test / Other / 2003-02-19-LoopInfoNestingBug.ll
release_20

Tree @release_20 (Download .tar.gz)

2003-02-19-LoopInfoNestingBug.ll @release_20raw · history · blame

; LoopInfo is incorrectly calculating loop nesting!  In this case it doesn't 
; figure out that loop "Inner" should be nested inside of leep "LoopHeader", 
; and instead nests it just inside loop "Top"
;
; RUN: llvm-upgrade < %s | llvm-as | opt -analyze -loops | \
; RUN:   grep {     Loop Containing:\[ \]*%Inner}
;

implementation

void %test() {
	br label %Top
Top:
	br label %LoopHeader
Next:
	br bool false, label %Inner, label %Out
Inner:
	br bool false, label %Inner, label %LoopHeader

LoopHeader:
	br label %Next

Out:
	br bool false, label %Top, label %Done

Done:
	ret void
}