diff --git a/bench/lief/optimized/AArch64Feature.ll b/bench/lief/optimized/AArch64Feature.ll index 94241158221..990c232dea9 100644 --- a/bench/lief/optimized/AArch64Feature.ll +++ b/bench/lief/optimized/AArch64Feature.ll @@ -359,24 +359,24 @@ define noundef ptr @_ZN4LIEF3ELF9to_stringENS0_14AArch64Feature7FEATUREE(i32 nou %.add.i.i.sroa.sel = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF3ELF9to_stringENS0_14AArch64Feature7FEATUREE.enums2str, i64 %.add.i.i %2 = load i32, ptr %.add.i.i.sroa.sel, align 8, !tbaa !17 %.not.i.i.i.i.i.i.i.i = icmp slt i32 %2, %0 - %.idx.i.i.i.i.i.i.i.i = select i1 %.not.i.i.i.i.i.i.i.i, i64 16, i64 0 - %.add12.i.i = or disjoint i64 %.idx.i.i.i.i.i.i.i.i, %.add.i.i - %.not.i.i = icmp eq i64 %.add12.i.i, 56 + %.not.i.i = and i1 %.not.i.i.i.i.i.i.i, %.not.i.i.i.i.i.i.i.i br i1 %.not.i.i, label %_ZNK6frozen3mapIN4LIEF3ELF14AArch64Feature7FEATUREEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread, label %3 3: ; preds = %1 - %.ptr14.i.i = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF3ELF9to_stringENS0_14AArch64Feature7FEATUREE.enums2str, i64 %.add12.i.i - %4 = load i32, ptr %.ptr14.i.i, align 8, !tbaa !17 - %.not15.i.i = icmp slt i32 %0, %4 - br i1 %.not15.i.i, label %_ZNK6frozen3mapIN4LIEF3ELF14AArch64Feature7FEATUREEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread, label %5 - -5: ; preds = %3 - %6 = getelementptr inbounds nuw i8, ptr %.ptr14.i.i, i64 8 - %7 = load ptr, ptr %6, align 8, !tbaa !31 + %.idx.i.i.i.i.i.i.i.i.sroa.sel.idx = select i1 %.not.i.i.i.i.i.i.i.i, i64 16, i64 0 + %4 = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF3ELF9to_stringENS0_14AArch64Feature7FEATUREE.enums2str, i64 %.idx.i.i.i.i.i.i.i.i.sroa.sel.idx + %.ptr14.i.i.ptr = getelementptr inbounds nuw i8, ptr %4, i64 %.add.i.i + %5 = load i32, ptr %.ptr14.i.i.ptr, align 8, !tbaa !17 + %.not15.i.i = icmp slt i32 %0, %5 + br i1 %.not15.i.i, label %_ZNK6frozen3mapIN4LIEF3ELF14AArch64Feature7FEATUREEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread, label %6 + +6:; preds = %3 + %7 = getelementptr inbounds nuw i8, ptr %.ptr14.i.i.ptr, i64 8 + %8 = load ptr, ptr %7, align 8, !tbaa !31 br label %_ZNK6frozen3mapIN4LIEF3ELF14AArch64Feature7FEATUREEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread -_ZNK6frozen3mapIN4LIEF3ELF14AArch64Feature7FEATUREEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread: ; preds = %3, %1, %5 - %8 = phi ptr [ %7, %5 ], [ @.str, %1 ], [ @.str, %3 ] +_ZNK6frozen3mapIN4LIEF3ELF14AArch64Feature7FEATUREEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread: ; preds = %3, %1, %6 + %8 = phi ptr [ %8, %6 ], [ @.str, %1 ], [ @.str, %3 ] ret ptr %8 } @@ -892,19 +892,19 @@ define linkonce_odr hidden ptr @_ZNK3fmt3v109formatterIN4LIEF3ELF14AArch64Featur %.add.i.i.sroa.sel.i = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF3ELF9to_stringENS0_14AArch64Feature7FEATUREE.enums2str, i64 %.add.i.i.i %6 = load i32, ptr %.add.i.i.sroa.sel.i, align 8, !tbaa !17 %.not.i.i.i.i.i.i.i.i.i = icmp slt i32 %6, %5 - %.idx.i.i.i.i.i.i.i.i.i = select i1 %.not.i.i.i.i.i.i.i.i.i, i64 16, i64 0 - %.add12.i.i.i = or disjoint i64 %.idx.i.i.i.i.i.i.i.i.i, %.add.i.i.i - %.not.i.i.i = icmp eq i64 %.add12.i.i.i, 56 + %.not.i.i.i = and i1 %.not.i.i.i.i.i.i.i.i, %.not.i.i.i.i.i.i.i.i.i br i1 %.not.i.i.i, label %_ZN3fmt3v106detail5writeIcNS0_8appenderEEET0_S4_PKT_.exit, label %7 7: ; preds = %3 - %.ptr14.i.i.i = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF3ELF9to_stringENS0_14AArch64Feature7FEATUREE.enums2str, i64 %.add12.i.i.i - %8 = load i32, ptr %.ptr14.i.i.i, align 8, !tbaa !17 - %.not15.i.i.i = icmp slt i32 %5, %8 + %.idx.i.i.i.i.i.i.i.i.sroa.sel.idx.i = select i1 %.not.i.i.i.i.i.i.i.i.i, i64 16, i64 0 + %8 = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF3ELF9to_stringENS0_14AArch64Feature7FEATUREE.enums2str, i64 %.idx.i.i.i.i.i.i.i.i.sroa.sel.idx.i + %.ptr14.i.i.ptr.i = getelementptr inbounds nuw i8, ptr %8, i64 %.add.i.i.sroa.sel.v.i + %9 = load i32, ptr %.ptr14.i.i.ptr.i, align 8, !tbaa !17 + %.not15.i.i.i = icmp slt i32 %5, %9 br i1 %.not15.i.i.i, label %_ZN3fmt3v106detail5writeIcNS0_8appenderEEET0_S4_PKT_.exit, label %_ZN4LIEF3ELF9to_stringENS0_14AArch64Feature7FEATUREE.exit _ZN4LIEF3ELF9to_stringENS0_14AArch64Feature7FEATUREE.exit: ; preds = %7 - %9 = getelementptr inbounds nuw i8, ptr %.ptr14.i.i.i, i64 8 + %9 = getelementptr inbounds nuw i8, ptr %.ptr14.i.i.ptr.i, i64 8 %10 = load ptr, ptr %9, align 8, !tbaa !31 %.not.i = icmp eq ptr %10, null br i1 %.not.i, label %11, label %_ZN3fmt3v106detail5writeIcNS0_8appenderEEET0_S4_PKT_.exit diff --git a/bench/lief/optimized/DyldBindingInfo.ll b/bench/lief/optimized/DyldBindingInfo.ll index 48c65b47211..e5d68b437f1 100644 --- a/bench/lief/optimized/DyldBindingInfo.ll +++ b/bench/lief/optimized/DyldBindingInfo.ll @@ -153,24 +153,24 @@ define noundef ptr @_ZN4LIEF5MachO9to_stringENS0_15DyldBindingInfo4TYPEE(i64 nou %.add.i.i.sroa.sel = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF5MachO9to_stringENS0_15DyldBindingInfo4TYPEE.enums2str, i64 %.add.i.i %2 = load i64, ptr %.add.i.i.sroa.sel, align 8, !tbaa !28 %.not.i.i.i.i.i.i.i.i = icmp ult i64 %2, %0 - %.idx.i.i.i.i.i.i.i.i = select i1 %.not.i.i.i.i.i.i.i.i, i64 16, i64 0 - %.add12.i.i = or disjoint i64 %.idx.i.i.i.i.i.i.i.i, %.add.i.i - %.not.i.i = icmp eq i64 %.add12.i.i, 56 + %.not.i.i = and i1 %.not.i.i.i.i.i.i.i, %.not.i.i.i.i.i.i.i.i br i1 %.not.i.i, label %_ZNK6frozen3mapIN4LIEF5MachO15DyldBindingInfo4TYPEEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread, label %3 3: ; preds = %1 - %.ptr14.i.i = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF5MachO9to_stringENS0_15DyldBindingInfo4TYPEE.enums2str, i64 %.add12.i.i - %4 = load i64, ptr %.ptr14.i.i, align 8, !tbaa !28 - %.not15.i.i = icmp ult i64 %0, %4 - br i1 %.not15.i.i, label %_ZNK6frozen3mapIN4LIEF5MachO15DyldBindingInfo4TYPEEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread, label %5 - -5: ; preds = %3 - %6 = getelementptr inbounds nuw i8, ptr %.ptr14.i.i, i64 8 - %7 = load ptr, ptr %6, align 8, !tbaa !36 + %.idx.i.i.i.i.i.i.i.i.sroa.sel.idx = select i1 %.not.i.i.i.i.i.i.i.i, i64 16, i64 0 + %4 = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF5MachO9to_stringENS0_15DyldBindingInfo4TYPEE.enums2str, i64 %.idx.i.i.i.i.i.i.i.i.sroa.sel.idx + %.ptr14.i.i.ptr = getelementptr inbounds nuw i8, ptr %4, i64 %.add.i.i + %5 = load i64, ptr %.ptr14.i.i.ptr, align 8, !tbaa !28 + %.not15.i.i = icmp ult i64 %0, %5 + br i1 %.not15.i.i, label %_ZNK6frozen3mapIN4LIEF5MachO15DyldBindingInfo4TYPEEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread, label %6 + +6:; preds = %3 + %7 = getelementptr inbounds nuw i8, ptr %.ptr14.i.i.ptr, i64 8 + %8 = load ptr, ptr %7, align 8, !tbaa !36 br label %_ZNK6frozen3mapIN4LIEF5MachO15DyldBindingInfo4TYPEEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread -_ZNK6frozen3mapIN4LIEF5MachO15DyldBindingInfo4TYPEEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread: ; preds = %3, %1, %5 - %8 = phi ptr [ %7, %5 ], [ @.str.4, %1 ], [ @.str.4, %3 ] +_ZNK6frozen3mapIN4LIEF5MachO15DyldBindingInfo4TYPEEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread: ; preds = %3, %1, %6 + %8 = phi ptr [ %8, %6 ], [ @.str.4, %1 ], [ @.str.4, %3 ] ret ptr %8 } diff --git a/bench/lief/optimized/ExportInfo.ll b/bench/lief/optimized/ExportInfo.ll index f85c3f7aa99..5ab4d109ff3 100644 --- a/bench/lief/optimized/ExportInfo.ll +++ b/bench/lief/optimized/ExportInfo.ll @@ -1404,24 +1404,24 @@ define noundef ptr @_ZN4LIEF5MachO9to_stringENS0_10ExportInfo4KINDE(i64 noundef %.add.i.i.sroa.sel = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF5MachO9to_stringENS0_10ExportInfo4KINDE.enums2str, i64 %.add.i.i %2 = load i64, ptr %.add.i.i.sroa.sel, align 8, !tbaa !27 %.not.i.i.i.i.i.i.i.i = icmp ult i64 %2, %0 - %.idx.i.i.i.i.i.i.i.i = select i1 %.not.i.i.i.i.i.i.i.i, i64 16, i64 0 - %.add12.i.i = or disjoint i64 %.idx.i.i.i.i.i.i.i.i, %.add.i.i - %.not.i.i = icmp eq i64 %.add12.i.i, 56 + %.not.i.i = and i1 %.not.i.i.i.i.i.i.i, %.not.i.i.i.i.i.i.i.i br i1 %.not.i.i, label %_ZNK6frozen3mapIN4LIEF5MachO10ExportInfo4KINDEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread, label %3 3: ; preds = %1 - %.ptr14.i.i = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF5MachO9to_stringENS0_10ExportInfo4KINDE.enums2str, i64 %.add12.i.i - %4 = load i64, ptr %.ptr14.i.i, align 8, !tbaa !27 - %.not15.i.i = icmp ult i64 %0, %4 - br i1 %.not15.i.i, label %_ZNK6frozen3mapIN4LIEF5MachO10ExportInfo4KINDEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread, label %5 - -5: ; preds = %3 - %6 = getelementptr inbounds nuw i8, ptr %.ptr14.i.i, i64 8 - %7 = load ptr, ptr %6, align 8, !tbaa !89 + %.idx.i.i.i.i.i.i.i.i.sroa.sel.idx = select i1 %.not.i.i.i.i.i.i.i.i, i64 16, i64 0 + %4 = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF5MachO9to_stringENS0_10ExportInfo4KINDE.enums2str, i64 %.idx.i.i.i.i.i.i.i.i.sroa.sel.idx + %.ptr14.i.i.ptr = getelementptr inbounds nuw i8, ptr %4, i64 %.add.i.i + %5 = load i64, ptr %.ptr14.i.i.ptr, align 8, !tbaa !27 + %.not15.i.i = icmp ult i64 %0, %5 + br i1 %.not15.i.i, label %_ZNK6frozen3mapIN4LIEF5MachO10ExportInfo4KINDEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread, label %6 + +6:; preds = %3 + %7 = getelementptr inbounds nuw i8, ptr %.ptr14.i.i.ptr, i64 8 + %8 = load ptr, ptr %7, align 8, !tbaa !89 br label %_ZNK6frozen3mapIN4LIEF5MachO10ExportInfo4KINDEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread -_ZNK6frozen3mapIN4LIEF5MachO10ExportInfo4KINDEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread: ; preds = %3, %1, %5 - %8 = phi ptr [ %7, %5 ], [ @.str.7, %1 ], [ @.str.7, %3 ] +_ZNK6frozen3mapIN4LIEF5MachO10ExportInfo4KINDEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread: ; preds = %3, %1, %6 + %8 = phi ptr [ %8, %6 ], [ @.str.7, %1 ], [ @.str.7, %3 ] ret ptr %8 } @@ -1432,24 +1432,24 @@ define noundef ptr @_ZN4LIEF5MachO9to_stringENS0_10ExportInfo5FLAGSE(i64 noundef %.add.i.i.sroa.sel = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF5MachO9to_stringENS0_10ExportInfo5FLAGSE.enums2str, i64 %.add.i.i %2 = load i64, ptr %.add.i.i.sroa.sel, align 8, !tbaa !20 %.not.i.i.i.i.i.i.i.i = icmp ult i64 %2, %0 - %.idx.i.i.i.i.i.i.i.i = select i1 %.not.i.i.i.i.i.i.i.i, i64 16, i64 0 - %.add12.i.i = or disjoint i64 %.idx.i.i.i.i.i.i.i.i, %.add.i.i - %.not.i.i = icmp eq i64 %.add12.i.i, 56 + %.not.i.i = and i1 %.not.i.i.i.i.i.i.i, %.not.i.i.i.i.i.i.i.i br i1 %.not.i.i, label %_ZNK6frozen3mapIN4LIEF5MachO10ExportInfo5FLAGSEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread, label %3 3: ; preds = %1 - %.ptr14.i.i = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF5MachO9to_stringENS0_10ExportInfo5FLAGSE.enums2str, i64 %.add12.i.i - %4 = load i64, ptr %.ptr14.i.i, align 8, !tbaa !20 - %.not15.i.i = icmp ult i64 %0, %4 - br i1 %.not15.i.i, label %_ZNK6frozen3mapIN4LIEF5MachO10ExportInfo5FLAGSEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread, label %5 - -5: ; preds = %3 - %6 = getelementptr inbounds nuw i8, ptr %.ptr14.i.i, i64 8 - %7 = load ptr, ptr %6, align 8, !tbaa !91 + %.idx.i.i.i.i.i.i.i.i.sroa.sel.idx = select i1 %.not.i.i.i.i.i.i.i.i, i64 16, i64 0 + %4 = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF5MachO9to_stringENS0_10ExportInfo5FLAGSE.enums2str, i64 %.idx.i.i.i.i.i.i.i.i.sroa.sel.idx + %.ptr14.i.i.ptr = getelementptr inbounds nuw i8, ptr %4, i64 %.add.i.i + %5 = load i64, ptr %.ptr14.i.i.ptr, align 8, !tbaa !20 + %.not15.i.i = icmp ult i64 %0, %5 + br i1 %.not15.i.i, label %_ZNK6frozen3mapIN4LIEF5MachO10ExportInfo5FLAGSEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread, label %6 + +6:; preds = %3 + %7 = getelementptr inbounds nuw i8, ptr %.ptr14.i.i.ptr, i64 8 + %8 = load ptr, ptr %7, align 8, !tbaa !91 br label %_ZNK6frozen3mapIN4LIEF5MachO10ExportInfo5FLAGSEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread -_ZNK6frozen3mapIN4LIEF5MachO10ExportInfo5FLAGSEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread: ; preds = %3, %1, %5 - %8 = phi ptr [ %7, %5 ], [ @.str.7, %1 ], [ @.str.7, %3 ] +_ZNK6frozen3mapIN4LIEF5MachO10ExportInfo5FLAGSEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread: ; preds = %3, %1, %6 + %8 = phi ptr [ %8, %6 ], [ @.str.7, %1 ], [ @.str.7, %3 ] ret ptr %8 } @@ -29763,19 +29763,19 @@ define linkonce_odr hidden ptr @_ZNK3fmt3v109formatterIN4LIEF5MachO10ExportInfo5 %.add.i.i.sroa.sel.i = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF5MachO9to_stringENS0_10ExportInfo5FLAGSE.enums2str, i64 %.add.i.i.i %6 = load i64, ptr %.add.i.i.sroa.sel.i, align 8, !tbaa !20 %.not.i.i.i.i.i.i.i.i.i = icmp ult i64 %6, %5 - %.idx.i.i.i.i.i.i.i.i.i = select i1 %.not.i.i.i.i.i.i.i.i.i, i64 16, i64 0 - %.add12.i.i.i = or disjoint i64 %.idx.i.i.i.i.i.i.i.i.i, %.add.i.i.i - %.not.i.i.i = icmp eq i64 %.add12.i.i.i, 56 + %.not.i.i.i = and i1 %.not.i.i.i.i.i.i.i.i, %.not.i.i.i.i.i.i.i.i.i br i1 %.not.i.i.i, label %_ZN3fmt3v106detail5writeIcNS0_8appenderEEET0_S4_PKT_.exit, label %7 7: ; preds = %3 - %.ptr14.i.i.i = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF5MachO9to_stringENS0_10ExportInfo5FLAGSE.enums2str, i64 %.add12.i.i.i - %8 = load i64, ptr %.ptr14.i.i.i, align 8, !tbaa !20 - %.not15.i.i.i = icmp ult i64 %5, %8 + %.idx.i.i.i.i.i.i.i.i.sroa.sel.idx.i = select i1 %.not.i.i.i.i.i.i.i.i.i, i64 16, i64 0 + %8 = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF5MachO9to_stringENS0_10ExportInfo5FLAGSE.enums2str, i64 %.idx.i.i.i.i.i.i.i.i.sroa.sel.idx.i + %.ptr14.i.i.ptr.i = getelementptr inbounds nuw i8, ptr %8, i64 %.add.i.i.i + %9 = load i64, ptr %.ptr14.i.i.ptr.i, align 8, !tbaa !20 + %.not15.i.i.i = icmp ult i64 %5, %9 br i1 %.not15.i.i.i, label %_ZN3fmt3v106detail5writeIcNS0_8appenderEEET0_S4_PKT_.exit, label %_ZN4LIEF5MachO9to_stringENS0_10ExportInfo5FLAGSE.exit _ZN4LIEF5MachO9to_stringENS0_10ExportInfo5FLAGSE.exit: ; preds = %7 - %9 = getelementptr inbounds nuw i8, ptr %.ptr14.i.i.i, i64 8 + %9 = getelementptr inbounds nuw i8, ptr %.ptr14.i.i.ptr.i, i64 8 %10 = load ptr, ptr %9, align 8, !tbaa !91 %.not.i = icmp eq ptr %10, null br i1 %.not.i, label %11, label %_ZN3fmt3v106detail5writeIcNS0_8appenderEEET0_S4_PKT_.exit @@ -29819,19 +29819,19 @@ define linkonce_odr hidden ptr @_ZNK3fmt3v109formatterIN4LIEF5MachO10ExportInfo4 %.add.i.i.sroa.sel.i = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF5MachO9to_stringENS0_10ExportInfo4KINDE.enums2str, i64 %.add.i.i.i %6 = load i64, ptr %.add.i.i.sroa.sel.i, align 8, !tbaa !27 %.not.i.i.i.i.i.i.i.i.i = icmp ult i64 %6, %5 - %.idx.i.i.i.i.i.i.i.i.i = select i1 %.not.i.i.i.i.i.i.i.i.i, i64 16, i64 0 - %.add12.i.i.i = or disjoint i64 %.idx.i.i.i.i.i.i.i.i.i, %.add.i.i.i - %.not.i.i.i = icmp eq i64 %.add12.i.i.i, 56 + %.not.i.i.i = and i1 %.not.i.i.i.i.i.i.i.i, %.not.i.i.i.i.i.i.i.i.i br i1 %.not.i.i.i, label %_ZN3fmt3v106detail5writeIcNS0_8appenderEEET0_S4_PKT_.exit, label %7 7: ; preds = %3 - %.ptr14.i.i.i = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF5MachO9to_stringENS0_10ExportInfo4KINDE.enums2str, i64 %.add12.i.i.i - %8 = load i64, ptr %.ptr14.i.i.i, align 8, !tbaa !27 - %.not15.i.i.i = icmp ult i64 %5, %8 + %.idx.i.i.i.i.i.i.i.i.sroa.sel.idx.i = select i1 %.not.i.i.i.i.i.i.i.i.i, i64 16, i64 0 + %8 = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF5MachO9to_stringENS0_10ExportInfo4KINDE.enums2str, i64 %.idx.i.i.i.i.i.i.i.i.sroa.sel.idx.i + %.ptr14.i.i.ptr.i = getelementptr inbounds nuw i8, ptr %8, i64 %.add.i.i.i + %9 = load i64, ptr %.ptr14.i.i.ptr.i, align 8, !tbaa !27 + %.not15.i.i.i = icmp ult i64 %5, %9 br i1 %.not15.i.i.i, label %_ZN3fmt3v106detail5writeIcNS0_8appenderEEET0_S4_PKT_.exit, label %_ZN4LIEF5MachO9to_stringENS0_10ExportInfo4KINDE.exit _ZN4LIEF5MachO9to_stringENS0_10ExportInfo4KINDE.exit: ; preds = %7 - %9 = getelementptr inbounds nuw i8, ptr %.ptr14.i.i.i, i64 8 + %9 = getelementptr inbounds nuw i8, ptr %.ptr14.i.i.ptr.i, i64 8 %10 = load ptr, ptr %9, align 8, !tbaa !89 %.not.i = icmp eq ptr %10, null br i1 %.not.i, label %11, label %_ZN3fmt3v106detail5writeIcNS0_8appenderEEET0_S4_PKT_.exit diff --git a/bench/lief/optimized/Note.ll b/bench/lief/optimized/Note.ll index f9005102501..1d01d203eb7 100644 --- a/bench/lief/optimized/Note.ll +++ b/bench/lief/optimized/Note.ll @@ -3541,20 +3541,20 @@ _ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm4ESt4lessIiEE4findIjEEPKSt4pairIiS4_ERKT %.ptr13.i.i = getelementptr inbounds nuw i8, ptr @_ZN4LIEF3ELFL13ANDROID_TYPESE, i64 %.add.i.i92 %61 = load i32, ptr %.ptr13.i.i, align 4, !tbaa !73 %.not.i.i.i.i.i.i.i.i93 = icmp slt i32 %61, %1 - %.idx.i.i.i.i.i.i.i.i = select i1 %.not.i.i.i.i.i.i.i.i93, i64 8, i64 0 - %.add12.i.i94 = or disjoint i64 %.idx.i.i.i.i.i.i.i.i, %.add.i.i92 - %.not.i.i95 = icmp eq i64 %.add12.i.i94, 28 - br i1 %.not.i.i95, label %.critedge, label %62 + %.not.i.i94 = and i1 %.not.i.i.i.i.i.i.i91, %.not.i.i.i.i.i.i.i.i93 + br i1 %.not.i.i94, label %.critedge, label %62 62: ; preds = %60 - %.ptr14.i.i = getelementptr inbounds nuw i8, ptr @_ZN4LIEF3ELFL13ANDROID_TYPESE, i64 %.add12.i.i94 - %63 = load i32, ptr %.ptr14.i.i, align 4, !tbaa !73 - %.not15.i.i = icmp slt i32 %1, %63 - br i1 %.not15.i.i, label %.critedge, label %64 - -64: ; preds = %62 - %65 = getelementptr inbounds nuw i8, ptr %.ptr14.i.i, i64 4 - %66 = load i32, ptr %65, align 4, !tbaa !74 + %.idx.i.i.i.i.i.i.i.i = select i1 %.not.i.i.i.i.i.i.i.i93, i64 8, i64 0 + %63 = getelementptr inbounds nuw i8, ptr @_ZN4LIEF3ELFL13ANDROID_TYPESE, i64 %.idx.i.i.i.i.i.i.i.i + %.ptr14.i.i.ptr = getelementptr inbounds nuw i8, ptr %63, i64 %.add.i.i92 + %64 = load i32, ptr %.ptr14.i.i.ptr, align 4, !tbaa !73 + %.not15.i.i = icmp slt i32 %1, %64 + br i1 %.not15.i.i, label %.critedge, label %65 + +65:; preds = %62 + %66 = getelementptr inbounds nuw i8, ptr %.ptr14.i.i.ptr, i64 4 + %67 = load i32, ptr %66, align 4, !tbaa !74 br label %.critedge 67: ; preds = %57 @@ -3655,9 +3655,9 @@ _ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm2ESt4lessIiEE4findIjEEPKSt4pairIiS4_ERKT %102 = load i32, ptr %101, align 4, !tbaa !74 br label %.critedge -.critedge: ; preds = %89, %85, %81, %73, %70, %62, %60, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm4ESt4lessIiEE11lower_boundIjEEPKSt4pairIiS4_ERKT_.exit.thread.i.i, %54, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm14ESt4lessIiEE11lower_boundIjEEPKSt4pairIiS4_ERKT_.exit.thread.i.i, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm14ESt4lessIiEE11lower_boundIjEEPKSt4pairIiS4_ERKT_.exit.i.i, %99, %97, %93, %40, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm2ESt4lessIiEE4findIjEEPKSt4pairIiS4_ERKT_.exit, %94, %75, %64, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm4ESt4lessIiEE4findIjEEPKSt4pairIiS4_ERKT_.exit.thread162, %50, %37 - %.sroa.0140.0 = phi i32 [ %39, %37 ], [ %56, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm4ESt4lessIiEE4findIjEEPKSt4pairIiS4_ERKT_.exit.thread162 ], [ %52, %50 ], [ %66, %64 ], [ %77, %75 ], [ %96, %94 ], [ %102, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm2ESt4lessIiEE4findIjEEPKSt4pairIiS4_ERKT_.exit ], [ 2, %40 ], [ 2, %93 ], [ 2, %97 ], [ 2, %99 ], [ 2, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm14ESt4lessIiEE11lower_boundIjEEPKSt4pairIiS4_ERKT_.exit.i.i ], [ 2, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm14ESt4lessIiEE11lower_boundIjEEPKSt4pairIiS4_ERKT_.exit.thread.i.i ], [ 2, %54 ], [ 2, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm4ESt4lessIiEE11lower_boundIjEEPKSt4pairIiS4_ERKT_.exit.thread.i.i ], [ 2, %60 ], [ 2, %62 ], [ 2, %70 ], [ 2, %73 ], [ %spec.select, %81 ], [ %spec.select171, %85 ], [ %spec.select173, %89 ] - %.sroa.21.0 = phi i64 [ 4294967296, %37 ], [ 4294967296, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm4ESt4lessIiEE4findIjEEPKSt4pairIiS4_ERKT_.exit.thread162 ], [ 4294967296, %50 ], [ 4294967296, %64 ], [ 4294967296, %75 ], [ 4294967296, %94 ], [ 4294967296, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm2ESt4lessIiEE4findIjEEPKSt4pairIiS4_ERKT_.exit ], [ 0, %40 ], [ 0, %93 ], [ 0, %97 ], [ 0, %99 ], [ 0, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm14ESt4lessIiEE11lower_boundIjEEPKSt4pairIiS4_ERKT_.exit.i.i ], [ 0, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm14ESt4lessIiEE11lower_boundIjEEPKSt4pairIiS4_ERKT_.exit.thread.i.i ], [ 0, %54 ], [ 0, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm4ESt4lessIiEE11lower_boundIjEEPKSt4pairIiS4_ERKT_.exit.thread.i.i ], [ 0, %60 ], [ 0, %62 ], [ 0, %70 ], [ 0, %73 ], [ %spec.select170, %81 ], [ %spec.select172, %85 ], [ %spec.select174, %89 ] +.critedge: ; preds = %89, %85, %81, %73, %70, %62, %60, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm4ESt4lessIiEE11lower_boundIjEEPKSt4pairIiS4_ERKT_.exit.thread.i.i, %54, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm14ESt4lessIiEE11lower_boundIjEEPKSt4pairIiS4_ERKT_.exit.thread.i.i, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm14ESt4lessIiEE11lower_boundIjEEPKSt4pairIiS4_ERKT_.exit.i.i, %99, %97, %93, %40, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm2ESt4lessIiEE4findIjEEPKSt4pairIiS4_ERKT_.exit, %94, %75, %65, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm4ESt4lessIiEE4findIjEEPKSt4pairIiS4_ERKT_.exit.thread162, %50, %37 + %.sroa.0140.0 = phi i32 [ %39, %37 ], [ %56, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm4ESt4lessIiEE4findIjEEPKSt4pairIiS4_ERKT_.exit.thread161 ], [ %52, %50 ], [ %67, %65 ], [ %77, %76 ], [ %96, %95 ], [ %103, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm2ESt4lessIiEE4findIjEEPKSt4pairIiS4_ERKT_.exit ], [ 2, %40 ], [ 2, %94 ], [ 2, %98 ], [ 2, %100 ], [ 2, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm14ESt4lessIiEE11lower_boundIjEEPKSt4pairIiS4_ERKT_.exit.i.i ], [ 2, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm14ESt4lessIiEE11lower_boundIjEEPKSt4pairIiS4_ERKT_.exit.thread.i.i ], [ 2, %54 ], [ 2, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm4ESt4lessIiEE11lower_boundIjEEPKSt4pairIiS4_ERKT_.exit.thread.i.i ], [ 2, %60 ], [ 2, %62 ], [ 2, %71 ], [ 2, %74 ], [ %spec.select, %82 ], [ %spec.select170, %86 ], [ %spec.select172, %90 ] + %.sroa.21.0 = phi i64 [ 4294967296, %37 ], [ 4294967296, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm4ESt4lessIiEE4findIjEEPKSt4pairIiS4_ERKT_.exit.thread161 ], [ 4294967296, %50 ], [ 4294967296, %65 ], [ 4294967296, %76 ], [ 4294967296, %95 ], [ 4294967296, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm2ESt4lessIiEE4findIjEEPKSt4pairIiS4_ERKT_.exit ], [ 0, %40 ], [ 0, %94 ], [ 0, %98 ], [ 0, %100 ], [ 0, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm14ESt4lessIiEE11lower_boundIjEEPKSt4pairIiS4_ERKT_.exit.i.i ], [ 0, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm14ESt4lessIiEE11lower_boundIjEEPKSt4pairIiS4_ERKT_.exit.thread.i.i ], [ 0, %54 ], [ 0, %_ZNK6frozen3mapIiN4LIEF3ELF4Note4TYPEELm4ESt4lessIiEE11lower_boundIjEEPKSt4pairIiS4_ERKT_.exit.thread.i.i ], [ 0, %60 ], [ 0, %62 ], [ 0, %71 ], [ 0, %74 ], [ %spec.select170, %82 ], [ %spec.select171, %86 ], [ %spec.select173, %90 ] %103 = load ptr, ptr %5, align 8, !tbaa !77 %104 = icmp eq ptr %103, %6 br i1 %104, label %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.thread.i.i, label %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i diff --git a/bench/lief/optimized/X86Feature.ll b/bench/lief/optimized/X86Feature.ll index 9521ed21e63..027ad45b0d9 100644 --- a/bench/lief/optimized/X86Feature.ll +++ b/bench/lief/optimized/X86Feature.ll @@ -1684,24 +1684,24 @@ define noundef ptr @_ZN4LIEF3ELF9to_stringENS0_11X86Features4FLAGE(i32 noundef % %.add.i.i.sroa.sel = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF3ELF9to_stringENS0_11X86Features4FLAGE.enums2str, i64 %.add.i.i %2 = load i32, ptr %.add.i.i.sroa.sel, align 8, !tbaa !141 %.not.i.i.i.i.i.i.i.i = icmp slt i32 %2, %0 - %.idx.i.i.i.i.i.i.i.i = select i1 %.not.i.i.i.i.i.i.i.i, i64 16, i64 0 - %.add12.i.i = or disjoint i64 %.idx.i.i.i.i.i.i.i.i, %.add.i.i - %.not.i.i = icmp eq i64 %.add12.i.i, 56 + %.not.i.i = and i1 %.not.i.i.i.i.i.i.i, %.not.i.i.i.i.i.i.i.i br i1 %.not.i.i, label %_ZNK6frozen3mapIN4LIEF3ELF11X86Features4FLAGEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread, label %3 3: ; preds = %1 - %.ptr14.i.i = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF3ELF9to_stringENS0_11X86Features4FLAGE.enums2str, i64 %.add12.i.i - %4 = load i32, ptr %.ptr14.i.i, align 8, !tbaa !141 - %.not15.i.i = icmp slt i32 %0, %4 - br i1 %.not15.i.i, label %_ZNK6frozen3mapIN4LIEF3ELF11X86Features4FLAGEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread, label %5 + %.idx.i.i.i.i.i.i.i.i.sroa.sel.idx = select i1 %.not.i.i.i.i.i.i.i.i, i64 16, i64 0 + %4 = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF3ELF9to_stringENS0_11X86Features4FLAGE.enums2str, i64 %.idx.i.i.i.i.i.i.i.i.sroa.sel.idx + %.ptr14.i.i.ptr = getelementptr inbounds nuw i8, ptr %4, i64 %.add.i.i + %5 = load i32, ptr %.ptr14.i.i.ptr, align 8, !tbaa !141 + %.not15.i.i = icmp slt i32 %0, %5 + br i1 %.not15.i.i, label %_ZNK6frozen3mapIN4LIEF3ELF11X86Features4FLAGEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread, label %6 5: ; preds = %3 - %6 = getelementptr inbounds nuw i8, ptr %.ptr14.i.i, i64 8 + %6 = getelementptr inbounds nuw i8, ptr %.ptr14.i.i.ptr, i64 8 %7 = load ptr, ptr %6, align 8, !tbaa !142 br label %_ZNK6frozen3mapIN4LIEF3ELF11X86Features4FLAGEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread _ZNK6frozen3mapIN4LIEF3ELF11X86Features4FLAGEPKcLm3ESt4lessIS4_EE4findIS4_EEPKSt4pairIS4_S6_ERKT_.exit.thread: ; preds = %3, %1, %5 - %8 = phi ptr [ %7, %5 ], [ @.str.1, %1 ], [ @.str.1, %3 ] + %8 = phi ptr [ %7, %6 ], [ @.str.1, %1 ], [ @.str.1, %3 ] ret ptr %8 } @@ -2507,19 +2507,19 @@ define linkonce_odr hidden ptr @_ZNK3fmt3v109formatterIN4LIEF3ELF11X86Features4F %.add.i.i.sroa.sel.i = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF3ELF9to_stringENS0_11X86Features4FLAGE.enums2str, i64 %.add.i.i.i %6 = load i32, ptr %.add.i.i.sroa.sel.i, align 8, !tbaa !141 %.not.i.i.i.i.i.i.i.i.i = icmp slt i32 %6, %5 - %.idx.i.i.i.i.i.i.i.i.i = select i1 %.not.i.i.i.i.i.i.i.i.i, i64 16, i64 0 - %.add12.i.i.i = or disjoint i64 %.idx.i.i.i.i.i.i.i.i.i, %.add.i.i.i - %.not.i.i.i = icmp eq i64 %.add12.i.i.i, 56 + %.not.i.i.i = and i1 %.not.i.i.i.i.i.i.i.i, %.not.i.i.i.i.i.i.i.i.i br i1 %.not.i.i.i, label %_ZN3fmt3v106detail5writeIcNS0_8appenderEEET0_S4_PKT_.exit, label %7 7: ; preds = %3 - %.ptr14.i.i.i = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF3ELF9to_stringENS0_11X86Features4FLAGE.enums2str, i64 %.add12.i.i.i - %8 = load i32, ptr %.ptr14.i.i.i, align 8, !tbaa !141 - %.not15.i.i.i = icmp slt i32 %5, %8 + %.idx.i.i.i.i.i.i.i.i.sroa.sel.idx.i = select i1 %.not.i.i.i.i.i.i.i.i.i, i64 16, i64 0 + %8 = getelementptr inbounds nuw i8, ptr @__const._ZN4LIEF3ELF9to_stringENS0_11X86Features4FLAGE.enums2str, i64 %.idx.i.i.i.i.i.i.i.i.sroa.sel.idx.i + %.ptr14.i.i.ptr.i = getelementptr inbounds nuw i8, ptr %8, i64 %.add.i.i.sroa.sel.v.i + %9 = load i32, ptr %.ptr14.i.i.ptr.i, align 8, !tbaa !141 + %.not15.i.i.i = icmp slt i32 %5, %9 br i1 %.not15.i.i.i, label %_ZN3fmt3v106detail5writeIcNS0_8appenderEEET0_S4_PKT_.exit, label %_ZN4LIEF3ELF9to_stringENS0_11X86Features4FLAGE.exit _ZN4LIEF3ELF9to_stringENS0_11X86Features4FLAGE.exit: ; preds = %7 - %9 = getelementptr inbounds nuw i8, ptr %.ptr14.i.i.i, i64 8 + %9 = getelementptr inbounds nuw i8, ptr %.ptr14.i.i.ptr.i, i64 8 %10 = load ptr, ptr %9, align 8, !tbaa !142 %.not.i = icmp eq ptr %10, null br i1 %.not.i, label %11, label %_ZN3fmt3v106detail5writeIcNS0_8appenderEEET0_S4_PKT_.exit diff --git a/bench/llvm/optimized/DAGCombiner.ll b/bench/llvm/optimized/DAGCombiner.ll index 668b78e48fd..8a20494ee4b 100644 --- a/bench/llvm/optimized/DAGCombiner.ll +++ b/bench/llvm/optimized/DAGCombiner.ll @@ -190826,15 +190826,13 @@ _ZN4llvm5SDLocD2Ev.exit215: ; preds = %_ZN4llvm5SDLocC2EPK %259 = and i1 %245, %258 %260 = icmp ne i32 %257, 57 %.not185 = or i1 %245, %260 - %261 = select i1 %.not185, i32 1, i32 -1 - %262 = load i32, ptr %11, align 4, !tbaa !1774 - %263 = icmp eq i32 %262, 2 - %264 = and i1 %263, %224 - %265 = and i1 %spec.select.i.i.i.i.i.i.i.i, %263 - %266 = select i1 %265, i32 -1, i32 1 - %267 = mul nsw i32 %266, %261 - %268 = icmp slt i32 %267, 0 - %269 = select i1 %268, i32 57, i32 56 + %261 = load i32, ptr %11, align 4, !tbaa !1774 + %262 = icmp eq i32 %261, 2 + %263 = and i1 %262, %224 + %264 = select i1 %263, i32 -1, i32 1 + %265 = and i1 %spec.select.i.i.i.i.i.i.i.i, %262 + %266 = xor i1 %.not185, %265 + %267 = select i1 %266, i32 56, i32 57 call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %20) #38 %270 = getelementptr inbounds nuw i8, ptr %250, i64 32 %271 = load i32, ptr %270, align 8, !tbaa !491 @@ -190867,8 +190865,8 @@ _ZN4llvm5APIntC2ERKS0_.exit222: ; preds = %276 br i1 %279, label %_ZN4llvm5APInt15clearUnusedBitsEv.exit.i.i.i, label %289 _ZN4llvm5APInt15clearUnusedBitsEv.exit.i.i.i: ; preds = %_ZN4llvm5APIntC2ERKS0_.exit222, %276 - %.sink = phi ptr [ %20, %276 ], [ %21, %_ZN4llvm5APIntC2ERKS0_.exit222 ] - %280 = phi i32 [ %277, %276 ], [ %.pr, %_ZN4llvm5APIntC2ERKS0_.exit222 ] + %.sink = phi ptr [ %20, %274 ], [ %21, %_ZN4llvm5APIntC2ERKS0_.exit222 ] + %280 = phi i32 [ %277, %274 ], [ %.pr, %_ZN4llvm5APIntC2ERKS0_.exit222 ] %.pre = load i64, ptr %.sink, align 8, !tbaa !13 %281 = xor i64 %.pre, -1 %282 = add nuw nsw i32 %280, 63 @@ -190928,17 +190926,18 @@ _ZN4llvm5APIntD2Ev.exit: ; preds = %295 br label %_ZN4llvm5APIntD2Ev.exit223 _ZN4llvm5APIntD2Ev.exit223: ; preds = %_ZN4llvm5APIntD2Ev.exit.thread338, %302, %299, %_ZN4llvm5APIntD2Ev.exit, %_ZN4llvm5APIntD2Ev.exit.thread, %_ZN4llvm5APIntC2ERKS0_.exit - %303 = sub nsw i32 0, %261 - %304 = select i1 %264, i32 %303, i32 %261 - %305 = mul nsw i32 %304, %266 - %306 = icmp slt i32 %305, 0 - %307 = load i32, ptr %225, align 8, !tbaa !491 - %308 = icmp ult i32 %307, 65 - br i1 %306, label %309, label %326 + %303 = sub nsw i32 0, %264 + %304 = select i1 %.not185, i32 %264, i32 %301 + %303 = sub nsw i32 0, %302 + %304 = select i1 %265, i32 %303, i32 %302 + %305 = icmp slt i32 %304, 0 + %306 = load i32, ptr %225, align 8, !tbaa !491 + %307 = icmp ult i32 %306, 65 + br i1 %305, label %308, label %325 309: ; preds = %_ZN4llvm5APIntD2Ev.exit223 - store i32 %307, ptr %228, align 8, !tbaa !491 - br i1 %308, label %310, label %312 + store i32 %306, ptr %228, align 8, !tbaa !491 + br i1 %307, label %310, label %312 310: ; preds = %309 %311 = load i64, ptr %20, align 8, !tbaa !13 @@ -190991,8 +190990,8 @@ _ZN4llvm5APIntD2Ev.exit226: ; preds = %318 br label %_ZN4llvm5APIntD2Ev.exit227 326: ; preds = %_ZN4llvm5APIntD2Ev.exit223 - store i32 %307, ptr %227, align 8, !tbaa !491 - br i1 %308, label %327, label %329 + store i32 %306, ptr %227, align 8, !tbaa !491 + br i1 %307, label %327, label %329 327: ; preds = %326 %328 = load i64, ptr %20, align 8, !tbaa !13 @@ -191085,7 +191084,7 @@ _ZN4llvm5SDLocC2EPKNS_6SDNodeE.exit233: ; preds = %_ZN4llvm5APIntD2Ev. store i32 %.fca.1.extract24, ptr %.sroa.430.0..sroa_idx, align 8, !tbaa !72 store ptr %.sroa.0271.0, ptr %26, align 8, !tbaa !94 store i32 %230, ptr %.sroa.422.0..sroa_idx, align 8, !tbaa !72 - %362 = call { ptr, i32 } @_ZN4llvm12SelectionDAG7getNodeEjRKNS_5SDLocENS_3EVTENS_7SDValueES5_(ptr noundef nonnull align 8 dereferenceable(952) %356, i32 noundef %269, ptr noundef nonnull align 8 dereferenceable(12) %24, i16 %.sroa.0.0.copyload.i239, ptr %.sroa.21.0.copyload.i241, ptr noundef nonnull byval(%"class.llvm::SDValue") align 8 %25, ptr noundef nonnull byval(%"class.llvm::SDValue") align 8 %26) #38 + %362 = call { ptr, i32 } @_ZN4llvm12SelectionDAG7getNodeEjRKNS_5SDLocENS_3EVTENS_7SDValueES5_(ptr noundef nonnull align 8 dereferenceable(952) %356, i32 noundef %267, ptr noundef nonnull align 8 dereferenceable(12) %24, i16 %.sroa.0.0.copyload.i239, ptr %.sroa.21.0.copyload.i241, ptr noundef nonnull byval(%"class.llvm::SDValue") align 8 %25, ptr noundef nonnull byval(%"class.llvm::SDValue") align 8 %26) #38 %.fca.0.extract10 = extractvalue { ptr, i32 } %362, 0 %.fca.1.extract11 = extractvalue { ptr, i32 } %362, 1 %363 = load ptr, ptr %0, align 8, !tbaa !97 @@ -191169,14 +191168,14 @@ _ZN4llvm19SmallPtrSetImplBaseD2Ev.exit: ; preds = %_ZN4llvm11SmallVect br label %389 389: ; preds = %35, %_ZNK4llvm6SDNode9hasOneUseEv.exit, %30, %388 - %.1 = phi i1 [ %.2, %388 ], [ false, %30 ], [ false, %_ZNK4llvm6SDNode9hasOneUseEv.exit ], [ false, %35 ] + %.1 = phi i1 [ %.2, %387 ], [ false, %30 ], [ false, %_ZNK4llvm6SDNode9hasOneUseEv.exit ], [ false, %35 ] call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %8) #38 call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %7) #38 call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %6) #38 br label %390 390: ; preds = %2, %389 - %.0 = phi i1 [ %.1, %389 ], [ false, %2 ] + %.0 = phi i1 [ %.1, %388 ], [ false, %2 ] ret i1 %.0 } diff --git a/scripts/setup_pre_commit_patch.sh b/scripts/setup_pre_commit_patch.sh index c5409e09ef4..d20535f8518 100755 --- a/scripts/setup_pre_commit_patch.sh +++ b/scripts/setup_pre_commit_patch.sh @@ -2,7 +2,7 @@ set -euo pipefail shopt -s inherit_errexit -export GITHUB_PATCH_ID="/llvm-project/commit/" +export GITHUB_PATCH_ID=llvm/llvm-project/pull/139109 export COMPTIME_MODE=0 # Please rebase manually