futhark-0.9.1: An optimising compiler for a functional, array-oriented language.

Safe HaskellNone
LanguageHaskell2010

Futhark.Analysis.Alias

Contents

Description

Alias analysis of a full Futhark program. Takes as input a program with an arbitrary lore and produces one with aliases. This module does not implement the aliasing logic itself, and derives its information from definitions in Futhark.Representation.AST.Attributes.Aliases and Futhark.Representation.Aliases.

Synopsis

Documentation

aliasAnalysis :: (Attributes lore, CanBeAliased (Op lore)) => Prog lore -> Prog (Aliases lore) Source #

Perform alias analysis on a Futhark program.

Ad-hoc utilities

analyseFun :: (Attributes lore, CanBeAliased (Op lore)) => FunDef lore -> FunDef (Aliases lore) Source #

analyseStm :: (Attributes lore, CanBeAliased (Op lore)) => Stm lore -> Stm (Aliases lore) Source #

analyseExp :: (Attributes lore, CanBeAliased (Op lore)) => Exp lore -> Exp (Aliases lore) Source #

analyseBody :: (Attributes lore, CanBeAliased (Op lore)) => Body lore -> Body (Aliases lore) Source #

analyseLambda :: (Attributes lore, CanBeAliased (Op lore)) => Lambda lore -> Lambda (Aliases lore) Source #