Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Open sidebar
Glasgow Haskell Compiler
GHC
Commits
bbd85751
Commit
bbd85751
authored
Sep 17, 2007
by
nr@eecs.harvard.edu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
added 'filterRegsUsed' to CmmExpr
parent
b2acf7a7
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
6 additions
and
1 deletion
+6
-1
compiler/cmm/CmmExpr.hs
compiler/cmm/CmmExpr.hs
+6
-1
No files found.
compiler/cmm/CmmExpr.hs
View file @
bbd85751
...
...
@@ -5,7 +5,7 @@ module CmmExpr
,
CmmLit
(
..
),
cmmLitRep
,
LocalReg
(
..
),
localRegRep
,
localRegGCFollow
,
GCKind
(
..
)
,
GlobalReg
(
..
),
globalRegRep
,
spReg
,
hpReg
,
spLimReg
,
nodeReg
,
node
,
UserOfLocalRegs
,
foldRegsUsed
,
UserOfLocalRegs
,
foldRegsUsed
,
filterRegsUsed
,
RegSet
,
emptyRegSet
,
elemRegSet
,
extendRegSet
,
deleteFromRegSet
,
mkRegSet
,
plusRegSet
,
minusRegSet
,
timesRegSet
)
...
...
@@ -112,6 +112,11 @@ timesRegSet = intersectUniqSets
class
UserOfLocalRegs
a
where
foldRegsUsed
::
(
b
->
LocalReg
->
b
)
->
b
->
a
->
b
filterRegsUsed
::
UserOfLocalRegs
e
=>
(
LocalReg
->
Bool
)
->
e
->
RegSet
filterRegsUsed
p
e
=
foldRegsUsed
(
\
regs
r
->
if
p
r
then
extendRegSet
regs
r
else
regs
)
emptyRegSet
e
instance
UserOfLocalRegs
CmmReg
where
foldRegsUsed
f
z
(
CmmLocal
reg
)
=
f
z
reg
foldRegsUsed
_
z
(
CmmGlobal
_
)
=
z
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a 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