{-# LINE 1 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}
{-# LANGUAGE CPP #-}
{-# LANGUAGE DerivingStrategies #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
module GHC.Exts.Stack.Constants where


{-# LINE 7 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

import           Prelude







newtype ByteOffset = ByteOffset { ByteOffset -> Int
offsetInBytes :: Int }
  deriving newtype (ByteOffset -> ByteOffset -> Bool
(ByteOffset -> ByteOffset -> Bool)
-> (ByteOffset -> ByteOffset -> Bool) -> Eq ByteOffset
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ByteOffset -> ByteOffset -> Bool
== :: ByteOffset -> ByteOffset -> Bool
$c/= :: ByteOffset -> ByteOffset -> Bool
/= :: ByteOffset -> ByteOffset -> Bool
Eq, Int -> ByteOffset -> ShowS
[ByteOffset] -> ShowS
ByteOffset -> String
(Int -> ByteOffset -> ShowS)
-> (ByteOffset -> String)
-> ([ByteOffset] -> ShowS)
-> Show ByteOffset
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ByteOffset -> ShowS
showsPrec :: Int -> ByteOffset -> ShowS
$cshow :: ByteOffset -> String
show :: ByteOffset -> String
$cshowList :: [ByteOffset] -> ShowS
showList :: [ByteOffset] -> ShowS
Show, Enum ByteOffset
Real ByteOffset
(Real ByteOffset, Enum ByteOffset) =>
(ByteOffset -> ByteOffset -> ByteOffset)
-> (ByteOffset -> ByteOffset -> ByteOffset)
-> (ByteOffset -> ByteOffset -> ByteOffset)
-> (ByteOffset -> ByteOffset -> ByteOffset)
-> (ByteOffset -> ByteOffset -> (ByteOffset, ByteOffset))
-> (ByteOffset -> ByteOffset -> (ByteOffset, ByteOffset))
-> (ByteOffset -> Integer)
-> Integral ByteOffset
ByteOffset -> Integer
ByteOffset -> ByteOffset -> (ByteOffset, ByteOffset)
ByteOffset -> ByteOffset -> ByteOffset
forall a.
(Real a, Enum a) =>
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> (a, a))
-> (a -> a -> (a, a))
-> (a -> Integer)
-> Integral a
$cquot :: ByteOffset -> ByteOffset -> ByteOffset
quot :: ByteOffset -> ByteOffset -> ByteOffset
$crem :: ByteOffset -> ByteOffset -> ByteOffset
rem :: ByteOffset -> ByteOffset -> ByteOffset
$cdiv :: ByteOffset -> ByteOffset -> ByteOffset
div :: ByteOffset -> ByteOffset -> ByteOffset
$cmod :: ByteOffset -> ByteOffset -> ByteOffset
mod :: ByteOffset -> ByteOffset -> ByteOffset
$cquotRem :: ByteOffset -> ByteOffset -> (ByteOffset, ByteOffset)
quotRem :: ByteOffset -> ByteOffset -> (ByteOffset, ByteOffset)
$cdivMod :: ByteOffset -> ByteOffset -> (ByteOffset, ByteOffset)
divMod :: ByteOffset -> ByteOffset -> (ByteOffset, ByteOffset)
$ctoInteger :: ByteOffset -> Integer
toInteger :: ByteOffset -> Integer
Integral, Num ByteOffset
Ord ByteOffset
(Num ByteOffset, Ord ByteOffset) =>
(ByteOffset -> Rational) -> Real ByteOffset
ByteOffset -> Rational
forall a. (Num a, Ord a) => (a -> Rational) -> Real a
$ctoRational :: ByteOffset -> Rational
toRational :: ByteOffset -> Rational
Real, Integer -> ByteOffset
ByteOffset -> ByteOffset
ByteOffset -> ByteOffset -> ByteOffset
(ByteOffset -> ByteOffset -> ByteOffset)
-> (ByteOffset -> ByteOffset -> ByteOffset)
-> (ByteOffset -> ByteOffset -> ByteOffset)
-> (ByteOffset -> ByteOffset)
-> (ByteOffset -> ByteOffset)
-> (ByteOffset -> ByteOffset)
-> (Integer -> ByteOffset)
-> Num ByteOffset
forall a.
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> a)
-> (a -> a)
-> (Integer -> a)
-> Num a
$c+ :: ByteOffset -> ByteOffset -> ByteOffset
+ :: ByteOffset -> ByteOffset -> ByteOffset
$c- :: ByteOffset -> ByteOffset -> ByteOffset
- :: ByteOffset -> ByteOffset -> ByteOffset
$c* :: ByteOffset -> ByteOffset -> ByteOffset
* :: ByteOffset -> ByteOffset -> ByteOffset
$cnegate :: ByteOffset -> ByteOffset
negate :: ByteOffset -> ByteOffset
$cabs :: ByteOffset -> ByteOffset
abs :: ByteOffset -> ByteOffset
$csignum :: ByteOffset -> ByteOffset
signum :: ByteOffset -> ByteOffset
$cfromInteger :: Integer -> ByteOffset
fromInteger :: Integer -> ByteOffset
Num, Int -> ByteOffset
ByteOffset -> Int
ByteOffset -> [ByteOffset]
ByteOffset -> ByteOffset
ByteOffset -> ByteOffset -> [ByteOffset]
ByteOffset -> ByteOffset -> ByteOffset -> [ByteOffset]
(ByteOffset -> ByteOffset)
-> (ByteOffset -> ByteOffset)
-> (Int -> ByteOffset)
-> (ByteOffset -> Int)
-> (ByteOffset -> [ByteOffset])
-> (ByteOffset -> ByteOffset -> [ByteOffset])
-> (ByteOffset -> ByteOffset -> [ByteOffset])
-> (ByteOffset -> ByteOffset -> ByteOffset -> [ByteOffset])
-> Enum ByteOffset
forall a.
(a -> a)
-> (a -> a)
-> (Int -> a)
-> (a -> Int)
-> (a -> [a])
-> (a -> a -> [a])
-> (a -> a -> [a])
-> (a -> a -> a -> [a])
-> Enum a
$csucc :: ByteOffset -> ByteOffset
succ :: ByteOffset -> ByteOffset
$cpred :: ByteOffset -> ByteOffset
pred :: ByteOffset -> ByteOffset
$ctoEnum :: Int -> ByteOffset
toEnum :: Int -> ByteOffset
$cfromEnum :: ByteOffset -> Int
fromEnum :: ByteOffset -> Int
$cenumFrom :: ByteOffset -> [ByteOffset]
enumFrom :: ByteOffset -> [ByteOffset]
$cenumFromThen :: ByteOffset -> ByteOffset -> [ByteOffset]
enumFromThen :: ByteOffset -> ByteOffset -> [ByteOffset]
$cenumFromTo :: ByteOffset -> ByteOffset -> [ByteOffset]
enumFromTo :: ByteOffset -> ByteOffset -> [ByteOffset]
$cenumFromThenTo :: ByteOffset -> ByteOffset -> ByteOffset -> [ByteOffset]
enumFromThenTo :: ByteOffset -> ByteOffset -> ByteOffset -> [ByteOffset]
Enum, Eq ByteOffset
Eq ByteOffset =>
(ByteOffset -> ByteOffset -> Ordering)
-> (ByteOffset -> ByteOffset -> Bool)
-> (ByteOffset -> ByteOffset -> Bool)
-> (ByteOffset -> ByteOffset -> Bool)
-> (ByteOffset -> ByteOffset -> Bool)
-> (ByteOffset -> ByteOffset -> ByteOffset)
-> (ByteOffset -> ByteOffset -> ByteOffset)
-> Ord ByteOffset
ByteOffset -> ByteOffset -> Bool
ByteOffset -> ByteOffset -> Ordering
ByteOffset -> ByteOffset -> ByteOffset
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
$ccompare :: ByteOffset -> ByteOffset -> Ordering
compare :: ByteOffset -> ByteOffset -> Ordering
$c< :: ByteOffset -> ByteOffset -> Bool
< :: ByteOffset -> ByteOffset -> Bool
$c<= :: ByteOffset -> ByteOffset -> Bool
<= :: ByteOffset -> ByteOffset -> Bool
$c> :: ByteOffset -> ByteOffset -> Bool
> :: ByteOffset -> ByteOffset -> Bool
$c>= :: ByteOffset -> ByteOffset -> Bool
>= :: ByteOffset -> ByteOffset -> Bool
$cmax :: ByteOffset -> ByteOffset -> ByteOffset
max :: ByteOffset -> ByteOffset -> ByteOffset
$cmin :: ByteOffset -> ByteOffset -> ByteOffset
min :: ByteOffset -> ByteOffset -> ByteOffset
Ord)

newtype WordOffset = WordOffset { WordOffset -> Int
offsetInWords :: Int }
  deriving newtype (WordOffset -> WordOffset -> Bool
(WordOffset -> WordOffset -> Bool)
-> (WordOffset -> WordOffset -> Bool) -> Eq WordOffset
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: WordOffset -> WordOffset -> Bool
== :: WordOffset -> WordOffset -> Bool
$c/= :: WordOffset -> WordOffset -> Bool
/= :: WordOffset -> WordOffset -> Bool
Eq, Int -> WordOffset -> ShowS
[WordOffset] -> ShowS
WordOffset -> String
(Int -> WordOffset -> ShowS)
-> (WordOffset -> String)
-> ([WordOffset] -> ShowS)
-> Show WordOffset
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> WordOffset -> ShowS
showsPrec :: Int -> WordOffset -> ShowS
$cshow :: WordOffset -> String
show :: WordOffset -> String
$cshowList :: [WordOffset] -> ShowS
showList :: [WordOffset] -> ShowS
Show, Enum WordOffset
Real WordOffset
(Real WordOffset, Enum WordOffset) =>
(WordOffset -> WordOffset -> WordOffset)
-> (WordOffset -> WordOffset -> WordOffset)
-> (WordOffset -> WordOffset -> WordOffset)
-> (WordOffset -> WordOffset -> WordOffset)
-> (WordOffset -> WordOffset -> (WordOffset, WordOffset))
-> (WordOffset -> WordOffset -> (WordOffset, WordOffset))
-> (WordOffset -> Integer)
-> Integral WordOffset
WordOffset -> Integer
WordOffset -> WordOffset -> (WordOffset, WordOffset)
WordOffset -> WordOffset -> WordOffset
forall a.
(Real a, Enum a) =>
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> (a, a))
-> (a -> a -> (a, a))
-> (a -> Integer)
-> Integral a
$cquot :: WordOffset -> WordOffset -> WordOffset
quot :: WordOffset -> WordOffset -> WordOffset
$crem :: WordOffset -> WordOffset -> WordOffset
rem :: WordOffset -> WordOffset -> WordOffset
$cdiv :: WordOffset -> WordOffset -> WordOffset
div :: WordOffset -> WordOffset -> WordOffset
$cmod :: WordOffset -> WordOffset -> WordOffset
mod :: WordOffset -> WordOffset -> WordOffset
$cquotRem :: WordOffset -> WordOffset -> (WordOffset, WordOffset)
quotRem :: WordOffset -> WordOffset -> (WordOffset, WordOffset)
$cdivMod :: WordOffset -> WordOffset -> (WordOffset, WordOffset)
divMod :: WordOffset -> WordOffset -> (WordOffset, WordOffset)
$ctoInteger :: WordOffset -> Integer
toInteger :: WordOffset -> Integer
Integral, Num WordOffset
Ord WordOffset
(Num WordOffset, Ord WordOffset) =>
(WordOffset -> Rational) -> Real WordOffset
WordOffset -> Rational
forall a. (Num a, Ord a) => (a -> Rational) -> Real a
$ctoRational :: WordOffset -> Rational
toRational :: WordOffset -> Rational
Real, Integer -> WordOffset
WordOffset -> WordOffset
WordOffset -> WordOffset -> WordOffset
(WordOffset -> WordOffset -> WordOffset)
-> (WordOffset -> WordOffset -> WordOffset)
-> (WordOffset -> WordOffset -> WordOffset)
-> (WordOffset -> WordOffset)
-> (WordOffset -> WordOffset)
-> (WordOffset -> WordOffset)
-> (Integer -> WordOffset)
-> Num WordOffset
forall a.
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> a)
-> (a -> a)
-> (Integer -> a)
-> Num a
$c+ :: WordOffset -> WordOffset -> WordOffset
+ :: WordOffset -> WordOffset -> WordOffset
$c- :: WordOffset -> WordOffset -> WordOffset
- :: WordOffset -> WordOffset -> WordOffset
$c* :: WordOffset -> WordOffset -> WordOffset
* :: WordOffset -> WordOffset -> WordOffset
$cnegate :: WordOffset -> WordOffset
negate :: WordOffset -> WordOffset
$cabs :: WordOffset -> WordOffset
abs :: WordOffset -> WordOffset
$csignum :: WordOffset -> WordOffset
signum :: WordOffset -> WordOffset
$cfromInteger :: Integer -> WordOffset
fromInteger :: Integer -> WordOffset
Num, Int -> WordOffset
WordOffset -> Int
WordOffset -> [WordOffset]
WordOffset -> WordOffset
WordOffset -> WordOffset -> [WordOffset]
WordOffset -> WordOffset -> WordOffset -> [WordOffset]
(WordOffset -> WordOffset)
-> (WordOffset -> WordOffset)
-> (Int -> WordOffset)
-> (WordOffset -> Int)
-> (WordOffset -> [WordOffset])
-> (WordOffset -> WordOffset -> [WordOffset])
-> (WordOffset -> WordOffset -> [WordOffset])
-> (WordOffset -> WordOffset -> WordOffset -> [WordOffset])
-> Enum WordOffset
forall a.
(a -> a)
-> (a -> a)
-> (Int -> a)
-> (a -> Int)
-> (a -> [a])
-> (a -> a -> [a])
-> (a -> a -> [a])
-> (a -> a -> a -> [a])
-> Enum a
$csucc :: WordOffset -> WordOffset
succ :: WordOffset -> WordOffset
$cpred :: WordOffset -> WordOffset
pred :: WordOffset -> WordOffset
$ctoEnum :: Int -> WordOffset
toEnum :: Int -> WordOffset
$cfromEnum :: WordOffset -> Int
fromEnum :: WordOffset -> Int
$cenumFrom :: WordOffset -> [WordOffset]
enumFrom :: WordOffset -> [WordOffset]
$cenumFromThen :: WordOffset -> WordOffset -> [WordOffset]
enumFromThen :: WordOffset -> WordOffset -> [WordOffset]
$cenumFromTo :: WordOffset -> WordOffset -> [WordOffset]
enumFromTo :: WordOffset -> WordOffset -> [WordOffset]
$cenumFromThenTo :: WordOffset -> WordOffset -> WordOffset -> [WordOffset]
enumFromThenTo :: WordOffset -> WordOffset -> WordOffset -> [WordOffset]
Enum, Eq WordOffset
Eq WordOffset =>
(WordOffset -> WordOffset -> Ordering)
-> (WordOffset -> WordOffset -> Bool)
-> (WordOffset -> WordOffset -> Bool)
-> (WordOffset -> WordOffset -> Bool)
-> (WordOffset -> WordOffset -> Bool)
-> (WordOffset -> WordOffset -> WordOffset)
-> (WordOffset -> WordOffset -> WordOffset)
-> Ord WordOffset
WordOffset -> WordOffset -> Bool
WordOffset -> WordOffset -> Ordering
WordOffset -> WordOffset -> WordOffset
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
$ccompare :: WordOffset -> WordOffset -> Ordering
compare :: WordOffset -> WordOffset -> Ordering
$c< :: WordOffset -> WordOffset -> Bool
< :: WordOffset -> WordOffset -> Bool
$c<= :: WordOffset -> WordOffset -> Bool
<= :: WordOffset -> WordOffset -> Bool
$c> :: WordOffset -> WordOffset -> Bool
> :: WordOffset -> WordOffset -> Bool
$c>= :: WordOffset -> WordOffset -> Bool
>= :: WordOffset -> WordOffset -> Bool
$cmax :: WordOffset -> WordOffset -> WordOffset
max :: WordOffset -> WordOffset -> WordOffset
$cmin :: WordOffset -> WordOffset -> WordOffset
min :: WordOffset -> WordOffset -> WordOffset
Ord)

