
#16039: 'GHC.Magic.noinline <var>' should not float out
-------------------------------------+-------------------------------------
Reporter: heisenbug | Owner: (none)
Type: bug | Status: new
Priority: normal | Milestone: 8.8.1
Component: Compiler | Version: 8.2.1
Keywords: FloatOut | Operating System: Unknown/Multiple
Architecture: | Type of failure: None/Unknown
Unknown/Multiple |
Test Case: | Blocked By:
Blocking: | Related Tickets: #15155
Differential Rev(s): | Wiki Page:
-------------------------------------+-------------------------------------
While working on #15155, I discovered that the magic function
`GHC.Magic.noinline` tricked the float-out transformation into performing
undesirable operations:
Looking at the Core produced:
{{{#!hs
{ ghc-prim-0.5.3:GHC.Types.I# x_azMX [Dmd=] ->
case x_azMX of {
__DEFAULT -> jump $j_sMly;
3674937295934324920# ->
src