aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorlizzie <lizzie@eden-emu.dev>2026-07-07 19:53:13 +0200
committercrueter <crueter@eden-emu.dev>2026-07-07 19:53:13 +0200
commitf22fd1714ba40f1444a79a629dbe53e0744c85cd (patch)
tree17611ff47caa0246b38e1ef03d28a0d1b53199d4 /docs
parent6119e8fad2677e731e6105af6063cabe7be069f8 (diff)
[dynarmic] use LinkBlockFast for branches which are guarnateed to be unconditional (or conditionally unconditional) (#4177)
CBZ is basically ```c if (thing) { jump(A); } else { jump(B); } ``` those jumps are locally unconditional so we can add the LinkBlockFast without much repercussions for a small win in JIT opts Signed-off-by: lizzie <lizzie@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4177 Reviewed-by: MaranBr <maranbr@eden-emu.dev> Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Diffstat (limited to 'docs')
-rw-r--r--docs/dynarmic/Design.md5
1 files changed, 3 insertions, 2 deletions
diff --git a/docs/dynarmic/Design.md b/docs/dynarmic/Design.md
index 020cfd65bd..b46e7e5348 100644
--- a/docs/dynarmic/Design.md
+++ b/docs/dynarmic/Design.md
@@ -311,8 +311,9 @@ dispatcher, which will return control to the host.
SetTerm(IR::Term::LinkBlockFast{next})
```
-This terminal instruction jumps to the basic block described by `next` unconditionally.
-This promises guarantees that must be held at runtime - i.e that the program wont hang,
+This terminal instruction jumps to the basic block described by `next` unconditionally. This promises guarantees that must be held at runtime - i.e that the program wont hang,
+
+This is a valid expression if contained within another block (say a `Terminal::If`) and the semantics allow it to be so.
### Terminal: PopRSBHint