diff options
author | Greg Brown <greg.brown@cl.cam.ac.uk> | 2022-02-18 10:45:35 +0000 |
---|---|---|
committer | Greg Brown <greg.brown@cl.cam.ac.uk> | 2022-02-18 10:45:35 +0000 |
commit | ad5322977632dd2dcec7cb75082d5c128b4a8bd5 (patch) | |
tree | 82844d4d25a6017713ed0da0a54f4a16d55f8fe9 /src/Helium | |
parent | 60b201d0c8752b84194753bb72eee777bf245fe3 (diff) |
Remove declare case of Procedure.
Diffstat (limited to 'src/Helium')
-rw-r--r-- | src/Helium/Data/Pseudocode/Core.agda | 1 | ||||
-rw-r--r-- | src/Helium/Instructions/Base.agda | 8 | ||||
-rw-r--r-- | src/Helium/Semantics/Denotational/Core.agda | 1 |
3 files changed, 4 insertions, 6 deletions
diff --git a/src/Helium/Data/Pseudocode/Core.agda b/src/Helium/Data/Pseudocode/Core.agda index 4728e44..4dbf552 100644 --- a/src/Helium/Data/Pseudocode/Core.agda +++ b/src/Helium/Data/Pseudocode/Core.agda @@ -253,7 +253,6 @@ module Code {o} (Σ : Vec Type o) where data Procedure Γ where _∙end : Statement Γ → Procedure Γ - declare : ∀ {t} → Expression Γ t → Procedure (t ∷ Γ) → Procedure Γ infixl 6 _<<_ infixl 5 _-_ diff --git a/src/Helium/Instructions/Base.agda b/src/Helium/Instructions/Base.agda index c19e8ad..a76b2b1 100644 --- a/src/Helium/Instructions/Base.agda +++ b/src/Helium/Instructions/Base.agda @@ -172,8 +172,8 @@ VPTAdvance = declare (fin div2 (tup (var 0 ∷ []))) ( if get 0 (asInt (var 2)) ≟ lit ((true ∷ []) ′x) then elem 4 VPR-mask (var 1) ≔ var 0 - else skip - ∙end)) + else skip)) + ∙end VPTActive : Function (beat ∷ []) bool VPTActive = skip ∙return inv (elem 4 VPR-mask (fin div2 (tup (var 0 ∷ []))) ≟ lit (Vec.replicate false ′x)) @@ -232,8 +232,8 @@ module _ (d : Instr.VecOp₂) where -- 0:e 1:op₁ 2:result 3:elmtMask 4:curBeat declare op₂ op ) ∙ -- 0:op₁ 1:result 2:elmtMask 3:curBeat - invoke copyMasked (lit (dest ′f) ∷ to32 size (var 1) ∷ var 3 ∷ var 2 ∷ []))) - ∙end)) + invoke copyMasked (lit (dest ′f) ∷ to32 size (var 1) ∷ var 3 ∷ var 2 ∷ []))))) + ∙end where -- 0:e 1:op₁ 2:result 3:elmtMask 4:curBeat op₂ = diff --git a/src/Helium/Semantics/Denotational/Core.agda b/src/Helium/Semantics/Denotational/Core.agda index d4060f5..6ec0b24 100644 --- a/src/Helium/Semantics/Denotational/Core.agda +++ b/src/Helium/Semantics/Denotational/Core.agda @@ -217,7 +217,6 @@ module Expression ⟦_⟧ᶠ {Γ = Γ} (declare e f) σ γ = ⟦ f ⟧ᶠ σ (tupCons Γ (⟦ e ⟧ᵉ σ γ) γ) ⟦ s ∙end ⟧ᵖ σ γ = P.proj₁ (⟦ s ⟧ˢ σ γ) - ⟦_⟧ᵖ {Γ = Γ} (declare e p) σ γ = ⟦ p ⟧ᵖ σ (tupCons Γ (⟦ e ⟧ᵉ σ γ) γ) update (state i {i<o}) v σ γ = updateAt Σ (#_ i {m<n = i<o}) v σ , γ update {Γ = Γ} (var i {i<n}) v σ γ = σ , updateAt Γ (#_ i {m<n = i<n}) v γ |