Re: Weird "missing hi file" problem with a serializable Core patch

2020-09-17 Thread Sylvain Henry
By the time we do CorePrep, the hi files should already have been written. I don't think so. When we generate real code we write the interface after the backend has generated the output object. See Note [Writing interface files] in GHC.Driver.Main Cheers, Sylvain On 17/09/2020 12:17, Cheng

Re: Weird "missing hi file" problem with a serializable Core patch

2020-09-17 Thread Cheng Shao
Hi Ben, The -ddump-if-trace output is attached here. The error is produced when compiling GHC.Types in ghc-prim. > Note that interface files are written after the Core pipeline is run. Sorry for the confusion, I didn't mean the Core simplifier pipeline. I mean the "Core -> Iface -> Core"

Re: Weird "missing hi file" problem with a serializable Core patch

2020-09-16 Thread Ben Gamari
Cheng Shao writes: > Hi all, > > Following a short chat in #ghc last week, I did a first attempt of > reusing existing Iface logic to implement serialization for > codegen-related Core. The implementation is included in the attached > patch (~100 loc). As a quick and dirty validation of whether

Re: Weird "missing hi file" problem with a serializable Core patch

2020-09-16 Thread Cheng Shao
Thanks Brandon, I checked the strace log and before the error is written, there's a log entry: openat(AT_FDCWD, "_build/stage1/libraries/ghc-prim/build/GHC/Types.hi", O_RDONLY|O_NOCTTY|O_NONBLOCK) = -1 ENOENT (No such file or directory) So it looks like GHC is indeed looking at the correct hi

Re: Weird "missing hi file" problem with a serializable Core patch

2020-09-16 Thread Brandon Allbery
Without looking at the implementation, it looks to me like the filename is doubled for some reason. This may suggest places to look. On Wed, Sep 16, 2020 at 2:57 PM Cheng Shao wrote: > Hi all, > > Following a short chat in #ghc last week, I did a first attempt of > reusing existing Iface logic

Weird "missing hi file" problem with a serializable Core patch

2020-09-16 Thread Cheng Shao
Hi all, Following a short chat in #ghc last week, I did a first attempt of reusing existing Iface logic to implement serialization for codegen-related Core. The implementation is included in the attached patch (~100 loc). As a quick and dirty validation of whether it works, I also modified the