carter (Carter Schonwald)
User

Projects

Today

  • Clear sailing ahead.

Tomorrow

  • Clear sailing ahead.

Thursday

  • Clear sailing ahead.

User Details

User Since
Jun 5 2014, 11:10 PM (159 w, 4 d)
Availability
Available

Recent Activity

Mar 11 2017

carter added a comment to D3265: Generate better fp abs for X86 and llvm with default cmm otherwise.

Is it correct to say unsupported ? Seems more like it should be an impossible error for those cases. Cause you're just generating it early.

Mar 11 2017, 7:33 AM
carter added a comment to D3307: Broaden demand analysis IO hack notes.

The not changes the meaning of this not/ the tone thereof .. should it be styled that way or keeping the original language and explaining the corner cases as a new paragraph

Mar 11 2017, 7:25 AM
carter requested changes to D3308: Use runRW# to implement unsafeInterleaveIO.
  1. where's definition of pure?
  2. I'm not sure if the new comments are enough ... should document the ways it should work / preconditions.
  3. this change is for master or 8.2? I'm guessing master ?
Mar 11 2017, 7:22 AM

Feb 25 2017

carter added a comment to D3187: build system: Persist CrossCompiling in binary distributions.

these cross compiling notes are specifically for registerized builds? and or does configure autodetect if the right x-compile tools are around?

Feb 25 2017, 5:11 PM

Feb 10 2017

carter updated subscribers of D3114: Generate better fp abs for X86 and llvm..

i think a cleaner approach might be to add Float 32 and Double 64 bit wise operations (and the associated Data.Bits instance) and use the same machinery to define fabs and fabsf

Feb 10 2017, 11:40 AM

Feb 9 2017

carter added a comment to D3114: Generate better fp abs for X86 and llvm..

overall looks decent, just some cleaning still needed :)

Feb 9 2017, 3:01 PM

Feb 6 2017

carter requested changes to D3091: Generate correct X86 and llvm instructions for abs.

i think that we need to discuss what foreignPrimops mean, and or have that metadata be accurate per target architecture

Feb 6 2017, 6:43 PM
carter added a comment to D3091: Generate correct X86 and llvm instructions for abs.

We shoudln't have fabs primops be marked as foreignCalls when they're not always.... we can do CPP in the primops.pp.txt file right?

Feb 6 2017, 6:42 PM

Feb 2 2017

carter requested changes to D3062: Support abs as a primitive operation on floating point numbers..
Feb 2 2017, 11:21 AM
carter added a comment to D3062: Support abs as a primitive operation on floating point numbers..

looks like in some cases this change *could* be a regression, or at least its not clear that its a win to make it a foreign call vs doing the suitable bitwise and masking as Reid and I have discussed

Feb 2 2017, 11:21 AM

Jan 6 2017

carter added a comment to D2929: Always expose unfoldings for overloaded functions.

i was thinking of https://ghc.haskell.org/trac/ghc/ticket/12463, which seem to have not been implemented ever, or something like it

Jan 6 2017, 11:07 AM
carter added a comment to D2929: Always expose unfoldings for overloaded functions.

Additionally: one possible library that could be a stress test for this would be the vector-algorithms library, which I think currently does very very aggressive in lining to make sure specialization happens

Jan 6 2017, 10:40 AM
carter added a comment to D2929: Always expose unfoldings for overloaded functions.

How is this similar or different from specializable pragma? Does this replace needing that on newer ghc?

Jan 6 2017, 10:40 AM

Nov 12 2016

carter added a comment to D2694: rts: Fix LoadArchive on OS X.

