[GHC] #14677: Code generator does not correctly tag a pointer
GHC
ghc-devs at haskell.org
Fri Jan 26 12:31:32 UTC 2018
#14677: Code generator does not correctly tag a pointer
-------------------------------------+-------------------------------------
Reporter: simonpj | Owner: (none)
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 8.2.2
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
| Unknown/Multiple
Type of failure: None/Unknown | Test Case:
Blocked By: | Blocking: 14626
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by heisenbug):
Replying to [comment:20 alexbiehl]:
> Gabor,
>
> see https://github.com/ghc/ghc/blob/master/rts/StgMiscClosures.cmm#L268.
Take the indirectee, untag and enter. (Btw. why do we untag the value and
enter, wouldn't we want to just return R1 if it is tagged?)
So `StgInd_indirectee` grabs the value `evtWrite1_r3aU_closure+1` (why the
two zeroes behind that???).
If we (could?) know that `evtWrite_closure` just redirects to that, why
not perform the redirection at Cmm-gen time? The unfolding TMPL surely
gives a hint how to do it!
>
> edit: (entering the indirectee makes sense to reduce chains of
IND_STATICs to the static value)
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/14677#comment:21>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list