Feed Advanced Search

Sat, Dec 8

Phyx added a comment to D5409: Hadrian: support extra libraries + dynamic GHC.

I don't know if it's related, but I tried twice but the build seems to fail with

Sat, Dec 8, 7:55 AM
Phyx added a comment to D5409: Hadrian: support extra libraries + dynamic GHC.

Just some small comments, I am waiting on the build to finish.

Sat, Dec 8, 2:52 AM

Fri, Dec 7

Phyx added a comment to D5409: Hadrian: support extra libraries + dynamic GHC.

Sure, I will take a look after work today

Fri, Dec 7, 1:16 AM

Tue, Dec 4

Phyx committed rGHCa8b7cef4d45a: linker: store entire link map and use it. (authored by Phyx).
linker: store entire link map and use it.
Tue, Dec 4, 1:17 AM
Phyx closed D5353: linker: store entire link map and use it..
Tue, Dec 4, 1:17 AM
Phyx committed rGHC924026e04053: Hadrian: include 'findPtr' via find-ptr cabal flag (authored by harpocrates).
Hadrian: include 'findPtr' via find-ptr cabal flag
Tue, Dec 4, 1:17 AM
Phyx closed D5404: Hadrian: include 'findPtr' via find-ptr cabal flag.
Tue, Dec 4, 1:17 AM
Phyx committed rGHC6090002e19d5: Improve test T14452 for Windows (authored by RolandSenn).
Improve test T14452 for Windows
Tue, Dec 4, 1:17 AM
Phyx closed D5398: Improve test T14452 for Windows.
Tue, Dec 4, 1:16 AM
Phyx updated the diff for D5353: linker: store entire link map and use it..

skip test when not dynway

Tue, Dec 4, 1:08 AM

Mon, Dec 3

Phyx added a comment to D5353: linker: store entire link map and use it..

Log:

Seems to build a ghc on macOS.

Previous issue was gcc/binutils and llvm/clang/xcode crossing paths.

Mon, Dec 3, 6:03 PM

Sun, Dec 2

Phyx added a comment to D5353: linker: store entire link map and use it..

It doesn't build for me; bails out with some rather weird linker errors.
I wouldn't put it past my system to be screwing me over here. I'll have to try in a clean room install again.

Sun, Dec 2, 2:21 PM
Phyx accepted D5404: Hadrian: include 'findPtr' via find-ptr cabal flag.

@alpmestan @harpocrates Thanks, From looking at the harbormaster build logs none of the linker tests that failed last time failed, and also this change should be find in that regard. So if it's ok with you @alpmestan it's fine with me too :)

Sun, Dec 2, 2:19 PM
Phyx accepted D5398: Improve test T14452 for Windows.

Next time for filtering like this though please use the normalisation facilities in the testsuite, that's a lot less fragile because the state of these core-utils programs tend to differ
between OSes, and they can be shadowed depending on the user's environment.

Sun, Dec 2, 2:13 PM

Thu, Nov 29

Phyx added inline comments to D5383: Windows: Use the "big" PE object format on amd64.
Thu, Nov 29, 12:22 PM
Phyx added a comment to D5353: linker: store entire link map and use it..

Yup that's fine, thanks!

Thu, Nov 29, 2:47 AM

Wed, Nov 28

Phyx added a comment to D5383: Windows: Use the "big" PE object format on amd64.

I think for the file in question we also generate a C stub for stable pointers.
It might happen when combining the stub and haskell code into one object file?

Wed, Nov 28, 4:39 PM
Phyx added a comment to D5383: Windows: Use the "big" PE object format on amd64.

what exactly was the error that made you think this was needed @bgamari ?

C://ghc//msys64//home//Andi//ghc_head//inplace//mingw//bin/as.exe: C:\\ghc\\msys64\\tmp\\ghc6664_0\\ghc_6.p_o: too many sections (32801)
C:\\ghc\\msys64\\tmp\\ghc6664_0\\ghc_1.s: Assembler messages:
C:\\ghc\\msys64\\tmp\\ghc6664_0\\ghc_1.s: Fatal error: can't write 4 bytes to section .rdata$c1w2b_str of C:\\ghc\\msys64\\tmp\\ghc6664_0\\ghc_6.p_o because: 'File too big'
C://ghc//msys64//home//Andi//ghc_head//inplace//mingw//bin/as.exe: C:\\ghc\\msys64\\tmp\\ghc6664_0\\ghc_6.p_o: too many sections (32801)
C:\\ghc\\msys64\\tmp\\ghc6664_0\\ghc_1.s: Fatal error: can't close C:\\ghc\\msys64\\tmp\\ghc6664_0\\ghc_6.p_o: File too big
`gcc.exe' failed in phase `Assembler'. (Exit code: 1)
make[1]: *** [libraries/template-haskell/ghc.mk:4: libraries/template-haskell/dist-install/build/Language/Haskell/TH/Syntax.p_o] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [Makefile:128: all] Error 2
Wed, Nov 28, 4:21 PM
Phyx added a comment to D5383: Windows: Use the "big" PE object format on amd64.

