Skip to content

Instantly share code, notes, and snippets.

View tomaka's full-sized avatar

Pierre Krieger tomaka

  • Freelance
  • Berlin, Germany
View GitHub Profile
function __ZN5hello20h898a0b35c963e11dgaaE() {
var $$sreg$field = 0, $$sreg$field2 = 0, $$sreg$index1 = 0, $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $f = 0, $v = 0, label = 0, sp = 0;
sp = STACKTOP;
STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abort();
$0 = sp;
$f = sp + 16|0;
$v = sp + 8|0;
$$sreg$field = HEAP32[$0>>2]|0;
$$sreg$index1 = ((($0)) + 4|0);
$$sreg$field2 = HEAP32[$$sreg$index1>>2]|0;
; ModuleID = 'test.0.rs'
target datalayout = "e-p:32:32-i64:64-v128:32:128-n32-S128"
target triple = "asmjs-unknown-emscripten"
%"1.std::ffi::c_str::CStr" = type { i8 }
%"2.core::raw::Slice<u8>" = type { i8*, i32 }
@const3150 = internal unnamed_addr constant i32 1, align 4
@byte_str3151 = internal unnamed_addr constant [4 x i8] c"foo\00", align 1
@const3152 = internal unnamed_addr constant { i8*, i32 } { i8* getelementptr inbounds ([4 x i8], [4 x i8]* @byte_str3151, i32 0, i32 0), i32 4 }, align 4
; ModuleID = 'test.0.rs'
target datalayout = "e-p:32:32-i64:64-v128:32:128-n32-S128"
target triple = "asmjs-unknown-emscripten"
%"1.std::ffi::c_str::CStr" = type { i8 }
%"2.core::raw::Slice<u8>" = type { i8*, i32 }
@const3150 = internal unnamed_addr constant i32 1, align 4
@byte_str3151 = internal unnamed_addr constant [4 x i8] c"foo\00", align 1
@const3152 = internal unnamed_addr constant { i8*, i32 } { i8* getelementptr inbounds ([4 x i8], [4 x i8]* @byte_str3151, i32 0, i32 0), i32 4 }, align 4
; ModuleID = 'test.0.rs'
target datalayout = "e-p:32:32-i64:64-v128:32:128-n32-S128"
target triple = "asmjs-unknown-emscripten"
%str_slice = type { i8*, i32 }
%"2.core::fmt::Formatter" = type { i32, i32, i8, %"2.core::option::Option<usize>", %"2.core::option::Option<usize>", { i8*, void (i8*)** }, %"2.core::slice::Iter<core::fmt::ArgumentV1>", { %"2.core::fmt::ArgumentV1"*, i32 } }
%"2.core::option::Option<usize>" = type { i32, [0 x i32], [1 x i32] }
%"2.core::slice::Iter<core::fmt::ArgumentV1>" = type { %"2.core::fmt::ArgumentV1"*, %"2.core::fmt::ArgumentV1"*, %"2.core::marker::PhantomData<&'static core::fmt::ArgumentV1>" }
%"2.core::fmt::ArgumentV1" = type { %"2.core::fmt::Void"*, i8 (%"2.core::fmt::Void"*, %"2.core::fmt::Formatter"*)* }
%"2.core::fmt::Void" = type {}
; ModuleID = 'test.0.rs'
target datalayout = "e-p:32:32-i64:64-v128:32:128-n32-S128"
target triple = "asmjs-unknown-emscripten"
%str_slice = type { i8*, i32 }
%"2.core::fmt::Formatter" = type { i32, i32, i8, %"2.core::option::Option<usize>", %"2.core::option::Option<usize>", { i8*, void (i8*)** }, %"2.core::slice::Iter<core::fmt::ArgumentV1>", { %"2.core::fmt::ArgumentV1"*, i32 } }
%"2.core::option::Option<usize>" = type { i32, [0 x i32], [1 x i32] }
%"2.core::slice::Iter<core::fmt::ArgumentV1>" = type { %"2.core::fmt::ArgumentV1"*, %"2.core::fmt::ArgumentV1"*, %"2.core::marker::PhantomData<&'static core::fmt::ArgumentV1>" }
%"2.core::fmt::ArgumentV1" = type { %"2.core::fmt::Void"*, i8 (%"2.core::fmt::Void"*, %"2.core::fmt::Formatter"*)* }
%"2.core::fmt::Void" = type {}
; ModuleID = 'test.0.rs'
target datalayout = "e-p:32:32-i64:64-v128:32:128-n32-S128"
target triple = "asmjs-unknown-emscripten"
%str_slice = type { i8*, i32 }
%"2.core::fmt::Write::write_fmt::Adapter<collections::string::String>" = type { %"3.collections::string::String"* }
%"3.collections::string::String" = type { %"3.collections::vec::Vec<u8>" }
%"3.collections::vec::Vec<u8>" = type { %"5.alloc::raw_vec::RawVec<u8>", i32 }
%"5.alloc::raw_vec::RawVec<u8>" = type { %"2.core::ptr::Unique<u8>", i32 }
%"2.core::ptr::Unique<u8>" = type { %"2.core::nonzero::NonZero<*const u8>", %"2.core::marker::PhantomData<u8>" }
@tomaka
tomaka / Cargo.toml
Last active September 26, 2015 16:35
[package]
name = "test"
version = "0.0.1"
authors = ["Pierre Krieger <pierre.krieger1708@gmail.com>"]
build = "build.rs"
[dependencies]
libc = "*"
[build-dependencies]
use glium::{self, Surface};
use glium::backend::Context;
use glium::index::PrimitiveType;
use glium::texture::SrgbTexture2dArray;
use std::cell::{RefCell, RefMut};
use std::default::Default;
use std::rc::Rc;
use std::ops::Range;
@tomaka
tomaka / License
Last active July 10, 2022 12:54
FXAA with glium
This code is under the MIT license.
The GLSL code was taken from https://github.com/mattdesl/glsl-fxaa and is also under the MIT license.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
@tomaka
tomaka / gist:623781c5af6ebbc5dcfe
Last active February 15, 2020 06:24
Gfx vs glium comparison table
Gfx and glium are Rust libraries that aim to provide a "rusty" abstraction over graphics programming APIs.
Both may look similar, and one of the questions that gets asked frequently on IRC is "what are the differences between gfx and glium?". Here is a comparison table:
| Gfx | Glium
-------------------------------------|-------------------------------------------------------------------------------------------------------------------|--------------------------------
URL | <https://github.com/gfx-rs/gfx-rs> | <https://github.com/tomaka/glium>
History | Papers since Oct 2013. Really started in June 2014. | Private/confidential from Feb 201