[GHC] #8871: No-op assignment I64[BaseReg + 784] = I64[BaseReg + 784]; is generated into optimized Cmm

GHC ghc-devs at haskell.org
Mon Mar 10 09:54:09 UTC 2014


#8871: No-op assignment I64[BaseReg + 784] = I64[BaseReg + 784]; is generated into
optimized Cmm
-------------------------------------+------------------------------------
        Reporter:  kgardas           |            Owner:
            Type:  bug               |           Status:  new
        Priority:  normal            |        Milestone:
       Component:  Compiler          |          Version:  7.9
      Resolution:                    |         Keywords:
Operating System:  Unknown/Multiple  |     Architecture:  Unknown/Multiple
 Type of failure:  Other             |       Difficulty:  Unknown
       Test Case:                    |       Blocked By:
        Blocking:                    |  Related Tickets:
-------------------------------------+------------------------------------

Comment (by kgardas):

 Replying to [comment:1 simonpj]:
 > Are you using -O?  Can you give your command line and output of `-ddump-
 cmm`?

 Yes, see the command-line and also see attached files. BTW, I'm able to
 also reproduce this on PPC 32bit as I wrote. This is by using my
 simplified example above:
 {{{
 $ grep "I64" T7507d_64-O-ppc.opt-cmm|grep Base
           I64[BaseReg + 784] = _s317::I64;
           I64[BaseReg + 784] = _s31d::I64;
           I64[BaseReg + 784] = 1 :: W64;
           I64[BaseReg + 784] = I64[BaseReg + 784];
           I64[Hp - 4] = I64[BaseReg + 784];
           I64[Sp - 8] = I64[BaseReg + 784];
 }}}
 you see the line in the middle of grep...

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


More information about the ghc-tickets mailing list