Yes, because of --oformat,pe-bigobj-x86-64, --oformat is used to set the output format, but there isn't such a format for PE (the name in bfd is a bit misleading). The bigobj is as the name implies a COFF format, e.g. only for object files.
--oformat,pe-bigobj-* is only needed if you're doing pre-linking with -r. For the final PE binary, there's no way you should have no# sections anywhere near the limit of of the PE file anyway, as the linker would have merged the subsections again.

Wed, Nov 28, 4:10 PM
Phyx added a comment to D5353: linker: store entire link map and use it..

@angerman would it be possible for you to check if this compiles for me on MacOS? It's not a platform I have access to. Thanks 🙂

Wed, Nov 28, 12:53 PM

Tue, Nov 27

Phyx added inline comments to D5383: Windows: Use the "big" PE object format on amd64.
Tue, Nov 27, 4:49 PM
Phyx added a comment to D5383: Windows: Use the "big" PE object format on amd64.

This is fine, I'm surprised the linker flag is needed though. Seems like an LD bug. Only question I have is about the 32 bit builds, I'm assuming non-prifiling builds don't have this issue but now gas will ignore -mbig-obj but ld will probably error out.

Tue, Nov 27, 2:02 AM

Thu, Nov 22

Phyx added a comment to D5356: rts.cabal.in: force inclusion of findPtr/_findPtr symbol only with debug flag.

@alpmestan no worries :) just a few more failures I need to look at and windows validates cleanly again.

Thu, Nov 22, 3:15 PM
Phyx added inline comments to D5364: rts: Fix bss initialization on Windows.
Thu, Nov 22, 10:49 AM

Wed, Nov 21

Phyx added a comment to D5170: RTS linker: don't crash early when not finding extra DLL, most likely it's not needed.

Is there any outstanding work here or is everyone happy?

Wed, Nov 21, 2:25 AM
Phyx accepted D5297: Mark broken tests on powerpc64le and skip ghci-ext.

LGTM, thanks @trommler

Wed, Nov 21, 2:24 AM

Tue, Nov 20

Phyx updated the diff for D5363: rts: fix Windows megablock allocator.

Move test changes to other diff

Tue, Nov 20, 6:12 PM
Phyx updated the diff for D5362: testuite: update more windows tests outputs.

Add some more tests

Tue, Nov 20, 6:05 PM
Phyx created D5364: rts: Fix bss initialization on Windows.
Tue, Nov 20, 5:54 PM
Phyx created D5363: rts: fix Windows megablock allocator.
Tue, Nov 20, 5:48 PM
Phyx created D5362: testuite: update more windows tests outputs.
Tue, Nov 20, 5:35 PM
Phyx accepted D5356: rts.cabal.in: force inclusion of findPtr/_findPtr symbol only with debug flag.
Tue, Nov 20, 5:24 PM
Phyx added a comment to D5356: rts.cabal.in: force inclusion of findPtr/_findPtr symbol only with debug flag.

Thanks @alpmestan the tests now pass again!

Tue, Nov 20, 5:24 PM
Phyx updated the Trac tickets for D5356: rts.cabal.in: force inclusion of findPtr/_findPtr symbol only with debug flag.
Tue, Nov 20, 5:23 PM

Mon, Nov 19

Phyx added a comment to D5356: rts.cabal.in: force inclusion of findPtr/_findPtr symbol only with debug flag.

Thanks @alpmestan I'll kick off a build to check.

Mon, Nov 19, 7:47 AM
Phyx added inline comments to D5353: linker: store entire link map and use it..
Mon, Nov 19, 3:49 AM
Phyx updated the diff for D5353: linker: store entire link map and use it..

Update comment

Mon, Nov 19, 3:48 AM

Sun, Nov 18

Phyx updated the diff for D5353: linker: store entire link map and use it..

Prevent builtin expansion.

Sun, Nov 18, 4:54 PM
Phyx created D5353: linker: store entire link map and use it..
Sun, Nov 18, 4:40 PM

