summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Smeding <t.j.smeding@uu.nl>2025-03-03 17:46:50 +0100
committerTom Smeding <t.j.smeding@uu.nl>2025-03-03 17:46:50 +0100
commit09b173623c3e82eb0d5e612e0c4ab188ae9df03c (patch)
tree2af73cc2ef140d7ce31c290bac1a6833415f20fa
parentc49deb3baa4baaca78a9d301d4dd17db84fb6c5b (diff)
WIP replicate1i
-rw-r--r--src/Compile.hs8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/Compile.hs b/src/Compile.hs
index d31c531..3b02c60 100644
--- a/src/Compile.hs
+++ b/src/Compile.hs
@@ -663,7 +663,13 @@ compile' env = \case
emit $ SAsg (name ++ ".buf->a[0]") e'
return (CELit name)
- -- EReplicate1Inner _ a b -> error "TODO" -- EReplicate1Inner ext (compile' a) (compile' b)
+ EReplicate1Inner _ elen earg -> do
+ lenname <- genName' "replen"
+ emit . SVarDecl True (repSTy tIx) lenname =<< compile' env elen
+ argname <- genName' "reparg"
+ emit . SVarDecl True (repSTy (typeOf earg)) argname =<< compile' env earg
+
+ _
-- EMaximum1Inner _ e -> error "TODO" -- EMaximum1Inner ext (compile' e)