this looks reasonable to me (otoh I'm not super familiar with the linker code base)

Nov 12 2016, 9:02 PM

Sep 18 2016

carter added a comment to D2516: rts: Disable -hb with multiple capabilities.

I had to revert this patch / change set on OSX to get my build to succeed.

Sep 18 2016, 8:18 PM

Aug 3 2016

carter added a comment to D2431: Use MO_Cmpxchg in Primops.cmm instead of ccall cas(..).

Is there a follow up patch or design plan for adding Haskell level siblings?

Aug 3 2016, 7:42 PM

Jul 29 2016

carter added a comment to D2431: Use MO_Cmpxchg in Primops.cmm instead of ccall cas(..).

Hrmm, these should be added to the Haskell layer primops too. With suitable state# token arguments similar to other pointer ish based read and write ops

Jul 29 2016, 9:07 AM
carter added a comment to D2431: Use MO_Cmpxchg in Primops.cmm instead of ccall cas(..).

Sweet! Does this mean uses of cas in the rts and user space won't have that extra function call indirection ?

Jul 29 2016, 9:05 AM

Jul 27 2016

carter added a comment to D2425: Darwin: Detect broken NM program at configure time.

point being: something needs to be done so that handling this corner case, while it exists, isn't a folklore / googling around issue. and its not someting that most folks even are aware of!

Jul 27 2016, 4:12 PM
carter added a comment to D2425: Darwin: Detect broken NM program at configure time.

Something needs to be done to address this, because otherwise its making build from source for new contributors on OSX even more second class than it already sometimes is :)

Jul 27 2016, 4:11 PM

May 6 2016

carter added a comment to D800: Allow setting explicit thread affinity masks from a file..

whats needed to move this or something similar to this along?

May 6 2016, 8:30 PM

Apr 17 2016

carter added a comment to D2121: Remove obsolete/redundant FLEXIBLE_ARRAY macro.

