Skip to content

Instantly share code, notes, and snippets.

View solson's full-sized avatar

Scott Olson solson

  • Canada/Ireland
  • 11:31 (UTC +01:00)
View GitHub Profile
fn(arg0: &[closure@closure-no-captures.rs:7:14: 7:39 a:&i32], arg1: i32) -> i32 {
let var0: i32; // b
let tmp0: ();
let tmp1: i32;
let tmp2: i32;
bb0: {
var0 = arg0;
tmp1 = (*(*arg0).0);
tmp2 = var0;
fn(arg0: &[closure@closure-args.rs:8:14: 8:39 a:&i32], arg1: i32) -> i32 {
let var0: i32; // b
let tmp0: ();
let tmp1: i32;
let tmp2: i32;
bb0: {
var0 = arg1;
tmp1 = (*(*arg0).0);
tmp2 = var0;
@solson
solson / diff
Created December 30, 2015 05:17
--- old 2015-12-29 23:16:32.027926372 -0600
+++ new 2015-12-29 23:16:42.975400757 -0600
@@ -1,22 +1,22 @@
-fn(arg0: &[closure@closure-no-captures.rs:7:14: 7:39 a:&i32], arg1: i32) -> i32 {
+fn(arg0: &[closure@closure-args.rs:8:14: 8:39 a:&i32], arg1: i32) -> i32 {
let var0: i32; // b
let tmp0: ();
let tmp1: i32;
let tmp2: i32;
error: internal compiler error: Type mismatch in function call of (i1 (i32*, i32*)*:
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @_ZN3cmp5impls14i32.PartialOrd2le20h61123ef2ceb20e9d0HAE(i32* noalias readonly dereferenceable(4), i32* noalias readonly dereferenceable(4)) unnamed_addr #1 {
entry-block:
%self = alloca i32*
%other = alloca i32*
store i32* %0, i32** %self, align 8
store i32* %1, i32** %other, align 8
%2 = load i32*, i32** %self, align 8, !nonnull !0
%3 = load i32, i32* %2, align 4
--- old/factorial_iterative.mir 2015-12-29 21:12:27.958598615 -0600
+++ factorial_iterative.mir 2015-12-31 12:45:45.623293678 -0600
@@ -1,103 +1,103 @@
fn(arg0: usize) -> usize {
let var0: usize; // n
let mut var1: usize; // prod
let var2: (); // _result
let mut var3: core::ops::Range<usize>; // iter
let var4: usize; // x
let tmp0: ();
--- old/factorial_fold.mir 2015-12-29 21:12:27.958598615 -0600
+++ factorial_fold.mir 2015-12-31 12:45:45.623293678 -0600
@@ -1,35 +1,35 @@
fn(arg0: usize) -> usize {
let var0: usize; // n
let tmp0: ();
let tmp1: core::ops::Range<usize>;
let tmp2: usize;
let tmp3: [closure@test.rs:37:20: 37:38];
--- old/factorial_fold.mir 2015-12-29 21:12:27.958598615 -0600
+++ factorial_fold.mir 2015-12-31 16:48:40.633604119 -0600
@@ -1,35 +1,35 @@
fn(arg0: usize) -> usize {
let var0: usize; // n
let tmp0: ();
let tmp1: core::ops::Range<usize>;
let tmp2: usize;
let tmp3: [closure@test.rs:37:20: 37:38];
fn() -> [i32; 1] {
let var0: i32; // x
let tmp0: ();
let tmp1: i32;
let tmp2: i32;
bb0: {
tmp1 = 0;
var0 = tmp1;
goto -> bb3;
@solson
solson / -
Created January 4, 2016 02:49
├── glium (0.13.2)
│ ├── backtrace (0.1.8)
│ │ ├── backtrace-sys (0.1.3)
│ │ │ └── libc (0.2.4)
│ │ ├── cfg-if (0.1.0)
│ │ ├── dbghelp-sys (0.2.0)
│ │ │ ├── winapi (0.2.5)
│ │ │ └── winapi-build (0.1.1)
│ │ ├── debug-builders (0.1.0)
│ │ ├── kernel32-sys (0.2.1)