sof [Sun, 24 Jan 1999 14:19:48 +0000 (14:19 +0000)]
[project @ 1999-01-24 14:18:55 by sof]
more updates
sof [Sun, 24 Jan 1999 14:00:14 +0000 (14:00 +0000)]
[project @ 1999-01-24 14:00:12 by sof]
Tidied up desugar warnings - will now print out patterns containing
infix constructors correctly.
sof [Sun, 24 Jan 1999 13:45:09 +0000 (13:45 +0000)]
[project @ 1999-01-24 13:45:05 by sof]
Updated desugaring reg. tests
sof [Sat, 23 Jan 1999 18:10:10 +0000 (18:10 +0000)]
[project @ 1999-01-23 18:10:00 by sof]
even more h98 updates, this time to codeGen tests
sof [Sat, 23 Jan 1999 18:07:59 +0000 (18:07 +0000)]
[project @ 1999-01-23 18:07:42 by sof]
updates and tweaks
sof [Sat, 23 Jan 1999 18:05:19 +0000 (18:05 +0000)]
[project @ 1999-01-23 18:05:12 by sof]
more h98 updates
sof [Sat, 23 Jan 1999 18:03:53 +0000 (18:03 +0000)]
[project @ 1999-01-23 18:03:40 by sof]
h98 updates
sof [Sat, 23 Jan 1999 18:02:59 +0000 (18:02 +0000)]
[project @ 1999-01-23 18:02:58 by sof]
Updated
sof [Sat, 23 Jan 1999 17:59:06 +0000 (17:59 +0000)]
[project @ 1999-01-23 17:57:35 by sof]
Updated for H98
sof [Sat, 23 Jan 1999 17:55:29 +0000 (17:55 +0000)]
[project @ 1999-01-23 17:55:26 by sof]
More Enum regression tests than you can shake a stick at.
sof [Sat, 23 Jan 1999 17:54:43 +0000 (17:54 +0000)]
[project @ 1999-01-23 17:54:42 by sof]
Updated to work with current sources
sof [Sat, 23 Jan 1999 17:53:28 +0000 (17:53 +0000)]
[project @ 1999-01-23 17:53:28 by sof]
Fixes to {word,int}64ToIntegerZh_fast
sof [Sat, 23 Jan 1999 17:52:21 +0000 (17:52 +0000)]
[project @ 1999-01-23 17:52:21 by sof]
docfix
sof [Sat, 23 Jan 1999 17:51:27 +0000 (17:51 +0000)]
[project @ 1999-01-23 17:51:27 by sof]
Added comment next to the I*_ macros to explain why having them
expand to use 'static' instead of 'extern' is a Really Bad Idea.
sof [Sat, 23 Jan 1999 17:48:23 +0000 (17:48 +0000)]
[project @ 1999-01-23 17:48:23 by sof]
integerToInt64Zh: didn't handle negative integers particularly well
sof [Sat, 23 Jan 1999 17:47:04 +0000 (17:47 +0000)]
[project @ 1999-01-23 17:47:03 by sof]
Bunch of bug fixes related to Enum instances. Code clean-up.
sof [Sat, 23 Jan 1999 17:46:01 +0000 (17:46 +0000)]
[project @ 1999-01-23 17:46:01 by sof]
Move ST <--> IO coercion functions from IOExts to (Lazy)?ST
sof [Sat, 23 Jan 1999 17:44:40 +0000 (17:44 +0000)]
[project @ 1999-01-23 17:44:40 by sof]
Removed workaround for bug - fixed (a while ago.)
sof [Sat, 23 Jan 1999 17:43:21 +0000 (17:43 +0000)]
[project @ 1999-01-23 17:43:21 by sof]
Changed the various Ix.range methods, to specifically check whether we're
dealing with an empty range or not. As it was, empty array weren't handled
properly.
sof [Sat, 23 Jan 1999 17:40:07 +0000 (17:40 +0000)]
[project @ 1999-01-23 17:40:07 by sof]
Tag all 'foreign import's as being unsafe.
sof [Sat, 23 Jan 1999 17:38:52 +0000 (17:38 +0000)]
[project @ 1999-01-23 17:38:52 by sof]
do_if_stmt: insert extra (I_) to avoid minInt blues.
sof [Sat, 23 Jan 1999 17:34:37 +0000 (17:34 +0000)]
[project @ 1999-01-23 17:34:37 by sof]
Parser didn't accept the (all-important) empty module. Does now.
sof [Sat, 23 Jan 1999 13:33:52 +0000 (13:33 +0000)]
[project @ 1999-01-23 13:33:51 by sof]
Updated to work with current sources
sof [Fri, 22 Jan 1999 13:12:22 +0000 (13:12 +0000)]
[project @ 1999-01-22 13:12:22 by sof]
ifaceKeywordsFM: adding missing __ccall_GC entry
simonm [Fri, 22 Jan 1999 10:58:43 +0000 (10:58 +0000)]
[project @ 1999-01-22 10:58:43 by simonm]
Fix include typo.
simonm [Fri, 22 Jan 1999 10:45:21 +0000 (10:45 +0000)]
[project @ 1999-01-22 10:45:21 by simonm]
Fix more uses of [n..m]
simonm [Fri, 22 Jan 1999 10:25:44 +0000 (10:25 +0000)]
[project @ 1999-01-22 10:25:44 by simonm]
Fix a use of [ e1..e2 ] in the light of the new Haskell 98 semantics.
simonm [Fri, 22 Jan 1999 10:10:41 +0000 (10:10 +0000)]
[project @ 1999-01-22 10:10:41 by simonm]
Fix two uses of [ e1 .. e2 ] in light of the new Haskell 98 semantics.
sof [Thu, 21 Jan 1999 20:15:32 +0000 (20:15 +0000)]
[project @ 1999-01-21 20:15:30 by sof]
Enum instances updated to comply with the behaviour that
Haskell 98 specifies. Notable changes,
* [a..b] is not the empty list when a>b any longer.
* [x..] and [x,y..] for Enum Int are now bounded lists.
The first change is might be worth bearing in mind when converting
1.4 code to Haskell 98; functions may have made use of the
old behaviour.
sof [Thu, 21 Jan 1999 20:02:45 +0000 (20:02 +0000)]
[project @ 1999-01-21 20:02:43 by sof]
Robustified derived toEnum methods; gives better error message when
passed enum tags < 0.
sof [Thu, 21 Jan 1999 20:01:10 +0000 (20:01 +0000)]
[project @ 1999-01-21 20:01:10 by sof]
wibble
sof [Thu, 21 Jan 1999 20:00:55 +0000 (20:00 +0000)]
[project @ 1999-01-21 20:00:55 by sof]
dsExpr: make sure special case for unboxed tuple patterns only
'fire' when the tup. pat. is unboxed.
sof [Thu, 21 Jan 1999 19:59:22 +0000 (19:59 +0000)]
[project @ 1999-01-21 19:59:20 by sof]
Removed unused args from Id.mkIdVisible and Name.mkNameVisible.
Perpetuated Name.mkTopName hack in Name.mkNameVisible.
sof [Thu, 21 Jan 1999 19:56:48 +0000 (19:56 +0000)]
[project @ 1999-01-21 19:56:48 by sof]
The temp file where cpp's output was output wasn't being properly removed
sof [Thu, 21 Jan 1999 15:08:51 +0000 (15:08 +0000)]
[project @ 1999-01-21 15:08:51 by sof]
With Haskell98, Enum.enumFromThen can generate sequences that
are either increasing, decreasing or infinite.
simonm [Thu, 21 Jan 1999 10:31:57 +0000 (10:31 +0000)]
[project @ 1999-01-21 10:31:41 by simonm]
Resurrect ticky-ticky profiling. Not quite polished yet, but it
compiles and produces some reasonable-looking stats.
simonm [Thu, 21 Jan 1999 10:30:24 +0000 (10:30 +0000)]
[project @ 1999-01-21 10:30:24 by simonm]
Add $(HC_OPTS) to $(CC_OPTS) - this is necessary to get the per-way
flags into the plain-C compilations.
simonm [Wed, 20 Jan 1999 16:24:02 +0000 (16:24 +0000)]
[project @ 1999-01-20 16:24:02 by simonm]
Make use of -F<factor> flag in the two-space collector.
simonm [Wed, 20 Jan 1999 16:07:43 +0000 (16:07 +0000)]
[project @ 1999-01-20 16:07:40 by simonm]
The BLACKHOLEs created when entering a CAF for the first time are now
CAF_BLACKHOLES, distinguishing them from the blackholes created by
lazy blackholing.
This enables the lazy blackholing algorithm to be optimised by not
blackholing a section of stack that has already been traversed.
simonm [Wed, 20 Jan 1999 11:14:21 +0000 (11:14 +0000)]
[project @ 1999-01-20 11:14:21 by simonm]
Increase CmdLineOpts stack size to 4M.
sof [Wed, 20 Jan 1999 10:54:12 +0000 (10:54 +0000)]
[project @ 1999-01-20 10:54:12 by sof]
hook in GetOpt docs
sof [Wed, 20 Jan 1999 10:43:46 +0000 (10:43 +0000)]
[project @ 1999-01-20 10:43:46 by sof]
Back again - somehow got lost.
sof [Wed, 20 Jan 1999 09:15:37 +0000 (09:15 +0000)]
[project @ 1999-01-20 09:15:37 by sof]
Dead code removal
simonm [Wed, 20 Jan 1999 09:13:59 +0000 (09:13 +0000)]
[project @ 1999-01-20 09:13:59 by simonm]
Increase PrelNum stack size to 3M. Funny, it only needed 2M yesterday.
simonm [Tue, 19 Jan 1999 17:22:55 +0000 (17:22 +0000)]
[project @ 1999-01-19 17:22:55 by simonm]
Don't forget to reset the evacuated flag on to-space blocks when
generations == 1.
simonm [Tue, 19 Jan 1999 17:06:05 +0000 (17:06 +0000)]
[project @ 1999-01-19 17:06:02 by simonm]
Support '+RTS -G1' i.e. a two-space collector.
simonm [Tue, 19 Jan 1999 16:56:50 +0000 (16:56 +0000)]
[project @ 1999-01-19 16:56:50 by simonm]
Small fix to slop skipping.
simonm [Tue, 19 Jan 1999 15:41:56 +0000 (15:41 +0000)]
[project @ 1999-01-19 15:41:56 by simonm]
Change the sizing for intermediate generations. Now the formula is
max_size = max (oldgen_max * g / generations,
RtsFlags.GcFlags.minOldGenSize)
sof [Tue, 19 Jan 1999 15:19:24 +0000 (15:19 +0000)]
[project @ 1999-01-19 15:19:23 by sof]
Types of foreign imports weren't being zonked, with the lethal conseq.
that any unbound kind variables weren't being defaulted to something
sensible.
Showed up when trying to compile a 'foreign import' with type
StablePtr a -> IO ()
simonm [Tue, 19 Jan 1999 15:13:54 +0000 (15:13 +0000)]
[project @ 1999-01-19 15:13:54 by simonm]
Banner message now advertises Haskell 98.
simonm [Tue, 19 Jan 1999 15:07:56 +0000 (15:07 +0000)]
[project @ 1999-01-19 15:07:53 by simonm]
- Add -F<factor> flag which governs the threshold size of the oldest
generation.
- Add RtsFlags.GcFlags.minOldGenSize (no flag yet) so that we don't
have to guess the initial size of the oldest generation.
sof [Tue, 19 Jan 1999 14:40:00 +0000 (14:40 +0000)]
[project @ 1999-01-19 14:40:00 by sof]
foreign decls: use wlkHsSigType, not wlkHsType, since the tysig may
have implicitly quantified tyvars.
simonm [Tue, 19 Jan 1999 13:50:06 +0000 (13:50 +0000)]
[project @ 1999-01-19 13:50:06 by simonm]
Increase stack size for PrelNum.lhs.
simonm [Tue, 19 Jan 1999 13:49:29 +0000 (13:49 +0000)]
[project @ 1999-01-19 13:49:29 by simonm]
CmdLineOpts needs -K3m for some reason.
simonm [Tue, 19 Jan 1999 13:10:21 +0000 (13:10 +0000)]
[project @ 1999-01-19 13:10:21 by simonm]
4.02 updates.
simonm [Tue, 19 Jan 1999 12:52:37 +0000 (12:52 +0000)]
[project @ 1999-01-19 12:52:37 by simonm]
Update for 4.02.
simonm [Tue, 19 Jan 1999 12:43:31 +0000 (12:43 +0000)]
[project @ 1999-01-19 12:43:31 by simonm]
Update for 4.02.
sof [Tue, 19 Jan 1999 11:44:09 +0000 (11:44 +0000)]
[project @ 1999-01-19 11:44:07 by sof]
The Fight against needless use of (++) continues.
sof [Tue, 19 Jan 1999 11:39:44 +0000 (11:39 +0000)]
[project @ 1999-01-19 11:39:44 by sof]
mkExportAvails: remove NotAvailable entries corresponding
to 'hidden' entities from 'unqual_avails'. Not needed and
leaving them in causes bother later on in the renamer.
This fixes the problem of compiling
module B ( module A ) where { import A hiding ( a ) }
Regression test added to check for this - will commit soon.
sof [Tue, 19 Jan 1999 09:57:12 +0000 (09:57 +0000)]
[project @ 1999-01-19 09:57:12 by sof]
bracket and bracket_ had a less general type than they should
have. They now match what the docs says.
sof [Tue, 19 Jan 1999 09:55:05 +0000 (09:55 +0000)]
[project @ 1999-01-19 09:55:05 by sof]
Added showBin (binary nums - no, the 'old' showBin & friends hasn't been resurrected)
+ showIntAtBase to export list:
showBin :: (Integral a) => a -> ShowS
showIntAtBase :: Integral a
=> a -- base
-> (a -> Char) -- digit to char
-> a -- number to show.
-> ShowS
sof [Tue, 19 Jan 1999 09:51:25 +0000 (09:51 +0000)]
[project @ 1999-01-19 09:51:21 by sof]
Misc doc-fixes and updates.
simonm [Tue, 19 Jan 1999 09:49:55 +0000 (09:49 +0000)]
[project @ 1999-01-19 09:49:55 by simonm]
Remove debugging code from freeStablePtr.
sof [Tue, 19 Jan 1999 08:33:14 +0000 (08:33 +0000)]
[project @ 1999-01-19 08:33:14 by sof]
constructNewHiFile: regular expressions which substituted new
module filename for old in hifile_target, didn't quite work.
sof [Mon, 18 Jan 1999 19:05:07 +0000 (19:05 +0000)]
[project @ 1999-01-18 19:04:55 by sof]
Print out warnings/errors in the order they occur in the source code.
(Well...almost, warnings are sorted and printed out on a per-pass basis.)
simonm [Mon, 18 Jan 1999 16:35:37 +0000 (16:35 +0000)]
[project @ 1999-01-18 16:35:37 by simonm]
Update for new stats output.
simonm [Mon, 18 Jan 1999 16:05:15 +0000 (16:05 +0000)]
[project @ 1999-01-18 16:05:15 by simonm]
Only reset oldest_gen->max_blocks on a major GC.
simonm [Mon, 18 Jan 1999 15:44:45 +0000 (15:44 +0000)]
[project @ 1999-01-18 15:44:44 by simonm]
Update
sewardj [Mon, 18 Jan 1999 15:23:30 +0000 (15:23 +0000)]
[project @ 1999-01-18 15:23:30 by sewardj]
Completed support for GAMMA_VAR.
simonm [Mon, 18 Jan 1999 15:21:42 +0000 (15:21 +0000)]
[project @ 1999-01-18 15:21:37 by simonm]
- BLACKHOLE_BQ is a mutable object, because new threads get added to
its blocking_queue field. Hence add a mut_link field and treat it
as mutable in the garbage collector.
- Change StgBlackHole to StgBlockingQueue while I'm at it.
- Optimise evacuation of black holes: don't copy the padding
words, just skip over them.
- Several garbage collection fixes.
- Improve sanity checking: now the older generations are fully checked
at each GC.
simonm [Mon, 18 Jan 1999 15:18:06 +0000 (15:18 +0000)]
[project @ 1999-01-18 15:18:06 by simonm]
- do MVARs properly.
- skip over slop between objects, by searching for the first info pointer.
this works for slop created by updates, for example.
sof [Mon, 18 Jan 1999 14:37:43 +0000 (14:37 +0000)]
[project @ 1999-01-18 14:37:43 by sof]
Added protos for freeHaskellFunctionPtr() and createAdjustor()
(suggestions as to what might be a more appropriate home for these
are welcome.)
sof [Mon, 18 Jan 1999 14:36:13 +0000 (14:36 +0000)]
[project @ 1999-01-18 14:36:13 by sof]
Added debugging code to freeStablePtr macro
sof [Mon, 18 Jan 1999 14:35:21 +0000 (14:35 +0000)]
[project @ 1999-01-18 14:35:20 by sof]
Fixed a couple of bad bugs in the implementation of 'foreign export ccall dynamic'.
sof [Mon, 18 Jan 1999 14:31:52 +0000 (14:31 +0000)]
[project @ 1999-01-18 14:31:50 by sof]
long long support: cleared up Real vs. virtual regs. confusion (I hope!)
sof [Mon, 18 Jan 1999 13:09:45 +0000 (13:09 +0000)]
[project @ 1999-01-18 13:09:45 by sof]
A 'foreign export dynamic' *does* bind a Haskell name.
simonm [Mon, 18 Jan 1999 12:23:04 +0000 (12:23 +0000)]
[project @ 1999-01-18 12:23:04 by simonm]
Fixes for MVars.
simonm [Mon, 18 Jan 1999 10:54:15 +0000 (10:54 +0000)]
[project @ 1999-01-18 10:54:15 by simonm]
Don't bomb out with "Dont know where to get memory from on this
architecture" on Win32.
sof [Mon, 18 Jan 1999 09:20:08 +0000 (09:20 +0000)]
[project @ 1999-01-18 09:20:08 by sof]
'Native' Wni32 implementation of getMBlock(). Also added a Win32 impl.
of freeMBlock() in case that ever should become useful.
sof [Sat, 16 Jan 1999 16:06:17 +0000 (16:06 +0000)]
[project @ 1999-01-16 16:06:17 by sof]
Documented isEmptyMVar
sof [Sat, 16 Jan 1999 16:00:03 +0000 (16:00 +0000)]
[project @ 1999-01-16 16:00:03 by sof]
Documented IO <--> ST coercion operators
sof [Fri, 15 Jan 1999 18:32:23 +0000 (18:32 +0000)]
[project @ 1999-01-15 18:32:22 by sof]
Be a little bit more user-friendly when encountering record puns,
which is no longer supported by Haskell. Instead of a Plain Old Parse
Error, print out
foo.hs:11:11: Haskell 98 does not support 'punning' on records ....
Hopefully that should give the user a big enough hint at what's
going wrong..
simonm [Fri, 15 Jan 1999 18:08:37 +0000 (18:08 +0000)]
[project @ 1999-01-15 18:08:37 by simonm]
Compile the RTS with -O2 and -fomit-frame-pointer.
sof [Fri, 15 Jan 1999 17:59:27 +0000 (17:59 +0000)]
[project @ 1999-01-15 17:59:26 by sof]
Added options that 3.xx supported for dumping out selected
chunks of the .hi file to stdout, i.e.,
-hi-with-imports = prints out the import 'section' of the .hi file
-hi-with-declarations = print out just decls
(Only) useful when working with runstdtest, where we just want
to look at selected portions of the generated interface file.
simonm [Fri, 15 Jan 1999 17:57:11 +0000 (17:57 +0000)]
[project @ 1999-01-15 17:57:03 by simonm]
- Add new object BLACKHOLE_BQ: now a BLACKHOLE is defined as having an
empty blocking queue, and the first time a thread blocks on a BLACKHOLE
it is changed into a BLACKHOLE_BQ.
- Remove UPD_INPLACE1 and replace it with UPD_IND in the two places it
was used. UPD_INPLACE1 wouldn't have worked in a generational setting.
sof [Fri, 15 Jan 1999 17:54:23 +0000 (17:54 +0000)]
[project @ 1999-01-15 17:54:20 by sof]
Re-integrated mod. that seems to have been dropped on the
floor when new-rts moved back onto the main trunk. Here's
the commit msg. that was originally used:
Extend hConnectTo to also allow output handles to be connected, i.e.,
h1 <- openFile "foo" WriteMode
h2 <- openFile "bar" WriteMode
hConnectTo h1 h2
will cause h1's buffer to be flushed when h2's buffer overflows
(and it is just about to be flushed.) The implementation is currently
not as lazy as that, it flushes h1's buffer regardless of whether a
write to h2 causes h2's buffer to overflow or not.
This is used to connect 'stderr' and 'stdout', i.e., output on
'stderr' will now cause 'stdout' output to (first) be flushed.
simonm [Fri, 15 Jan 1999 17:36:31 +0000 (17:36 +0000)]
[project @ 1999-01-15 17:36:31 by simonm]
- __HASKELL1__ is now 5 (was 4). Surely not the last word in
Haskell98 CPP symbols.
- Fix stats munging for new RTS.
simonm [Fri, 15 Jan 1999 17:32:22 +0000 (17:32 +0000)]
[project @ 1999-01-15 17:32:22 by simonm]
Forgot a couple of STGCALLs.
sof [Fri, 15 Jan 1999 17:22:02 +0000 (17:22 +0000)]
[project @ 1999-01-15 17:22:02 by sof]
Annotate the 'foreign import's with 'unsafe'.
sof [Fri, 15 Jan 1999 17:20:15 +0000 (17:20 +0000)]
[project @ 1999-01-15 17:20:15 by sof]
Tweaked to accept empty declarations (again.)
simonm [Fri, 15 Jan 1999 15:57:48 +0000 (15:57 +0000)]
[project @ 1999-01-15 15:57:33 by simonm]
Haskell 98 updates.
simonm [Fri, 15 Jan 1999 15:06:20 +0000 (15:06 +0000)]
[project @ 1999-01-15 15:06:20 by simonm]
Remove punning.
simonm [Fri, 15 Jan 1999 15:01:41 +0000 (15:01 +0000)]
[project @ 1999-01-15 15:01:41 by simonm]
#if __HASKELL1__ > 4
import Ratio (numerator, denominator)
#endif
simonm [Fri, 15 Jan 1999 14:08:21 +0000 (14:08 +0000)]
[project @ 1999-01-15 14:08:21 by simonm]
Remove Void use.
sof [Fri, 15 Jan 1999 14:06:53 +0000 (14:06 +0000)]
[project @ 1999-01-15 14:06:53 by sof]
Parser didn't like "instance Foo X where {}". Does now.
simonm [Fri, 15 Jan 1999 14:06:50 +0000 (14:06 +0000)]
[project @ 1999-01-15 14:06:50 by simonm]
wibble
simonm [Fri, 15 Jan 1999 13:32:19 +0000 (13:32 +0000)]
[project @ 1999-01-15 13:32:19 by simonm]
fix isAlphanum/isAlphaNum problems.
simonm [Fri, 15 Jan 1999 13:11:04 +0000 (13:11 +0000)]
[project @ 1999-01-15 13:11:04 by simonm]
A couple of Int type signatures to avoid H98 Integer defaulting.
simonm [Fri, 15 Jan 1999 12:57:51 +0000 (12:57 +0000)]
[project @ 1999-01-15 12:57:49 by simonm]
H98 changes for non-cygwin targets.
sewardj [Fri, 15 Jan 1999 12:47:20 +0000 (12:47 +0000)]
[project @ 1999-01-15 12:47:19 by sewardj]
Remove 'const' modifier from static closure declarations. Static
closures are meant to live in R/W data space.