diff options
| author | Marshall Lochbaum <mwlochbaum@gmail.com> | 2021-12-25 16:51:51 -0500 |
|---|---|---|
| committer | Marshall Lochbaum <mwlochbaum@gmail.com> | 2021-12-25 16:51:51 -0500 |
| commit | 932dee725c0f2667eef9c69a6720b6c0dfb1adb1 (patch) | |
| tree | 9480bb0a7e0a541f7281d17409b8df7a2ff72109 /src | |
| parent | 334af0539ed52eb9c58e582ae5ff2bf25839aab9 (diff) | |
Fix modification of assignment indices since their location has moved
Diffstat (limited to 'src')
| -rw-r--r-- | src/c.bqn | 7 |
1 files changed, 4 insertions, 3 deletions
@@ -319,12 +319,13 @@ Parse ← {r‿vn‿i‿e‿def←𝕨⋄nv←≠vn # Object code generation: numbers oc ordered by source location (after rev) oi ao←48+(0⌈(1+⊑bG)-˜ai⊏𝕩+ma+mm)∾-hd # Assignment opcode - or←⍋oi←idor∾g⊏˜∾⟨cn,cn,bk,bk,hq,api,2/l,at,dr,qp,al+1,al+1,oa+1⌈oa⊏os,fl,rt⟩ + or←⍋oi←idor∾g⊏˜∾oil←⟨cn,cn,bk,bk,hq,api,2/l,at,dr,qp,al+1,al+1,oa+1⌈oa⊏os,fl,rt⟩ oc←or⊏∾idoc∾⟨0¨cn,ob,1¨bk,1+↕≠bk,43¨hq,44¨api,⥊⍉(11+l⊏aa)≍ll,ao,6¨dr,42¨qp,66¨al,vi-˜(al-1)⊏𝕩 24+oa⊏r,16+(fn/dy+2×fm⌈1=ny)+4×0<fa⊏er,¯1↓rc←7+nf⟩ # Instruction source positions - MI←-⊸↓˜⟜≠∾g⊏˜⊢⋄oj←(rt-∘≠⊸⌽oi⌊1-˜≠i)Mi∾⟨at-1‿0/˜≠¨ai‿hj,oa,fa⟩ - ind←⟨oj,oj Mi fa⊏IT»¬ro∨ma⟩(¯1∾˜or⊏(≠rt)⊸⌽)⊸⊏¨i‿e + ui←8‿13‿14(⊏⟜(»+`)+⟜↕¨⊏)(≠idor)∾≠¨oil # at,oa+…,fl locations + oj←(g⊏˜∾⟨at-1‿0/˜≠¨ai‿hj,oa,fa⟩)⌾((∾ui)⊸⊏)oi + ind←⟨oj,(g⊏˜fa⊏IT»¬ro∨ma)⌾((¯1⊑ui)⊸⊏)oj⟩(¯1∾˜or⊸⊏)⊸⊏¨i‿e # Indices for multi-body blocks cm∨↩(fx∧1≠cw)∨0<ut↩ut⌾(ch⊸/)ch # Dyad- and inverse-only generate as multiple cj←/cv←1+1=ciw←cw⊏˜ci←/cm # Number of copies |