Oct 27 2018

Phyx accepted D5253: plugins: search for .a files if necessary.

Thanks @sheaf!

Oct 27 2018, 2:10 AM

Oct 26 2018

Phyx added a comment to D5253: plugins: search for .a files if necessary.

Thanks @sheaf ! This looks good. Just one final small change and I'll accept it, you can combine the two list to simplify it,
move loc' to the same level as loc and combine them.

Oct 26 2018, 5:57 PM

Oct 25 2018

Phyx added a comment to D5253: plugins: search for .a files if necessary.

@RyanGlScott Yeah, looking at that ticket (same one @sheaf posted) seems to indicate that they are supported. I think you misunderstood the ticket @sheaf in that what it was attempting to solve was
that when DynWay isn't available, then ProfWay can't be either for plugins. But if Both DynWay and ProfWay are specified then it should work.

Oct 25 2018, 1:45 PM
Phyx updated subscribers of D5253: plugins: search for .a files if necessary.
In D5253#144953, @sheaf wrote:

Thanks Phyx.

I think you were right, much better to directly search for library paths instead of going through "packageHsLibs" and messing with the DynFlags to get the output we want. I hope this hasn't messed with anything on other platforms! It's working on my end (on Windows) at least.

Oct 25 2018, 12:40 PM

Oct 24 2018

Phyx requested changes to D5253: plugins: search for .a files if necessary.

Hi @sheaf Thanks for the patch.

Oct 24 2018, 1:42 PM

Oct 23 2018

Phyx committed rGHCfe5759b46cb9: fix end (authored by Phyx).
fix end
Oct 23 2018, 4:34 PM

Oct 5 2018

Phyx added a comment to D5175: Fix PE linker wibbles.

Thanks @bgamari

Oct 5 2018, 2:23 PM

Oct 3 2018

Phyx added a comment to D5175: Fix PE linker wibbles.

ping.

Oct 3 2018, 3:06 PM
Phyx added a comment to D5176: Update performance numbers on Windows.

ping.

Oct 3 2018, 3:06 PM
Phyx updated the diff for D5177: Drop accidental write-attributes request.
  • rebase and checked rest attributes
Oct 3 2018, 1:13 AM

Oct 2 2018

Phyx requested review of D5177: Drop accidental write-attributes request.

Is there any test that reflects this change?

Oct 2 2018, 2:09 PM
Phyx added a comment to D5195: Add a RTS option -xp to load PIC object anywhere in address space.

@watashi Thanks, that makes more sense. The behaviors are different so for now splitting them up is fine, Add a /* See Note [loadOc orderings]. */ in front of the PE one.
I think I'll just move the call into ocGetNames_PEi386 so that Linker.c doesn't diverge. But for now this is fine. Thanks!

Oct 2 2018, 2:03 PM
Phyx added a comment to D5195: Add a RTS option -xp to load PIC object anywhere in address space.

I don't know which dangling pointer you're talking about.... If it's something your change introduced then you must take care of it there. flipping the order like this will just segfault on stage2 on Windows.
ocAllocateSymbolExtras_PEi386 accesses oc->info->image https://github.com/ghc/ghc/blob/5840734379da5d494a368d0b8a6edf1b1216a7f4/rts/linker/PEi386.c#L1785 which is set in ocGetNames_PEi386 https://github.com/ghc/ghc/blob/5840734379da5d494a368d0b8a6edf1b1216a7f4/rts/linker/PEi386.c#L1579 if the linker decides it's going to keep the object file. So I don't see how flipping the order can work at all.

Oct 2 2018, 12:28 PM
Phyx added inline comments to D3915: Updated PE linker, section alignment and cleanup..
Oct 2 2018, 12:28 PM
Phyx accepted D5192: Drop GHC 8.2 compatibility.

LGTM, thanks @RyanGlScott

Oct 2 2018, 12:28 PM

Sep 28 2018

Phyx added a comment to rGHC900c47f88784: rts/Printer.c: always define the findPtr symbol.

Thanks @alpmestan that's fine. I made a ticket for it on trac in the mean
time.

Sep 28 2018, 1:25 PM

Sep 26 2018

Phyx updated the diff for D5175: Fix PE linker wibbles.

Add comments

Sep 26 2018, 2:16 PM
Phyx updated the diff for D5174: Fix plugin tests requirements.

Add DynWay note.

Sep 26 2018, 2:03 PM

Sep 25 2018

