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
84dc1adf
Commit
84dc1adf
authored
Sep 16, 2008
by
rl@cse.unsw.edu.au
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Improve handling of -fdph-* flags
parent
9c966bfa
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
12 additions
and
11 deletions
+12
-11
compiler/main/DynFlags.hs
compiler/main/DynFlags.hs
+9
-3
compiler/vectorise/Vectorise.hs
compiler/vectorise/Vectorise.hs
+3
-8
No files found.
compiler/main/DynFlags.hs
View file @
84dc1adf
...
...
@@ -21,7 +21,7 @@ module DynFlags (
Option
(
..
),
DynLibLoader
(
..
),
fFlags
,
xFlags
,
DPHBackend
(
..
)
,
dphPackage
,
-- ** Manipulating DynFlags
defaultDynFlags
,
-- DynFlags
...
...
@@ -892,7 +892,7 @@ data CoreToDo -- These are diff core-to-core passes,
|
CoreCSE
|
CoreDoRuleCheck
Int
{-CompilerPhase-}
String
-- Check for non-application of rules
-- matching this string
|
CoreDoVectorisation
DPHBacken
d
|
CoreDoVectorisation
PackageI
d
|
CoreDoNothing
-- Useful when building up
|
CoreDoPasses
[
CoreToDo
]
-- lists of these things
...
...
@@ -947,7 +947,7 @@ getCoreToDo dflags
vectorisation
=
runWhen
(
dopt
Opt_Vectorise
dflags
)
$
CoreDoPasses
[
simpl_gently
,
CoreDoVectorisation
(
dph
Backend
dflags
)
]
$
CoreDoPasses
[
simpl_gently
,
CoreDoVectorisation
(
dph
Package
dflags
)
]
-- By default, we have 2 phases before phase 0.
...
...
@@ -1888,6 +1888,12 @@ setDPHBackend backend
dph_packages
DPHPar
=
[
"dph-prim-par"
,
"dph-par"
]
dph_packages
DPHSeq
=
[
"dph-prim-seq"
,
"dph-seq"
]
dphPackage
::
DynFlags
->
PackageId
dphPackage
dflags
=
case
dphBackend
dflags
of
DPHPar
->
dphParPackageId
DPHSeq
->
dphSeqPackageId
DPHThis
->
thisPackage
dflags
setMainIs
::
String
->
DynP
()
setMainIs
arg
|
not
(
null
main_fn
)
&&
isLower
(
head
main_fn
)
...
...
compiler/vectorise/Vectorise.hs
View file @
84dc1adf
...
...
@@ -10,7 +10,7 @@ import VectCore
import
DynFlags
import
HscTypes
hiding
(
MonadThings
(
..
)
)
import
Module
(
dphSeqPackageId
,
dphPar
PackageId
)
import
Module
(
PackageId
)
import
CoreLint
(
showPass
,
endPass
)
import
CoreSyn
import
CoreUtils
...
...
@@ -37,24 +37,19 @@ import FastString
import
Control.Monad
(
liftM
,
liftM2
,
zipWithM
)
import
Data.List
(
sortBy
,
unzip4
)
vectorise
::
DPHBacken
d
->
HscEnv
->
UniqSupply
->
RuleBase
->
ModGuts
vectorise
::
PackageI
d
->
HscEnv
->
UniqSupply
->
RuleBase
->
ModGuts
->
IO
(
SimplCount
,
ModGuts
)
vectorise
backend
hsc_env
_
_
guts
=
do
showPass
dflags
"Vectorisation"
eps
<-
hscEPS
hsc_env
let
info
=
hptVectInfo
hsc_env
`
plusVectInfo
`
eps_vect_info
eps
Just
(
info'
,
guts'
)
<-
initV
(
backendPackage
backend
)
hsc_env
guts
info
(
vectModule
guts
)
Just
(
info'
,
guts'
)
<-
initV
backend
hsc_env
guts
info
(
vectModule
guts
)
endPass
dflags
"Vectorisation"
Opt_D_dump_vect
(
mg_binds
guts'
)
return
(
zeroSimplCount
dflags
,
guts'
{
mg_vect_info
=
info'
})
where
dflags
=
hsc_dflags
hsc_env
backendPackage
DPHSeq
=
dphSeqPackageId
backendPackage
DPHPar
=
dphParPackageId
backendPackage
DPHThis
=
thisPackage
dflags
vectModule
::
ModGuts
->
VM
ModGuts
vectModule
guts
=
do
...
...
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