From 2b8c046b1339e7724c8c445ec7297f08e82563f1 Mon Sep 17 00:00:00 2001 From: "C. Guy Yarvin" Date: Thu, 7 Dec 2017 08:49:55 -0800 Subject: [PATCH] Cache ++blow. --- include/c/motes.h | 1 + jets/f/ut_mint.c | 31 +++++++++++++++++++++---------- 2 files changed, 22 insertions(+), 10 deletions(-) diff --git a/include/c/motes.h b/include/c/motes.h index 5b5ec4d020..24d85cc020 100644 --- a/include/c/motes.h +++ b/include/c/motes.h @@ -85,6 +85,7 @@ # define c3__blog c3_s4('b','l','o','g') # define c3__bloq c3_s4('b','l','o','q') # define c3__blot c3_s4('b','l','o','t') +# define c3__blow c3_s4('b','l','o','w') # define c3__blue c3_s4('b','l','u','e') # define c3__blur c3_s4('b','l','u','r') # define c3__bndl c3_s4('b','n','d','l') diff --git a/jets/f/ut_mint.c b/jets/f/ut_mint.c index c5c0943c57..c893926d25 100644 --- a/jets/f/ut_mint.c +++ b/jets/f/ut_mint.c @@ -828,17 +828,28 @@ case c3__cold: p_gen = u3t(gen); _mint_used(); { - u3_noun von = u3i_molt(u3k(van), u3x_sam, u3k(sut), 0); - u3_noun gat = u3j_hook(von, "blow"); - u3_noun pro; - pro = u3n_kick_on(u3i_molt(gat, - u3x_sam_2, - u3k(gol), - u3x_sam_3, - u3k(p_gen), - 0)); - return pro; + c3_m fun_m = 144 + c3__blow; + u3_noun vrf = u3r_at(u3qfu_van_vrf, van); + u3_noun pro = u3z_find_4(fun_m, vrf, sut, gol, p_gen); + + if ( u3_none != pro ) { + return pro; + } + else { + u3_noun von = u3i_molt(u3k(van), u3x_sam, u3k(sut), 0); + u3_noun gat = u3j_hook(von, "blow"); + u3_noun pro; + + pro = u3n_kick_on(u3i_molt(gat, + u3x_sam_2, + u3k(gol), + u3x_sam_3, + u3k(p_gen), + 0)); + + return u3z_save_4(fun_m, vrf, sut, gol, p_gen, pro); + } } case c3__zpcm: u3x_cell(u3t(gen), &p_gen, &q_gen);