From 0c40bca60b343bb289f0a567ec9ec9e9382bad2a Mon Sep 17 00:00:00 2001 From: Eugen Wissner Date: Mon, 2 Dec 2024 13:57:03 +0100 Subject: Add array assignment to the IR --- lib/Language/Elna/Backend/Allocator.hs | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'lib/Language/Elna/Backend/Allocator.hs') diff --git a/lib/Language/Elna/Backend/Allocator.hs b/lib/Language/Elna/Backend/Allocator.hs index f0f285b..acdf3e5 100644 --- a/lib/Language/Elna/Backend/Allocator.hs +++ b/lib/Language/Elna/Backend/Allocator.hs @@ -135,6 +135,10 @@ quadruple = \case AssignQuadruple operand1 variable -> do operand1' <- operand operand1 AssignQuadruple operand1' <$> storeVariable variable + ArrayAssignQuadruple operand1 operand2 variable -> do + operand1' <- operand operand1 + operand2' <- operand operand2 + ArrayAssignQuadruple operand1' operand2' <$> storeVariable variable operand :: Operand Variable -> Allocator r (Operand (Store r)) operand (IntOperand x) = pure $ IntOperand x -- cgit v1.2.3