[GHC] #11792: Optimised unsafe FFI call can get wrong argument

GHC ghc-devs at haskell.org
Thu May 26 10:26:49 UTC 2016


#11792: Optimised unsafe FFI call can get wrong argument
-------------------------------------+-------------------------------------
        Reporter:  Szunti            |                Owner:
            Type:  bug               |               Status:  new
        Priority:  high              |            Milestone:
       Component:  Compiler          |              Version:  7.10.3
      Resolution:                    |             Keywords:
Operating System:  Unknown/Multiple  |         Architecture:
 Type of failure:  Incorrect result  |  Unknown/Multiple
  at runtime                         |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):  Phab:D2263
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by osa1):

 I still don't know how the register allocator works, but I realized
 something interesting. `CmmCall` has a field `cml_args_regs ::
 [GlobalReg]` for the arguments that are passed to the function, but
 `CmmUnsafeForeignCall` doesn't have anything like that. Shouldn't it have
 the same thing to be used in register allocation?

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/11792#comment:12>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list