Phyx added a comment to D5175: Fix PE linker wibbles.

Sure thing,I'll update the patch later today.

Sep 25 2018, 1:08 AM
Phyx added inline comments to D5174: Fix plugin tests requirements.
Sep 25 2018, 1:07 AM

Sep 24 2018

Phyx created D5177: Drop accidental write-attributes request.
Sep 24 2018, 1:05 AM
Phyx created D5176: Update performance numbers on Windows.
Sep 24 2018, 12:59 AM
Phyx created D5175: Fix PE linker wibbles.
Sep 24 2018, 12:57 AM
Phyx created D5174: Fix plugin tests requirements.
Sep 24 2018, 12:55 AM

Sep 23 2018

Phyx raised a concern with rGHC900c47f88784: rts/Printer.c: always define the findPtr symbol.

This change doesn't play well with our habit of exporting all symbols into shared libraries. --export-all-symbols combined with the -Wl,-u will end up making the linker a) always export the symbol and always pull it in.
This means compiling a library with -shared on Windows will result in a library that can't be used to link against others.

Sep 23 2018, 10:09 AM

Sep 17 2018

Phyx committed rGHC5840734379da: Updated PE linker, section alignment and cleanup. (authored by Phyx).
Updated PE linker, section alignment and cleanup.
Sep 17 2018, 5:11 PM
Phyx closed D3915: Updated PE linker, section alignment and cleanup..
Sep 17 2018, 5:11 PM
Phyx added a comment to D3915: Updated PE linker, section alignment and cleanup..

Thank you @angerman !

Sep 17 2018, 4:28 PM
Phyx updated the diff for D3915: Updated PE linker, section alignment and cleanup..
  • rebase and add comment to loadOc
Sep 17 2018, 4:28 PM
Phyx added inline comments to D3915: Updated PE linker, section alignment and cleanup..
Sep 17 2018, 2:38 AM

Sep 15 2018

Phyx added a comment to D3915: Updated PE linker, section alignment and cleanup..

@angerman Mind giving this a review for me? thanks!

Sep 15 2018, 8:49 AM
Phyx retitled D3915: Updated PE linker, section alignment and cleanup. from Updated PE linker, section alignment and cleanup. (round 1) to Updated PE linker, section alignment and cleanup..
Sep 15 2018, 8:49 AM
Phyx updated the diff for D3915: Updated PE linker, section alignment and cleanup..
  • fix comments and made some fields const
Sep 15 2018, 8:48 AM

Sep 11 2018

Phyx added inline comments to D3915: Updated PE linker, section alignment and cleanup..
Sep 11 2018, 12:45 PM

Sep 8 2018

Phyx added a comment to D3915: Updated PE linker, section alignment and cleanup..

Ping, this version is ready for review..

Sep 8 2018, 10:58 AM

Aug 29 2018

Phyx accepted D5093: Compiler panic on invalid syntax (unterminated pragma).

Thanks @RolandSenn ! looks good to me.

Aug 29 2018, 6:19 PM

Aug 28 2018

Phyx added a comment to D5107: #15363 Do some cleaning up of the testsuite driver.

@Phyx, perhaps you want to comment on this?

Aug 28 2018, 2:51 PM

Aug 27 2018

Phyx added a comment to D5085: driver: use --no-relax form (instead of -no-relax).
In D5085#140461, @trofi wrote:
In D5085#139913, @Phyx wrote:

Hmm right, gold does support --relax, jus not --no-relax

Which ld.gold version you are talking about? Your local version, what GHC supports or something else?

Aug 27 2018, 4:46 PM

Aug 26 2018

Phyx added a comment to D5093: Compiler panic on invalid syntax (unterminated pragma).

ok, how about something like Error while parsing OPTIONS_GHC pragma, expected whitespace delimited list of options. Input was " -O1 }\n\"\n "

Aug 26 2018, 4:30 PM

Aug 25 2018

Phyx removed a parent revision for D3384: WIP: Implement string merging on Windows: D3383: Implement split-sections support for windows..
Aug 25 2018, 6:13 AM
Phyx removed a child revision for D3383: Implement split-sections support for windows.: D3384: WIP: Implement string merging on Windows.
Aug 25 2018, 6:13 AM
Phyx committed rGHCc523525b0e43: ghc, ghc-pkg: use getExecutablePath on Windows when base >= 4.11.0 (authored by Phyx).
ghc, ghc-pkg: use getExecutablePath on Windows when base >= 4.11.0
Aug 25 2018, 5:25 AM
Phyx closed D4229: ghc, ghc-pkg: use getExecutablePath on Windows when base >= 4.11.0.
Aug 25 2018, 5:25 AM

