Skip to content

Instantly share code, notes, and snippets.

@jgouly
Created September 11, 2014 17:44
Show Gist options
  • Save jgouly/bd6fcef37cebecb80db4 to your computer and use it in GitHub Desktop.
Save jgouly/bd6fcef37cebecb80db4 to your computer and use it in GitHub Desktop.
; ModuleID = 'rust-out.0.rs'
target datalayout = "e-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
; Function Attrs: nounwind readnone uwtable
define i64 @"_ZN14_$LP$$RP$.Many6switch20h6ca796108d9da36e9aaE"({}* noalias nocapture readonly, i64) unnamed_addr #0 {
entry-block:
%2 = icmp eq i64 %1, -4643972648086929078
br i1 %2, label %e1, label %else-block
e1:
br label %join6
else-block: ; preds = %entry-block
%3 = icmp eq i64 %1, -6187814810684708707
br i1 %3, label %e2, label %else-block1
e2:
br label %join6
else-block1: ; preds = %else-block
%4 = icmp eq i64 %1, -2452956007213319029
br i1 %4, label %e3, label %else-block2
e3:
br label %join6
else-block2: ; preds = %else-block1
%5 = icmp eq i64 %1, -1884880784014257656
;%. = select i1 %5, i64 -1884880784014257656, i64 -8405392928520026739
br i1 %5, label %e4, label %e5
;ret i64 %.
e4:
br label %join6
e5:
br label %join6
join6: ; preds = %else-block1, %else-block, %entry-block
%sret_slot.0 = phi i64 [ -4643972648086929078, %e1 ], [ -6187814810684708707, %e2 ], [ -2452956007213319029, %e3 ], [-1884880784014257656, %e4] ,[-8405392928520026739, %e5]
ret i64 %sret_slot.0
}
attributes #0 = { nounwind readnone uwtable "split-stack" }
attributes #1 = { nounwind uwtable "split-stack" }
attributes #2 = { nounwind readnone "split-stack" }
;;;;;;;;;;;;;;;
;; optimised ;;
;;;;;;;;;;;;;;;
; ModuleID = 'eddy.ll'
target datalayout = "e-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
; Function Attrs: nounwind readnone uwtable
define i64 @"_ZN14_$LP$$RP$.Many6switch20h6ca796108d9da36e9aaE"({}* noalias nocapture readonly, i64) unnamed_addr #0 {
entry-block:
switch i64 %1, label %e5 [
i64 -4643972648086929078, label %join6
i64 -6187814810684708707, label %e2
i64 -2452956007213319029, label %e3
i64 -1884880784014257656, label %e4
]
e2: ; preds = %entry-block
br label %join6
e3: ; preds = %entry-block
br label %join6
e4: ; preds = %entry-block
br label %join6
e5: ; preds = %entry-block
br label %join6
join6: ; preds = %entry-block, %e5, %e4, %e3, %e2
%sret_slot.0 = phi i64 [ %1, %e2 ], [ %1, %e3 ], [ %1, %e4 ], [ -8405392928520026739, %e5 ], [ -4643972648086929078, %entry-block ]
ret i64 %sret_slot.0
}
attributes #0 = { nounwind readnone uwtable "split-stack" }
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment