- 14 Jan, 2005 5 commits
-
-
simonmar authored
HEADS UP! You now need to use an up to date Happy from CVS to build GHC. Happy version 1.15 will be released shortly. Replace the slow hacked up String-based GetImports with one based on the real Haskell parser. This requires a new addition to Happy to support parsing partial files. We now avoid reading each source file off the disk twice: once to get its module name and imports, and again to parse it. Instead we just slurp it once, and cache the StringBuffer. This should result in improved startup times for ghc --make, especially when there are lots of source files.
-
simonmar authored
Add mk/fptools.css to $(SRC_DIST_FILES)
-
simonmar authored
hGetStringBuffer: hClose the file after we've read it (duh). This causes a real problem on Windows, where the file remains locked in GHCi, and cannot be modified until after the finalizer has closed it (bug #1047408).
-
simonmar authored
retire $(compiling_with_4xx): we don't support compiling with 4.x any more
-
wolfgang authored
Dynamic Linking, Part 2: Hack the Makefiles to build dynamic libraries. This allows you to actually use dynamic libraries to greatly reduce binary sizes on Darwin/PowerPC and on powerpc64-linux (for now). To use this, add the following to your build.mk SplitObjs=NO GhcBuildDylibs=YES GhcStage2HcOpts=-dynamic GhcLibHcOpts+=-fPIC -dynamic GhcRtsHcOpts+=-fPIC -dynamic GHC_CC_OPTS+=-fPIC (You can leave out the last three lines on powerpc64-linux). Then, to compile a program using dynamic libraries, pass the -dynamic option to GHC. To make GHCi use the dynamic libraries instead of .o files, just delete the HS*.o files. The dynamic library files are named libHSfoo_dyn.dylib or libHSfoo_dyn.so. Note that the dynamic and static libraries are build from the same .o files, but we really want to build the static libraries with SplitObjs and without -fPIC -dynamic to achieve better code size and performance. ghc/compiler/ghci/Linker.lhs: When looking for a library, look for HSfoo.o first (as before), then look for libHSfoo_dyn.[so/dylib] before looking for libHSfoo.[so/dylib]. ghc/compiler/main/DriverPipeline.hs: Main.dll_o and PrelMain.dll_o are dead, at least for now. ghc/compiler/main/Packages.lhs: When -dynamic is specified, add "_dyn" to all libraries specified in hs-libraries (not to the extra-libs). ghc/lib/compat/Makefile: Never build libghccompat as a dynamic lib. mk/package.mk: if GhcBuildDylibs is set to YES, build dynamic libraries. mk/target.mk: When installing .dylibs (Darwin only), update the install_name to point to the final location. (Somebody please read Apple's documentation on what install_names are, and then comment on whether this is a useful feature or whether it should be done the "normal" unix way).
-
- 13 Jan, 2005 10 commits
-
-
simonmar authored
Small optimisation: allow lookForInline to skip over CmmNop too
-
simonmar authored
default STOLEN_X86_REGS to 4 (workaround because GHC doesn't normally define STOLEN_X86_REGS when compiling plan .c source)
-
simonmar authored
Fix up STM when compiling unregisterised. There were a few wibbles with the stack layout.
-
simonmar authored
Instead of defining NO_REGS when IN_STG_CODE==0, define NO_GLOBAL_REG_DECLS instead. This means that in non-STG code we can still get at the values of REG_R1 & co., even though the global register decls are turned off. This is necessary because we sometimes need to set up different stack layouts depending on REG_R1.
-
simonmar authored
Make it so that global register declarations are turned off if NO_GLOBAL_REG_DECLS is defined.
-
simonmar authored
Improve a comment
-
simonmar authored
slight simplification
-
simonmar authored
Fix the unreg test in the rule for building AutoApply$(_way).cmm
-
simonmar authored
Add way debug_u
-
simonmar authored
Fix bug(s) in the register allocator: if a virtual register is both in memory and in a register (perhaps because it was recently loaded from a spill slot), and the current instruction writes it, we're supposed to invalidate the memory slot. That wasn't happening properly. This fixes two problems noticed when using -prof -fasm: 10queens in the testsuite gives the wrong answer, and nofib/spectral/hartel/ida fails with a 'head []' message. Interesting bug to track down!
-
- 12 Jan, 2005 12 commits
-
-
wolfgang authored
-package Cabal is required whenever $(bootstrapped) is yes, not only for bootstrapped compiles with GHCi.
-
simonmar authored
Fix a bug in mk_switch.
-
simonmar authored
Track removal of Distribution.Compat.Error
-
simonmar authored
Track removal of Distribution.Compat.Error.
-
simonmar authored
Restore splitting at ':' for the -i option, which I broke recently.
-
simonmar authored
Yet another STM fix: don't attempt to kick any threads which are ThreadRelocated.
-
ross authored
fix System.IO.Error breakage
-
simonmar authored
Numerous bug fixes to the STM code, mostly from a debugging session with Tim Harris. The test that flushed out all the bugs will shortly be added to the test suite.
-
simonmar authored
Issue an error when the stdcall calling convention is requested on non-x86 platforms.
-
simonmar authored
import System.IO.Error
-
wolfgang authored
Move _srtd and _closure_tbl to read-only data instead of text (these things contain pointers to other symbols, so they can't go into .text for position-independent code).
-
wolfgang authored
PowerPC Linux: Fix a slight ABI bug in genCCall Double and I64 arguments on the stack were not properly aligned.
-
- 11 Jan, 2005 9 commits
-
-
wolfgang authored
Cleanup and additional comments for the Mac OS/AIX/powerpc64-linux adjustor code.
-
simonmar authored
ignore OPTIONS_anything_else when looking for OPTIONS_GHC/OPTIONS pragmas.
-
simonmar authored
Rename OPTIONS to OPTIONS_GHC.
-
simonmar authored
Make GHC accept OPTIONS_GHC. OPTIONS is also accepted, for now.
-
simonmar authored
fix for parsing OPTIONS pragmas: OPTIONS should be followed by a non-identifier character.
-
simonmar authored
wibble: got my endifs mixed up
-
simonmar authored
When way=u, turn off split objects by setting SplitObjs=NO, rather than testing for way=u directly. Fixes a build wibble.
-
simonmar authored
Fix $(StripLibraries) code after ld changes yesterday.
-
wolfgang authored
Support foreign import "wrapper" with > 6 arguments on PowerPC Linux (32-bit). This calling convention looks deceptively simple at first, but it turns out to be hideously complex...
-
- 10 Jan, 2005 4 commits
-
-
krasimir authored
createDirectoryIfMissing is added to Compat.Directory and is used in ghc-pkg. The mingw32_HOST_OS is replaced with mingw32_TARGET_OS. I don't know why but prior the last commit the tool was working with mingw32_HOST_OS fine but not it isn't. Maybe I miss something. Simon, could you check whether the patch is fine?
-
wolfgang authored
Fix for AIX-like ABIs.
-
panne authored
Refactored and cleaned up ld-related tests. Only tested mildly under Linux.
-
wolfgang authored
Handle foreign import wrapper properly for MacOS X, powerpc64-linux and AIX. Only Mac OS X tested so far. Pass information about argument types from DsForeign to createAdjustor encoded as a string ('i' for integers, 'f' for floats, 'd' for doubles and 'l' for long [64bit] integers).
-