[GHC] #11395: The via-C code generation backend is incompatible with gcc 5.3.1 on m68k (ELF)
GHC
ghc-devs at haskell.org
Tue Mar 8 08:12:55 UTC 2016
#11395: The via-C code generation backend is incompatible with gcc 5.3.1 on m68k
(ELF)
--------------------------------------------+------------------------------
Reporter: mkarcher | Owner:
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 7.10.2
Resolution: | Keywords:
Operating System: Linux | Architecture: m68k
Type of failure: GHC doesn't work at all | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
--------------------------------------------+------------------------------
Comment (by Sergei Trofimovich <siarheit@…>):
In [changeset:"90e1e160b783644c2d3cc0a05e3a804cea549cf9/ghc"
90e1e160/ghc]:
{{{
#!CommitTicketReference repository="ghc"
revision="90e1e160b783644c2d3cc0a05e3a804cea549cf9"
Split external symbol prototypes (EF_) (Trac #11395)
Before the patch both Cmm and C symbols were declared
with 'EF_' macro:
#define EF_(f) extern StgFunPtr f()
but for Cmm symbols we know exact prototypes.
The patch splits there prototypes in to:
#define EFF_(f) void f() /* See Note [External function prototypes]
*/
#define EF_(f) StgFunPtr f(void)
Cmm functions are 'EF_' (External Functions),
C functions are 'EFF_' (External Foreign Functions).
While at it changed external C function prototype
to return 'void' to workaround ghc bug on m68k.
Described in detail in Trac #11395.
This makes simple tests work on m68k-linux target!
Thanks to Michael Karcher for awesome analysis
happening in Trac #11395.
Signed-off-by: Sergei Trofimovich <siarheit at google.com>
Test Plan: ran "hello world" on m68k successfully
Reviewers: simonmar, austin, bgamari
Reviewed By: bgamari
Subscribers: thomie
Differential Revision: https://phabricator.haskell.org/D1975
GHC Trac Issues: #11395
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/11395#comment:22>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list