[Git][ghc/ghc][wip/T22834] nativeGen: Explicitly set section types

Ben Gamari (@bgamari) gitlab at gitlab.haskell.org
Wed Jan 25 17:10:43 UTC 2023



Ben Gamari pushed to branch wip/T22834 at Glasgow Haskell Compiler / GHC


Commits:
a7c0381a by Ben Gamari at 2023-01-25T12:10:36-05:00
nativeGen: Explicitly set section types

TODO

- - - - -


2 changed files:

- .gitlab/gen_ci.hs
- compiler/GHC/CmmToAsm/Ppr.hs


Changes:

=====================================
.gitlab/gen_ci.hs
=====================================
@@ -196,9 +196,6 @@ vanilla = BuildConfig
   , noSplitSections = False
   }
 
-splitSectionsBroken :: BuildConfig -> BuildConfig
-splitSectionsBroken bc = bc { noSplitSections = True }
-
 nativeInt :: BuildConfig
 nativeInt = vanilla { bignumBackend = Native }
 
@@ -859,10 +856,10 @@ job_groups =
      , disableValidate (standardBuilds Amd64 (Linux Debian11))
      -- We still build Deb9 bindists for now due to Ubuntu 18 and Linux Mint 19
      -- not being at EOL until April 2023 and they still need tinfo5.
-     , disableValidate (standardBuildsWithConfig Amd64 (Linux Debian9) (splitSectionsBroken vanilla))
+     , disableValidate (standardBuildsWithConfig Amd64 (Linux Debian9) vanilla)
      , disableValidate (standardBuilds Amd64 (Linux Ubuntu2004))
      , disableValidate (standardBuilds Amd64 (Linux Rocky8))
-     , disableValidate (standardBuildsWithConfig Amd64 (Linux Centos7) (splitSectionsBroken vanilla))
+     , disableValidate (standardBuildsWithConfig Amd64 (Linux Centos7) vanilla)
      -- Fedora33 job is always built with perf so there's one job in the normal
      -- validate pipeline which is built with perf.
      , standardBuildsWithConfig Amd64 (Linux Fedora33) releaseConfig
@@ -874,10 +871,10 @@ job_groups =
      , standardBuilds Amd64 Darwin
      , allowFailureGroup (addValidateRule FreeBSDLabel (standardBuilds Amd64 FreeBSD13))
      , standardBuilds AArch64 Darwin
-     , standardBuildsWithConfig AArch64 (Linux Debian10) (splitSectionsBroken vanilla)
+     , standardBuildsWithConfig AArch64 (Linux Debian10) vanilla
      , disableValidate (validateBuilds AArch64 (Linux Debian10) llvm)
-     , standardBuildsWithConfig I386 (Linux Debian9) (splitSectionsBroken vanilla)
-     , standardBuildsWithConfig Amd64 (Linux Alpine) (splitSectionsBroken static)
+     , standardBuildsWithConfig I386 (Linux Debian9) vanilla
+     , standardBuildsWithConfig Amd64 (Linux Alpine) static
      , disableValidate (allowFailureGroup (standardBuildsWithConfig Amd64 (Linux Alpine) staticNativeInt))
      , validateBuilds Amd64 (Linux Debian11) (crossConfig "aarch64-linux-gnu" (Emulator "qemu-aarch64 -L /usr/aarch64-linux-gnu") Nothing)
      , validateBuilds Amd64 (Linux Debian11) (crossConfig "js-unknown-ghcjs" NoEmulatorNeeded (Just "emconfigure")


=====================================
compiler/GHC/CmmToAsm/Ppr.hs
=====================================
@@ -248,6 +248,7 @@ pprGNUSectionHeader config t suffix =
       Text
         | OSMinGW32 <- platformOS platform
                     -> text ",\"xr\""
+        | otherwise -> text ",\"ax\"," <> sectionType platform "progbits"
       CString
         | OSMinGW32 <- platformOS platform
                     -> empty



View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/a7c0381a59ded7b875164eb6314d25ac2f085d4e

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/a7c0381a59ded7b875164eb6314d25ac2f085d4e
You're receiving this email because of your account on gitlab.haskell.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-commits/attachments/20230125/2cb5538f/attachment-0001.html>


More information about the ghc-commits mailing list