1; RUN: llc -mtriple mips-unknown-linux-gnu -mattr=+micromips -O3 -filetype=obj -o - %s | llvm-readelf -r | FileCheck %s 2 3; CHECK: .rel.eh_frame 4; CHECK: DW.ref.__gxx_personality_v0 5; CHECK-NEXT: .text 6; CHECK-NEXT: .gcc_except_table 7 8@_ZTIi = external constant i8* 9 10define dso_local i32 @main() local_unnamed_addr personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) { 11entry: 12 %exception.i = tail call i8* @__cxa_allocate_exception(i32 4) nounwind 13 %0 = bitcast i8* %exception.i to i32* 14 store i32 5, i32* %0, align 16 15 invoke void @__cxa_throw(i8* %exception.i, i8* bitcast (i8** @_ZTIi to i8*), i8* null) noreturn 16 to label %.noexc unwind label %return 17 18.noexc: 19 unreachable 20 21return: 22 %1 = landingpad { i8*, i32 } 23 catch i8* null 24 %2 = extractvalue { i8*, i32 } %1, 0 25 %3 = tail call i8* @__cxa_begin_catch(i8* %2) nounwind 26 tail call void @__cxa_end_catch() 27 ret i32 0 28} 29 30declare i32 @__gxx_personality_v0(...) 31 32declare i8* @__cxa_begin_catch(i8*) local_unnamed_addr 33 34declare void @__cxa_end_catch() local_unnamed_addr 35 36declare i8* @__cxa_allocate_exception(i32) local_unnamed_addr 37 38declare void @__cxa_throw(i8*, i8*, i8*) local_unnamed_addr 39