about summary refs log tree commit diff stats
path: root/mu_instructions
diff options
context:
space:
mode:
authorKartik Agaram <vc@akkartik.com>2020-09-30 23:46:43 -0700
committerKartik Agaram <vc@akkartik.com>2020-09-30 23:46:43 -0700
commit8d32a9aab9915d78e63d316fcb74fa1afa404798 (patch)
treedac822434e46a849637ab7b85ddc017c91250f90 /mu_instructions
parentbc3ebe820bee2450d2c902ea1aefeb03ff89234c (diff)
downloadmu-8d32a9aab9915d78e63d316fcb74fa1afa404798.tar.gz
6915 - a new family of Mu branch instructions
The realization of commit 6916 means that we should be using jump-if-addr*
after comparing floats. Which is super ugly. Let's create aliases to them
called jump-if-float*.
Diffstat (limited to 'mu_instructions')
-rw-r--r--mu_instructions6
1 files changed, 6 insertions, 0 deletions
diff --git a/mu_instructions b/mu_instructions
index 2013c764..27fe295c 100644
--- a/mu_instructions
+++ b/mu_instructions
@@ -177,6 +177,12 @@ break-if-addr>= label             => "0f 83/jump-if-addr>= " label ":break/disp3
 loop-if-addr>=                    => "0f 83/jump-if-addr>= loop/disp32"
 loop-if-addr>= label              => "0f 83/jump-if-addr>= " label ":loop/disp32"
 
+Similar float variants like `break-if-loop<` are aliases for the corresponding
+`addr` equivalents. The x86 instruction set stupidly has floating-point
+operations only update a subset of flags.
+
+---
+
 In the following instructions types are provided for clarity even if they must
 be provided in an earlier 'var' declaration.