{-# language CPP #-}
module Vulkan.Extensions.VK_AMD_pipeline_compiler_control ( PipelineCompilerControlCreateInfoAMD(..)
, PipelineCompilerControlFlagsAMD
, PipelineCompilerControlFlagBitsAMD(..)
, AMD_PIPELINE_COMPILER_CONTROL_SPEC_VERSION
, pattern AMD_PIPELINE_COMPILER_CONTROL_SPEC_VERSION
, AMD_PIPELINE_COMPILER_CONTROL_EXTENSION_NAME
, pattern AMD_PIPELINE_COMPILER_CONTROL_EXTENSION_NAME
) where
import Vulkan.Internal.Utils (enumReadPrec)
import Vulkan.Internal.Utils (enumShowsPrec)
import Foreign.Marshal.Alloc (allocaBytesAligned)
import Foreign.Ptr (nullPtr)
import Foreign.Ptr (plusPtr)
import GHC.Show (showString)
import Numeric (showHex)
import Data.Bits (Bits)
import Data.Bits (FiniteBits)
import Data.String (IsString)
import Data.Typeable (Typeable)
import Foreign.Storable (Storable)
import Foreign.Storable (Storable(peek))
import Foreign.Storable (Storable(poke))
import qualified Foreign.Storable (Storable(..))
import GHC.Generics (Generic)
import Foreign.Ptr (Ptr)
import GHC.Read (Read(readPrec))
import GHC.Show (Show(showsPrec))
import Data.Kind (Type)
import Vulkan.Core10.FundamentalTypes (Flags)
import Vulkan.CStruct (FromCStruct)
import Vulkan.CStruct (FromCStruct(..))
import Vulkan.Core10.Enums.StructureType (StructureType)
import Vulkan.CStruct (ToCStruct)
import Vulkan.CStruct (ToCStruct(..))
import Vulkan.Zero (Zero)
import Vulkan.Zero (Zero(..))
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD))
data PipelineCompilerControlCreateInfoAMD = PipelineCompilerControlCreateInfoAMD
{
PipelineCompilerControlCreateInfoAMD
-> PipelineCompilerControlFlagsAMD
compilerControlFlags :: PipelineCompilerControlFlagsAMD }
deriving (Typeable, PipelineCompilerControlCreateInfoAMD
-> PipelineCompilerControlCreateInfoAMD -> Bool
(PipelineCompilerControlCreateInfoAMD
-> PipelineCompilerControlCreateInfoAMD -> Bool)
-> (PipelineCompilerControlCreateInfoAMD
-> PipelineCompilerControlCreateInfoAMD -> Bool)
-> Eq PipelineCompilerControlCreateInfoAMD
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PipelineCompilerControlCreateInfoAMD
-> PipelineCompilerControlCreateInfoAMD -> Bool
$c/= :: PipelineCompilerControlCreateInfoAMD
-> PipelineCompilerControlCreateInfoAMD -> Bool
== :: PipelineCompilerControlCreateInfoAMD
-> PipelineCompilerControlCreateInfoAMD -> Bool
$c== :: PipelineCompilerControlCreateInfoAMD
-> PipelineCompilerControlCreateInfoAMD -> Bool
Eq)
#if defined(GENERIC_INSTANCES)
deriving instance Generic (PipelineCompilerControlCreateInfoAMD)
#endif
deriving instance Show PipelineCompilerControlCreateInfoAMD
instance ToCStruct PipelineCompilerControlCreateInfoAMD where
withCStruct :: PipelineCompilerControlCreateInfoAMD
-> (Ptr PipelineCompilerControlCreateInfoAMD -> IO b) -> IO b
withCStruct x :: PipelineCompilerControlCreateInfoAMD
x f :: Ptr PipelineCompilerControlCreateInfoAMD -> IO b
f = Int
-> Int
-> (Ptr PipelineCompilerControlCreateInfoAMD -> IO b)
-> IO b
forall a b. Int -> Int -> (Ptr a -> IO b) -> IO b
allocaBytesAligned 24 8 ((Ptr PipelineCompilerControlCreateInfoAMD -> IO b) -> IO b)
-> (Ptr PipelineCompilerControlCreateInfoAMD -> IO b) -> IO b
forall a b. (a -> b) -> a -> b
$ \p :: Ptr PipelineCompilerControlCreateInfoAMD
p -> Ptr PipelineCompilerControlCreateInfoAMD
-> PipelineCompilerControlCreateInfoAMD -> IO b -> IO b
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PipelineCompilerControlCreateInfoAMD
p PipelineCompilerControlCreateInfoAMD
x (Ptr PipelineCompilerControlCreateInfoAMD -> IO b
f Ptr PipelineCompilerControlCreateInfoAMD
p)
pokeCStruct :: Ptr PipelineCompilerControlCreateInfoAMD
-> PipelineCompilerControlCreateInfoAMD -> IO b -> IO b
pokeCStruct p :: Ptr PipelineCompilerControlCreateInfoAMD
p PipelineCompilerControlCreateInfoAMD{..} f :: IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PipelineCompilerControlCreateInfoAMD
p Ptr PipelineCompilerControlCreateInfoAMD
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` 0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PipelineCompilerControlCreateInfoAMD
p Ptr PipelineCompilerControlCreateInfoAMD -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` 8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
Ptr PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PipelineCompilerControlCreateInfoAMD
p Ptr PipelineCompilerControlCreateInfoAMD
-> Int -> Ptr PipelineCompilerControlFlagsAMD
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` 16 :: Ptr PipelineCompilerControlFlagsAMD)) (PipelineCompilerControlFlagsAMD
compilerControlFlags)
IO b
f
cStructSize :: Int
cStructSize = 24
cStructAlignment :: Int
cStructAlignment = 8
pokeZeroCStruct :: Ptr PipelineCompilerControlCreateInfoAMD -> IO b -> IO b
pokeZeroCStruct p :: Ptr PipelineCompilerControlCreateInfoAMD
p f :: IO b
f = do
Ptr StructureType -> StructureType -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PipelineCompilerControlCreateInfoAMD
p Ptr PipelineCompilerControlCreateInfoAMD
-> Int -> Ptr StructureType
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` 0 :: Ptr StructureType)) (StructureType
STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD)
Ptr (Ptr ()) -> Ptr () -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke ((Ptr PipelineCompilerControlCreateInfoAMD
p Ptr PipelineCompilerControlCreateInfoAMD -> Int -> Ptr (Ptr ())
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` 8 :: Ptr (Ptr ()))) (Ptr ()
forall a. Ptr a
nullPtr)
IO b
f
instance FromCStruct PipelineCompilerControlCreateInfoAMD where
peekCStruct :: Ptr PipelineCompilerControlCreateInfoAMD
-> IO PipelineCompilerControlCreateInfoAMD
peekCStruct p :: Ptr PipelineCompilerControlCreateInfoAMD
p = do
PipelineCompilerControlFlagsAMD
compilerControlFlags <- Ptr PipelineCompilerControlFlagsAMD
-> IO PipelineCompilerControlFlagsAMD
forall a. Storable a => Ptr a -> IO a
peek @PipelineCompilerControlFlagsAMD ((Ptr PipelineCompilerControlCreateInfoAMD
p Ptr PipelineCompilerControlCreateInfoAMD
-> Int -> Ptr PipelineCompilerControlFlagsAMD
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` 16 :: Ptr PipelineCompilerControlFlagsAMD))
PipelineCompilerControlCreateInfoAMD
-> IO PipelineCompilerControlCreateInfoAMD
forall (f :: * -> *) a. Applicative f => a -> f a
pure (PipelineCompilerControlCreateInfoAMD
-> IO PipelineCompilerControlCreateInfoAMD)
-> PipelineCompilerControlCreateInfoAMD
-> IO PipelineCompilerControlCreateInfoAMD
forall a b. (a -> b) -> a -> b
$ PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlCreateInfoAMD
PipelineCompilerControlCreateInfoAMD
PipelineCompilerControlFlagsAMD
compilerControlFlags
instance Storable PipelineCompilerControlCreateInfoAMD where
sizeOf :: PipelineCompilerControlCreateInfoAMD -> Int
sizeOf ~PipelineCompilerControlCreateInfoAMD
_ = 24
alignment :: PipelineCompilerControlCreateInfoAMD -> Int
alignment ~PipelineCompilerControlCreateInfoAMD
_ = 8
peek :: Ptr PipelineCompilerControlCreateInfoAMD
-> IO PipelineCompilerControlCreateInfoAMD
peek = Ptr PipelineCompilerControlCreateInfoAMD
-> IO PipelineCompilerControlCreateInfoAMD
forall a. FromCStruct a => Ptr a -> IO a
peekCStruct
poke :: Ptr PipelineCompilerControlCreateInfoAMD
-> PipelineCompilerControlCreateInfoAMD -> IO ()
poke ptr :: Ptr PipelineCompilerControlCreateInfoAMD
ptr poked :: PipelineCompilerControlCreateInfoAMD
poked = Ptr PipelineCompilerControlCreateInfoAMD
-> PipelineCompilerControlCreateInfoAMD -> IO () -> IO ()
forall a b. ToCStruct a => Ptr a -> a -> IO b -> IO b
pokeCStruct Ptr PipelineCompilerControlCreateInfoAMD
ptr PipelineCompilerControlCreateInfoAMD
poked (() -> IO ()
forall (f :: * -> *) a. Applicative f => a -> f a
pure ())
instance Zero PipelineCompilerControlCreateInfoAMD where
zero :: PipelineCompilerControlCreateInfoAMD
zero = PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlCreateInfoAMD
PipelineCompilerControlCreateInfoAMD
PipelineCompilerControlFlagsAMD
forall a. Zero a => a
zero
type PipelineCompilerControlFlagsAMD = PipelineCompilerControlFlagBitsAMD
newtype PipelineCompilerControlFlagBitsAMD = PipelineCompilerControlFlagBitsAMD Flags
deriving newtype (PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Bool
(PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Bool)
-> (PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Bool)
-> Eq PipelineCompilerControlFlagsAMD
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Bool
$c/= :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Bool
== :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Bool
$c== :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Bool
Eq, Eq PipelineCompilerControlFlagsAMD
Eq PipelineCompilerControlFlagsAMD =>
(PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Ordering)
-> (PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Bool)
-> (PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Bool)
-> (PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Bool)
-> (PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Bool)
-> (PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD)
-> (PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD)
-> Ord PipelineCompilerControlFlagsAMD
PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Bool
PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Ordering
PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
$cmin :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
max :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
$cmax :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
>= :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Bool
$c>= :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Bool
> :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Bool
$c> :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Bool
<= :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Bool
$c<= :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Bool
< :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Bool
$c< :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Bool
compare :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Ordering
$ccompare :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> Ordering
$cp1Ord :: Eq PipelineCompilerControlFlagsAMD
Ord, Ptr b -> Int -> IO PipelineCompilerControlFlagsAMD
Ptr b -> Int -> PipelineCompilerControlFlagsAMD -> IO ()
Ptr PipelineCompilerControlFlagsAMD
-> IO PipelineCompilerControlFlagsAMD
Ptr PipelineCompilerControlFlagsAMD
-> Int -> IO PipelineCompilerControlFlagsAMD
Ptr PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD -> IO ()
Ptr PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> IO ()
PipelineCompilerControlFlagsAMD -> Int
(PipelineCompilerControlFlagsAMD -> Int)
-> (PipelineCompilerControlFlagsAMD -> Int)
-> (Ptr PipelineCompilerControlFlagsAMD
-> Int -> IO PipelineCompilerControlFlagsAMD)
-> (Ptr PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD -> IO ())
-> (forall b. Ptr b -> Int -> IO PipelineCompilerControlFlagsAMD)
-> (forall b.
Ptr b -> Int -> PipelineCompilerControlFlagsAMD -> IO ())
-> (Ptr PipelineCompilerControlFlagsAMD
-> IO PipelineCompilerControlFlagsAMD)
-> (Ptr PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> IO ())
-> Storable PipelineCompilerControlFlagsAMD
forall b. Ptr b -> Int -> IO PipelineCompilerControlFlagsAMD
forall b. Ptr b -> Int -> PipelineCompilerControlFlagsAMD -> IO ()
forall a.
(a -> Int)
-> (a -> Int)
-> (Ptr a -> Int -> IO a)
-> (Ptr a -> Int -> a -> IO ())
-> (forall b. Ptr b -> Int -> IO a)
-> (forall b. Ptr b -> Int -> a -> IO ())
-> (Ptr a -> IO a)
-> (Ptr a -> a -> IO ())
-> Storable a
poke :: Ptr PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> IO ()
$cpoke :: Ptr PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD -> IO ()
peek :: Ptr PipelineCompilerControlFlagsAMD
-> IO PipelineCompilerControlFlagsAMD
$cpeek :: Ptr PipelineCompilerControlFlagsAMD
-> IO PipelineCompilerControlFlagsAMD
pokeByteOff :: Ptr b -> Int -> PipelineCompilerControlFlagsAMD -> IO ()
$cpokeByteOff :: forall b. Ptr b -> Int -> PipelineCompilerControlFlagsAMD -> IO ()
peekByteOff :: Ptr b -> Int -> IO PipelineCompilerControlFlagsAMD
$cpeekByteOff :: forall b. Ptr b -> Int -> IO PipelineCompilerControlFlagsAMD
pokeElemOff :: Ptr PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD -> IO ()
$cpokeElemOff :: Ptr PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD -> IO ()
peekElemOff :: Ptr PipelineCompilerControlFlagsAMD
-> Int -> IO PipelineCompilerControlFlagsAMD
$cpeekElemOff :: Ptr PipelineCompilerControlFlagsAMD
-> Int -> IO PipelineCompilerControlFlagsAMD
alignment :: PipelineCompilerControlFlagsAMD -> Int
$calignment :: PipelineCompilerControlFlagsAMD -> Int
sizeOf :: PipelineCompilerControlFlagsAMD -> Int
$csizeOf :: PipelineCompilerControlFlagsAMD -> Int
Storable, PipelineCompilerControlFlagsAMD
PipelineCompilerControlFlagsAMD
-> Zero PipelineCompilerControlFlagsAMD
forall a. a -> Zero a
zero :: PipelineCompilerControlFlagsAMD
$czero :: PipelineCompilerControlFlagsAMD
Zero, Eq PipelineCompilerControlFlagsAMD
PipelineCompilerControlFlagsAMD
Eq PipelineCompilerControlFlagsAMD =>
(PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD)
-> (PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD)
-> (PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD)
-> (PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD)
-> (PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD)
-> (PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD)
-> PipelineCompilerControlFlagsAMD
-> (Int -> PipelineCompilerControlFlagsAMD)
-> (PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD)
-> (PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD)
-> (PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD)
-> (PipelineCompilerControlFlagsAMD -> Int -> Bool)
-> (PipelineCompilerControlFlagsAMD -> Maybe Int)
-> (PipelineCompilerControlFlagsAMD -> Int)
-> (PipelineCompilerControlFlagsAMD -> Bool)
-> (PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD)
-> (PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD)
-> (PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD)
-> (PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD)
-> (PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD)
-> (PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD)
-> (PipelineCompilerControlFlagsAMD -> Int)
-> Bits PipelineCompilerControlFlagsAMD
Int -> PipelineCompilerControlFlagsAMD
PipelineCompilerControlFlagsAMD -> Bool
PipelineCompilerControlFlagsAMD -> Int
PipelineCompilerControlFlagsAMD -> Maybe Int
PipelineCompilerControlFlagsAMD -> PipelineCompilerControlFlagsAMD
PipelineCompilerControlFlagsAMD -> Int -> Bool
PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
forall a.
Eq a =>
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> a
-> (Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> Bool)
-> (a -> Maybe Int)
-> (a -> Int)
-> (a -> Bool)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int -> a)
-> (a -> Int)
-> Bits a
popCount :: PipelineCompilerControlFlagsAMD -> Int
$cpopCount :: PipelineCompilerControlFlagsAMD -> Int
rotateR :: PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
$crotateR :: PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
rotateL :: PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
$crotateL :: PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
unsafeShiftR :: PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
$cunsafeShiftR :: PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
shiftR :: PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
$cshiftR :: PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
unsafeShiftL :: PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
$cunsafeShiftL :: PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
shiftL :: PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
$cshiftL :: PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
isSigned :: PipelineCompilerControlFlagsAMD -> Bool
$cisSigned :: PipelineCompilerControlFlagsAMD -> Bool
bitSize :: PipelineCompilerControlFlagsAMD -> Int
$cbitSize :: PipelineCompilerControlFlagsAMD -> Int
bitSizeMaybe :: PipelineCompilerControlFlagsAMD -> Maybe Int
$cbitSizeMaybe :: PipelineCompilerControlFlagsAMD -> Maybe Int
testBit :: PipelineCompilerControlFlagsAMD -> Int -> Bool
$ctestBit :: PipelineCompilerControlFlagsAMD -> Int -> Bool
complementBit :: PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
$ccomplementBit :: PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
clearBit :: PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
$cclearBit :: PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
setBit :: PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
$csetBit :: PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
bit :: Int -> PipelineCompilerControlFlagsAMD
$cbit :: Int -> PipelineCompilerControlFlagsAMD
zeroBits :: PipelineCompilerControlFlagsAMD
$czeroBits :: PipelineCompilerControlFlagsAMD
rotate :: PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
$crotate :: PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
shift :: PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
$cshift :: PipelineCompilerControlFlagsAMD
-> Int -> PipelineCompilerControlFlagsAMD
complement :: PipelineCompilerControlFlagsAMD -> PipelineCompilerControlFlagsAMD
$ccomplement :: PipelineCompilerControlFlagsAMD -> PipelineCompilerControlFlagsAMD
xor :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
$cxor :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
.|. :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
$c.|. :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
.&. :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
$c.&. :: PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
-> PipelineCompilerControlFlagsAMD
$cp1Bits :: Eq PipelineCompilerControlFlagsAMD
Bits, Bits PipelineCompilerControlFlagsAMD
Bits PipelineCompilerControlFlagsAMD =>
(PipelineCompilerControlFlagsAMD -> Int)
-> (PipelineCompilerControlFlagsAMD -> Int)
-> (PipelineCompilerControlFlagsAMD -> Int)
-> FiniteBits PipelineCompilerControlFlagsAMD
PipelineCompilerControlFlagsAMD -> Int
forall b.
Bits b =>
(b -> Int) -> (b -> Int) -> (b -> Int) -> FiniteBits b
countTrailingZeros :: PipelineCompilerControlFlagsAMD -> Int
$ccountTrailingZeros :: PipelineCompilerControlFlagsAMD -> Int
countLeadingZeros :: PipelineCompilerControlFlagsAMD -> Int
$ccountLeadingZeros :: PipelineCompilerControlFlagsAMD -> Int
finiteBitSize :: PipelineCompilerControlFlagsAMD -> Int
$cfiniteBitSize :: PipelineCompilerControlFlagsAMD -> Int
$cp1FiniteBits :: Bits PipelineCompilerControlFlagsAMD
FiniteBits)
conNamePipelineCompilerControlFlagBitsAMD :: String
conNamePipelineCompilerControlFlagBitsAMD :: String
conNamePipelineCompilerControlFlagBitsAMD = "PipelineCompilerControlFlagBitsAMD"
enumPrefixPipelineCompilerControlFlagBitsAMD :: String
enumPrefixPipelineCompilerControlFlagBitsAMD :: String
enumPrefixPipelineCompilerControlFlagBitsAMD = ""
showTablePipelineCompilerControlFlagBitsAMD :: [(PipelineCompilerControlFlagBitsAMD, String)]
showTablePipelineCompilerControlFlagBitsAMD :: [(PipelineCompilerControlFlagsAMD, String)]
showTablePipelineCompilerControlFlagBitsAMD = []
instance Show PipelineCompilerControlFlagBitsAMD where
showsPrec :: Int -> PipelineCompilerControlFlagsAMD -> ShowS
showsPrec = String
-> [(PipelineCompilerControlFlagsAMD, String)]
-> String
-> (PipelineCompilerControlFlagsAMD -> Flags)
-> (Flags -> ShowS)
-> Int
-> PipelineCompilerControlFlagsAMD
-> ShowS
forall a i.
Eq a =>
String
-> [(a, String)]
-> String
-> (a -> i)
-> (i -> ShowS)
-> Int
-> a
-> ShowS
enumShowsPrec String
enumPrefixPipelineCompilerControlFlagBitsAMD
[(PipelineCompilerControlFlagsAMD, String)]
showTablePipelineCompilerControlFlagBitsAMD
String
conNamePipelineCompilerControlFlagBitsAMD
(\(PipelineCompilerControlFlagBitsAMD x :: Flags
x) -> Flags
x)
(\x :: Flags
x -> String -> ShowS
showString "0x" ShowS -> ShowS -> ShowS
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Flags -> ShowS
forall a. (Integral a, Show a) => a -> ShowS
showHex Flags
x)
instance Read PipelineCompilerControlFlagBitsAMD where
readPrec :: ReadPrec PipelineCompilerControlFlagsAMD
readPrec = String
-> [(PipelineCompilerControlFlagsAMD, String)]
-> String
-> (Flags -> PipelineCompilerControlFlagsAMD)
-> ReadPrec PipelineCompilerControlFlagsAMD
forall i a.
Read i =>
String -> [(a, String)] -> String -> (i -> a) -> ReadPrec a
enumReadPrec String
enumPrefixPipelineCompilerControlFlagBitsAMD
[(PipelineCompilerControlFlagsAMD, String)]
showTablePipelineCompilerControlFlagBitsAMD
String
conNamePipelineCompilerControlFlagBitsAMD
Flags -> PipelineCompilerControlFlagsAMD
PipelineCompilerControlFlagBitsAMD
type AMD_PIPELINE_COMPILER_CONTROL_SPEC_VERSION = 1
pattern AMD_PIPELINE_COMPILER_CONTROL_SPEC_VERSION :: forall a . Integral a => a
pattern $bAMD_PIPELINE_COMPILER_CONTROL_SPEC_VERSION :: a
$mAMD_PIPELINE_COMPILER_CONTROL_SPEC_VERSION :: forall r a. Integral a => a -> (Void# -> r) -> (Void# -> r) -> r
AMD_PIPELINE_COMPILER_CONTROL_SPEC_VERSION = 1
type AMD_PIPELINE_COMPILER_CONTROL_EXTENSION_NAME = "VK_AMD_pipeline_compiler_control"
pattern AMD_PIPELINE_COMPILER_CONTROL_EXTENSION_NAME :: forall a . (Eq a, IsString a) => a
pattern $bAMD_PIPELINE_COMPILER_CONTROL_EXTENSION_NAME :: a
$mAMD_PIPELINE_COMPILER_CONTROL_EXTENSION_NAME :: forall r a.
(Eq a, IsString a) =>
a -> (Void# -> r) -> (Void# -> r) -> r
AMD_PIPELINE_COMPILER_CONTROL_EXTENSION_NAME = "VK_AMD_pipeline_compiler_control"