- add :: IsArithmetic a => Value a -> Value a -> CodeGenFunction r (Value a)
- sub :: IsArithmetic a => Value a -> Value a -> CodeGenFunction r (Value a)
- inc :: (IsArithmetic a, IsConst a, Num a) => Value a -> CodeGenFunction r (Value a)
- dec :: (IsArithmetic a, IsConst a, Num a) => Value a -> CodeGenFunction r (Value a)
- mul :: IsArithmetic a => Value a -> Value a -> CodeGenFunction r (Value a)
- square :: IsArithmetic a => Value a -> CodeGenFunction r (Value a)
- fdiv :: IsFloating a => Value a -> Value a -> CodeGenFunction r (Value a)
- udiv :: IsInteger a => Value a -> Value a -> CodeGenFunction r (Value a)
- urem :: IsInteger a => Value a -> Value a -> CodeGenFunction r (Value a)
- fcmp :: (IsFloating a, CmpRet a b) => FPPredicate -> Value a -> Value a -> CodeGenFunction r (Value b)
- icmp :: (IsIntegerOrPointer a, CmpRet a b) => IntPredicate -> Value a -> Value a -> CodeGenFunction r (Value b)
- and :: IsInteger a => Value a -> Value a -> CodeGenFunction r (Value a)
- or :: IsInteger a => Value a -> Value a -> CodeGenFunction r (Value a)
- umin :: (IsInteger a, CmpRet a Bool) => Value a -> Value a -> CodeGenFunction r (Value a)
- umax :: (IsInteger a, CmpRet a Bool) => Value a -> Value a -> CodeGenFunction r (Value a)
- smin :: (IsInteger a, CmpRet a Bool) => Value a -> Value a -> CodeGenFunction r (Value a)
- smax :: (IsInteger a, CmpRet a Bool) => Value a -> Value a -> CodeGenFunction r (Value a)
- sabs :: (IsInteger a, CmpRet a Bool) => Value a -> CodeGenFunction r (Value a)
- fmin :: (IsFloating a, CmpRet a Bool) => Value a -> Value a -> CodeGenFunction r (Value a)
- fmax :: (IsFloating a, CmpRet a Bool) => Value a -> Value a -> CodeGenFunction r (Value a)
- fabs :: (IsFloating a, CmpRet a Bool) => Value a -> CodeGenFunction r (Value a)
- advanceArrayElementPtr :: Value (Ptr o) -> CodeGenFunction r (Value (Ptr o))
- sqrt :: IsFloating a => Value a -> CodeGenFunction r (Value a)
- sin :: IsFloating a => Value a -> CodeGenFunction r (Value a)
- cos :: IsFloating a => Value a -> CodeGenFunction r (Value a)
- exp :: IsFloating a => Value a -> CodeGenFunction r (Value a)
- log :: IsFloating a => Value a -> CodeGenFunction r (Value a)
- pow :: IsFloating a => Value a -> Value a -> CodeGenFunction r (Value a)
Documentation
add :: IsArithmetic a => Value a -> Value a -> CodeGenFunction r (Value a)Source
sub :: IsArithmetic a => Value a -> Value a -> CodeGenFunction r (Value a)Source
inc :: (IsArithmetic a, IsConst a, Num a) => Value a -> CodeGenFunction r (Value a)Source
dec :: (IsArithmetic a, IsConst a, Num a) => Value a -> CodeGenFunction r (Value a)Source
mul :: IsArithmetic a => Value a -> Value a -> CodeGenFunction r (Value a)Source
square :: IsArithmetic a => Value a -> CodeGenFunction r (Value a)Source
fdiv :: IsFloating a => Value a -> Value a -> CodeGenFunction r (Value a)Source
fcmp :: (IsFloating a, CmpRet a b) => FPPredicate -> Value a -> Value a -> CodeGenFunction r (Value b)Source
icmp :: (IsIntegerOrPointer a, CmpRet a b) => IntPredicate -> Value a -> Value a -> CodeGenFunction r (Value b)Source
umin :: (IsInteger a, CmpRet a Bool) => Value a -> Value a -> CodeGenFunction r (Value a)Source
This would also work for vectors,
if LLVM would support select
with bool vectors as condition.
fmin :: (IsFloating a, CmpRet a Bool) => Value a -> Value a -> CodeGenFunction r (Value a)Source
fmax :: (IsFloating a, CmpRet a Bool) => Value a -> Value a -> CodeGenFunction r (Value a)Source
fabs :: (IsFloating a, CmpRet a Bool) => Value a -> CodeGenFunction r (Value a)Source
advanceArrayElementPtr :: Value (Ptr o) -> CodeGenFunction r (Value (Ptr o))Source
sqrt :: IsFloating a => Value a -> CodeGenFunction r (Value a)Source
sin :: IsFloating a => Value a -> CodeGenFunction r (Value a)Source
cos :: IsFloating a => Value a -> CodeGenFunction r (Value a)Source
exp :: IsFloating a => Value a -> CodeGenFunction r (Value a)Source
log :: IsFloating a => Value a -> CodeGenFunction r (Value a)Source
pow :: IsFloating a => Value a -> Value a -> CodeGenFunction r (Value a)Source