summaryrefslogtreecommitdiff
path: root/compiler
diff options
context:
space:
mode:
Diffstat (limited to 'compiler')
-rw-r--r--compiler/GHC/Driver/Main.hs6
-rw-r--r--compiler/GHC/Driver/Pipeline/Execute.hs2
2 files changed, 4 insertions, 4 deletions
diff --git a/compiler/GHC/Driver/Main.hs b/compiler/GHC/Driver/Main.hs
index 7fd07d31cf..b1f2b2bdac 100644
--- a/compiler/GHC/Driver/Main.hs
+++ b/compiler/GHC/Driver/Main.hs
@@ -1731,8 +1731,8 @@ hscInteractive hsc_env cgguts location = do
------------------------------
-hscCompileCmmFile :: HscEnv -> FilePath -> FilePath -> IO (Maybe FilePath)
-hscCompileCmmFile hsc_env filename output_filename = runHsc hsc_env $ do
+hscCompileCmmFile :: HscEnv -> FilePath -> FilePath -> FilePath -> IO (Maybe FilePath)
+hscCompileCmmFile hsc_env original_filename filename output_filename = runHsc hsc_env $ do
let dflags = hsc_dflags hsc_env
logger = hsc_logger hsc_env
hooks = hsc_hooks hsc_env
@@ -1743,7 +1743,7 @@ hscCompileCmmFile hsc_env filename output_filename = runHsc hsc_env $ do
do_info_table = gopt Opt_InfoTableMap dflags
-- Make up a module name to give the NCG. We can't pass bottom here
-- lest we reproduce #11784.
- mod_name = mkModuleName $ "Cmm$" ++ FilePath.takeFileName filename
+ mod_name = mkModuleName $ "Cmm$" ++ original_filename
cmm_mod = mkHomeModule home_unit mod_name
(cmm, ents) <- ioMsgMaybe
$ do
diff --git a/compiler/GHC/Driver/Pipeline/Execute.hs b/compiler/GHC/Driver/Pipeline/Execute.hs
index da214cdc20..4f2c30c5a7 100644
--- a/compiler/GHC/Driver/Pipeline/Execute.hs
+++ b/compiler/GHC/Driver/Pipeline/Execute.hs
@@ -128,7 +128,7 @@ runPhase (T_Cmm pipe_env hsc_env input_fn) = do
let dflags = hsc_dflags hsc_env
let next_phase = hscPostBackendPhase HsSrcFile (backend dflags)
output_fn <- phaseOutputFilenameNew next_phase pipe_env hsc_env Nothing
- mstub <- hscCompileCmmFile hsc_env input_fn output_fn
+ mstub <- hscCompileCmmFile hsc_env (src_filename pipe_env) input_fn output_fn
stub_o <- mapM (compileStub hsc_env) mstub
let foreign_os = maybeToList stub_o
return (foreign_os, output_fn)