; ModuleID = 'unchecked_shifts.d7deabc1-cgu.0' source_filename = "unchecked_shifts.d7deabc1-cgu.0" target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" ; Function Attrs: mustprogress nofree norecurse nosync nounwind nonlazybind readnone willreturn uwtable define i32 @unchecked_shl_unsigned_same(i32 %a, i32 %b) unnamed_addr #0 { start: %0 = shl i32 %a, %b ret i32 %0 } ; Function Attrs: mustprogress nofree norecurse nosync nounwind nonlazybind readnone willreturn uwtable define i16 @unchecked_shl_unsigned_smaller(i16 %a, i32 %b) unnamed_addr #0 { start: %_2.i.i = icmp ugt i32 %b, 65535 %_5.i.i = trunc i32 %b to i16 %.sroa.3.0.i.i = select i1 %_2.i.i, i16 undef, i16 %_5.i.i %0 = shl i16 %a, %.sroa.3.0.i.i ret i16 %0 } ; Function Attrs: mustprogress nofree norecurse nosync nounwind nonlazybind readnone willreturn uwtable define i64 @unchecked_shl_unsigned_bigger(i64 %a, i32 %b) unnamed_addr #0 { start: %0 = zext i32 %b to i64 %1 = shl i64 %a, %0 ret i64 %1 } ; Function Attrs: mustprogress nofree norecurse nosync nounwind nonlazybind readnone willreturn uwtable define i32 @unchecked_shr_signed_same(i32 %a, i32 %b) unnamed_addr #0 { start: %0 = ashr i32 %a, %b ret i32 %0 } ; Function Attrs: mustprogress nofree norecurse nosync nounwind nonlazybind readnone willreturn uwtable define i16 @unchecked_shr_signed_smaller(i16 %a, i32 %b) unnamed_addr #0 { start: %_2.i.i = icmp ugt i32 %b, 32767 %_5.i.i = trunc i32 %b to i16 %.sroa.3.0.i.i = select i1 %_2.i.i, i16 undef, i16 %_5.i.i %0 = ashr i16 %a, %.sroa.3.0.i.i ret i16 %0 } ; Function Attrs: mustprogress nofree norecurse nosync nounwind nonlazybind readnone willreturn uwtable define i64 @unchecked_shr_signed_bigger(i64 %a, i32 %b) unnamed_addr #0 { start: %0 = zext i32 %b to i64 %1 = ashr i64 %a, %0 ret i64 %1 } attributes #0 = { mustprogress nofree norecurse nosync nounwind nonlazybind readnone willreturn uwtable "probe-stack"="__rust_probestack" "target-cpu"="x86-64" } !llvm.module.flags = !{!0, !1} !0 = !{i32 7, !"PIC Level", i32 2} !1 = !{i32 2, !"RtLibUseGOT", i32 1}