1; Test that we can inline a simple function, turning the calls in it into invoke 2; instructions 3 4; RUN: opt < %s -inline -S | FileCheck %s 5; RUN: opt < %s -passes='cgscc(inline)' -S | FileCheck %s 6 7declare void @might_throw() 8 9define internal void @callee() { 10entry: 11 call void @might_throw() 12 ret void 13} 14 15; caller returns true if might_throw throws an exception... 16define i32 @caller() personality i32 (...)* @__gxx_personality_v0 { 17; CHECK-LABEL: define i32 @caller() personality i32 (...)* @__gxx_personality_v0 18entry: 19 invoke void @callee() 20 to label %cont unwind label %exc 21; CHECK-NOT: @callee 22; CHECK: invoke void @might_throw() 23 24cont: 25 ret i32 0 26 27exc: 28 %exn = landingpad {i8*, i32} 29 cleanup 30 ret i32 1 31} 32 33declare i32 @__gxx_personality_v0(...) 34