1# REQUIRES: asserts 2# RUN: llc -x mir -run-pass=register-coalescer,greedy -verify-machineinstrs < %s 2>&1 | FileCheck %s 3 4# CHECK-NOT: Bad Parent VNI 5--- | 6 ; ModuleID = 'hoist-copies' 7 source_filename = "hoist-copies.ll" 8 target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" 9 target triple = "x86_64-unknown-linux-gnu" 10 11 define float @hoge(i8 addrspace(3)* %arg) gc "statepoint-example" personality i32* ()* @widget { 12 bb: 13 %tmp = load i8 addrspace(1)*, i8 addrspace(1)* addrspace(3)* null, align 8 14 %tmp1 = load i32, i32 addrspace(3)* undef, align 4 15 %tmp2 = load i32, i32 addrspace(3)* undef, align 4 16 %tmp3 = load i32, i32 addrspace(3)* null, align 4 17 %tmp4 = load i32, i32 addrspace(3)* null, align 4 18 %tmp5 = load i8 addrspace(1)*, i8 addrspace(1)* addrspace(3)* undef, align 8 19 %tmp6 = load i8 addrspace(1)*, i8 addrspace(1)* addrspace(3)* undef, align 8 20 %tmp7 = load i8 addrspace(1)*, i8 addrspace(1)* addrspace(3)* undef, align 8 21 %tmp8 = load i8 addrspace(1)*, i8 addrspace(1)* addrspace(3)* undef, align 8 22 %tmp9 = load i8 addrspace(1)*, i8 addrspace(1)* addrspace(3)* undef, align 8 23 %tmp10 = inttoptr i64 undef to i8 addrspace(1)* 24 %tmp11 = inttoptr i64 undef to i8 addrspace(1)* 25 br i1 undef, label %bb12, label %bb93 26 27 bb12: ; preds = %bb 28 %tmp13 = load atomic i32, i32 addrspace(1)* undef unordered, align 4 29 %tmp14 = and i32 %tmp13, 33554431 30 %tmp15 = call token (i64, i32, void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf(i64 2882400000, i32 0, void ()* nonnull elementtype(void ()) @barney, i32 0, i32 0, i32 0, i32 0) [ "deopt"(i32 0, i32 1, i32 0, i32 83, i32 0, i32 19, i32 0, i32 0, i8 addrspace(1)* %tmp, i32 3, i32 %tmp1, i32 3, i32 %tmp2, i32 3, i32 %tmp3, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 %tmp4, i32 3, i32 undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* %tmp5, i32 3, float undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* %tmp6, i32 0, i8 addrspace(1)* %tmp7, i32 0, i8 addrspace(1)* %tmp8, i32 0, i8 addrspace(1)* %tmp9, i32 7, i8* null, i32 7, i8* null, i32 7, i8* null), "gc-live"(i8 addrspace(1)* %tmp, i8 addrspace(1)* %tmp6, i8 addrspace(1)* %tmp7, i8 addrspace(1)* %tmp8, i8 addrspace(1)* %tmp9, i8 addrspace(1)* %tmp5, i8 addrspace(1)* %tmp10, i8 addrspace(1)* %tmp11) ] 31 %tmp16 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp15, i32 1, i32 1) ; (%tmp6, %tmp6) 32 %tmp17 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp15, i32 2, i32 2) ; (%tmp7, %tmp7) 33 %tmp18 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp15, i32 4, i32 4) ; (%tmp9, %tmp9) 34 %tmp19 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp15, i32 5, i32 5) ; (%tmp5, %tmp5) 35 %tmp20 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp15, i32 6, i32 6) ; (%tmp10, %tmp10) 36 %tmp21 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp15, i32 7, i32 7) ; (%tmp11, %tmp11) 37 %tmp22 = invoke token (i64, i32, float (i32, i8 addrspace(1)*, i64, i32)*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_f32i32p1i8i64i32f(i64 1, i32 16, float (i32, i8 addrspace(1)*, i64, i32)* nonnull elementtype(float (i32, i8 addrspace(1)*, i64, i32)) @quux, i32 4, i32 0, i32 %tmp14, i8 addrspace(1)* %tmp16, i64 -170, i32 undef, i32 0, i32 0) [ "deopt"(i32 0, i32 0, i32 0, i32 103, i32 1, i32 19, i32 0, i32 3, float undef, i32 0, i8 addrspace(1)* null, i32 3, i32 %tmp1, i32 3, i32 %tmp2, i32 3, i32 %tmp3, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 %tmp4, i32 3, i32 undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* %tmp19, i32 3, float undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* %tmp16, i32 0, i8 addrspace(1)* %tmp17, i32 0, i8 addrspace(1)* undef, i32 0, i8 addrspace(1)* %tmp18, i32 7, i8* null, i32 7, i8* null, i32 7, i8* null), "gc-live"(i8 addrspace(1)* null, i8 addrspace(1)* %tmp16, i8 addrspace(1)* %tmp17, i8 addrspace(1)* undef, i8 addrspace(1)* %tmp18, i8 addrspace(1)* %tmp19, i8 addrspace(1)* %tmp20, i8 addrspace(1)* %tmp21) ] 38 to label %bb23 unwind label %bb75 39 40 bb23: ; preds = %bb12 41 %tmp24 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp22, i32 1, i32 1) ; (%tmp16, %tmp16) 42 %tmp25 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp22, i32 2, i32 2) ; (%tmp17, %tmp17) 43 %tmp26 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp22, i32 4, i32 4) ; (%tmp18, %tmp18) 44 %tmp27 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp22, i32 5, i32 5) ; (%tmp19, %tmp19) 45 %tmp28 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp22, i32 6, i32 6) ; (%tmp20, %tmp20) 46 %tmp29 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp22, i32 7, i32 7) ; (%tmp21, %tmp21) 47 %tmp30 = invoke token (i64, i32, i32 (i32, i8 addrspace(1)*, i32, i32, i32)*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i32i32p1i8i32i32i32f(i64 1, i32 16, i32 (i32, i8 addrspace(1)*, i32, i32, i32)* nonnull elementtype(i32 (i32, i8 addrspace(1)*, i32, i32, i32)) @hoge.1, i32 5, i32 0, i32 undef, i8 addrspace(1)* %tmp26, i32 undef, i32 %tmp4, i32 %tmp4, i32 0, i32 0) [ "deopt"(i32 0, i32 8, i32 0, i32 153, i32 4, i32 19, i32 0, i32 4, i64 undef, i32 7, i8* null, i32 0, i8 addrspace(1)* undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* null, i32 3, i32 %tmp1, i32 3, i32 %tmp2, i32 3, i32 %tmp3, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 %tmp4, i32 3, i32 undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* %tmp27, i32 3, float undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* %tmp24, i32 0, i8 addrspace(1)* %tmp25, i32 0, i8 addrspace(1)* undef, i32 0, i8 addrspace(1)* %tmp26, i32 7, i8* null, i32 7, i8* null, i32 7, i8* null), "gc-live"(i8 addrspace(1)* null, i8 addrspace(1)* %tmp27, i8 addrspace(1)* %tmp24, i8 addrspace(1)* %tmp25, i8 addrspace(1)* undef, i8 addrspace(1)* %tmp26, i8 addrspace(1)* %tmp28, i8 addrspace(1)* %tmp29) ] 48 to label %bb56 unwind label %bb65 49 50 bb31: ; preds = %bb67 51 %tmp32 = invoke token (i64, i32, i32 (i32, i8 addrspace(1)*, i32, i32, i32)*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i32i32p1i8i32i32i32f(i64 1, i32 16, i32 (i32, i8 addrspace(1)*, i32, i32, i32)* nonnull elementtype(i32 (i32, i8 addrspace(1)*, i32, i32, i32)) @hoge.1, i32 5, i32 0, i32 undef, i8 addrspace(1)* %tmp71, i32 %tmp4, i32 undef, i32 undef, i32 0, i32 0) [ "deopt"(i32 0, i32 0, i32 0, i32 537, i32 2, i32 19, i32 0, i32 0, i8 addrspace(1)* undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* null, i32 3, i32 undef, i32 3, i32 %tmp2, i32 3, i32 %tmp3, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 %tmp4, i32 3, i32 1, i32 3, i32 undef, i32 0, i8 addrspace(1)* %tmp69, i32 3, float undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* %tmp70, i32 0, i8 addrspace(1)* undef, i32 0, i8 addrspace(1)* undef, i32 0, i8 addrspace(1)* %tmp71, i32 7, i8* null, i32 7, i8* null, i32 7, i8* null), "gc-live"(i8 addrspace(1)* null, i8 addrspace(1)* %tmp69, i8 addrspace(1)* %tmp70, i8 addrspace(1)* undef, i8 addrspace(1)* undef, i8 addrspace(1)* %tmp71, i8 addrspace(1)* undef, i8 addrspace(1)* %tmp72, i8 addrspace(1)* undef) ] 52 to label %bb33 unwind label %bb77 53 54 bb33: ; preds = %bb31 55 %tmp34 = call token (i64, i32, void (i32)*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidi32f(i64 2882400000, i32 0, void (i32)* nonnull elementtype(void (i32)) @ham, i32 1, i32 0, i32 15, i32 0, i32 0) [ "deopt"(i32 0, i32 2, i32 0, i32 591, i32 0, i32 19, i32 0, i32 7, i8* null, i32 3, i32 undef, i32 3, i32 63, i32 3, i32 %tmp3, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 %tmp4, i32 3, i32 1, i32 3, i32 undef, i32 0, i8 addrspace(1)* undef, i32 3, float undef, i32 3, i32 undef, i32 7, i8* null, i32 7, i8* null, i32 7, i8* null, i32 7, i8* null, i32 7, i8* null, i32 7, i8* null, i32 7, i8* null, i32 1, i32 1, i32 16, i32 0, i32 0, i32 0), "gc-live"() ] 56 unreachable 57 58 bb35: ; preds = %bb67 59 %tmp36 = invoke token (i64, i32, i32 (i32, i8 addrspace(1)*, i32, i32, i32)*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i32i32p1i8i32i32i32f(i64 1, i32 16, i32 (i32, i8 addrspace(1)*, i32, i32, i32)* nonnull elementtype(i32 (i32, i8 addrspace(1)*, i32, i32, i32)) @hoge.1, i32 5, i32 0, i32 undef, i8 addrspace(1)* %tmp71, i32 %tmp4, i32 undef, i32 undef, i32 0, i32 0) [ "deopt"(i32 0, i32 8, i32 0, i32 300, i32 2, i32 19, i32 0, i32 0, i8 addrspace(1)* %tmp71, i32 3, i32 undef, i32 0, i8 addrspace(1)* null, i32 3, i32 %tmp1, i32 3, i32 %tmp2, i32 3, i32 %tmp3, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* %tmp69, i32 3, float undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* %tmp70, i32 0, i8 addrspace(1)* undef, i32 0, i8 addrspace(1)* undef, i32 0, i8 addrspace(1)* %tmp71, i32 7, i8* null, i32 7, i8* null, i32 7, i8* null), "gc-live"(i8 addrspace(1)* null, i8 addrspace(1)* %tmp69, i8 addrspace(1)* %tmp70, i8 addrspace(1)* undef, i8 addrspace(1)* undef, i8 addrspace(1)* %tmp71, i8 addrspace(1)* %tmp72, i8 addrspace(1)* undef) ] 60 to label %bb37 unwind label %bb79 61 62 bb37: ; preds = %bb35 63 %tmp38 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp36, i32 1, i32 1) ; (%tmp69, %tmp69) 64 %tmp39 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp36, i32 6, i32 6) ; (%tmp72, %tmp72) 65 %tmp40 = invoke token (i64, i32, i32 (i32, i8 addrspace(1)*, i32, i32, i32)*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i32i32p1i8i32i32i32f(i64 1, i32 16, i32 (i32, i8 addrspace(1)*, i32, i32, i32)* nonnull elementtype(i32 (i32, i8 addrspace(1)*, i32, i32, i32)) @hoge.1, i32 5, i32 0, i32 undef, i8 addrspace(1)* undef, i32 undef, i32 undef, i32 -7122, i32 0, i32 0) [ "deopt"(i32 0, i32 8, i32 0, i32 308, i32 0, i32 19, i32 0, i32 0, i8 addrspace(1)* null, i32 3, i32 %tmp1, i32 3, i32 %tmp2, i32 3, i32 %tmp3, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* %tmp38, i32 3, float undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* undef, i32 0, i8 addrspace(1)* undef, i32 0, i8 addrspace(1)* undef, i32 0, i8 addrspace(1)* undef, i32 7, i8* null, i32 7, i8* null, i32 7, i8* null), "gc-live"(i8 addrspace(1)* null, i8 addrspace(1)* %tmp38, i8 addrspace(1)* undef, i8 addrspace(1)* undef, i8 addrspace(1)* undef, i8 addrspace(1)* undef, i8 addrspace(1)* %tmp39, i8 addrspace(1)* undef) ] 66 to label %bb41 unwind label %bb85 67 68 bb41: ; preds = %bb37 69 %tmp42 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp40, i32 6, i32 6) ; (%tmp39, %tmp39) 70 %tmp43 = getelementptr inbounds i8, i8 addrspace(1)* %tmp42, i64 904 71 %tmp44 = bitcast i8 addrspace(1)* %tmp43 to i8 addrspace(1)* addrspace(1)* 72 %tmp45 = load atomic i8 addrspace(1)*, i8 addrspace(1)* addrspace(1)* %tmp44 unordered, align 8 73 %tmp46 = icmp eq i8 addrspace(1)* %tmp45, null 74 %tmp47 = xor i64 0, -1 75 %tmp48 = inttoptr i64 %tmp47 to i8 addrspace(1)* 76 %tmp49 = select i1 %tmp46, i8 addrspace(1)* null, i8 addrspace(1)* %tmp48 77 br i1 undef, label %bb52, label %bb50 78 79 bb50: ; preds = %bb41 80 %0 = bitcast i8 addrspace(1)* %tmp43 to i8 addrspace(1)* addrspace(1)* 81 %tmp51 = call i8 addrspace(1)* @wombat(i8 addrspace(1)* %tmp49, i8 addrspace(1)* addrspace(1)* %0) 82 br label %bb52 83 84 bb52: ; preds = %bb50, %bb41 85 %tmp53 = invoke token (i64, i32, i32 (i32, i8 addrspace(1)*, i32, i32, i32)*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i32i32p1i8i32i32i32f(i64 1, i32 16, i32 (i32, i8 addrspace(1)*, i32, i32, i32)* nonnull elementtype(i32 (i32, i8 addrspace(1)*, i32, i32, i32)) @hoge.1, i32 5, i32 0, i32 undef, i8 addrspace(1)* undef, i32 undef, i32 undef, i32 undef, i32 0, i32 0) [ "deopt"(i32 0, i32 0, i32 0, i32 335, i32 2, i32 19, i32 0, i32 0, i8 addrspace(1)* undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* undef, i32 3, i32 undef, i32 3, i32 %tmp2, i32 3, i32 %tmp3, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* undef, i32 3, float undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* undef, i32 0, i8 addrspace(1)* undef, i32 0, i8 addrspace(1)* undef, i32 0, i8 addrspace(1)* undef, i32 7, i8* null, i32 7, i8* null, i32 7, i8* null), "gc-live"(i8 addrspace(1)* undef, i8 addrspace(1)* undef, i8 addrspace(1)* undef, i8 addrspace(1)* undef, i8 addrspace(1)* undef, i8 addrspace(1)* undef, i8 addrspace(1)* undef, i8 addrspace(1)* %tmp42, i8 addrspace(1)* undef) ] 86 to label %bb54 unwind label %bb90 87 88 bb54: ; preds = %bb52 89 %tmp55 = call token (i64, i32, void (i32)*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidi32f(i64 2882400000, i32 0, void (i32)* nonnull elementtype(void (i32)) @ham, i32 1, i32 2, i32 10, i32 0, i32 0) [ "deopt"(i32 0, i32 1, i32 0, i32 344, i32 4, i32 19, i32 0, i32 0, i8 addrspace(1)* null, i32 3, i32 undef, i32 4, i64 undef, i32 7, i8* null, i32 0, i8 addrspace(1)* undef, i32 3, i32 undef, i32 3, i32 %tmp2, i32 3, i32 %tmp3, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* undef, i32 3, float undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* undef, i32 0, i8 addrspace(1)* undef, i32 0, i8 addrspace(1)* undef, i32 0, i8 addrspace(1)* undef, i32 7, i8* null, i32 7, i8* null, i32 7, i8* null), "gc-live"() ] 90 unreachable 91 92 bb56: ; preds = %bb23 93 %tmp57 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp30, i32 1, i32 1) ; (%tmp27, %tmp27) 94 %tmp58 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp30, i32 2, i32 2) ; (%tmp24, %tmp24) 95 %tmp59 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp30, i32 5, i32 5) ; (%tmp26, %tmp26) 96 %tmp60 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp30, i32 6, i32 6) ; (%tmp28, %tmp28) 97 %tmp61 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp30, i32 7, i32 7) ; (%tmp29, %tmp29) 98 %tmp62 = invoke token (i64, i32, i32 (i32, i8 addrspace(1)*, i32, i32, i32)*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i32i32p1i8i32i32i32f(i64 1, i32 16, i32 (i32, i8 addrspace(1)*, i32, i32, i32)* nonnull elementtype(i32 (i32, i8 addrspace(1)*, i32, i32, i32)) @hoge.1, i32 5, i32 0, i32 undef, i8 addrspace(1)* %tmp59, i32 %tmp1, i32 7, i32 %tmp3, i32 0, i32 0) [ "deopt"(i32 0, i32 8, i32 0, i32 208, i32 4, i32 19, i32 0, i32 0, i8 addrspace(1)* %tmp57, i32 3, i32 undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* null, i32 0, i8 addrspace(1)* null, i32 3, i32 %tmp1, i32 3, i32 %tmp2, i32 3, i32 %tmp3, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 %tmp4, i32 3, i32 undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* %tmp57, i32 3, float undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* %tmp58, i32 0, i8 addrspace(1)* undef, i32 0, i8 addrspace(1)* undef, i32 0, i8 addrspace(1)* %tmp59, i32 7, i8* null, i32 7, i8* null, i32 7, i8* null), "gc-live"(i8 addrspace(1)* %tmp57, i8 addrspace(1)* %tmp58, i8 addrspace(1)* undef, i8 addrspace(1)* undef, i8 addrspace(1)* %tmp59, i8 addrspace(1)* null, i8 addrspace(1)* %tmp60, i8 addrspace(1)* %tmp61) ] 99 to label %bb63 unwind label %bb67 100 101 bb63: ; preds = %bb56 102 %tmp64 = call token (i64, i32, void (i32)*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidi32f(i64 2882400000, i32 0, void (i32)* nonnull elementtype(void (i32)) @ham, i32 1, i32 2, i32 10, i32 0, i32 0) [ "deopt"(i32 0, i32 9, i32 0, i32 215, i32 8, i32 19, i32 0, i32 0, i8 addrspace(1)* null, i32 7, i32 undef, i32 7, i32 undef, i32 7, double undef, i32 7, i8* null, i32 0, i8 addrspace(1)* null, i32 4, double undef, i32 7, i8* null, i32 0, i8 addrspace(1)* null, i32 3, i32 %tmp1, i32 3, i32 %tmp2, i32 3, i32 %tmp3, i32 3, i32 2, i32 3, i32 undef, i32 3, i32 %tmp4, i32 3, i32 undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* undef, i32 3, float undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* undef, i32 0, i8 addrspace(1)* undef, i32 0, i8 addrspace(1)* undef, i32 0, i8 addrspace(1)* undef, i32 7, i8* null, i32 7, i8* null, i32 7, i8* null), "gc-live"() ] 103 unreachable 104 105 bb65: ; preds = %bb23 106 %tmp66 = landingpad token 107 cleanup 108 unreachable 109 110 bb67: ; preds = %bb56 111 %tmp68 = landingpad token 112 cleanup 113 %tmp69 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp68, i32 0, i32 0) ; (%tmp57, %tmp57) 114 %tmp70 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp68, i32 1, i32 1) ; (%tmp58, %tmp58) 115 %tmp71 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp68, i32 4, i32 4) ; (%tmp59, %tmp59) 116 %tmp72 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp68, i32 6, i32 6) ; (%tmp60, %tmp60) 117 switch i32 undef, label %bb99 [ 118 i32 66, label %bb35 119 i32 57, label %bb31 120 ] 121 122 bb75: ; preds = %bb12 123 %tmp76 = landingpad token 124 cleanup 125 unreachable 126 127 bb77: ; preds = %bb31 128 %tmp78 = landingpad token 129 cleanup 130 br label %bb95 131 132 bb79: ; preds = %bb35 133 %tmp80 = landingpad token 134 cleanup 135 %tmp81 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp80, i32 5, i32 5) ; (%tmp71, %tmp71) 136 %tmp84 = load i8 addrspace(1)*, i8 addrspace(1)* addrspace(256)* inttoptr (i64 8 to i8 addrspace(1)* addrspace(256)*), align 8 137 br label %bb99 138 139 bb85: ; preds = %bb37 140 %tmp86 = landingpad token 141 cleanup 142 %tmp87 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp86, i32 6, i32 6) ; (%tmp39, %tmp39) 143 br label %bb99 144 145 bb90: ; preds = %bb52 146 %tmp91 = landingpad token 147 cleanup 148 %tmp92 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp91, i32 7, i32 7) ; (%tmp42, %tmp42) 149 br label %bb95 150 151 bb93: ; preds = %bb 152 %tmp94 = call token (i64, i32, void (i32)*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidi32f(i64 2882400000, i32 0, void (i32)* nonnull elementtype(void (i32)) @ham, i32 1, i32 2, i32 14, i32 0, i32 0) [ "deopt"(i32 0, i32 1, i32 0, i32 94, i32 4, i32 19, i32 0, i32 3, float undef, i32 0, i8 addrspace(1)* %tmp6, i32 0, i8 addrspace(1)* %tmp7, i32 3, i32 -170, i32 0, i8 addrspace(1)* %tmp, i32 3, i32 %tmp1, i32 3, i32 %tmp2, i32 3, i32 %tmp3, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 %tmp4, i32 3, i32 undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* %tmp5, i32 3, float undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* %tmp6, i32 0, i8 addrspace(1)* %tmp7, i32 0, i8 addrspace(1)* %tmp8, i32 0, i8 addrspace(1)* %tmp9, i32 7, i8* null, i32 7, i8* null, i32 7, i8* null), "gc-live"() ] 153 unreachable 154 155 bb95: ; preds = %bb114, %bb90, %bb77 156 %tmp96 = phi i8 addrspace(1)* [ undef, %bb114 ], [ undef, %bb77 ], [ %tmp92, %bb90 ] 157 %tmp97 = getelementptr inbounds i8, i8 addrspace(1)* %tmp96, i64 928 158 %tmp98 = bitcast i8 addrspace(1)* %tmp97 to i64 addrspace(1)* 159 store atomic i64 undef, i64 addrspace(1)* %tmp98 unordered, align 8 160 ret float undef 161 162 bb99: ; preds = %bb85, %bb79, %bb67 163 %tmp101 = phi i8 addrspace(1)* [ %tmp87, %bb85 ], [ undef, %bb79 ], [ %tmp72, %bb67 ] 164 %tmp102 = phi i8 addrspace(1)* [ undef, %bb85 ], [ %tmp81, %bb79 ], [ %tmp71, %bb67 ] 165 %tmp103 = phi i8 addrspace(1)* [ undef, %bb85 ], [ undef, %bb79 ], [ %tmp69, %bb67 ] 166 %tmp104 = phi i8 addrspace(1)* [ undef, %bb85 ], [ %tmp84, %bb79 ], [ undef, %bb67 ] 167 %sunkaddr = getelementptr inbounds i8, i8 addrspace(1)* %tmp101, i64 904 168 %1 = bitcast i8 addrspace(1)* %sunkaddr to i8 addrspace(1)* addrspace(1)* 169 %tmp105 = load atomic i8 addrspace(1)*, i8 addrspace(1)* addrspace(1)* %1 unordered, align 8 170 %tmp106 = icmp eq i8 addrspace(1)* %tmp105, null 171 %tmp107 = xor i64 0, -1 172 %tmp108 = inttoptr i64 %tmp107 to i8 addrspace(1)* 173 %tmp109 = select i1 %tmp106, i8 addrspace(1)* null, i8 addrspace(1)* %tmp108 174 %tmp110 = invoke token (i64, i32, i32 (i32, i8 addrspace(1)*, i32, i32, i32)*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i32i32p1i8i32i32i32f(i64 1, i32 16, i32 (i32, i8 addrspace(1)*, i32, i32, i32)* nonnull elementtype(i32 (i32, i8 addrspace(1)*, i32, i32, i32)) @hoge.1, i32 5, i32 0, i32 undef, i8 addrspace(1)* %tmp102, i32 undef, i32 undef, i32 undef, i32 0, i32 0) [ "deopt"(i32 0, i32 0, i32 0, i32 572, i32 2, i32 19, i32 0, i32 0, i8 addrspace(1)* %tmp109, i32 3, i32 undef, i32 7, i8* null, i32 3, i32 undef, i32 3, i32 %tmp2, i32 3, i32 %tmp3, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* %tmp103, i32 3, float undef, i32 3, i32 undef, i32 7, i8* null, i32 7, i8* null, i32 7, i8* null, i32 7, i8* null, i32 7, i8* null, i32 0, i8 addrspace(1)* %tmp104, i32 7, i8* null), "gc-live"(i8 addrspace(1)* %tmp109, i8 addrspace(1)* %tmp103, i8 addrspace(1)* %tmp104, i8 addrspace(1)* undef, i8 addrspace(1)* %tmp101) ] 175 to label %bb111 unwind label %bb114 176 177 bb111: ; preds = %bb99 178 %tmp112 = call coldcc i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token %tmp110, i32 4, i32 4) ; (%tmp101, %tmp101) 179 %tmp113 = call token (i64, i32, void (i32)*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidi32f(i64 2882400000, i32 0, void (i32)* nonnull elementtype(void (i32)) @ham, i32 1, i32 2, i32 10, i32 0, i32 0) [ "deopt"(i32 0, i32 1, i32 0, i32 581, i32 4, i32 19, i32 0, i32 0, i8 addrspace(1)* null, i32 3, i32 undef, i32 4, i64 undef, i32 7, i8* null, i32 7, i8* null, i32 3, i32 undef, i32 3, i32 %tmp2, i32 3, i32 %tmp3, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 undef, i32 3, i32 undef, i32 0, i8 addrspace(1)* undef, i32 3, float undef, i32 3, i32 undef, i32 7, i8* null, i32 7, i8* null, i32 7, i8* null, i32 7, i8* null, i32 7, i8* null, i32 0, i8 addrspace(1)* undef, i32 7, i8* null), "gc-live"() ] 180 unreachable 181 182 bb114: ; preds = %bb99 183 %tmp115 = landingpad token 184 cleanup 185 br label %bb95 186 } 187 188 declare i32* @widget() 189 190 declare float @quux(i32, i8 addrspace(1)*, i64, i32) 191 192 declare i32 @hoge.1(i32, i8 addrspace(1)*, i32, i32, i32) 193 194 declare void @barney() 195 196 declare void @ham(i32) 197 198 declare token @llvm.experimental.gc.statepoint.p0f_isVoidi32f(i64 immarg, i32 immarg, void (i32)*, i32 immarg, i32 immarg, ...) 199 200 ; Function Attrs: nounwind readnone 201 declare i8 addrspace(1)* @llvm.experimental.gc.relocate.p1i8(token, i32 immarg, i32 immarg) #0 202 203 declare token @llvm.experimental.gc.statepoint.p0f_isVoidf(i64 immarg, i32 immarg, void ()*, i32 immarg, i32 immarg, ...) 204 205 declare token @llvm.experimental.gc.statepoint.p0f_f32i32p1i8i64i32f(i64 immarg, i32 immarg, float (i32, i8 addrspace(1)*, i64, i32)*, i32 immarg, i32 immarg, ...) 206 207 declare token @llvm.experimental.gc.statepoint.p0f_i32i32p1i8i32i32i32f(i64 immarg, i32 immarg, i32 (i32, i8 addrspace(1)*, i32, i32, i32)*, i32 immarg, i32 immarg, ...) 208 209 declare i8 addrspace(1)* @wombat(i8 addrspace(1)*, i8 addrspace(1)* addrspace(1)*) 210 211 attributes #0 = { nounwind readnone } 212 213... 214--- 215name: hoge 216alignment: 16 217exposesReturnsTwice: false 218legalized: false 219regBankSelected: false 220selected: false 221failedISel: false 222tracksRegLiveness: true 223hasWinCFI: false 224registers: 225 - { id: 0, class: gr64, preferred-register: '' } 226 - { id: 1, class: gr32, preferred-register: '' } 227 - { id: 2, class: gr32, preferred-register: '' } 228 - { id: 3, class: gr32, preferred-register: '' } 229 - { id: 4, class: gr32, preferred-register: '' } 230 - { id: 5, class: gr64, preferred-register: '' } 231 - { id: 6, class: gr64, preferred-register: '' } 232 - { id: 7, class: gr64, preferred-register: '' } 233 - { id: 8, class: gr64, preferred-register: '' } 234 - { id: 9, class: gr64, preferred-register: '' } 235 - { id: 10, class: gr64, preferred-register: '' } 236 - { id: 11, class: gr64, preferred-register: '' } 237 - { id: 12, class: gr64, preferred-register: '' } 238 - { id: 13, class: gr64, preferred-register: '' } 239 - { id: 14, class: gr64, preferred-register: '' } 240 - { id: 15, class: gr64, preferred-register: '' } 241 - { id: 16, class: gr64, preferred-register: '' } 242 - { id: 17, class: gr64, preferred-register: '' } 243 - { id: 18, class: gr64, preferred-register: '' } 244 - { id: 19, class: gr64, preferred-register: '' } 245 - { id: 20, class: gr64, preferred-register: '' } 246 - { id: 21, class: gr64, preferred-register: '' } 247 - { id: 22, class: gr64, preferred-register: '' } 248 - { id: 23, class: gr64, preferred-register: '' } 249 - { id: 24, class: gr64, preferred-register: '' } 250 - { id: 25, class: gr64, preferred-register: '' } 251 - { id: 26, class: gr64, preferred-register: '' } 252 - { id: 27, class: gr64, preferred-register: '' } 253 - { id: 28, class: gr64, preferred-register: '' } 254 - { id: 29, class: gr64, preferred-register: '' } 255 - { id: 30, class: gr64, preferred-register: '' } 256 - { id: 31, class: gr32, preferred-register: '' } 257 - { id: 32, class: gr8, preferred-register: '' } 258 - { id: 33, class: gr32, preferred-register: '' } 259 - { id: 34, class: gr64, preferred-register: '' } 260 - { id: 35, class: gr64, preferred-register: '' } 261 - { id: 36, class: gr64, preferred-register: '' } 262 - { id: 37, class: gr64, preferred-register: '' } 263 - { id: 38, class: gr64, preferred-register: '' } 264 - { id: 39, class: gr64, preferred-register: '' } 265 - { id: 40, class: gr64, preferred-register: '' } 266 - { id: 41, class: gr64, preferred-register: '' } 267 - { id: 42, class: gr64, preferred-register: '' } 268 - { id: 43, class: gr64, preferred-register: '' } 269 - { id: 44, class: gr64, preferred-register: '' } 270 - { id: 45, class: gr64, preferred-register: '' } 271 - { id: 46, class: gr64, preferred-register: '' } 272 - { id: 47, class: gr64, preferred-register: '' } 273 - { id: 48, class: gr64, preferred-register: '' } 274 - { id: 49, class: gr64, preferred-register: '' } 275 - { id: 50, class: gr64, preferred-register: '' } 276 - { id: 51, class: gr64, preferred-register: '' } 277 - { id: 52, class: gr32, preferred-register: '' } 278 - { id: 53, class: gr64, preferred-register: '' } 279 - { id: 54, class: gr32, preferred-register: '' } 280 - { id: 55, class: gr64, preferred-register: '' } 281 - { id: 56, class: gr64, preferred-register: '' } 282 - { id: 57, class: gr64, preferred-register: '' } 283 - { id: 58, class: gr32, preferred-register: '' } 284 - { id: 59, class: gr64, preferred-register: '' } 285 - { id: 60, class: fr32, preferred-register: '' } 286 - { id: 61, class: gr64, preferred-register: '' } 287 - { id: 62, class: gr64, preferred-register: '' } 288 - { id: 63, class: gr64, preferred-register: '' } 289 - { id: 64, class: gr64, preferred-register: '' } 290 - { id: 65, class: gr64, preferred-register: '' } 291 - { id: 66, class: gr64, preferred-register: '' } 292 - { id: 67, class: gr64, preferred-register: '' } 293 - { id: 68, class: gr32, preferred-register: '' } 294 - { id: 69, class: gr32, preferred-register: '' } 295 - { id: 70, class: gr64, preferred-register: '' } 296 - { id: 71, class: gr64, preferred-register: '' } 297 - { id: 72, class: gr32, preferred-register: '' } 298 - { id: 73, class: gr64, preferred-register: '' } 299 - { id: 74, class: gr64, preferred-register: '' } 300 - { id: 75, class: gr64, preferred-register: '' } 301 - { id: 76, class: gr64, preferred-register: '' } 302 - { id: 77, class: gr64, preferred-register: '' } 303 - { id: 78, class: gr64, preferred-register: '' } 304 - { id: 79, class: gr32, preferred-register: '' } 305 - { id: 80, class: gr32, preferred-register: '' } 306 - { id: 81, class: gr64, preferred-register: '' } 307 - { id: 82, class: gr32, preferred-register: '' } 308 - { id: 83, class: gr64, preferred-register: '' } 309 - { id: 84, class: gr64, preferred-register: '' } 310 - { id: 85, class: gr64, preferred-register: '' } 311 - { id: 86, class: gr32, preferred-register: '' } 312 - { id: 87, class: gr8, preferred-register: '' } 313 - { id: 88, class: gr32, preferred-register: '' } 314 - { id: 89, class: gr8, preferred-register: '' } 315 - { id: 90, class: gr32, preferred-register: '' } 316 - { id: 91, class: gr32, preferred-register: '' } 317 - { id: 92, class: gr32, preferred-register: '' } 318 - { id: 93, class: gr64, preferred-register: '' } 319 - { id: 94, class: gr64, preferred-register: '' } 320 - { id: 95, class: gr64, preferred-register: '' } 321 - { id: 96, class: gr64, preferred-register: '' } 322 - { id: 97, class: gr32, preferred-register: '' } 323 - { id: 98, class: gr64, preferred-register: '' } 324 - { id: 99, class: gr64, preferred-register: '' } 325 - { id: 100, class: gr64, preferred-register: '' } 326 - { id: 101, class: gr32, preferred-register: '' } 327 - { id: 102, class: gr64, preferred-register: '' } 328 - { id: 103, class: gr64, preferred-register: '' } 329 - { id: 104, class: gr64, preferred-register: '' } 330 - { id: 105, class: gr32, preferred-register: '' } 331 - { id: 106, class: gr32, preferred-register: '' } 332 - { id: 107, class: gr32, preferred-register: '' } 333 - { id: 108, class: gr64, preferred-register: '' } 334 - { id: 109, class: gr64, preferred-register: '' } 335 - { id: 110, class: gr32, preferred-register: '' } 336 - { id: 111, class: gr64, preferred-register: '' } 337 - { id: 112, class: gr64, preferred-register: '' } 338 - { id: 113, class: gr64, preferred-register: '' } 339 - { id: 114, class: gr64, preferred-register: '' } 340 - { id: 115, class: gr32, preferred-register: '' } 341 - { id: 116, class: gr32, preferred-register: '' } 342 - { id: 117, class: gr64, preferred-register: '' } 343 - { id: 118, class: gr32, preferred-register: '' } 344 - { id: 119, class: gr32, preferred-register: '' } 345 - { id: 120, class: gr64, preferred-register: '' } 346 - { id: 121, class: gr64, preferred-register: '' } 347 - { id: 122, class: gr32, preferred-register: '' } 348 - { id: 123, class: gr64, preferred-register: '' } 349 - { id: 124, class: gr64, preferred-register: '' } 350 - { id: 125, class: gr64, preferred-register: '' } 351 - { id: 126, class: gr64, preferred-register: '' } 352 - { id: 127, class: gr64, preferred-register: '' } 353 - { id: 128, class: gr32, preferred-register: '' } 354 - { id: 129, class: gr8, preferred-register: '' } 355 - { id: 130, class: gr64, preferred-register: '' } 356 - { id: 131, class: gr64, preferred-register: '' } 357 - { id: 132, class: gr32, preferred-register: '' } 358 - { id: 133, class: gr64, preferred-register: '' } 359 - { id: 134, class: gr32, preferred-register: '' } 360 - { id: 135, class: gr32, preferred-register: '' } 361 - { id: 136, class: gr32, preferred-register: '' } 362 - { id: 137, class: gr64, preferred-register: '' } 363 - { id: 138, class: gr32, preferred-register: '' } 364 - { id: 139, class: gr64, preferred-register: '' } 365 - { id: 140, class: gr64, preferred-register: '' } 366 - { id: 141, class: gr32, preferred-register: '' } 367 - { id: 142, class: gr64, preferred-register: '' } 368 - { id: 143, class: gr64, preferred-register: '' } 369 - { id: 144, class: gr64, preferred-register: '' } 370 - { id: 145, class: gr64, preferred-register: '' } 371 - { id: 146, class: gr32, preferred-register: '' } 372 - { id: 147, class: gr32, preferred-register: '' } 373 - { id: 148, class: gr32, preferred-register: '' } 374 - { id: 149, class: gr32, preferred-register: '' } 375 - { id: 150, class: gr64, preferred-register: '' } 376 - { id: 151, class: gr64, preferred-register: '' } 377 - { id: 152, class: gr64, preferred-register: '' } 378 - { id: 153, class: gr64, preferred-register: '' } 379 - { id: 154, class: gr32, preferred-register: '' } 380 - { id: 155, class: gr64, preferred-register: '' } 381 - { id: 156, class: gr64, preferred-register: '' } 382 - { id: 157, class: gr64, preferred-register: '' } 383 - { id: 158, class: gr64, preferred-register: '' } 384 - { id: 159, class: fr32, preferred-register: '' } 385 - { id: 160, class: gr32, preferred-register: '' } 386 - { id: 161, class: gr32, preferred-register: '' } 387 - { id: 162, class: gr64, preferred-register: '' } 388 - { id: 163, class: gr64, preferred-register: '' } 389 - { id: 164, class: gr64, preferred-register: '' } 390 - { id: 165, class: gr64, preferred-register: '' } 391 - { id: 166, class: gr64, preferred-register: '' } 392liveins: [] 393frameInfo: 394 isFrameAddressTaken: false 395 isReturnAddressTaken: false 396 hasStackMap: false 397 hasPatchPoint: false 398 stackSize: 0 399 offsetAdjustment: 0 400 maxAlignment: 1 401 adjustsStack: true 402 hasCalls: true 403 stackProtector: '' 404 maxCallFrameSize: 4294967295 405 cvBytesOfCalleeSavedRegisters: 0 406 hasOpaqueSPAdjustment: false 407 hasVAStart: false 408 hasMustTailInVarArgFunc: false 409 hasTailCall: false 410 localFrameSize: 0 411 savePoint: '' 412 restorePoint: '' 413fixedStack: [] 414stack: [] 415callSites: [] 416debugValueSubstitutions: [] 417constants: [] 418machineFunctionInfo: {} 419body: | 420 bb.0.bb: 421 successors: %bb.1(0x80000000), %bb.21(0x00000000) 422 423 %0:gr64 = MOV64rm $noreg, 1, $noreg, 0, $noreg :: (load (s64) from `i8 addrspace(1)* addrspace(3)* null`, addrspace 3) 424 %2:gr32 = MOV32rm undef %29:gr64, 1, $noreg, 0, $noreg :: (load (s32) from `i32 addrspace(3)* undef`, addrspace 3) 425 %1:gr32 = COPY %2 426 %4:gr32 = MOV32rm $noreg, 1, $noreg, 0, $noreg :: (load (s32) from `i32 addrspace(3)* null`, addrspace 3) 427 %3:gr32 = COPY %4 428 %9:gr64 = MOV64rm undef %30:gr64, 1, $noreg, 0, $noreg :: (load (s64) from `i8 addrspace(1)* addrspace(3)* undef`, addrspace 3) 429 %5:gr64 = COPY %9 430 %31:gr32 = MOV32r0 implicit-def dead $eflags 431 %32:gr8 = COPY killed %31.sub_8bit 432 TEST8rr killed %32, %32, implicit-def $eflags 433 JCC_1 %bb.21, 5, implicit killed $eflags 434 JMP_1 %bb.1 435 436 bb.1.bb12: 437 successors: %bb.2(0x80000000), %bb.16(0x00000000) 438 439 %52:gr32 = MOV32rm undef %53:gr64, 1, $noreg, 0, $noreg :: (load unordered (s32) from `i32 addrspace(1)* undef`, addrspace 1) 440 %54:gr32 = COPY killed %52 441 %54:gr32 = AND32ri %54, 33554431, implicit-def dead $eflags 442 ADJCALLSTACKDOWN64 0, 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 443 %55:gr64 = COPY killed %0 444 %43:gr64 = COPY killed %9 445 %42:gr64 = COPY %5 446 %44:gr64 = COPY %5 447 %45:gr64 = COPY %5 448 %56:gr64 = COPY killed %5 449 %40:gr64, %41:gr64, %42:gr64, %43:gr64, %44:gr64, %45:gr64, dead %55:gr64, dead %56:gr64 = STATEPOINT 2882400000, 0, 0, target-flags(x86-plt) @barney, 2, 0, 2, 0, 2, 45, 2, 0, 2, 1, 2, 0, 2, 83, 2, 0, 2, 19, 2, 0, 2, 0, %55, 2, 3, %1, 2, 3, %2, 2, 3, %3, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, %4, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, %56, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, %56, 2, 0, %56, 2, 0, %56, 2, 0, %43, 2, 7, 2, 0, 2, 7, 2, 0, 2, 7, 2, 0, 2, 8, undef %40(tied-def 0), undef %41(tied-def 1), %42(tied-def 2), %43(tied-def 3), %44(tied-def 4), %45(tied-def 5), %55(tied-def 6), %56(tied-def 7), 2, 0, 2, 8, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, csr_64, implicit-def $rsp, implicit-def $ssp 450 ADJCALLSTACKUP64 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 451 EH_LABEL <mcsymbol .Ltmp0> 452 ADJCALLSTACKDOWN64 0, 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 453 %57:gr64 = MOV64ri32 -170 454 $edi = COPY killed %54 455 $rsi = COPY %45 456 $rdx = COPY killed %57 457 %51:gr64 = COPY killed %45 458 %46:gr64 = COPY killed %40 459 %48:gr64 = COPY killed %42 460 %50:gr64 = COPY killed %44 461 %47:gr64 = COPY killed %41 462 %49:gr64 = COPY killed %43 463 %46:gr64, %47:gr64, %48:gr64, %49:gr64, %50:gr64, %51:gr64 = STATEPOINT 1, 16, 4, undef %59:gr64, killed $edi, killed $rsi, killed $rdx, undef $ecx, 2, 0, 2, 0, 2, 47, 2, 0, 2, 0, 2, 0, 2, 103, 2, 1, 2, 19, 2, 0, 2, 3, 2, 4278124286, 2, 0, 2, 0, 2, 3, %1, 2, 3, %2, 2, 3, %3, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, %4, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, %48, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, %51, 2, 0, %50, 2, 0, 2, 4278124286, 2, 0, %49, 2, 7, 2, 0, 2, 7, 2, 0, 2, 7, 2, 0, 2, 8, %46(tied-def 0), %47(tied-def 1), %48(tied-def 2), %49(tied-def 3), %50(tied-def 4), %51(tied-def 5), 2, 0, 2, 4278124286, 2, 0, 2, 8, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, csr_64, implicit-def $rsp, implicit-def $ssp, implicit-def dead $xmm0 464 ADJCALLSTACKUP64 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 465 EH_LABEL <mcsymbol .Ltmp1> 466 JMP_1 %bb.2 467 468 bb.2.bb23: 469 successors: %bb.11(0x80000000), %bb.13(0x00000000) 470 471 EH_LABEL <mcsymbol .Ltmp2> 472 ADJCALLSTACKDOWN64 0, 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 473 $rsi = COPY %49 474 $ecx = COPY %4 475 $r8d = COPY %4 476 %64:gr64 = COPY killed %47 477 %65:gr64 = COPY killed %49 478 %66:gr64 = COPY killed %51 479 %63:gr64 = COPY killed %46 480 %67:gr64 = COPY killed %48 481 %70:gr64 = COPY killed %50 482 dead %63:gr64, %64:gr64, %65:gr64, %66:gr64, %67:gr64, dead %70:gr64 = STATEPOINT 1, 16, 5, undef %71:gr64, undef $edi, killed $rsi, undef $edx, killed $ecx, killed $r8d, 2, 0, 2, 0, 2, 53, 2, 0, 2, 8, 2, 0, 2, 153, 2, 4, 2, 19, 2, 0, 2, 4, 2, 4278124286, 2, 7, 2, 0, 2, 0, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, 2, 0, 2, 3, %1, 2, 3, %2, 2, 3, %3, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, %4, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, %67, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, %66, 2, 0, %70, 2, 0, 2, 4278124286, 2, 0, %65, 2, 7, 2, 0, 2, 7, 2, 0, 2, 7, 2, 0, 2, 8, %63(tied-def 0), %64(tied-def 1), %65(tied-def 2), %66(tied-def 3), %67(tied-def 4), 2, 4278124286, 2, 0, %70(tied-def 5), 2, 0, 2, 8, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, csr_64, implicit-def $rsp, implicit-def $ssp, implicit-def dead $eax 483 ADJCALLSTACKUP64 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 484 EH_LABEL <mcsymbol .Ltmp3> 485 JMP_1 %bb.11 486 487 bb.3.bb31: 488 successors: %bb.4(0x00000000), %bb.17(0x80000000) 489 490 EH_LABEL <mcsymbol .Ltmp4> 491 ADJCALLSTACKDOWN64 0, 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 492 $rsi = COPY %76 493 $edx = COPY %4 494 %93:gr64 = COPY killed %78 495 %94:gr64 = COPY killed %77 496 %95:gr64 = COPY killed %76 497 dead %93:gr64, dead %94:gr64, dead %95:gr64 = STATEPOINT 1, 16, 5, undef %96:gr64, undef $edi, killed $rsi, killed $edx, undef $ecx, undef $r8d, 2, 0, 2, 0, 2, 49, 2, 0, 2, 0, 2, 0, 2, 537, 2, 2, 2, 19, 2, 0, 2, 0, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, 2, 0, 2, 3, 2, 4278124286, 2, 3, killed %2, 2, 3, %3, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, %4, 2, 3, 2, 1, 2, 3, 2, 4278124286, 2, 0, %93, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, %94, 2, 0, 2, 4278124286, 2, 0, 2, 4278124286, 2, 0, %95, 2, 7, 2, 0, 2, 7, 2, 0, 2, 7, 2, 0, 2, 5, 2, 4278124286, 2, 0, %93(tied-def 0), %94(tied-def 1), %95(tied-def 2), 2, 0, 2, 5, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, csr_64, implicit-def $rsp, implicit-def $ssp, implicit-def dead $eax 498 ADJCALLSTACKUP64 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 499 EH_LABEL <mcsymbol .Ltmp5> 500 JMP_1 %bb.4 501 502 bb.4.bb33: 503 successors: 504 505 ADJCALLSTACKDOWN64 0, 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 506 %101:gr32 = MOV32ri 15 507 $edi = COPY killed %101 508 STATEPOINT 2882400000, 0, 1, target-flags(x86-plt) @ham, killed $edi, 2, 0, 2, 0, 2, 51, 2, 0, 2, 2, 2, 0, 2, 591, 2, 0, 2, 19, 2, 0, 2, 7, 2, 0, 2, 3, 2, 4278124286, 2, 3, 2, 63, 2, 3, killed %3, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, killed %4, 2, 3, 2, 1, 2, 3, 2, 4278124286, 2, 0, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 7, 2, 0, 2, 7, 2, 0, 2, 7, 2, 0, 2, 7, 2, 0, 2, 7, 2, 0, 2, 7, 2, 0, 2, 7, 2, 0, 2, 1, 2, 1, 2, 16, 2, 0, 2, 0, 2, 0, 2, 1, 2, 4278124286, 2, 0, 2, 1, 0, 0, csr_64, implicit-def $rsp, implicit-def $ssp 509 ADJCALLSTACKUP64 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 510 511 bb.5.bb35: 512 successors: %bb.6(0x40000000), %bb.18(0x40000000) 513 514 EH_LABEL <mcsymbol .Ltmp6> 515 ADJCALLSTACKDOWN64 0, 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 516 $rsi = COPY %76 517 $edx = COPY killed %4 518 %103:gr64 = COPY killed %78 519 %102:gr64 = COPY killed %75 520 %108:gr64 = COPY killed %77 521 %104:gr64 = COPY killed %76 522 %102:gr64, %103:gr64, %104:gr64, dead %108:gr64 = STATEPOINT 1, 16, 5, undef %109:gr64, undef $edi, killed $rsi, killed $edx, undef $ecx, undef $r8d, 2, 0, 2, 0, 2, 49, 2, 0, 2, 8, 2, 0, 2, 300, 2, 2, 2, 19, 2, 0, 2, 0, %104, 2, 3, 2, 4278124286, 2, 0, 2, 0, 2, 3, %1, 2, 3, %2, 2, 3, %3, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, %103, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, %108, 2, 0, 2, 4278124286, 2, 0, 2, 4278124286, 2, 0, %104, 2, 7, 2, 0, 2, 7, 2, 0, 2, 7, 2, 0, 2, 6, %102(tied-def 0), %103(tied-def 1), %104(tied-def 2), 2, 0, %108(tied-def 3), 2, 4278124286, 2, 0, 2, 6, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, csr_64, implicit-def $rsp, implicit-def $ssp, implicit-def dead $eax 523 ADJCALLSTACKUP64 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 524 EH_LABEL <mcsymbol .Ltmp7> 525 JMP_1 %bb.6 526 527 bb.6.bb37: 528 successors: %bb.7(0x40000000), %bb.19(0x40000000) 529 530 EH_LABEL <mcsymbol .Ltmp8> 531 ADJCALLSTACKDOWN64 0, 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 532 %115:gr32 = MOV32ri -7122 533 $r8d = COPY killed %115 534 %120:gr64 = COPY killed %103 535 %114:gr64 = COPY killed %102 536 %114:gr64, dead %120:gr64 = STATEPOINT 1, 16, 5, undef %121:gr64, undef $edi, undef $rsi, undef $edx, undef $ecx, killed $r8d, 2, 0, 2, 0, 2, 45, 2, 0, 2, 8, 2, 0, 2, 308, 2, 0, 2, 19, 2, 0, 2, 0, 2, 0, 2, 3, killed %1, 2, 3, %2, 2, 3, %3, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, %120, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, 2, 4278124286, 2, 0, 2, 4278124286, 2, 0, 2, 4278124286, 2, 0, 2, 4278124286, 2, 7, 2, 0, 2, 7, 2, 0, 2, 7, 2, 0, 2, 4, %114(tied-def 0), 2, 0, %120(tied-def 1), 2, 4278124286, 2, 0, 2, 4, 0, 0, 1, 1, 2, 2, 3, 3, csr_64, implicit-def $rsp, implicit-def $ssp, implicit-def dead $eax 537 ADJCALLSTACKUP64 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 538 EH_LABEL <mcsymbol .Ltmp9> 539 JMP_1 %bb.7 540 541 bb.7.bb41: 542 successors: %bb.9(0x40000000), %bb.8(0x40000000) 543 544 %12:gr64 = COPY %114 545 %126:gr64 = MOV64rm %114, 1, $noreg, 904, $noreg :: (load unordered (s64) from %ir.tmp44, addrspace 1) 546 %127:gr64 = COPY killed %126 547 dead %127:gr64 = NEG64r %127, implicit-def $eflags 548 %14:gr64 = SETB_C64r implicit-def dead $eflags, implicit killed $eflags 549 %128:gr32 = MOV32r0 implicit-def dead $eflags 550 %129:gr8 = COPY killed %128.sub_8bit 551 TEST8rr killed %129, %129, implicit-def $eflags 552 JCC_1 %bb.9, 5, implicit killed $eflags 553 JMP_1 %bb.8 554 555 bb.8.bb50: 556 successors: %bb.9(0x80000000) 557 558 %13:gr64 = COPY killed %114 559 %13:gr64 = nuw ADD64ri32 %13, 904, implicit-def dead $eflags 560 ADJCALLSTACKDOWN64 0, 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 561 $rdi = COPY killed %14 562 $rsi = COPY killed %13 563 CALL64pcrel32 target-flags(x86-plt) @wombat, csr_64, implicit $rsp, implicit $ssp, implicit killed $rdi, implicit killed $rsi, implicit-def $rsp, implicit-def $ssp, implicit-def dead $rax 564 ADJCALLSTACKUP64 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 565 566 bb.9.bb52: 567 successors: %bb.10(0x00000000), %bb.20(0x80000000) 568 569 EH_LABEL <mcsymbol .Ltmp10> 570 ADJCALLSTACKDOWN64 0, 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 571 %131:gr64 = COPY killed %12 572 %131:gr64 = STATEPOINT 1, 16, 5, undef %137:gr64, undef $edi, undef $rsi, undef $edx, undef $ecx, undef $r8d, 2, 0, 2, 0, 2, 49, 2, 0, 2, 0, 2, 0, 2, 335, 2, 2, 2, 19, 2, 0, 2, 0, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, %2, 2, 3, %3, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, 2, 4278124286, 2, 0, 2, 4278124286, 2, 0, 2, 4278124286, 2, 0, 2, 4278124286, 2, 7, 2, 0, 2, 7, 2, 0, 2, 7, 2, 0, 2, 2, %131(tied-def 0), 2, 4278124286, 2, 0, 2, 2, 0, 0, 1, 1, csr_64, implicit-def $rsp, implicit-def $ssp, implicit-def dead $eax 573 ADJCALLSTACKUP64 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 574 EH_LABEL <mcsymbol .Ltmp11> 575 JMP_1 %bb.10 576 577 bb.10.bb54: 578 successors: 579 580 ADJCALLSTACKDOWN64 0, 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 581 %141:gr32 = MOV32ri 10 582 $edi = COPY killed %141 583 STATEPOINT 2882400000, 0, 1, target-flags(x86-plt) @ham, killed $edi, 2, 0, 2, 2, 2, 53, 2, 0, 2, 1, 2, 0, 2, 344, 2, 4, 2, 19, 2, 0, 2, 0, 2, 0, 2, 3, 2, 4278124286, 2, 4, 2, 4278124286, 2, 7, 2, 0, 2, 0, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, killed %2, 2, 3, killed %3, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, 2, 4278124286, 2, 0, 2, 4278124286, 2, 0, 2, 4278124286, 2, 0, 2, 4278124286, 2, 7, 2, 0, 2, 7, 2, 0, 2, 7, 2, 0, 2, 2, 2, 0, 2, 4278124286, 2, 0, 2, 2, 0, 0, 1, 1, csr_64, implicit-def $rsp, implicit-def $ssp 584 ADJCALLSTACKUP64 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 585 586 bb.11.bb56: 587 successors: %bb.12(0x00000000), %bb.14(0x80000000) 588 589 EH_LABEL <mcsymbol .Ltmp12> 590 ADJCALLSTACKDOWN64 0, 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 591 %79:gr32 = MOV32ri 7 592 $rsi = COPY %65 593 $edx = COPY %1 594 $ecx = COPY killed %79 595 $r8d = COPY %3 596 %75:gr64 = COPY killed %64 597 %77:gr64 = COPY killed %66 598 %76:gr64 = COPY killed %65 599 %78:gr64 = COPY killed %67 600 %75:gr64, %76:gr64, %77:gr64, %78:gr64 = STATEPOINT 1, 16, 5, undef %81:gr64, undef $edi, killed $rsi, killed $edx, killed $ecx, killed $r8d, 2, 0, 2, 0, 2, 53, 2, 0, 2, 8, 2, 0, 2, 208, 2, 4, 2, 19, 2, 0, 2, 0, %78, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, 2, 0, 2, 0, 2, 0, 2, 3, %1, 2, 3, %2, 2, 3, %3, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, %4, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, %78, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, %77, 2, 0, 2, 4278124286, 2, 0, 2, 4278124286, 2, 0, %76, 2, 7, 2, 0, 2, 7, 2, 0, 2, 7, 2, 0, 2, 6, %75(tied-def 0), %76(tied-def 1), %77(tied-def 2), %78(tied-def 3), 2, 0, 2, 4278124286, 2, 0, 2, 6, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, csr_64, implicit-def $rsp, implicit-def $ssp, implicit-def dead $eax 601 ADJCALLSTACKUP64 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 602 EH_LABEL <mcsymbol .Ltmp13> 603 JMP_1 %bb.12 604 605 bb.12.bb63: 606 successors: 607 608 ADJCALLSTACKDOWN64 0, 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 609 %161:gr32 = MOV32ri 10 610 $edi = COPY killed %161 611 STATEPOINT 2882400000, 0, 1, target-flags(x86-plt) @ham, killed $edi, 2, 0, 2, 2, 2, 61, 2, 0, 2, 9, 2, 0, 2, 215, 2, 8, 2, 19, 2, 0, 2, 0, 2, 0, 2, 7, 2, 4278124286, 2, 7, 2, 4278124286, 2, 7, 2, 4278124286, 2, 7, 2, 0, 2, 0, 2, 0, 2, 4, 2, 4278124286, 2, 7, 2, 0, 2, 0, 2, 0, 2, 3, killed %1, 2, 3, killed %2, 2, 3, killed %3, 2, 3, 2, 2, 2, 3, 2, 4278124286, 2, 3, killed %4, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, 2, 4278124286, 2, 0, 2, 4278124286, 2, 0, 2, 4278124286, 2, 0, 2, 4278124286, 2, 7, 2, 0, 2, 7, 2, 0, 2, 7, 2, 0, 2, 2, 2, 0, 2, 4278124286, 2, 0, 2, 2, 0, 0, 1, 1, csr_64, implicit-def $rsp, implicit-def $ssp 612 ADJCALLSTACKUP64 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 613 614 bb.13.bb65 (landing-pad): 615 successors: 616 liveins: $rax, $rdx 617 618 EH_LABEL <mcsymbol .Ltmp14> 619 620 bb.14.bb67 (landing-pad): 621 successors: %bb.3(0x2aaaaaab), %bb.15(0x55555555) 622 liveins: $rax, $rdx 623 624 EH_LABEL <mcsymbol .Ltmp15> 625 %86:gr32 = MOV32r0 implicit-def dead $eflags 626 %87:gr8 = COPY killed %86.sub_8bit 627 TEST8rr killed %87, %87, implicit-def $eflags 628 JCC_1 %bb.3, 5, implicit killed $eflags 629 JMP_1 %bb.15 630 631 bb.15.bb67: 632 successors: %bb.5(0x40000001), %bb.26(0x3fffffff) 633 634 %88:gr32 = MOV32r0 implicit-def dead $eflags 635 %89:gr8 = COPY killed %88.sub_8bit 636 TEST8rr killed %89, %89, implicit-def $eflags 637 JCC_1 %bb.5, 5, implicit killed $eflags 638 639 bb.26: 640 successors: %bb.23(0x80000000) 641 642 %163:gr64 = COPY killed %75 643 %164:gr64 = COPY killed %76 644 %165:gr64 = COPY killed %78 645 %166:gr64 = IMPLICIT_DEF 646 JMP_1 %bb.23 647 648 bb.16.bb75 (landing-pad): 649 successors: 650 liveins: $rax, $rdx 651 652 EH_LABEL <mcsymbol .Ltmp16> 653 654 bb.17.bb77 (landing-pad): 655 successors: %bb.22(0x80000000) 656 liveins: $rax, $rdx 657 658 EH_LABEL <mcsymbol .Ltmp17> 659 %162:gr64 = IMPLICIT_DEF 660 JMP_1 %bb.22 661 662 bb.18.bb79 (landing-pad): 663 successors: %bb.23(0x80000000) 664 liveins: $rax, $rdx 665 666 EH_LABEL <mcsymbol .Ltmp18> 667 %19:gr64 = COPY killed %104 668 %20:gr64 = MOV64rm $noreg, 1, $noreg, 8, $gs :: (load (s64) from `i8 addrspace(1)* addrspace(256)* inttoptr (i64 8 to i8 addrspace(1)* addrspace(256)*)`, addrspace 256) 669 %163:gr64 = IMPLICIT_DEF 670 %164:gr64 = COPY killed %19 671 %165:gr64 = IMPLICIT_DEF 672 %166:gr64 = COPY killed %20 673 JMP_1 %bb.23 674 675 bb.19.bb85 (landing-pad): 676 successors: %bb.23(0x80000000) 677 liveins: $rax, $rdx 678 679 EH_LABEL <mcsymbol .Ltmp19> 680 %21:gr64 = COPY killed %114 681 %163:gr64 = COPY killed %21 682 %164:gr64 = IMPLICIT_DEF 683 %165:gr64 = IMPLICIT_DEF 684 %166:gr64 = IMPLICIT_DEF 685 JMP_1 %bb.23 686 687 bb.20.bb90 (landing-pad): 688 successors: %bb.22(0x80000000) 689 liveins: $rax, $rdx 690 691 EH_LABEL <mcsymbol .Ltmp20> 692 %22:gr64 = COPY killed %131 693 %162:gr64 = COPY killed %22 694 JMP_1 %bb.22 695 696 bb.21.bb93: 697 successors: 698 699 ADJCALLSTACKDOWN64 0, 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 700 %33:gr32 = MOV32ri 14 701 $edi = COPY killed %33 702 %36:gr64 = COPY killed %0 703 %39:gr64 = COPY killed %9 704 %34:gr64 = COPY %5 705 %35:gr64 = COPY %5 706 %37:gr64 = COPY %5 707 %38:gr64 = COPY killed %5 708 dead %34:gr64, dead %35:gr64, dead %36:gr64, dead %37:gr64, dead %38:gr64, dead %39:gr64 = STATEPOINT 2882400000, 0, 1, target-flags(x86-plt) @ham, killed $edi, 2, 0, 2, 2, 2, 53, 2, 0, 2, 1, 2, 0, 2, 94, 2, 4, 2, 19, 2, 0, 2, 3, 2, 4278124286, 2, 0, %38, 2, 0, %38, 2, 3, 2, -170, 2, 0, %36, 2, 3, killed %1, 2, 3, killed %2, 2, 3, killed %3, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, killed %4, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, %38, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, %38, 2, 0, %38, 2, 0, %38, 2, 0, %39, 2, 7, 2, 0, 2, 7, 2, 0, 2, 7, 2, 0, 2, 6, %34(tied-def 0), %35(tied-def 1), %36(tied-def 2), %37(tied-def 3), %38(tied-def 4), %39(tied-def 5), 2, 0, 2, 6, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, csr_64, implicit-def $rsp, implicit-def $ssp 709 ADJCALLSTACKUP64 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 710 711 bb.22.bb95: 712 %23:gr64 = COPY killed %162 713 MOV64mr killed %23, 1, $noreg, 928, $noreg, undef %158:gr64 :: (store unordered (s64) into %ir.tmp98, addrspace 1) 714 RET 0, undef $xmm0 715 716 bb.23.bb99: 717 successors: %bb.24(0x00000000), %bb.25(0x80000000) 718 719 %27:gr64 = COPY killed %166 720 %26:gr64 = COPY killed %165 721 %25:gr64 = COPY killed %164 722 %24:gr64 = COPY killed %163 723 %143:gr64 = MOV64rm %24, 1, $noreg, 904, $noreg :: (load unordered (s64) from %ir.1, addrspace 1) 724 %144:gr64 = COPY killed %143 725 dead %144:gr64 = NEG64r %144, implicit-def $eflags 726 %145:gr64 = SETB_C64r implicit-def dead $eflags, implicit killed $eflags 727 EH_LABEL <mcsymbol .Ltmp21> 728 ADJCALLSTACKDOWN64 0, 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 729 $rsi = COPY killed %25 730 %151:gr64 = COPY killed %26 731 %152:gr64 = COPY killed %27 732 %150:gr64 = COPY killed %145 733 %142:gr64 = COPY killed %24 734 dead %142:gr64, dead %150:gr64, dead %151:gr64, dead %152:gr64 = STATEPOINT 1, 16, 5, undef %153:gr64, undef $edi, killed $rsi, undef $edx, undef $ecx, undef $r8d, 2, 0, 2, 0, 2, 49, 2, 0, 2, 0, 2, 0, 2, 572, 2, 2, 2, 19, 2, 0, 2, 0, %150, 2, 3, 2, 4278124286, 2, 7, 2, 0, 2, 3, 2, 4278124286, 2, 3, %2, 2, 3, %3, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, %151, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 7, 2, 0, 2, 7, 2, 0, 2, 7, 2, 0, 2, 7, 2, 0, 2, 7, 2, 0, 2, 0, %152, 2, 7, 2, 0, 2, 4, %142(tied-def 0), %150(tied-def 1), %151(tied-def 2), %152(tied-def 3), 2, 0, 2, 4, 0, 0, 1, 1, 2, 2, 3, 3, csr_64, implicit-def $rsp, implicit-def $ssp, implicit-def dead $eax 735 ADJCALLSTACKUP64 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 736 EH_LABEL <mcsymbol .Ltmp22> 737 JMP_1 %bb.24 738 739 bb.24.bb111: 740 successors: 741 742 ADJCALLSTACKDOWN64 0, 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 743 %160:gr32 = MOV32ri 10 744 $edi = COPY killed %160 745 STATEPOINT 2882400000, 0, 1, target-flags(x86-plt) @ham, killed $edi, 2, 0, 2, 2, 2, 53, 2, 0, 2, 1, 2, 0, 2, 581, 2, 4, 2, 19, 2, 0, 2, 0, 2, 0, 2, 3, 2, 4278124286, 2, 4, 2, 4278124286, 2, 7, 2, 0, 2, 7, 2, 0, 2, 3, 2, 4278124286, 2, 3, killed %2, 2, 3, killed %3, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 0, 2, 4278124286, 2, 3, 2, 4278124286, 2, 3, 2, 4278124286, 2, 7, 2, 0, 2, 7, 2, 0, 2, 7, 2, 0, 2, 7, 2, 0, 2, 7, 2, 0, 2, 0, 2, 4278124286, 2, 7, 2, 0, 2, 2, 2, 0, 2, 4278124286, 2, 0, 2, 2, 0, 0, 1, 1, csr_64, implicit-def $rsp, implicit-def $ssp 746 ADJCALLSTACKUP64 0, 0, implicit-def dead $rsp, implicit-def dead $eflags, implicit-def dead $ssp, implicit $rsp, implicit $ssp 747 748 bb.25.bb114 (landing-pad): 749 successors: %bb.22(0x80000000) 750 liveins: $rax, $rdx 751 752 EH_LABEL <mcsymbol .Ltmp23> 753 %162:gr64 = IMPLICIT_DEF 754 JMP_1 %bb.22 755 756... 757