diff options
author | Peter Trommler <ptrommler@acm.org> | 2020-05-26 12:08:56 +0200 |
---|---|---|
committer | Peter Trommler <ptrommler@acm.org> | 2020-05-26 12:10:16 +0200 |
commit | 9071c9ca069bb9a4c5f8fb5ebbf7bb6ad06b5a2a (patch) | |
tree | 19909cd381a938ccb842b378a36b8ff8ed5e5c94 | |
parent | cf772f19c06944f0fd03b4bdcd4a49e437084ba5 (diff) | |
download | haskell-wip/T18237.tar.gz |
PPC NCG: Fix .size directive on powerpc64 ELF v1wip/T18237
Thanks to Sergei Trofimovich for pointing out the issue.
Fixes #18237
-rw-r--r-- | compiler/GHC/CmmToAsm/PPC/Ppr.hs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/compiler/GHC/CmmToAsm/PPC/Ppr.hs b/compiler/GHC/CmmToAsm/PPC/Ppr.hs index 4ef5437b71..521d8e0a76 100644 --- a/compiler/GHC/CmmToAsm/PPC/Ppr.hs +++ b/compiler/GHC/CmmToAsm/PPC/Ppr.hs @@ -86,8 +86,13 @@ pprNatCmmDecl config proc@(CmmProc top_info lbl _ (ListGraph blocks)) = pprSizeDecl :: Platform -> CLabel -> SDoc pprSizeDecl platform lbl = if osElfTarget (platformOS platform) - then text "\t.size" <+> ppr lbl <> text ", .-" <> ppr lbl + then text "\t.size" <+> prettyLbl <> text ", .-" <> codeLbl else empty + where + prettyLbl = ppr lbl + codeLbl + | platformArch platform == ArchPPC_64 ELF_V1 = char '.' <> prettyLbl + | otherwise = prettyLbl pprFunctionDescriptor :: CLabel -> SDoc pprFunctionDescriptor lab = pprGloblDecl lab |