offsetStgCatchFrameHandler :: WordOffset
offsetStgCatchFrameHandler :: WordOffset
offsetStgCatchFrameHandler = ByteOffset -> WordOffset
byteOffsetToWordOffset (ByteOffset -> WordOffset) -> ByteOffset -> WordOffset
forall a b. (a -> b) -> a -> b
$
  (ByteOffset
0) ByteOffset -> ByteOffset -> ByteOffset
forall a. Num a => a -> a -> a
+ ((ByteOffset
8))
{-# LINE 25 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

sizeStgCatchFrame :: Int
sizeStgCatchFrame :: Int
sizeStgCatchFrame = Int -> Int
bytesToWords (Int -> Int) -> Int -> Int
forall a b. (a -> b) -> a -> b
$
  (Int
8) Int -> Int -> Int
forall a. Num a => a -> a -> a
+ ((Int
8))
{-# LINE 29 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

offsetStgCatchSTMFrameCode :: WordOffset
offsetStgCatchSTMFrameCode :: WordOffset
offsetStgCatchSTMFrameCode = ByteOffset -> WordOffset
byteOffsetToWordOffset (ByteOffset -> WordOffset) -> ByteOffset -> WordOffset
forall a b. (a -> b) -> a -> b
$
  (ByteOffset
0) ByteOffset -> ByteOffset -> ByteOffset
forall a. Num a => a -> a -> a
+ ((ByteOffset
8))
{-# LINE 33 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

offsetStgCatchSTMFrameHandler :: WordOffset
offsetStgCatchSTMFrameHandler :: WordOffset
offsetStgCatchSTMFrameHandler = ByteOffset -> WordOffset
byteOffsetToWordOffset (ByteOffset -> WordOffset) -> ByteOffset -> WordOffset
forall a b. (a -> b) -> a -> b
$
  (ByteOffset
8) ByteOffset -> ByteOffset -> ByteOffset
forall a. Num a => a -> a -> a
+ ((ByteOffset
8))
{-# LINE 37 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

sizeStgCatchSTMFrame :: Int
sizeStgCatchSTMFrame :: Int
sizeStgCatchSTMFrame = Int -> Int
bytesToWords (Int -> Int) -> Int -> Int
forall a b. (a -> b) -> a -> b
$
  (Int
16) Int -> Int -> Int
forall a. Num a => a -> a -> a
+ ((Int
8))
{-# LINE 41 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

offsetStgUpdateFrameUpdatee :: WordOffset
offsetStgUpdateFrameUpdatee :: WordOffset
offsetStgUpdateFrameUpdatee = ByteOffset -> WordOffset
byteOffsetToWordOffset (ByteOffset -> WordOffset) -> ByteOffset -> WordOffset
forall a b. (a -> b) -> a -> b
$
  (ByteOffset
0) ByteOffset -> ByteOffset -> ByteOffset
forall a. Num a => a -> a -> a
+ ((ByteOffset
8))
{-# LINE 45 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

sizeStgUpdateFrame :: Int
sizeStgUpdateFrame :: Int
sizeStgUpdateFrame = Int -> Int
bytesToWords (Int -> Int) -> Int -> Int
forall a b. (a -> b) -> a -> b
$
  (Int
8) Int -> Int -> Int
forall a. Num a => a -> a -> a
+ ((Int
8))
{-# LINE 49 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

offsetStgAtomicallyFrameCode :: WordOffset
offsetStgAtomicallyFrameCode :: WordOffset
offsetStgAtomicallyFrameCode = ByteOffset -> WordOffset
byteOffsetToWordOffset (ByteOffset -> WordOffset) -> ByteOffset -> WordOffset
forall a b. (a -> b) -> a -> b
$
  (ByteOffset
0) ByteOffset -> ByteOffset -> ByteOffset
forall a. Num a => a -> a -> a
+ ((ByteOffset
8))
{-# LINE 53 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

offsetStgAtomicallyFrameResult :: WordOffset
offsetStgAtomicallyFrameResult :: WordOffset
offsetStgAtomicallyFrameResult = ByteOffset -> WordOffset
byteOffsetToWordOffset (ByteOffset -> WordOffset) -> ByteOffset -> WordOffset
forall a b. (a -> b) -> a -> b
$
  (ByteOffset
8) ByteOffset -> ByteOffset -> ByteOffset
forall a. Num a => a -> a -> a
+ ((ByteOffset
8))
{-# LINE 57 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

sizeStgAtomicallyFrame :: Int
sizeStgAtomicallyFrame :: Int
sizeStgAtomicallyFrame = Int -> Int
bytesToWords (Int -> Int) -> Int -> Int
forall a b. (a -> b) -> a -> b
$
  (Int
16) Int -> Int -> Int
forall a. Num a => a -> a -> a
+ ((Int
8))
{-# LINE 61 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

offsetStgCatchRetryFrameRunningAltCode :: WordOffset
offsetStgCatchRetryFrameRunningAltCode :: WordOffset
offsetStgCatchRetryFrameRunningAltCode = ByteOffset -> WordOffset
byteOffsetToWordOffset (ByteOffset -> WordOffset) -> ByteOffset -> WordOffset
forall a b. (a -> b) -> a -> b
$
  (ByteOffset
0) ByteOffset -> ByteOffset -> ByteOffset
forall a. Num a => a -> a -> a
+ ((ByteOffset
8))
{-# LINE 65 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

offsetStgCatchRetryFrameRunningFirstCode :: WordOffset
offsetStgCatchRetryFrameRunningFirstCode :: WordOffset
offsetStgCatchRetryFrameRunningFirstCode = ByteOffset -> WordOffset
byteOffsetToWordOffset (ByteOffset -> WordOffset) -> ByteOffset -> WordOffset
forall a b. (a -> b) -> a -> b
$
  (ByteOffset
8) ByteOffset -> ByteOffset -> ByteOffset
forall a. Num a => a -> a -> a
+ ((ByteOffset
8))
{-# LINE 69 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

offsetStgCatchRetryFrameAltCode :: WordOffset
offsetStgCatchRetryFrameAltCode :: WordOffset
offsetStgCatchRetryFrameAltCode = ByteOffset -> WordOffset
byteOffsetToWordOffset (ByteOffset -> WordOffset) -> ByteOffset -> WordOffset
forall a b. (a -> b) -> a -> b
$
  (ByteOffset
16) ByteOffset -> ByteOffset -> ByteOffset
forall a. Num a => a -> a -> a
+ ((ByteOffset
8))
{-# LINE 73 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

sizeStgCatchRetryFrame :: Int
sizeStgCatchRetryFrame :: Int
sizeStgCatchRetryFrame = Int -> Int
bytesToWords (Int -> Int) -> Int -> Int
forall a b. (a -> b) -> a -> b
$
  (Int
24) Int -> Int -> Int
forall a. Num a => a -> a -> a
+ ((Int
8))
{-# LINE 77 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

offsetStgRetFunFrameSize :: WordOffset
-- StgRetFun has no header, but only a pointer to the info table at the beginning.
offsetStgRetFunFrameSize :: WordOffset
offsetStgRetFunFrameSize = ByteOffset -> WordOffset
byteOffsetToWordOffset (ByteOffset
8)
{-# LINE 81 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

offsetStgRetFunFrameFun :: WordOffset
offsetStgRetFunFrameFun :: WordOffset
offsetStgRetFunFrameFun = ByteOffset -> WordOffset
byteOffsetToWordOffset (ByteOffset
16)
{-# LINE 84 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

offsetStgRetFunFramePayload :: WordOffset
offsetStgRetFunFramePayload :: WordOffset
offsetStgRetFunFramePayload = ByteOffset -> WordOffset
byteOffsetToWordOffset (ByteOffset
24)
{-# LINE 87 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

sizeStgRetFunFrame :: Int
sizeStgRetFunFrame :: Int
sizeStgRetFunFrame = Int -> Int
bytesToWords (Int
24)
{-# LINE 90 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

offsetStgBCOFrameInstrs :: ByteOffset
offsetStgBCOFrameInstrs :: ByteOffset
offsetStgBCOFrameInstrs = (ByteOffset
0) ByteOffset -> ByteOffset -> ByteOffset
forall a. Num a => a -> a -> a
+ ((ByteOffset
8))
{-# LINE 93 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

offsetStgBCOFrameLiterals :: ByteOffset
offsetStgBCOFrameLiterals :: ByteOffset
offsetStgBCOFrameLiterals = (ByteOffset
8) ByteOffset -> ByteOffset -> ByteOffset
forall a. Num a => a -> a -> a
+ ((ByteOffset
8))
{-# LINE 96 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

offsetStgBCOFramePtrs :: ByteOffset
offsetStgBCOFramePtrs :: ByteOffset
offsetStgBCOFramePtrs = (ByteOffset
16) ByteOffset -> ByteOffset -> ByteOffset
forall a. Num a => a -> a -> a
+ ((ByteOffset
8))
{-# LINE 99 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

offsetStgBCOFrameArity :: ByteOffset
offsetStgBCOFrameArity :: ByteOffset
offsetStgBCOFrameArity = (ByteOffset
24) ByteOffset -> ByteOffset -> ByteOffset
forall a. Num a => a -> a -> a
+ ((ByteOffset
8))
{-# LINE 102 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

offsetStgBCOFrameSize :: ByteOffset
offsetStgBCOFrameSize :: ByteOffset
offsetStgBCOFrameSize = (ByteOffset
28) ByteOffset -> ByteOffset -> ByteOffset
forall a. Num a => a -> a -> a
+ ((ByteOffset
8))
{-# LINE 105 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

offsetStgClosurePayload :: WordOffset
offsetStgClosurePayload :: WordOffset
offsetStgClosurePayload = ByteOffset -> WordOffset
byteOffsetToWordOffset (ByteOffset -> WordOffset) -> ByteOffset -> WordOffset
forall a b. (a -> b) -> a -> b
$
  (ByteOffset
0) ByteOffset -> ByteOffset -> ByteOffset
forall a. Num a => a -> a -> a
+ ((ByteOffset
8))
{-# LINE 109 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

sizeStgClosure :: Int
sizeStgClosure :: Int
sizeStgClosure = Int -> Int
bytesToWords ((Int
8))
{-# LINE 112 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}

byteOffsetToWordOffset :: ByteOffset -> WordOffset
byteOffsetToWordOffset :: ByteOffset -> WordOffset
byteOffsetToWordOffset = Int -> WordOffset
WordOffset (Int -> WordOffset)
-> (ByteOffset -> Int) -> ByteOffset -> WordOffset
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Int -> Int
bytesToWords (Int -> Int) -> (ByteOffset -> Int) -> ByteOffset -> Int
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Integer -> Int
forall a. Num a => Integer -> a
fromInteger (Integer -> Int) -> (ByteOffset -> Integer) -> ByteOffset -> Int
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ByteOffset -> Integer
forall a. Integral a => a -> Integer
toInteger

bytesToWords :: Int -> Int
bytesToWords :: Int -> Int
bytesToWords Int
b =
  if Int
b Int -> Int -> Int
forall a. Integral a => a -> a -> a
`mod` Int
bytesInWord Int -> Int -> Bool
forall a. Eq a => a -> a -> Bool
== Int
0 then
      Int -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> Int) -> Int -> Int
forall a b. (a -> b) -> a -> b
$ Int
b Int -> Int -> Int
forall a. Integral a => a -> a -> a
`div` Int
bytesInWord
    else
      String -> Int
forall a. HasCallStack => String -> a
error String
"Unexpected struct alignment!"

bytesInWord :: Int
bytesInWord :: Int
bytesInWord = (Int
8)
{-# LINE 125 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}


{-# LINE 127 "libraries/ghc-heap/GHC/Exts/Stack/Constants.hsc" #-}