Changes between Version 20 and Version 21 of Commentary/Compiler/Backends/LLVM/WIP


Ignore:
Timestamp:
Apr 6, 2012 8:40:01 PM (2 years ago)
Author:
dterei
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Commentary/Compiler/Backends/LLVM/WIP

    v20 v21  
    1717 
    1818=== LLVM Alias Analysis Pass === 
     19 
     20'''Update: This has been implemented, needs more work though''' 
    1921 
    2022LLVM doesn't seem to do a very good job of figuring out what can alias what in the code generated by GHC. We should write our own alias analysis pass to fix this. 
     
    5658=== Don't Pass Around Dead STG Registers === 
    5759 
     60'''Update: This has been implemented''' 
     61 
    5862At the moment in the LLVM backend we always pass around the pinned STG registers as arguments for every Cmm function. A huge amount of the time though we aren't storing anything in the STG registers, they are dead really. If we can treat the correctly as dead then LLVM will have more free registers and the allocator should do a better job. We need to change the STG -> Cmm code generator to attach register liveness information at function exit points (e.g calls, jumps, returns). 
    5963