Skip to content

Instantly share code, notes, and snippets.

@ruuda
Created May 21, 2017 20:52
Show Gist options
  • Save ruuda/8d434ff2ce5192e018ff784bb074aa68 to your computer and use it in GitHub Desktop.
Save ruuda/8d434ff2ce5192e018ff784bb074aa68 to your computer and use it in GitHub Desktop.
Fire program for LLVM stack machine
r = sin(t * 0.2 + i * 7) + 0.4 * sin(t + i * 11) + 0.1 * sin(7 * t + i * 13) / 1.5
h = min(r, 0.5) * 2.0 * 0.32
s = sin(0.75pi * r + 0.25pi)
v = r
r = (sin(t * 0.2 + i * 7) + 0.4 * sin(t + i * 11) + 0.1 * sin(7 * t + i * 13)) * 0.666
h = min(r, 0.5) * 0.32
s = sin(0.75pi * r + 0.25pi)
v = r
LDS t : 1
LDC 0.2
MUL
LDS i : 1
LDC 7.0
MUL
ADD
SIN
LDC 0.4
LDS t :
LDS i
LDC 11.0
MUL
ADD
SIN
MUL
ADD
LDC 0.1
LDC 7.0
LDS t
MUL
LDC 13.0
LDS i
MUL
ADD
SIN
MUL
ADD
LDC 0.666
MUL
// Stack is now [t, i, r]
LDC
LDC 0.5
MIN
LDC 0.32
MUL
// Stack is now [t, i, r, h]
LDC 0.75pi
LDS r
MUL
LDC 0.25pi
ADD
SIN
// Stack is now [t, i, r, h, s]
LDS r
// Stack is now [t, i, r, h, s, v]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment