summaryrefslogtreecommitdiff
path: root/cpu/instructions/overview.txt
diff options
context:
space:
mode:
Diffstat (limited to 'cpu/instructions/overview.txt')
-rw-r--r--cpu/instructions/overview.txt30
1 files changed, 19 insertions, 11 deletions
diff --git a/cpu/instructions/overview.txt b/cpu/instructions/overview.txt
index 280c845..6ec50d3 100644
--- a/cpu/instructions/overview.txt
+++ b/cpu/instructions/overview.txt
@@ -21,18 +21,26 @@ Dynamic VLIW
size_of_instructions // size so it won't have to parse each to find where the immediate references start
for each:
opcode
- num_instructions
- for each * params per instruction:
+ size_of_params // size for similar reason as to the above
+ if size_of_params == 0:
+ num_instructions
+ for each param:
+ value (see ./parameter.txt for details)
+
+ has_shared_immediate_references
+ if has_shared_immediate_references:
+ size_of_immediate_references
+ for each:
value
- size_of_immediate_references
- for each:
- value
- num_flag_save_definitions
- for each:
- instruction index in queue
- which flags to save (1 bit per flag type available)
- where to save them
- bitwise offset in the destination (log2(bits_for_current_mode) bits)
+
+ has_flag_save_definitions
+ if has_flag_save_definitions:
+ num_flag_save_definitions
+ for each:
+ instruction index in queue
+ which flags to save (1 bit per flag type available)
+ where to save them
+ bitwise offset in the destination (log2(bits_for_current_mode) bits)
A minimum of <n> instructions per queue must be accepted by all CPUs
TODO: define n