From: Michael D. Adams Date: Fri, 18 May 2007 13:20:31 +0000 (+0000) Subject: Added types CmmActuals and CmmFormals for function parameters to Cmm X-Git-Tag: Before_type_family_merge~651 X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=commitdiff_plain;h=c614ed092823906e3e71421f3767facd7a83a6cc Added types CmmActuals and CmmFormals for function parameters to Cmm --- diff --git a/compiler/cmm/Cmm.hs b/compiler/cmm/Cmm.hs index c2f8d48..d3bdead 100644 --- a/compiler/cmm/Cmm.hs +++ b/compiler/cmm/Cmm.hs @@ -10,7 +10,7 @@ module Cmm ( GenCmm(..), Cmm, GenCmmTop(..), CmmTop, GenBasicBlock(..), CmmBasicBlock, blockId, blockStmts, - CmmStmt(..), + CmmStmt(..), CmmActuals, CmmFormals, CmmCallTarget(..), CmmStatic(..), Section(..), CmmExpr(..), cmmExprRep, @@ -113,8 +113,8 @@ data CmmStmt | CmmCall -- A foreign call, with CmmCallTarget - [(CmmReg,MachHint)] -- zero or more results - [(CmmExpr,MachHint)] -- zero or more arguments + CmmFormals -- zero or more results + CmmActuals -- zero or more arguments (Maybe [GlobalReg]) -- Global regs that may need to be saved -- if they will be clobbered by the call. -- Nothing <=> save *all* globals that @@ -131,10 +131,13 @@ data CmmStmt -- Undefined outside range, and when there's a Nothing | CmmJump CmmExpr -- Jump to another function, - [(CmmExpr, MachHint)] -- with these parameters. + CmmActuals -- with these parameters. | CmmReturn -- Return from a function, - [(CmmExpr, MachHint)] -- with these return values. + CmmActuals -- with these return values. + +type CmmActuals = [(CmmExpr,MachHint)] +type CmmFormals = [(CmmReg,MachHint)] {- Discussion