#5567: LLVM: Improve alias analysis / performance
---------------------------------+------------------------------------------
    Reporter:  dterei            |       Owner:  dterei                 
        Type:  task              |      Status:  new                    
    Priority:  normal            |   Milestone:  7.6.1                  
   Component:  Compiler (LLVM)   |     Version:                         
    Keywords:                    |          Os:  Unknown/Multiple       
Architecture:  Unknown/Multiple  |     Failure:  Runtime performance bug
  Difficulty:                    |    Testcase:                         
   Blockedby:                    |    Blocking:                         
     Related:                    |  
---------------------------------+------------------------------------------

Comment(by dterei):

 OK, tried this benchmark:

 {{{
 module Main(main) where

 import Data.Array.Base
 import Data.Array.IO
 import Data.Array.MArray

 main :: IO ()
 main = do
     arr <- newArray_ (0, 200)
     go arr 2 0 100

 go :: IOUArray Int Int -> Int -> Int -> Int -> IO ()
 go arr stride x y | x < y     = do unsafeWrite arr (x * stride) 1337
                                    go arr stride (x + 1) y
                              | otherwise = return ()
 }}}

 And not working as I seem to be adding the TBAA info wrong. I think we
 need an unknown type (for pointers loaded from RX registers) that doesn't
 alias Sp.

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

_______________________________________________
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs

Reply via email to