1.1--- a/draft/a-bit-of-risc.org Thu Jun 06 23:15:38 2024 -0400
1.2+++ b/draft/a-bit-of-risc.org Sat Jun 08 00:21:48 2024 -0400
1.3@@ -1,6 +1,6 @@
1.4 #+title: A Bit of RISC
1.5 #+date: [2024-03-11 Mon]
1.6-#+setupfile: ../../../clean.theme
1.7+#+setupfile: ../../clean.theme
1.8 I recently picked up [[https://dl.acm.org/doi/10.5555/2462741][Hacker's Delight]] and having a lot of fun with
1.9 it. It's a collection of bit-manipulation tricks collected by hackers
1.10 over many years. You can flip open pretty much anywhere in the book
1.11@@ -292,20 +292,20 @@
1.12
1.13 #+RESULTS: instruction-list
1.14 #+begin_example
1.15-((XOR . #<FUNCTION (LAMBDA ()) {10077C774B}>)
1.16- (OR . #<FUNCTION (LAMBDA ()) {10077C777B}>)
1.17- (AND . #<FUNCTION (LAMBDA ()) {10077C77AB}>)
1.18- (MULI . #<FUNCTION (LAMBDA (I)) {10077C77DB}>)
1.19- (ADDI . #<FUNCTION (LAMBDA (I)) {10077C780B}>)
1.20- (CMPGE . #<FUNCTION (LAMBDA ()) {10077C783B}>)
1.21- (CMPGT . #<FUNCTION (LAMBDA ()) {10077C786B}>)
1.22- (CMPLE . #<FUNCTION (LAMBDA ()) {10077C789B}>)
1.23- (CMPLT . #<FUNCTION (LAMBDA ()) {10077C78CB}>)
1.24- (CMPNE . #<FUNCTION (LAMBDA ()) {10077C78FB}>)
1.25- (CMPEQ . #<FUNCTION (LAMBDA ()) {10077C792B}>)
1.26- (REM . #<FUNCTION (LAMBDA ()) {10077C795B}>)
1.27- (DIV . #<FUNCTION (LAMBDA ()) {10077C79AB}>)
1.28- (MUL . #<FUNCTION (LAMBDA ()) {10077C79EB}>)
1.29- (SUB . #<FUNCTION (LAMBDA ()) {10077C7A1B}>)
1.30- (ADD . #<FUNCTION (LAMBDA ()) {10077C7A4B}>))
1.31+((XOR . #<FUNCTION (LAMBDA ()) {100E4ED81B}>)
1.32+ (OR . #<FUNCTION (LAMBDA ()) {100E4ED84B}>)
1.33+ (AND . #<FUNCTION (LAMBDA ()) {100E4ED87B}>)
1.34+ (MULI . #<FUNCTION (LAMBDA (I)) {100E4ED8AB}>)
1.35+ (ADDI . #<FUNCTION (LAMBDA (I)) {100E4ED8DB}>)
1.36+ (CMPGE . #<FUNCTION (LAMBDA ()) {100E4ED90B}>)
1.37+ (CMPGT . #<FUNCTION (LAMBDA ()) {100E4ED93B}>)
1.38+ (CMPLE . #<FUNCTION (LAMBDA ()) {100E4ED96B}>)
1.39+ (CMPLT . #<FUNCTION (LAMBDA ()) {100E4ED99B}>)
1.40+ (CMPNE . #<FUNCTION (LAMBDA ()) {100E4ED9CB}>)
1.41+ (CMPEQ . #<FUNCTION (LAMBDA ()) {100E4ED9FB}>)
1.42+ (REM . #<FUNCTION (LAMBDA ()) {100E4EDA2B}>)
1.43+ (DIV . #<FUNCTION (LAMBDA ()) {100E4EDA7B}>)
1.44+ (MUL . #<FUNCTION (LAMBDA ()) {100E4EDABB}>)
1.45+ (SUB . #<FUNCTION (LAMBDA ()) {100E4EDAEB}>)
1.46+ (ADD . #<FUNCTION (LAMBDA ()) {100E4EDB1B}>))
1.47 #+end_example