on master help sign in
javascript: optimize operator calls
d5c8aecraichoo
src/IRTS/CodegenJavaScript.hs+4
@@ -240,6 +240,10 @@ optimizeJS (JSApp (JSFunction [arg] (JSReturn ret)) [val])
240 JSReturn $ JSApp fun (jsSubst arg args (optimizeJS val))
240 JSReturn $ JSApp fun (jsSubst arg args (optimizeJS val))
241 )]
241 )]
242
242
243+ | JSOp op lhs rhs <- ret =
244+ JSOp op (head $ jsSubst arg [lhs] (optimizeJS val)) $
245+ (head $ jsSubst arg [rhs] (optimizeJS val))
246+
243optimizeJS (JSSeq seq) =
247optimizeJS (JSSeq seq) =
244 JSSeq (map optimizeJS seq)
248 JSSeq (map optimizeJS seq)
245
249