1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -mtriple=x86_64-apple-darwin | not grep jmp 2*9880d681SAndroid Build Coastguard Worker; rdar://6647639 3*9880d681SAndroid Build Coastguard Worker 4*9880d681SAndroid Build Coastguard Worker %struct.FetchPlanHeader = type { i8*, i8*, i32, i8*, i8*, i8*, i8*, i8*, %struct.NSObject* (%struct.NSObject*, %struct.objc_selector*, ...)*, %struct.__attributeDescriptionFlags } 5*9880d681SAndroid Build Coastguard Worker %struct.NSArray = type { %struct.NSObject } 6*9880d681SAndroid Build Coastguard Worker %struct.NSAutoreleasePool = type { %struct.NSObject, i8*, i8*, i8*, i8* } 7*9880d681SAndroid Build Coastguard Worker %struct.NSObject = type { %struct.NSObject* } 8*9880d681SAndroid Build Coastguard Worker %struct.__attributeDescriptionFlags = type <{ i32 }> 9*9880d681SAndroid Build Coastguard Worker %struct._message_ref_t = type { %struct.NSObject* (%struct.NSObject*, %struct._message_ref_t*, ...)*, %struct.objc_selector* } 10*9880d681SAndroid Build Coastguard Worker %struct.objc_selector = type opaque 11*9880d681SAndroid Build Coastguard Worker@"\01l_objc_msgSend_fixup_alloc" = external global %struct._message_ref_t, align 16 ; <%struct._message_ref_t*> [#uses=2] 12*9880d681SAndroid Build Coastguard Worker 13*9880d681SAndroid Build Coastguard Workerdefine %struct.NSArray* @newFetchedRowsForFetchPlan_MT(%struct.FetchPlanHeader* %fetchPlan, %struct.objc_selector* %selectionMethod, %struct.NSObject* %selectionParameter) ssp personality i32 (...)* @__gxx_personality_v0 { 14*9880d681SAndroid Build Coastguard Workerentry: 15*9880d681SAndroid Build Coastguard Worker %0 = invoke %struct.NSObject* null(%struct.NSObject* null, %struct._message_ref_t* @"\01l_objc_msgSend_fixup_alloc") 16*9880d681SAndroid Build Coastguard Worker to label %invcont unwind label %lpad ; <%struct.NSObject*> [#uses=1] 17*9880d681SAndroid Build Coastguard Worker 18*9880d681SAndroid Build Coastguard Workerinvcont: ; preds = %entry 19*9880d681SAndroid Build Coastguard Worker %1 = invoke %struct.NSObject* (%struct.NSObject*, %struct.objc_selector*, ...) @objc_msgSend(%struct.NSObject* %0, %struct.objc_selector* null) 20*9880d681SAndroid Build Coastguard Worker to label %invcont26 unwind label %lpad ; <%struct.NSObject*> [#uses=0] 21*9880d681SAndroid Build Coastguard Worker 22*9880d681SAndroid Build Coastguard Workerinvcont26: ; preds = %invcont 23*9880d681SAndroid Build Coastguard Worker %2 = invoke %struct.NSObject* null(%struct.NSObject* null, %struct._message_ref_t* @"\01l_objc_msgSend_fixup_alloc") 24*9880d681SAndroid Build Coastguard Worker to label %invcont27 unwind label %lpad ; <%struct.NSObject*> [#uses=0] 25*9880d681SAndroid Build Coastguard Worker 26*9880d681SAndroid Build Coastguard Workerinvcont27: ; preds = %invcont26 27*9880d681SAndroid Build Coastguard Worker unreachable 28*9880d681SAndroid Build Coastguard Worker 29*9880d681SAndroid Build Coastguard Workerlpad: ; preds = %invcont26, %invcont, %entry 30*9880d681SAndroid Build Coastguard Worker %pool.1 = phi %struct.NSAutoreleasePool* [ null, %entry ], [ null, %invcont ], [ null, %invcont26 ] ; <%struct.NSAutoreleasePool*> [#uses=0] 31*9880d681SAndroid Build Coastguard Worker %exn = landingpad {i8*, i32} 32*9880d681SAndroid Build Coastguard Worker cleanup 33*9880d681SAndroid Build Coastguard Worker unreachable 34*9880d681SAndroid Build Coastguard Worker} 35*9880d681SAndroid Build Coastguard Worker 36*9880d681SAndroid Build Coastguard Workerdeclare %struct.NSObject* @objc_msgSend(%struct.NSObject*, %struct.objc_selector*, ...) 37*9880d681SAndroid Build Coastguard Worker 38*9880d681SAndroid Build Coastguard Workerdeclare i32 @__gxx_personality_v0(...) 39