never executed always true always false
1 -- | Various utilities used in generating assembler.
2 --
3 -- These are used not only by the native code generator, but also by the
4 -- "GHC.Driver.Pipeline"
5 module GHC.Utils.Asm
6 ( sectionType
7 ) where
8
9 import GHC.Prelude
10
11 import GHC.Platform
12 import GHC.Utils.Outputable
13
14 -- | Generate a section type (e.g. @\@progbits@). See #13937.
15 sectionType :: Platform -- ^ Target platform
16 -> String -- ^ section type
17 -> SDoc -- ^ pretty assembler fragment
18 sectionType platform ty =
19 case platformArch platform of
20 ArchARM{} -> char '%' <> text ty
21 _ -> char '@' <> text ty