Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
GHC
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Iterations
Merge Requests
0
Merge Requests
0
Requirements
Requirements
List
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Package Registry
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issue
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Alex D
GHC
Commits
987710c1
Commit
987710c1
authored
Sep 20, 2012
by
Simon Marlow
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
non-tablesNextToCode fix for returns in the new codegen
parent
448ad24f
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
4 additions
and
7 deletions
+4
-7
compiler/cmm/MkGraph.hs
compiler/cmm/MkGraph.hs
+1
-6
compiler/codeGen/StgCmmLayout.hs
compiler/codeGen/StgCmmLayout.hs
+3
-1
No files found.
compiler/cmm/MkGraph.hs
View file @
987710c1
...
...
@@ -11,7 +11,7 @@ module MkGraph
,
mkJumpReturnsTo
,
mkJump
,
mkDirectJump
,
mkForeignJump
,
mkForeignJumpExtra
,
mkJumpGC
,
mkCbranch
,
mkSwitch
,
mkReturn
,
mk
ReturnSimple
,
mk
Comment
,
mkCallEntry
,
mkBranch
,
mkReturn
,
mkComment
,
mkCallEntry
,
mkBranch
,
copyInOflow
,
copyOutOflow
,
noExtraStack
,
toCall
,
Transfer
(
..
)
...
...
@@ -228,11 +228,6 @@ mkReturn dflags e actuals updfr_off =
lastWithArgs
dflags
Ret
Old
NativeReturn
actuals
updfr_off
$
toCall
e
Nothing
updfr_off
0
mkReturnSimple
::
DynFlags
->
[
CmmActual
]
->
UpdFrameOffset
->
CmmAGraph
mkReturnSimple
dflags
actuals
updfr_off
=
mkReturn
dflags
e
actuals
updfr_off
where
e
=
CmmLoad
(
CmmStackSlot
Old
updfr_off
)
(
gcWord
dflags
)
mkBranch
::
BlockId
->
CmmAGraph
mkBranch
bid
=
mkLast
(
CmmBranch
bid
)
...
...
compiler/codeGen/StgCmmLayout.hs
View file @
987710c1
...
...
@@ -85,7 +85,9 @@ emitReturn results
;
case
sequel
of
Return
_
->
do
{
adjustHpBackwards
;
emit
(
mkReturnSimple
dflags
results
updfr_off
)
}
;
let
e
=
CmmLoad
(
CmmStackSlot
Old
updfr_off
)
(
gcWord
dflags
)
;
emit
(
mkReturn
dflags
(
entryCode
dflags
e
)
results
updfr_off
)
}
AssignTo
regs
adjust
->
do
{
when
adjust
adjustHpBackwards
;
emitMultiAssign
regs
results
}
...
...
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