Created
June 25, 2020 19:49
-
-
Save alexcrichton/c0765fb466cf1c604720cd5129075169 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
; ModuleID = 'bar.3a1fbbbh-cgu.0' | |
source_filename = "bar.3a1fbbbh-cgu.0" | |
target datalayout = "e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" | |
target triple = "x86_64-pc-windows-msvc" | |
$__rust_panic_type_info = comdat any | |
@"??_7type_info@@6B@" = external global i8* | |
@__rust_panic_type_info = linkonce_odr global { i8**, i8*, [11 x i8] } { i8** @"??_7type_info@@6B@", i8* null, [11 x i8] c"rust_panic\00" }, comdat | |
; Function Attrs: uwtable | |
define i32 @bar() unnamed_addr #0 personality i32 (...)* @__CxxFrameHandler3 { | |
start: | |
%0 = alloca i8*, align 8 | |
%1 = bitcast i8** %0 to i8* | |
call void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %1) | |
invoke void @foo() | |
to label %__rust_try.exit unwind label %catchswitch.i | |
catchswitch.i: ; preds = %start | |
%catchswitch1.i = catchswitch within none [label %catchpad.i] unwind to caller | |
catchpad.i: ; preds = %catchswitch.i | |
%catchpad2.i = catchpad within %catchswitch1.i [{ i8**, i8*, [11 x i8] }* @__rust_panic_type_info, i32 8, i8** %0] | |
catchret from %catchpad2.i to label %__rust_try.exit | |
__rust_try.exit: ; preds = %start, %catchpad.i | |
%merge.i = phi i32 [ 1, %catchpad.i ], [ 0, %start ] | |
call void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %1) | |
ret i32 %merge.i | |
} | |
declare i32 @__CxxFrameHandler3(...) unnamed_addr #1 | |
; Function Attrs: uwtable | |
declare void @foo() unnamed_addr #0 | |
; Function Attrs: argmemonly nounwind willreturn | |
declare void @llvm.lifetime.start.p0i8(i64 immarg, i8* nocapture) #2 | |
; Function Attrs: argmemonly nounwind willreturn | |
declare void @llvm.lifetime.end.p0i8(i64 immarg, i8* nocapture) #2 | |
attributes #0 = { uwtable "target-cpu"="x86-64" } | |
attributes #1 = { "target-cpu"="x86-64" } | |
attributes #2 = { argmemonly nounwind willreturn } | |
!llvm.module.flags = !{!0} | |
!0 = !{i32 7, !"PIC Level", i32 2} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment