Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
Glasgow Haskell Compiler
GHC
Commits
e3d1ba74
Commit
e3d1ba74
authored
Jul 29, 2010
by
simonpj@microsoft.com
Browse files
Add two local type signatures
parent
64f79adc
Changes
2
Hide whitespace changes
Inline
Side-by-side
compiler/cmm/Cmm.hs
View file @
e3d1ba74
...
...
@@ -258,18 +258,22 @@ data CmmSafety = CmmUnsafe | CmmSafe C_SRT
-- | enable us to fold used registers over 'CmmActuals' and 'CmmFormals'
instance
UserOfLocalRegs
CmmStmt
where
foldRegsUsed
f
set
s
=
stmt
s
set
where
stmt
(
CmmNop
)
=
id
stmt
(
CmmComment
{})
=
id
stmt
(
CmmAssign
_
e
)
=
gen
e
stmt
(
CmmStore
e1
e2
)
=
gen
e1
.
gen
e2
stmt
(
CmmCall
target
_
es
_
_
)
=
gen
target
.
gen
es
stmt
(
CmmBranch
_
)
=
id
stmt
(
CmmCondBranch
e
_
)
=
gen
e
stmt
(
CmmSwitch
e
_
)
=
gen
e
stmt
(
CmmJump
e
es
)
=
gen
e
.
gen
es
stmt
(
CmmReturn
es
)
=
gen
es
gen
a
set
=
foldRegsUsed
f
set
a
foldRegsUsed
f
(
set
::
b
)
s
=
stmt
s
set
where
stmt
::
CmmStmt
->
b
->
b
stmt
(
CmmNop
)
=
id
stmt
(
CmmComment
{})
=
id
stmt
(
CmmAssign
_
e
)
=
gen
e
stmt
(
CmmStore
e1
e2
)
=
gen
e1
.
gen
e2
stmt
(
CmmCall
target
_
es
_
_
)
=
gen
target
.
gen
es
stmt
(
CmmBranch
_
)
=
id
stmt
(
CmmCondBranch
e
_
)
=
gen
e
stmt
(
CmmSwitch
e
_
)
=
gen
e
stmt
(
CmmJump
e
es
)
=
gen
e
.
gen
es
stmt
(
CmmReturn
es
)
=
gen
es
gen
::
UserOfLocalRegs
a
=>
a
->
b
->
b
gen
a
set
=
foldRegsUsed
f
set
a
instance
UserOfLocalRegs
CmmCallTarget
where
foldRegsUsed
f
set
(
CmmCallee
e
_
)
=
foldRegsUsed
f
set
e
...
...
compiler/cmm/PprCmm.hs
View file @
e3d1ba74
...
...
@@ -265,6 +265,8 @@ pprStmt stmt = case stmt of
pp_lhs
|
null
results
=
empty
|
otherwise
=
commafy
(
map
ppr_ar
results
)
<+>
equals
-- Don't print the hints on a native C-- call
ppr_ar
::
Outputable
a
=>
CmmHinted
a
->
SDoc
ppr_ar
(
CmmHinted
ar
k
)
=
case
cconv
of
CmmCallConv
->
ppr
ar
_
->
ppr
(
ar
,
k
)
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment