aboutsummaryrefslogtreecommitdiffhomepage
path: root/search.desc
diff options
context:
space:
mode:
authorjohannst <johannst@users.noreply.github.com>2024-12-07 01:01:45 +0000
committerjohannst <johannst@users.noreply.github.com>2024-12-07 01:01:45 +0000
commit5289cbf5331dfd0d0c2242a7e7c8030aa4032c7e (patch)
tree418e8eebbfe7129d5082efa730e161edd3743161 /search.desc
parent52a0308e18fbbec25f0e9f31ec8f11589a35f351 (diff)
downloadjuicebox-asm-5289cbf5331dfd0d0c2242a7e7c8030aa4032c7e.tar.gz
juicebox-asm-5289cbf5331dfd0d0c2242a7e7c8030aa4032c7e.zip
deploy: 9c3c3fd923d894d2351eb22129ea693eb98fa8ff
Diffstat (limited to 'search.desc')
-rw-r--r--search.desc/add/add-desc-0-.js1
-rw-r--r--search.desc/bf_vm/bf_vm-desc-0-.js1
-rw-r--r--search.desc/fib/fib-desc-0-.js1
-rw-r--r--search.desc/juicebox_asm/juicebox_asm-desc-0-.js1
-rw-r--r--search.desc/tiny_vm/tiny_vm-desc-0-.js1
5 files changed, 5 insertions, 0 deletions
diff --git a/search.desc/add/add-desc-0-.js b/search.desc/add/add-desc-0-.js
new file mode 100644
index 0000000..9ea9e40
--- /dev/null
+++ b/search.desc/add/add-desc-0-.js
@@ -0,0 +1 @@
+searchState.loadedDescShard("add", 0, "Add example.") \ No newline at end of file
diff --git a/search.desc/bf_vm/bf_vm-desc-0-.js b/search.desc/bf_vm/bf_vm-desc-0-.js
new file mode 100644
index 0000000..0387065
--- /dev/null
+++ b/search.desc/bf_vm/bf_vm-desc-0-.js
@@ -0,0 +1 @@
+searchState.loadedDescShard("bf_vm", 0, "Brainfuck VM.") \ No newline at end of file
diff --git a/search.desc/fib/fib-desc-0-.js b/search.desc/fib/fib-desc-0-.js
new file mode 100644
index 0000000..9b6e749
--- /dev/null
+++ b/search.desc/fib/fib-desc-0-.js
@@ -0,0 +1 @@
+searchState.loadedDescShard("fib", 0, "Fibonacci example.") \ No newline at end of file
diff --git a/search.desc/juicebox_asm/juicebox_asm-desc-0-.js b/search.desc/juicebox_asm/juicebox_asm-desc-0-.js
new file mode 100644
index 0000000..dbf833c
--- /dev/null
+++ b/search.desc/juicebox_asm/juicebox_asm-desc-0-.js
@@ -0,0 +1 @@
+searchState.loadedDescShard("juicebox_asm", 0, "A simple <code>x64</code> jit assembler with a minimal runtime to …\n<code>x64</code> jit assembler.\nType representing a 16 bit immediate.\nType representing a 32 bit immediate.\nType representing a 64 bit immediate.\nType representing an 8 bit immediate.\nAn indirect memory operand, eg <code>mov [rax], rcx</code>.\nAn indirect memory operand in the form base + index, eg …\nAn indirect memory operand with additional displacement, …\nA label which is used as target for jump instructions.\nType representing a memory operand.\nA memory operand with a word (16 bit) size hint.\nA memory operand with a dword (32 bit) size hint.\nA memory operand with a qword (64 bit) size hint.\nA memory operand with a word (8 bit) size hint.\nDefinition of 16 bit registers.\nDefinition of 32 bit registers.\nDefinition of 64 bit registers.\nDefinition of 8 bit registers.\nA simple <code>mmap</code>ed runtime with executable pages.\nAdd the block of <code>code</code> to the runtime and a get function …\nBind the Label to the current location.\nUnmaps the code page. This invalidates all the function …\nDump the code added so far to the runtime into a file …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCreate a memory with size hint from a raw memory operand.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCreate a memory with size hint from a raw memory operand.\nReturns the argument unchanged.\nCreate a memory with size hint from a raw memory operand.\nCreate a memory with size hint from a raw memory operand.\nReturns the argument unchanged.\nTrait definitions of various instructions.\nCalls <code>U::from(self)</code>.\nCalls <code>U::from(self)</code>.\nCalls <code>U::from(self)</code>.\nCalls <code>U::from(self)</code>.\nCalls <code>U::from(self)</code>.\nCalls <code>U::from(self)</code>.\nCalls <code>U::from(self)</code>.\nCalls <code>U::from(self)</code>.\nCalls <code>U::from(self)</code>.\nCalls <code>U::from(self)</code>.\nCalls <code>U::from(self)</code>.\nCalls <code>U::from(self)</code>.\nCalls <code>U::from(self)</code>.\nCalls <code>U::from(self)</code>.\nCalls <code>U::from(self)</code>.\nCalls <code>U::from(self)</code>.\nConsume the assembler and get the emitted code.\nCreate a new <code>x64</code> jit assembler.\nCreate a new <code>unbound</code> Label.\nCreate a new Runtime.\nEmit a <code>nop</code> instruction.\nEmit a <code>ret</code> instruction.\nCreate a new Runtime which also generates static perf …\nTrait for <code>add</code> instruction kinds.\nTrait for <code>call</code> instruction kinds.\nTrait for <code>cmp</code> instruction kinds.\nTrait for <code>dec</code> instruction kinds.\nTrait for <code>inc</code> instruction kinds.\nTrait for <code>jmp</code> instruction kinds.\nTrait for <code>jnz</code> instruction kinds.\nTrait for <code>jz</code> instruction kinds.\nTrait for <code>mov</code> instruction kinds.\nTrait for <code>pop</code> instruction kinds.\nTrait for <code>push</code> instruction kinds.\nTrait for <code>test</code> instruction kinds.\nTrait for <code>xor</code> instruction kinds.\nEmit an add instruction.\nEmit a call instruction.\nEmit a (conditional) move if not zero instruction.\nEmit a (conditional) move if zero instruction.\nEmit a compare instruction.\nEmit a decrement instruction.\nEmit a increment instruction.\nEmit an unconditional jump instruction.\nEmit a conditional jump if not zero instruction (<code>ZF = 0</code>).\nEmit a conditional jump if zero instruction (<code>ZF = 1</code>).\nEmit an move instruction.\nEmit a pop instruction.\nEmit a push instruction.\nEmit a logical compare instruction.\nEmit a xor instruction.") \ No newline at end of file
diff --git a/search.desc/tiny_vm/tiny_vm-desc-0-.js b/search.desc/tiny_vm/tiny_vm-desc-0-.js
new file mode 100644
index 0000000..06fb5d0
--- /dev/null
+++ b/search.desc/tiny_vm/tiny_vm-desc-0-.js
@@ -0,0 +1 @@
+searchState.loadedDescShard("tiny_vm", 0, "TinyVm example.\nAdd the register to the register <code>reg1 += reg2</code>.\nAdd the immediate to the register <code>reg += imm</code>.\nJump unconditional (absolute addressing) <code>pc = disp</code>.\nJump if the register is zero (absolute addressing) …\nA minial fixup utility to implement jump labels when …\nHalt the VM.\nLoad a value from the memory (absolute addressing) into …\nLoad the immediate value into the register <code>reg = imm</code>.\nA guest physical address.\nStore a value from the register into the memory (absolute …\nThe instructions for the <code>TinyVm</code>.\nThe registers for the <code>TinyVm</code>.\nThe <code>TinyVm</code> virtual machine state.\nBind the <code>Fixup</code> to the current location of <code>prog</code> and resolve …\nDump the VM state to stdout.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nRun in interpreter mode until the next <code>TinyInsn::Halt</code> …\nCalls <code>U::from(self)</code>.\nCalls <code>U::from(self)</code>.\nCalls <code>U::from(self)</code>.\nCalls <code>U::from(self)</code>.\nCalls <code>U::from(self)</code>.\nRun in JIT mode until the next <code>TinyInsn::Halt</code> instruction …\nGenerate a guest program to compute the fiibonacci …\nGenerate a simple count down loop to crunch some …\nGenerate a test program for the jit.\nCreate a new <code>TinyVm</code> and initialize the instruction memory …\nCreate a new <code>Fixup</code> at the current pc.\nRead guest data memory.\nRead guest register.\nWrite guest data memory.\nWrite guest register.") \ No newline at end of file