Aug 23 2018

Phyx updated subscribers of D5093: Compiler panic on invalid syntax (unterminated pragma).

Thanks for the patch @RolandSenn , the code itself is fine, just not sure about the error message. I also can't remember if we emit error messages in GHC in past or present tense.. so CC @osa1

Aug 23 2018, 1:41 PM
Phyx added a comment to D4229: ghc, ghc-pkg: use getExecutablePath on Windows when base >= 4.11.0.

ping.

Aug 23 2018, 1:29 PM
Phyx added a comment to D5085: driver: use --no-relax form (instead of -no-relax).

Hmm right, gold does support --relax, jus not --no-relax, maybe just
add a new test for this and just wire it through like LdIsGnuLd. I think
we might be using that one for split-sections support to? Not sure, haven't
checked what else it's used for.

Aug 23 2018, 4:04 AM

Aug 22 2018

Phyx added a comment to D5085: driver: use --no-relax form (instead of -no-relax).
In D5085#139881, @trofi wrote:

Oh, that's unfortunate. --no-relax is very old flag in binutils (ld.bfd) and sparc did --no-relax forever.
Sounds like we will need to extend the driver to query $LD at runtime to check for --no-relax support.

Aug 22 2018, 6:13 PM
Phyx added a comment to D3915: Updated PE linker, section alignment and cleanup..

GHC seems to have become so fat that the extreme amount of memory we're wasting with the usage of VirtualAlloc means we quickly eat up the lower 4GB of virtual memory. This means the trampolines are allocated outside the 4GB range and are thus useless.

Aug 22 2018, 5:14 PM
Phyx updated the diff for D3915: Updated PE linker, section alignment and cleanup..
  • fix use after free for import libraries
Aug 22 2018, 5:12 PM
Phyx updated the diff for D3915: Updated PE linker, section alignment and cleanup..
  • fix trampoline calculation.
Aug 22 2018, 4:05 PM
Phyx added a comment to D3915: Updated PE linker, section alignment and cleanup..

The windows build is stuck restarting. can an administrator unstick it please?

Aug 22 2018, 1:45 PM

Aug 12 2018

Phyx added a comment to D3915: Updated PE linker, section alignment and cleanup..

@bgamari I have been spending the majority of my time on the I/O library. So I have reverted this patch to an earlier state that should be finished and want to get this one in for the next GHC for sure.

Aug 12 2018, 9:54 AM
Phyx retitled D3915: Updated PE linker, section alignment and cleanup. from [WIP] Updated PE linker, section alignment, TLSF2 memory allocator and cleanup. to Updated PE linker, section alignment and cleanup. (round 1).
Aug 12 2018, 9:51 AM
Phyx updated the diff for D3915: Updated PE linker, section alignment and cleanup..
  • adress comments and rebase
Aug 12 2018, 9:46 AM
Phyx updated the summary of D4229: ghc, ghc-pkg: use getExecutablePath on Windows when base >= 4.11.0.
Aug 12 2018, 7:19 AM
Phyx updated the summary of D4229: ghc, ghc-pkg: use getExecutablePath on Windows when base >= 4.11.0.
Aug 12 2018, 7:19 AM

Aug 11 2018

Phyx updated the diff for D4229: ghc, ghc-pkg: use getExecutablePath on Windows when base >= 4.11.0.
  • fix build issues and rebase
Aug 11 2018, 2:15 PM
Phyx commandeered D4229: ghc, ghc-pkg: use getExecutablePath on Windows when base >= 4.11.0.
Aug 11 2018, 1:20 PM
Phyx added a comment to D4997: Fix for #12714: Test T9405 fails on Windows..

Please inform me, if these 2 tests can be written with less redundandency.

Yes there is a way, see https://ghc.haskell.org/trac/ghc/wiki/Building/RunningTests/Adding#Sampleoutputfiles

Aug 11 2018, 5:38 AM

Aug 5 2018

Phyx added a comment to D5046: Testsuite driver: fix encoding issue when calling ghc-pkg.

Curious that this wasn't caught before.

Aug 5 2018, 3:33 PM

Jul 30 2018

Phyx committed rGHCa7c8acda5c7a: GHC doesn't handle ./ prefixed paths correctly (#12674) (authored by RolandSenn).
GHC doesn't handle ./ prefixed paths correctly (#12674)
Jul 30 2018, 3:39 PM