Looks reasonable to me. (Though I'm not especially knowledgable in c matters)

Apr 17 2016, 7:46 PM
carter added a comment to D2120: relnotes: Add note about #11744 and workaround.

Off the cuff this looks fine, I may finally get around to sacrificing one of my personal machines to the upgrade gods so I can test that this afternoon.

Apr 17 2016, 9:41 AM

Apr 2 2016

carter added a comment to D973: Add -link-package flag and make -package lazy.

Sorry, I meant to ask , will this make it into 8.0?
If my understanding is correct it would make a big difference in build time for th heavy code , right ?

Apr 2 2016, 12:39 PM

Mar 31 2016

carter added a comment to D973: Add -link-package flag and make -package lazy.

Is this one of the changes that is going to land In rc3?

Mar 31 2016, 10:07 PM

Mar 25 2016

carter added a comment to D2039: RTS: Refactor "portable inline" macros.

So if I built ghc 8 branch with gcc 5/6 before this patch , there's potentially some perf regressions? How would I measure or isolate that / what programs would make it observable ?

Mar 25 2016, 4:32 PM

Mar 24 2016

carter added a comment to D2031: rts: Make StablePtr derefs thread-safe (#10296).

Question: am I correct in understanding that stable pointers only get freed during GC, but that the table itself is not on the heap?

Mar 24 2016, 11:31 AM

May 6 2015

carter updated subscribers of D849: Fix dropped event registrations.
May 6 2015, 7:38 PM

Apr 25 2015

carter added a comment to D861: Use IP based CallStack in error and undefined.

thanks ben, that clarifies things for me!

Apr 25 2015, 9:14 PM

Apr 22 2015

carter added a comment to D861: Use IP based CallStack in error and undefined.

am i correct in understanding that the notion of call stack thats in this patch is specifically / only the Profiling build notion of call stack?

Apr 22 2015, 12:54 PM

Mar 8 2015

carter updated subscribers of D624: Encode alignment in MO_Memcpy and friends.
Mar 8 2015, 12:16 PM

Dec 23 2014

carter added a comment to D551: Add export lists to some modules..

did a quick build on OS X, HEAD seems to bulid fine with this patch

Dec 23 2014, 12:47 PM · GHC

Dec 13 2014

carter accepted D570: Only use -fasm on platforms with an NCG (Closes: #9884)..

Looks good to me. (at least the build systems changes)

Dec 13 2014, 11:38 PM

Dec 6 2014

carter added a comment to D350: Changing prefetch primops to have a `seq`-like interface.

did the changes as suggested.

Dec 6 2014, 1:38 AM
carter updated the diff for D350: Changing prefetch primops to have a `seq`-like interface.
  • updating comments and haddocks per Austin's suggestions
Dec 6 2014, 1:38 AM

Dec 4 2014

carter added a comment to D555: fixup readme to have more up to date cloning directions. Note that it doesnt layout how to clone from your own private tree.

though that wiki page has some out of date bits

Dec 4 2014, 10:30 AM
carter added a comment to D555: fixup readme to have more up to date cloning directions. Note that it doesnt layout how to clone from your own private tree.

huh, maybe the readme should just link to https://ghc.haskell.org/trac/ghc/wiki/Building/GettingTheSources ?

Dec 4 2014, 10:29 AM
carter retitled D555: fixup readme to have more up to date cloning directions. Note that it doesnt layout how to clone from your own private tree from to fixup readme to have more up to date cloning directions. Note that it doesnt layout how to clone from your own private tree.
Dec 4 2014, 9:16 AM

Nov 30 2014

carter added a comment to D350: Changing prefetch primops to have a `seq`-like interface.

probably should add some remarks in the release notes section of the manual for this

Nov 30 2014, 12:18 AM

Nov 28 2014

carter added a comment to D350: Changing prefetch primops to have a `seq`-like interface.

Davean and I did some benchmarks (mentioned in the thread here )https://www.haskell.org/pipermail/ghc-devs/2014-November/007458.html

Nov 28 2014, 4:27 PM
carter updated the diff for D350: Changing prefetch primops to have a `seq`-like interface.
  • adding more commentary about the current prefetch designs and why they need to be marked as has_side_effects=True
Nov 28 2014, 4:05 PM
carter added a comment to D530: llvmGen: move to LLVM 3.6 exclusively.

its worth noting that harbor master currently doesnt do a validate using llvm backend, so we cant test this on phab yet, right?

Nov 28 2014, 4:02 PM

Nov 26 2014

carter added a comment to D155: llvmGen: Compatibility with LLVM 3.5.

we can at least make sure / keep an eye on making 3.6 work with 7.10 right?

Nov 26 2014, 6:58 PM

Nov 25 2014

carter added a comment to D155: llvmGen: Compatibility with LLVM 3.5.

one support issue that will come up is that the current Xcode release of Clang doesn't support the full range of assembly that LLVM 3.5 emits, (though a built of the official llvm 3.5 CLANG works fine)

Nov 25 2014, 4:02 PM
carter updated the diff for D350: Changing prefetch primops to have a `seq`-like interface.
  • adding has_side_effects to all the prefetch ops everywhere
Nov 25 2014, 1:47 PM

Nov 24 2014

carter updated the diff for D350: Changing prefetch primops to have a `seq`-like interface.
  • fixing typo in test
Nov 24 2014, 1:59 AM
carter added a comment to D350: Changing prefetch primops to have a `seq`-like interface.

i think this is ready to go!

Nov 24 2014, 1:07 AM
carter updated the diff for D350: Changing prefetch primops to have a `seq`-like interface.
  • adding something extra to the test suite
Nov 24 2014, 1:05 AM

Nov 23 2014

carter added a comment to D350: Changing prefetch primops to have a `seq`-like interface.

ok, marking prefetchValue has has_side_effects=True saves the day

Nov 23 2014, 7:04 PM
carter updated the diff for D350: Changing prefetch primops to have a `seq`-like interface.
  • mark prefetchValue as has_side_effects = True
Nov 23 2014, 6:57 PM
carter added a comment to D350: Changing prefetch primops to have a `seq`-like interface.

i seem to have discovered a problem wrt let/app invariant with the api / semantics i have for prefetch value. However, I only seem to get the problem to happen locally on my mac (though I cant even run validate locally for other reasons i can't yet track down).

Nov 23 2014, 6:38 PM
carter updated the diff for D350: Changing prefetch primops to have a `seq`-like interface.
  • add dcore-lint and O1 flags to test case trip the problem i've hit
Nov 23 2014, 6:14 PM
carter added a comment to D350: Changing prefetch primops to have a `seq`-like interface.

how on earth is this validating?

Nov 23 2014, 5:55 PM
carter updated the diff for D350: Changing prefetch primops to have a `seq`-like interface.
  • fixup prefetchValue0# and make the tests not depend on vector
Nov 23 2014, 3:14 PM
carter added a comment to D350: Changing prefetch primops to have a `seq`-like interface.

i was doing some sanity checking locally, and its pretty clear that the test file wasn't being run by validate somehow (as in, theres no way it compiled, i'm fixing that locally and hopefully things will then be OK)

Nov 23 2014, 1:47 PM
carter updated the diff for D350: Changing prefetch primops to have a `seq`-like interface.
  • use switch \ _ -> with \ _arity ->
Nov 23 2014, 11:19 AM
carter updated the diff for D350: Changing prefetch primops to have a `seq`-like interface.
  • the prefetchValue operations should be lazy in their value argument
Nov 23 2014, 11:17 AM
carter added a comment to D350: Changing prefetch primops to have a `seq`-like interface.

i'm concerned that the prefetchValue operations dont have the right strictness information on them. The value argument shouldn't be evaluated.

Nov 23 2014, 10:42 AM
carter updated the diff for D350: Changing prefetch primops to have a `seq`-like interface.
  • Revert "somehow how i modified the docs made the primops file parser fail. twiddling that"
  • Revert "clarify documention to make it clear that inlinePerformIO is safe to use here"
  • clarify documentation about prefetch
Nov 23 2014, 2:07 AM
carter updated the diff for D350: Changing prefetch primops to have a `seq`-like interface.
  • somehow how i modified the docs made the primops file parser fail. twiddling that
Nov 23 2014, 1:57 AM
carter updated the diff for D350: Changing prefetch primops to have a `seq`-like interface.
  • clarify documentation to make it clear that inlinePerformIO is safe to use here
Nov 23 2014, 1:45 AM
carter added a comment to D350: Changing prefetch primops to have a `seq`-like interface.

agreed, should I change the recommendation to unsafeDupable or inlinePerformIO?

Nov 23 2014, 1:32 AM
carter added a comment to D519: preliminary Complex and Ratio Storable instances for Base.

and just to be clear, it has a test!

Nov 23 2014, 1:18 AM
carter updated the diff for D350: Changing prefetch primops to have a `seq`-like interface.
  • fixing up some validate -werror noise
Nov 23 2014, 1:07 AM
carter added a comment to D519: preliminary Complex and Ratio Storable instances for Base.

wooot, it validates

Nov 23 2014, 1:06 AM
carter updated the diff for D350: Changing prefetch primops to have a `seq`-like interface.
  • remove some deadcode from the test
  • woops, mixed up arg types in primop helpers
Nov 23 2014, 12:41 AM
carter updated the diff for D519: preliminary Complex and Ratio Storable instances for Base.
  • use the realPart function to avoid needing the scoped type variables extension
Nov 23 2014, 12:39 AM
carter added a reviewer for D350: Changing prefetch primops to have a `seq`-like interface: ekmett.

Ed, Simon, feedback would be appreciated

Nov 23 2014, 12:34 AM
carter updated the diff for D350: Changing prefetch primops to have a `seq`-like interface.
  • updating prefetch to have a better api
Nov 23 2014, 12:32 AM
carter updated the diff for D519: preliminary Complex and Ratio Storable instances for Base.
  • rewrote test to use operations exposed in base lib
  • making the instances correctly lazy in the proxy args
Nov 23 2014, 12:24 AM

Nov 22 2014

carter added a comment to D519: preliminary Complex and Ratio Storable instances for Base.

having trouble getting validate to work locally on my mac, but trying to track down whats wrong with the test suite

Nov 22 2014, 11:50 PM
carter added a comment to D519: preliminary Complex and Ratio Storable instances for Base.

for other reasons validate seems to be broken on os x, so i'm having a bit of trouble tracking down this bug

Nov 22 2014, 11:32 PM
carter updated the diff for D519: preliminary Complex and Ratio Storable instances for Base.
  • woops, typo in test suite
Nov 22 2014, 10:50 PM
carter updated the diff for D519: preliminary Complex and Ratio Storable instances for Base.
  • futzing with stdout
Nov 22 2014, 10:47 PM
carter updated the diff for D519: preliminary Complex and Ratio Storable instances for Base.
  • using Foreign rather than Foreign.Safe
Nov 22 2014, 9:19 PM
carter updated the diff for D350: Changing prefetch primops to have a `seq`-like interface.

twiddle

Nov 22 2014, 9:16 PM
carter updated the diff for D350: Changing prefetch primops to have a `seq`-like interface.
  • updated the documention about how to use pure prefetch. also fixed a type error in the in the test
  • white space wibble
  • for the example in the documentation, replacing
  • cargo cult changing the formatting to see if that makes a difference
  • revert removing the example, also try wrapping the result in (# a #)
  • adjusting test suite for new type signature for pure prefetchs
Nov 22 2014, 9:13 PM
carter updated the diff for D519: preliminary Complex and Ratio Storable instances for Base.
  • derp, forgot to import storable class
Nov 22 2014, 8:25 PM
carter added a comment to D519: preliminary Complex and Ratio Storable instances for Base.

Fixed up the Ratio instance with the % and Integral a, as suggested,

Nov 22 2014, 4:09 PM
carter updated the diff for D519: preliminary Complex and Ratio Storable instances for Base.
  • shifting to using Foreign.Safe to make it clearer that Data.Complex stays safe
Nov 22 2014, 4:08 PM
carter updated the diff for D519: preliminary Complex and Ratio Storable instances for Base.
  • make sure invariants of ratio are maintained on peaks
Nov 22 2014, 4:03 PM
carter updated the diff for D519: preliminary Complex and Ratio Storable instances for Base.
  • adding basic test case for ratio and complex storable instances
Nov 22 2014, 3:55 PM
carter updated the diff for D519: preliminary Complex and Ratio Storable instances for Base.
  • add changelog notes and tweak Ratio instance typesetting
Nov 22 2014, 2:03 PM
carter updated the diff for D519: preliminary Complex and Ratio Storable instances for Base.
  • drop using the realPart operations to get the fields
Nov 22 2014, 11:47 AM
carter updated the diff for D519: preliminary Complex and Ratio Storable instances for Base.
  • fixup parsing error in definitions
Nov 22 2014, 10:05 AM

Nov 21 2014

carter retitled D519: preliminary Complex and Ratio Storable instances for Base from to preliminary Complex and Ratio Storable instances for Base.
Nov 21 2014, 7:51 PM

Nov 18 2014

carter added a comment to D496: trac #9744, make program name and product version configurable through DynFlags/Settings.

naively it looks fine to me.

Nov 18 2014, 4:09 PM
carter added a comment to D486: Restore exact old semantics of `decodeFloat`.

hrm, how come on my 7.8.3 ghci i'm seeing the the following

Nov 18 2014, 1:24 PM

Nov 7 2014

carter added a comment to D432: Improve Applicative definitions.

this look great. nice work

Nov 7 2014, 12:57 AM

Nov 5 2014

carter added a comment to D165: driver: Add support for intel/amd -march/mcpu flags.

whats needed to help get this into a mergeable state? I'm willing to do some leg work if any is needed!

Nov 5 2014, 9:08 AM

Nov 4 2014

carter added inline comments to D428: Implement folds for Array directly.
Nov 4 2014, 9:48 PM · GHC

Oct 30 2014

carter added a comment to D155: llvmGen: Compatibility with LLVM 3.5.

Huh, that might explain some hard to reproduce bugs i've hit when building split objects code on OS X.

Oct 30 2014, 12:14 AM

Oct 20 2014

carter added a comment to D252: Support C structure as return value of ccall in cmm.

@tibbe @simonmar, should there be a stack check before allocating there?

Oct 20 2014, 1:30 PM · GHC
carter added a comment to D252: Support C structure as return value of ccall in cmm.

I"m noticing that

Oct 20 2014, 1:28 PM · GHC
carter added a comment to D353: Make calling conventions in template haskell Syntax.hs consistent with those in ghc ForeignCall.hs this impliments #9703 from ghc trac.

Every build of GHC right now is failing that perf test. I think austin or
hvr are going to tweek it later this week. But if not maybe that's a good
second patch !

Oct 20 2014, 12:35 AM

Oct 18 2014

carter added a comment to D350: Changing prefetch primops to have a `seq`-like interface.

looks like the only failure in the build is perf/compiler T3064 [stat not good enough] (normal)
Which is not my test! :)

Oct 18 2014, 11:51 PM
carter updated the diff for D350: Changing prefetch primops to have a `seq`-like interface.
  • adjusting test suite for new type signature for pure prefetchs
Oct 18 2014, 10:43 PM
carter updated the diff for D350: Changing prefetch primops to have a `seq`-like interface.
  • revert removing the example, also try wrapping the result in (# a #)
Oct 18 2014, 9:51 PM
carter updated the diff for D350: Changing prefetch primops to have a `seq`-like interface.
  • cargo cult changing the formatting to see if that makes a difference
Oct 18 2014, 9:08 PM
carter updated the diff for D350: Changing prefetch primops to have a `seq`-like interface.
  • changing the example in the docs because it was somehow triggering a GHC panic in a way I dont understand (possibly via triggering a parser error)
Oct 18 2014, 8:26 PM