brintos

brintos / llvm-project-archived public Read only

0
0
Text · 976 B · 704ac9a Raw
45 lines · plain
1; All of the functions in this module must end up2; in the same partition.3 4; Mutually recursive calls5; RUN: llvm-split -j=2 -preserve-locals -o %t %s6; RUN: llvm-dis -o - %t0 | FileCheck --check-prefix=CHECK1 %s7; RUN: llvm-dis -o - %t1 | FileCheck --check-prefix=CHECK0 %s8 9; CHECK0: declare dso_local i32 @funInternal010; CHECK0: declare dso_local i32 @funInternal111; CHECK0: declare i32 @funExternal012; CHECK0: declare i32 @funExternal113 14; CHECK1: define internal i32 @funInternal015; CHECK1: define internal i32 @funInternal116; CHECK1: define i32 @funExternal017; CHECK1: define i32 @funExternal118 19define internal i32 @funInternal0() {20entry:21  %x = call i32 @funInternal1()22  ret i32 %x23}24 25define internal i32 @funInternal1() {26entry:27  %x = call i32 @funInternal0()28  ret i32 %x29}30 31; Extrnal functions32 33define i32 @funExternal0() {34entry:35  %x = call i32 @funInternal0()36  ret i32 %x37}38 39define i32 @funExternal1() {40entry:41  %x = call i32 @funInternal1()42  ret i32 %x43}44 45