[GHC] #9142: LLVM HEAD rejects aliases used by LLVM codegen
GHC
ghc-devs at haskell.org
Sat May 24 19:43:45 UTC 2014
#9142: LLVM HEAD rejects aliases used by LLVM codegen
------------------------------------+-------------------------------------
Reporter: bgamari | Owner:
Type: bug | Status: new
Priority: high | Milestone:
Component: Compiler | Version: 7.8.2
Keywords: | Operating System: Unknown/Multiple
Architecture: Unknown/Multiple | Type of failure: None/Unknown
Difficulty: Unknown | Test Case:
Blocked By: | Blocking:
Related Tickets: |
------------------------------------+-------------------------------------
LLVM HEAD has [https://github.com/llvm-
mirror/llvm/commit/38048cdb1c016e1429004ddf4adfa40a8d853cbf changed] the
behavior of aliases to reject references to things other than definitions.
This unfortunately means that the handling of externs breaks,
{{{
"inplace/bin/ghc-stage1" -static -H64m -O0 -fllvm -Iincludes
-Iincludes/dist -Iincludes/dist-derivedconstants/header -Iincludes/dist-
ghcconstants/header -Irts -Irts/dist/build -DCOMPILING_RTS -package-name
rts -dcmm-lint -i -irts -irts/dist/build -irts/dist/build/autogen
-Irts/dist/build -Irts/dist/build/autogen -O2 -c
rts/Apply.cmm -o rts/dist/build/Apply.o
You are using a new version of LLVM that hasn't been tested yet!
We will try though...
Alias must point to a definition
i8* @"barf$alias"
Alias must point to a definition
i8* @"stg_gc_unpt_r1$alias"
Alias must point to a definition
i8* @"stg_apply_interp_info$alias"
Alias must point to a definition
i8* @"stg_yield_to_interpreter$alias"
Alias must point to a definition
i8* @"stg_ap_stack_entries$alias"
Alias must point to a definition
i8* @"__stg_gc_enter_1$alias"
Alias must point to a definition
i8* @"stg_upd_frame_info$alias"
LLVM ERROR: Broken module found, compilation aborted!
}}}
In reference to the following aliases,.
{{{
@barf = external global i8
@barf$alias = alias private i8* @barf
@stg_gc_unpt_r1 = external global i8
@stg_gc_unpt_r1$alias = alias private i8* @stg_gc_unpt_r1
@stg_apply_interp_info = external global i8
@stg_apply_interp_info$alias = alias private i8* @stg_apply_interp_info
@stg_yield_to_interpreter = external global i8
@stg_yield_to_interpreter$alias = alias private i8*
@stg_yield_to_interpreter
@stg_ap_stack_entries = external global i8
@stg_ap_stack_entries$alias = alias private i8* @stg_ap_stack_entries
@__stg_gc_enter_1 = external global i8
@__stg_gc_enter_1$alias = alias private i8* @__stg_gc_enter_1
@stg_upd_frame_info = external global i8
@stg_upd_frame_info$alias = alias private i8* @stg_upd_frame_info
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9142>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list