diff options
Diffstat (limited to 'compiler/llvmGen/LlvmCodeGen/Regs.hs')
-rw-r--r-- | compiler/llvmGen/LlvmCodeGen/Regs.hs | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/compiler/llvmGen/LlvmCodeGen/Regs.hs b/compiler/llvmGen/LlvmCodeGen/Regs.hs index b0c63a4c34..ecce7a317b 100644 --- a/compiler/llvmGen/LlvmCodeGen/Regs.hs +++ b/compiler/llvmGen/LlvmCodeGen/Regs.hs @@ -3,7 +3,7 @@ -- module LlvmCodeGen.Regs ( - lmGlobalRegArg, lmGlobalRegVar + lmGlobalRegArg, lmGlobalRegVar, alwaysLive ) where #include "HsVersions.h" @@ -24,7 +24,7 @@ lmGlobalRegArg = lmGlobalReg "_Arg" {- Need to make sure the names here can't conflict with the unique generated names. Uniques generated names containing only base62 chars. So using say - the '_' char guarantees this. + the '_' char guarantees this. -} lmGlobalReg :: String -> GlobalReg -> LlvmVar lmGlobalReg suf reg @@ -55,3 +55,7 @@ lmGlobalReg suf reg floatGlobal name = LMNLocalVar (fsLit name) LMFloat doubleGlobal name = LMNLocalVar (fsLit name) LMDouble +-- | A list of STG Registers that should always be considered alive +alwaysLive :: [GlobalReg] +alwaysLive = [BaseReg, Sp, Hp, SpLim, HpLim, node] + |