
#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