feldspar-language-0.7: A functional embedded language for DSP and parallelism

Safe HaskellNone
LanguageHaskell2010

Feldspar.Core.Constructs.Bits

Description

Implementation of constructs and operations on Bits

Synopsis

Documentation

data BITS a where Source

Bits constructs

Constructors

BAnd :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (a :-> Full a)) 
BOr :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (a :-> Full a)) 
BXor :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (a :-> Full a)) 
Complement :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> Full a) 
Bit :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (Index :-> Full a) 
SetBit :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full a)) 
ClearBit :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full a)) 
ComplementBit :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full a)) 
TestBit :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full Bool)) 
ShiftLU :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full a)) 
ShiftRU :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full a)) 
ShiftL :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (IntN :-> Full a)) 
ShiftR :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (IntN :-> Full a)) 
RotateLU :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full a)) 
RotateRU :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full a)) 
RotateL :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (IntN :-> Full a)) 
RotateR :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (IntN :-> Full a)) 
ReverseBits :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> Full a) 
BitScan :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> Full Index) 
BitCount :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> Full Index)