Ticket #4354: osx_pkg_patch

File osx_pkg_patch, 163.2 KB (added by elaforge, 4 years ago)
Line 
11 patch for repository http://darcs.haskell.org/ghc:
2
3Wed Sep 29 16:45:38 PDT 2010  Evan Laforge <qdunkan@gmail.com>
4  * change os x installer to allow multiple installed versions
5  This puts the ghc version into the package name so they are considered separate
6  packages.
7
8New patches:
9
10[change os x installer to allow multiple installed versions
11Evan Laforge <qdunkan@gmail.com>**20100929234538
12 Ignore-this: 4f70551293f53a52c39c5962d8a5bd5b
13 This puts the ghc version into the package name so they are considered separate
14 packages.
15] {
16hunk ./distrib/MacOS/GHC-relocatable.pmdoc/01ghc.xml 1
17-<pkgref spec="1.12" uuid="FD3688D8-0443-4DCE-A3BB-F4A8EF12A4AB"><config><identifier>org.haskell.glasgowHaskellCompiler.ghc.pkg</identifier><version>1</version><description></description><post-install type="none"/><installFrom relative="true" mod="true" includeRoot="true">build/Release/GHC.framework</installFrom><installTo relocatable="true">/Library/Frameworks</installTo><flags><followSymbolicLinks/></flags><packageStore type="internal"></packageStore><mod>parent</mod><mod>scripts.postinstall.path</mod><mod>requireAuthorization</mod><mod>scripts.scriptsDirectoryPath.isRelativeType</mod><mod>scripts.postinstall.isRelativeType</mod><mod>installTo.isRelativeType</mod><mod>scripts.postinstall.isAbsoluteType</mod><mod>relocatable</mod><mod>installFrom.isRelativeType</mod><mod>installFrom.path</mod><mod>installTo</mod></config><scripts><postinstall relative="true" mod="true">installer-scripts/relocate</postinstall><scripts-dir relative="true" mod="true">installer-scripts</scripts-dir></scripts><contents><component id="org.haskell.GHC" path="/Users/chak/Code/ghc/distrib/MacOS/build/Release/GHC.framework" version="609.20071208"/><filter>/CVS$</filter><filter>/\.svn$</filter><filter>/\.cvsignore$</filter><filter>/\.cvspass$</filter><filter>/\.DS_Store$</filter></contents></pkgref>
18+<pkgref spec="1.12" uuid="FD3688D8-0443-4DCE-A3BB-F4A8EF12A4AB"><config><identifier>org.haskell.ghc.pkg</identifier><version>1</version><description></description><post-install type="none"/><installFrom relative="true" mod="true" includeRoot="true">build/Release/GHC.framework</installFrom><installTo relocatable="true">/Library/Frameworks</installTo><flags><followSymbolicLinks/></flags><packageStore type="internal"></packageStore><mod>parent</mod><mod>scripts.postinstall.path</mod><mod>requireAuthorization</mod><mod>scripts.scriptsDirectoryPath.isRelativeType</mod><mod>scripts.postinstall.isRelativeType</mod><mod>installTo.isRelativeType</mod><mod>scripts.postinstall.isAbsoluteType</mod><mod>relocatable</mod><mod>installFrom.isRelativeType</mod><mod>installFrom.path</mod><mod>installTo</mod></config><scripts><postinstall relative="true" mod="true">installer-scripts/relocate</postinstall><scripts-dir relative="true" mod="true">installer-scripts</scripts-dir></scripts><contents><component id="org.haskell.GHC" path="/Users/chak/Code/ghc/distrib/MacOS/build/Release/GHC.framework" version="609.20071208"/><filter>/CVS$</filter><filter>/\.svn$</filter><filter>/\.cvsignore$</filter><filter>/\.cvspass$</filter><filter>/\.DS_Store$</filter></contents></pkgref>
19hunk ./distrib/MacOS/GHC-relocatable.pmdoc/index.xml 1
20-<pkmkdoc spec="1.12"><properties><title>Glasgow Haskell Compiler</title><build>/Users/chak/Desktop/Glasgow Haskell Compiler.pkg</build><organization>org.haskell</organization><userSees ui="easy"/><min-target os="3"/><domain anywhere="true" system="true" user="true"/></properties><distribution><versions min-spec="1.000000"/><scripts></scripts></distribution><description>The Glasgow Haskell Compiler (GHC) is a state-of-the-art, open source, compiler and interactive environment for the functional language Haskell.  GHC supports the entire Haskell 98 language plus a wide variety of extensions.  GHC generates fast code, is available on a range of platforms, and includes an extensive set of libraries.</description><contents><choice title="GHC" id="choice0" starts_selected="true" starts_enabled="true" starts_hidden="false"><pkgref id="org.haskell.glasgowHaskellCompiler.ghc.pkg"/><choice-reqs><requirement id="file" operator="eq" value="true" selected="no" enabled="no" hidden="unchanged" startSelected="unchanged" startEnabled="unchanged" startHidden="unchanged"><file>/usr/bin/gcc-4.0</file></requirement></choice-reqs></choice></contents><resources bg-scale="none" bg-align="topleft"><locale lang="de"/><locale lang="en"><resource relative="true" mod="true" type="license">build/Release/GHC.framework/Versions/609/ghc/LICENSE</resource><resource mime-type="text/rtf" kind="embedded" type="welcome"><![CDATA[{\rtf1\ansi\ansicpg1252\cocoartf949
21+<pkmkdoc spec="1.12"><properties><title>Glasgow Haskell Compiler</title><build>/Users/chak/Desktop/Glasgow Haskell Compiler.pkg</build><organization>org.haskell</organization><userSees ui="easy"/><min-target os="3"/><domain anywhere="true" system="true" user="true"/></properties><distribution><versions min-spec="1.000000"/><scripts></scripts></distribution><description>The Glasgow Haskell Compiler (GHC) is a state-of-the-art, open source, compiler and interactive environment for the functional language Haskell.  GHC supports the entire Haskell 98 language plus a wide variety of extensions.  GHC generates fast code, is available on a range of platforms, and includes an extensive set of libraries.</description><contents><choice title="GHC" id="choice0" starts_selected="true" starts_enabled="true" starts_hidden="false"><pkgref id="org.haskell.ghc.pkg"/><choice-reqs><requirement id="file" operator="eq" value="true" selected="no" enabled="no" hidden="unchanged" startSelected="unchanged" startEnabled="unchanged" startHidden="unchanged"><file>/usr/bin/gcc-4.0</file></requirement></choice-reqs></choice></contents><resources bg-scale="none" bg-align="topleft"><locale lang="de"/><locale lang="en"><resource relative="true" mod="true" type="license">build/Release/GHC.framework/Versions/609/ghc/LICENSE</resource><resource mime-type="text/rtf" kind="embedded" type="welcome"><![CDATA[{\rtf1\ansi\ansicpg1252\cocoartf949
22 {\fonttbl\f0\fnil\fcharset0 LucidaGrande;}
23 {\colortbl;\red255\green255\blue255;}
24 \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
25hunk ./distrib/MacOS/GHC-relocatable.pmdoc/index.xml 22
26 Extensive documentation is available online at\
27 \
28   http://haskell.org/haskellwiki/GHC}]]></resource></locale></resources><flags/><item type="file">01ghc.xml</item><mod>properties.userDomain</mod><mod>properties.title</mod><mod>description</mod><mod>properties.systemDomain</mod></pkmkdoc>
29+
30hunk ./distrib/MacOS/GHC-system.pmdoc/01ghc.xml 1
31-<pkgref spec="1.12" uuid="24EEBBE7-7B79-47C9-839B-A5407A419948"><config><identifier>org.haskell.glasgowHaskellCompiler.GHC.pkg</identifier><version>1.0</version><description/><post-install type="none"/><requireAuthorization/><installFrom includeRoot="true">/tmp/GHC.dst/Library/Frameworks/GHC.framework</installFrom><installTo>/Library/Frameworks</installTo><flags><followSymbolicLinks/></flags><packageStore type="internal"/><mod>scripts.scriptsDirectoryPath.path</mod><mod>parent</mod><mod>identifier</mod><mod>scripts.postinstall.path</mod></config><scripts><postinstall relative="true" mod="true">installer-scripts/create-links</postinstall><scripts-dir relative="true" mod="true">installer-scripts</scripts-dir></scripts><contents><file-list>01ghc-contents.xml</file-list><component id="org.haskell.GHC" path="/tmp/GHC.dst/Library/Frameworks/GHC.framework" version="612.220100521"/><filter>/CVS$</filter><filter>/\.svn$</filter><filter>/\.cvsignore$</filter><filter>/\.cvspass$</filter><filter>/\.DS_Store$</filter></contents></pkgref>
32+<pkgref spec="1.12" uuid="24EEBBE7-7B79-47C9-839B-A5407A419948"><config><identifier>org.haskell.ghc.pkg</identifier><version>1.0</version><description/><post-install type="none"/><requireAuthorization/><installFrom includeRoot="true">/tmp/GHC.dst/Library/Frameworks/GHC.framework</installFrom><installTo>/Library/Frameworks</installTo><flags><followSymbolicLinks/></flags><packageStore type="internal"/><mod>scripts.scriptsDirectoryPath.path</mod><mod>parent</mod><mod>identifier</mod><mod>scripts.postinstall.path</mod></config><scripts><postinstall relative="true" mod="true">installer-scripts/create-links</postinstall><scripts-dir relative="true" mod="true">installer-scripts</scripts-dir></scripts><contents><file-list>01ghc-contents.xml</file-list><component id="org.haskell.GHC" path="/tmp/GHC.dst/Library/Frameworks/GHC.framework" version="612.220100521"/><filter>/CVS$</filter><filter>/\.svn$</filter><filter>/\.cvsignore$</filter><filter>/\.cvspass$</filter><filter>/\.DS_Store$</filter></contents></pkgref>
33hunk ./distrib/MacOS/GHC-system.pmdoc/index.xml 1
34-<pkmkdoc spec="1.12"><properties><title>Glasgow Haskell Compiler</title><build>/Users/bjs/Desktop/Glasgow Haskell Compiler.pkg</build><organization>org.haskell</organization><userSees ui="easy"/><min-target os="3"/><domain system="true"/></properties><distribution><versions min-spec="1.000000"/><scripts></scripts></distribution><description>The Glasgow Haskell Compiler (GHC) is a state-of-the-art, open source, compiler and interactive environment for the functional language Haskell.  GHC supports the entire Haskell 98 language plus a wide variety of extensions.  GHC generates fast code, is available on a range of platforms, and includes an extensive set of libraries.  For more information, please consult &lt;http://haskell.org/ghc>.</description><contents><choice title="GHC" id="choice0" starts_selected="true" starts_enabled="true" starts_hidden="false"><pkgref id="org.haskell.glasgowHaskellCompiler.GHC.pkg"/><choice-reqs><requirement id="file" operator="eq" value="true" selected="no" enabled="no" hidden="unchanged" startSelected="unchanged" startEnabled="unchanged" startHidden="unchanged"><file>/usr/bin/gcc</file></requirement></choice-reqs></choice></contents><resources bg-scale="none" bg-align="center"><locale lang="en"><resource relative="true" mod="true" type="background">installer-docs/lambda-logo.png</resource><resource relative="true" mod="true" type="license">installer-docs/license.html</resource><resource mime-type="text/rtf" kind="embedded" type="welcome"><![CDATA[{\rtf1\ansi\ansicpg1252\cocoartf1038\cocoasubrtf290
35+<pkmkdoc spec="1.12"><properties><title>Glasgow Haskell Compiler</title><build>/Users/bjs/Desktop/Glasgow Haskell Compiler.pkg</build><organization>org.haskell</organization><userSees ui="easy"/><min-target os="3"/><domain system="true"/></properties><distribution><versions min-spec="1.000000"/><scripts></scripts></distribution><description>The Glasgow Haskell Compiler (GHC) is a state-of-the-art, open source, compiler and interactive environment for the functional language Haskell.  GHC supports the entire Haskell 98 language plus a wide variety of extensions.  GHC generates fast code, is available on a range of platforms, and includes an extensive set of libraries.  For more information, please consult &lt;http://haskell.org/ghc>.</description><contents><choice title="GHC" id="choice0" starts_selected="true" starts_enabled="true" starts_hidden="false"><pkgref id="org.haskell.ghc.pkg"/><choice-reqs><requirement id="file" operator="eq" value="true" selected="no" enabled="no" hidden="unchanged" startSelected="unchanged" startEnabled="unchanged" startHidden="unchanged"><file>/usr/bin/gcc</file></requirement></choice-reqs></choice></contents><resources bg-scale="none" bg-align="center"><locale lang="en"><resource relative="true" mod="true" type="background">installer-docs/lambda-logo.png</resource><resource relative="true" mod="true" type="license">installer-docs/license.html</resource><resource mime-type="text/rtf" kind="embedded" type="welcome"><![CDATA[{\rtf1\ansi\ansicpg1252\cocoartf1038\cocoasubrtf290
36 {\fonttbl\f0\fnil\fcharset0 LucidaGrande;}
37 {\colortbl;\red255\green255\blue255;}
38 \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
39hunk ./distrib/MacOS/GHC-system.pmdoc/index.xml 32
40 To uninstall, execute\
41 \
42   /Library/Frameworks/GHC.framework/Tools/Uninstaller}]]></resource></locale></resources><flags/><item type="file">01ghc.xml</item><mod>properties.systemDomain</mod><mod>properties.title</mod><mod>properties.userDomain</mod><mod>properties.anywhereDomain</mod><mod>description</mod></pkmkdoc>
43+
44hunk ./distrib/MacOS/Info.plist 14
45        <key>CFBundleIconFile</key>
46        <string></string>
47        <key>CFBundleIdentifier</key>
48-       <string>org.haskell.GHC</string>
49+       <string>org.haskell.ghc.${FRAMEWORK_VERSION}</string>
50        <key>CFBundleInfoDictionaryVersion</key>
51        <string>6.0</string>
52        <key>CFBundlePackageType</key>
53hunk ./distrib/MacOS/Makefile 104
54                   COMMAND_MODE=unix2003
55        -$(RM) -f GHC-system.pmdoc/*-contents.xml
56        $(PACKAGEMAKER) -v --doc GHC-system.pmdoc\
57-                       $(PACKAGEMAKER_TARGET) -o $(TOP)/$(PACKAGE_NAME) -i org.haskell.GHC
58+                       $(PACKAGEMAKER_TARGET) -o $(TOP)/$(PACKAGE_NAME)\
59+                       -i org.haskell.GHC.$(FRAMEWORK_VERSION)
60 
61 # If we don't specify COMMAND_MODE=unix2003 then xcodebuild defaults
62 # to setting it to legacy, which means that ar builds archives
63hunk ./distrib/MacOS/installer-scripts/Uninstaller 72
64 
65 echo "Removing package recipt"
66 # The first is for Leopard packages and the second for Tiger packages.
67-rm -f /Library/Receipts/boms/org.haskell.glasgowHaskellCompiler.ghc.pkg.bom
68+rm -f /Library/Receipts/boms/org.haskell.ghc.pkg.bom
69 rm -rf /Library/Receipts/ghc.pkg
70 
71 echo "${INSTALL_DEST}/GHC.framework has been purged!"
72hunk ./distrib/MacOS/installer-scripts/create-links 8
73 # * Add link to the man page into the standard man/man1/ directory
74 # * Add link to the HTML docs into the standard share/doc/ directory
75 
76+# The binary links are careful not to use Current, because that will be
77+# rebound to the current version on every reinstall.
78+
79+# It probably won't ever happen, but this should work correctly if the install
80+# destination has a space on it.
81+
82+# See apple "Install Operations" documentation for how this script is called.
83+
84 INSTALL_DEST=$2
85 INSTALL_BASE=$3
86 
87hunk ./distrib/MacOS/installer-scripts/create-links 19
88-if [ ${INSTALL_BASE} = / ]; then
89+if [ "$INSTALL_BASE" = / ]; then
90   INSTALL_BASE=/usr
91 fi
92 
93hunk ./distrib/MacOS/installer-scripts/create-links 23
94-INSTALL_BIN=${INSTALL_BASE}/bin
95-mkdir -p ${INSTALL_BIN}
96-if [ -d ${INSTALL_DEST}/GHC.framework/Versions/Current/usr/bin ]; then
97-  ln -sf ${INSTALL_DEST}/GHC.framework/Versions/Current/usr/bin/*\
98-        ${INSTALL_BIN}/
99+ProjectVersionInt=$(readlink "$INSTALL_DEST/GHC.framework/Versions/Current")
100+GHC_BASE=$INSTALL_DEST/GHC.framework/Versions/$ProjectVersionInt
101+
102+INSTALL_BIN=$INSTALL_BASE/bin
103+mkdir -p "$INSTALL_BIN"
104+if [ -d "$GHC_BASE/usr/bin" ]; then
105+  ln -sf "$GHC_BASE"/usr/bin/* "$INSTALL_BIN/"
106 fi
107 
108hunk ./distrib/MacOS/installer-scripts/create-links 32
109-INSTALL_MAN1=${INSTALL_BASE}/share/man/man1
110-INSTALL_HTML=${INSTALL_BASE}/share/doc
111-mkdir -p ${INSTALL_MAN1}
112-if [ -d ${INSTALL_DEST}/GHC.framework/Versions/Current/usr/share/man/man1 ];
113-then
114-  ln -sf ${INSTALL_DEST}/GHC.framework/Versions/Current/usr/share/man/man1/*\
115-        ${INSTALL_MAN1}/
116-  ln -sf ${INSTALL_DEST}/GHC.framework/Versions/Current/usr/share/doc/ghc\
117-        ${INSTALL_HTML}/
118+INSTALL_MAN1="$INSTALL_BASE"/share/man/man1
119+INSTALL_HTML="$INSTALL_BASE"/share/doc
120+mkdir -p "$INSTALL_MAN1"
121+if [ -d "$GHC_BASE"/usr/share/man/man1 ]; then
122+  ln -sf "$GHC_BASE"/usr/share/man/man1/* "$INSTALL_MAN1/"
123+  ln -sf "$GHC_BASE"/usr/share/doc/ghc.$ProjectVersionInt "$INSTALL_HTML/"
124 fi
125}
126
127Context:
128
129[Fix the doc directory on Windows
130Ian Lynagh <igloo@earth.li>**20100929133328]
131[Remove an unused import on Windows
132Ian Lynagh <igloo@earth.li>**20100929000024
133 Ignore-this: 2899e0e5a47122e637fb5c8aa0df52ab
134]
135[Use showCommandForUser when showing tracing commands
136Ian Lynagh <igloo@earth.li>**20100928235844
137 Ignore-this: 8a4a9c9f8a8029e708c4297b096b6ef1
138]
139[Fix hsc2hs docs: 'gcc' is now the default compiler, not 'ghc'; fixes #4341
140Ian Lynagh <igloo@earth.li>**20100928201938]
141[Use an empty signal handler for SIGPIPE instead of SIG_IGN
142Simon Marlow <marlowsd@gmail.com>**20100925193548
143 Ignore-this: b4dc5de32740a7c5fd8fe4b3bfb1300f
144 
145 This is so that the SIGPIPE handler gets reset to the default
146 automatically on exec().
147]
148[Fix the TH deps
149Ian Lynagh <igloo@earth.li>**20100925210029
150 Ignore-this: 32b832301a3625d4ba70f84c5c4f94d2
151]
152[Check inplace doesn't exist before we try to create it
153Ian Lynagh <igloo@earth.li>**20100924191858
154 This fixes rerunning configure in a tree which already has an inplace
155 directory. Edward Z Yang ran into this; I guess whether it actually
156 fails depends on details of your installation, or we'd have run into
157 it sooner.
158]
159[Fix an egregious bug: INLINE pragmas on monomorphic Ids were being ignored
160simonpj@microsoft.com**20100924155815
161 Ignore-this: 38c6eec6710a92df7662a55fc5132c15
162 
163 I had do to some refactoring to make this work nicely
164 but now it does. I can't think how this escaped our
165 attention for so long!
166]
167[Eta expand only lambdas that bind a non-dictionary Id
168simonpj@microsoft.com**20100924155707
169 Ignore-this: 7cc265eaf6c0bb3fa12eb311d92594ac
170 
171 See Note [When to eta expand]. The idea is that dictionary
172 lambdas are invisible to the user, so we shouldn't eta
173 expand them.
174]
175[Add a comment
176simonpj@microsoft.com**20100924155620
177 Ignore-this: de210a1afdd40328824803e1d77b4d7f
178]
179[Add a debug print
180simonpj@microsoft.com**20100924155614
181 Ignore-this: 1a58b6d297fc77d6ded8eec7ea9f895d
182]
183[Just moving comments around
184simonpj@microsoft.com**20100924155600
185 Ignore-this: 96635b8e8c9d88b50d82938568152ef8
186]
187[use putStrLn instead of Haskeline's outputStrLn
188Simon Marlow <marlowsd@gmail.com>**20100924133154
189 Ignore-this: 7581ae11714a9a52e78ba098c3c216b3
190 use of the latter caused problems for Claus Reinke's macros that
191 redirect stdout.
192]
193[Change "OPTIONS" to "OPTIONS_GHC" in error messages; fixes #4327
194Ian Lynagh <igloo@earth.li>**20100924120423
195 Ignore-this: 1697c83a5c346db640c0a2e22c69ff55
196]
197[Add deps for TH uses in vector
198Ian Lynagh <igloo@earth.li>**20100923220244
199 Ignore-this: 54c3386b1c268821fcdd34b84bc8c6a4
200]
201[Bump Cabal dep
202Ian Lynagh <igloo@earth.li>**20100923143241]
203[Update Cabal's version number
204Ian Lynagh <igloo@earth.li>**20100923141719]
205[Build primitive with stage2
206Ian Lynagh <igloo@earth.li>**20100923140525
207 Ignore-this: 110a819b78a57629a7edf1d4facdc191
208]
209[Fix the Windows __chkstk build error (missing Linker symbol)
210Simon Marlow <marlowsd@gmail.com>**20100924113837
211 Ignore-this: 48f0907bb1bd5eaa0730b94a6bd94ea
212]
213[emit a helpful error message for missing DPH packages
214Simon Marlow <marlowsd@gmail.com>**20100923141957
215 Ignore-this: 55ff2ee90c94524e023e014243bfe5df
216]
217[Fix computation of installed packages
218simonpj@microsoft.com**20100924084737
219 Ignore-this: a597d2fa8be5135ba8ead6d2624b3d71
220 
221 This is a follow-on to Simon's patch yesterday, developed
222 with him.  It cleans up the computation of how packages
223 are installed, and installs the right ones.
224]
225[Fix braino in WwLib/Literal patch
226simonpj@microsoft.com**20100924070914
227 Ignore-this: f6eb3a42e10f8aa7920de541cdfe76d8
228]
229[For now, switch off incomplete-pattern warnings in containers
230simonpj@microsoft.com**20100923130117
231 Ignore-this: 7ffa58567f7a33aafe256492999da325
232 
233 Put it back on when my patch is applied to the containers repo.
234 (the one that removes two refuable lambdas)
235]
236[Make -funfolding-dict-threshold work properly
237simonpj@microsoft.com**20100923130032
238 Ignore-this: 417788f5b09d1d624f6b6371852c80c7
239 
240 and increase its default value. This makes overloaded functions
241 a bit keener to inline.  Which fixes Trac #4321
242]
243[Impredicative types is no longer deprecated
244simonpj@microsoft.com**20100923125910
245 Ignore-this: 2bbaeb38b5e8424551677c0add627683
246]
247[Do not make FunctionalDependencies force MonoLocalBinds
248simonpj@microsoft.com**20100923125900
249 Ignore-this: f4ae1fd07c87ec14f60bdfe3863ba7a9
250]
251[move CHECKED settings to the right place
252Simon Marlow <marlowsd@gmail.com>**20100923123558
253 Ignore-this: e00a0eb5855463cc9b953670b3bbf211
254]
255[turn off -Werror for primitive and vector
256Simon Marlow <marlowsd@gmail.com>**20100923122055
257 Ignore-this: 54d7b80f3f893385e1c3ef431e2a8a7b
258]
259[Add primitive and vector packages for DPH support
260Simon Marlow <marlowsd@gmail.com>**20100923104542
261 Ignore-this: c070d015385b0a0797394132dcbb7670
262 DPH is now using the public vector package instead of its internal
263 version.
264 
265 vector and primitive are not "boot" packages; they aren't required to
266 build GHC, but they are required to validate (because we include DPH
267 when validating).
268 
269 If you say './darcs-all get --no-dph' then you don't get DPH, vector,
270 or primitive.
271]
272[Refactoring and tidy up in the build system
273Simon Marlow <marlowsd@gmail.com>**20100923095642
274 Ignore-this: f7bf3a1fd160149d89b26f464b064fb1
275 
276 Instead of the ghc-stage and ghc-stage2-package files in a package, we
277 now have a list of these in ghc.mk.  There are other similar lists (of
278 boot-packages and non-installable packages), so this is not too bad,
279 and is simpler.
280 
281 While poking around in the top-level ghc.mk file I spotted various
282 opportunities to clean up and re-order some of the cruft that has
283 accumulated over time.
284]
285[Allow absent State# RealWorld arguments
286simonpj@microsoft.com**20100923111356
287 Ignore-this: c2d57633dec0293ebe6723ea3a4bb5df
288]
289[Add notSCCNote, and use it
290simonpj@microsoft.com**20100923105949
291 Ignore-this: c8cc758656558a7f366bf784d75f0304
292 
293 The point here is that SCCs get in the way of eta
294 expansion and we must treat them uniformly.
295]
296[Remove use of lambda with a refutable pattern
297simonpj@microsoft.com**20100923105901
298 Ignore-this: d7d48b94e5744717a838591a1cc79cf0
299]
300[Avoid ASSERT black hole
301simonpj@microsoft.com**20100923105820
302 Ignore-this: 5419d450871be22c8781ac3f0f40d76a
303 
304 When this ASSERT tripped in CoreToStg it tried to print out
305 too much, which tripped the asssertion again.  Result: an
306 infinite loop with no output at all.  Hard to debug!
307]
308[Rejig the absent-arg stuff for unlifted types
309simonpj@microsoft.com**20100923105732
310 Ignore-this: 69daa35816b948b0c4d259c73a5e928e
311 
312 This is what was giving the "absent entered" messages
313 See Note [Absent errors] in WwLib.  We now return a
314 suitable literal for absent values of unlifted type.
315]
316[Remove -fwarn-simple-patterns, and make -fwarn-incomplete-patterns include lambdas
317simonpj@microsoft.com**20100922133934
318 Ignore-this: e851a2fb0377e10c28c506f0bf14cc85
319 
320 This makes
321      \(x:xs) -> e
322 want when you have -fwarn-incomplete-patterns, which is consistent.
323]
324[Get rid of non-exhaustive lambda
325simonpj@microsoft.com**20100922133801
326 Ignore-this: 748b2d5b43b02b6591b81abe7c105cd6
327]
328[Fix an ASSERT failure with profiling
329simonpj@microsoft.com**20100922133741
330 Ignore-this: 170b2e94d6ee8cc7444cc4bb515328a0
331 
332 The problem arose with this kind of thing
333 
334    x = (,) (scc "blah" Nothing)
335 
336 Then 'x' is marked NoCafRefs by CoreTidy, becuase it has
337 arity 1, and doesn't mention any caffy things.
338 
339 That in turns means that CorePrep must not float out the
340 sat binding to give
341 
342   sat = scc "blah" Nothing
343   x = (,) sat
344 
345 Rather we must generate
346 
347   x = \eta. let sat = scc "blah" Nothing
348             in (,) sat eta
349 
350 URGH! This Caf stuff is such a mess.
351]
352[Remove an out of date paragraph from the user guide; fixes #4331
353Ian Lynagh <igloo@earth.li>**20100922225239]
354[Fix bindisttest when GhcProfiled = YES
355Ian Lynagh <igloo@earth.li>**20100921222634
356 Ignore-this: 47c620fd6bec745e3eb699d9f53441d8
357]
358[Fixes for when HADDOCK_DOCS=NO
359Ian Lynagh <igloo@earth.li>**20100921213916
360 Ignore-this: e0e069555c6db9d01a8ac70ba4dde591
361]
362[Bump version to 7.1
363Ian Lynagh <igloo@earth.li>**20100921195935
364 Ignore-this: 4563987e6885d5ef55995ec0fa0d5ae8
365]
366[Don't use -march=i686 on powerpc-apple-darwin
367Ian Lynagh <igloo@earth.li>**20100921193721
368 Thorikil ran into this when doing a PPC OS X build. We now also don't
369 use -m32 on PPC/OSX, but I don't think it should be necessary. We can
370 add it back if it does turn out to be.
371]
372[add a simple trace facility to the build system
373Simon Marlow <marlowsd@gmail.com>**20100921134729
374 Ignore-this: d23ea2d62a648d0711b4b07d98e1b79f
375 
376 saying
377 
378   make TRACE=1
379 
380 prints most of the macro calls and their arguments.  It's easy to
381 trace new macros; see rules/trace.mk.
382]
383[fix building with extra packages (packages were added to BUILD_DIRS twice)
384Simon Marlow <marlowsd@gmail.com>**20100921100153
385 Ignore-this: 4b425dff9777871ad5ba3e05e1d14483
386 Also add some comments about what extra-packages is doing
387]
388[add extra packages to $(EXTRA_PACKAGES), so we avoid installing them by default
389Simon Marlow <marlowsd@gmail.com>**20100920144307
390 Ignore-this: 3395825d911a8bf7ba8385518d8b517b
391]
392[Fix indexing error in archive loader
393Ian Lynagh <igloo@earth.li>**20100921121642]
394[Add some -Dl belches
395Ian Lynagh <igloo@earth.li>**20100921121624]
396[Add casts to fix warnings
397Ian Lynagh <igloo@earth.li>**20100921121714]
398[Add support for BSD-variant large filenames in .a archives
399Ian Lynagh <igloo@earth.li>**20100921000451]
400[Tell Cabal that we're not building GHCi libs if UseArchivesForGhci=YES
401Ian Lynagh <igloo@earth.li>**20100920230449]
402["UseArchivesForGhci = YES" on darwin
403Ian Lynagh <igloo@earth.li>**20100920211538]
404[Add a dependency that my OS X build has recently started tripping up over
405Ian Lynagh <igloo@earth.li>**20100920210239]
406[Add "Use archives for ghci" to --info output
407Ian Lynagh <igloo@earth.li>**20100920210523]
408[Implement archive loading for ghci
409Ian Lynagh <igloo@earth.li>**20100920201620]
410[Tweak gen_contents_index now dph may not be there
411Ian Lynagh <igloo@earth.li>**20100920201513]
412[Filter out the FFI library when loading package in ghci
413Ian Lynagh <igloo@earth.li>**20100920181032
414 The FFI GHCi import lib isn't needed as
415 compiler/ghci/Linker.lhs + rts/Linker.c link the
416 interpreted references to FFI to the compiled FFI.
417 We therefore filter it out so that we don't get
418 duplicate symbol errors.
419]
420[Loosen the conditions for -XUndecidableInstances; fixes Trac #4200
421simonpj@microsoft.com**20100919162623
422 Ignore-this: 2f4323e278b1ce9250549727ffd0aa1b
423]
424[Further improvements in error messages
425simonpj@microsoft.com**20100919153355
426 Ignore-this: b6fa0b11ae893df1a3ca68f78e427fa
427]
428[Add a flag -fwarn-missing-local-sigs, and improve -fwarn-mising-signatures
429simonpj@microsoft.com**20100919153327
430 Ignore-this: fda8dfca450054ea692be0ee30b01885
431 
432 The new flag prints out a warning if you have a local,
433 polymorphic binding that lacks a type signature. It's meant
434 to help with the transition to the new typechecker, which
435 discourages local let-generalisation.
436 
437 At the same time I moved the missing-signature code to TcHsSyn,
438 where it takes place as part of zonking.  That way the
439 types are reported after all typechecking is complete,
440 thereby fixing Trac #3696.  (It's even more important for
441 local bindings, which is why I made the change.)
442]
443[Include the "stupid theta" in the type of $con2tag
444simonpj@microsoft.com**20100919152201
445 Ignore-this: d95fae78a0e66f48bbd5862573a11f4d
446]
447[Add a release note about the typechecker
448Ian Lynagh <igloo@earth.li>**20100919132927]
449[Enable shared libs on OpenBSD
450Matthias Kilian <kili@outback.escape.de>**20100918205040
451 Ignore-this: 729dd7ac0bba5d758f43bc31b541896
452]
453[Add separate functions for querying DynFlag and ExtensionFlag options
454Ian Lynagh <igloo@earth.li>**20100918163815
455 and remove the temporary DOpt class workaround.
456]
457[Fix mkUserGuidePart deps
458Ian Lynagh <igloo@earth.li>**20100918145904
459 We need to directly depend on the stage1 libs. The stage1 compiler lib
460 doesn't depend on them.
461]
462[Fix build on cygwin: Normalise slashes in .depend files to be /
463Ian Lynagh <igloo@earth.li>**20100918132328
464 Ignore-this: 664f5ef4a41a4461eb34fe2ca7f2729a
465]
466[extra packages info is now read from packages file
467Ian Lynagh <igloo@earth.li>**20100917224409
468 rather than being repeated in the build system
469]
470[Tweak darcs-all
471Ian Lynagh <igloo@earth.li>**20100917194435]
472[Bump dependencies
473Ian Lynagh <igloo@earth.li>**20100917183609]
474[Library release notes for 7.0.1
475Ian Lynagh <igloo@earth.li>**20100917174850]
476[Fix overriding of implicit parameters in the solver
477simonpj@microsoft.com**20100917140403
478 Ignore-this: af76732309c7e2ca6b04f49327e9c14b
479]
480[Minor type printing amomaly
481simonpj@microsoft.com**20100917140204
482 Ignore-this: c90cb2e51421b4543a827e096051772e
483]
484[Spaces only
485simonpj@microsoft.com**20100917140156
486 Ignore-this: 7e34479502f7cb87d762355e40cbd012
487]
488[Minor refactoring
489simonpj@microsoft.com**20100917140150
490 Ignore-this: 6c0648b949b91b7e2f23c136b124faf2
491]
492[Add types of implicit parameters as untouchable
493simonpj@microsoft.com**20100917140138
494 Ignore-this: ba80740a557a9ba062dc7756e2320d17
495 
496 This is a tricky point:
497    see Note [Implicit parameter untouchables]
498]
499[Better pretty printing of implicit parameters
500simonpj@microsoft.com**20100917140054
501 Ignore-this: 867dd67818a5bd687b2b6a1b59e15775
502]
503[Yet more error message improvement
504simonpj@microsoft.com**20100917121206
505 Ignore-this: 647fe8129d1d39d81e8249debd8df94e
506]
507[More error message wibbles
508simonpj@microsoft.com**20100917094721
509 Ignore-this: 8ec2f150b96b26af2e9ab7ac2b371fc7
510]
511[More error refactoring
512simonpj@microsoft.com**20100917092834
513 Ignore-this: 2d570ac0b9cc11305ddd33d093d11324
514]
515[Refactor type errors a bit
516simonpj@microsoft.com**20100917080726
517 Ignore-this: 33da4549373f585064e2ee22b50ad6ac
518 
519 Improves kind error messages in paticular
520]
521[Fix a very subtle shadowing bug in optCoercion
522simonpj@microsoft.com**20100916170452
523 Ignore-this: 9041cfb3c93e27a5e644e57815313aae
524 
525 See Note [Subtle shadowing in coercions]
526 
527 This is what was going wrong in Trac 4160.
528]
529[Fix bad error in tyVarsOfType
530simonpj@microsoft.com**20100916170348
531 Ignore-this: 67c8ce96a668cf6e3a38b82c893bcd81
532 
533 We weren't gathering the type variables free in the kind
534 of a coercion binder!
535]
536[More assertions
537simonpj@microsoft.com**20100916170310
538 Ignore-this: 7fdcb53c99d791621a3d7e01ef454404
539]
540[Add more location info in CoreLint
541simonpj@microsoft.com**20100916170229
542 Ignore-this: 6558bab544b4f30189e0430668db87c3
543]
544[Print coercion variables as such (debugging change only)
545simonpj@microsoft.com**20100916165944
546 Ignore-this: c6d2001c1d8279a2288cb63bc339577d
547]
548[Remove pprTrace
549simonpj@microsoft.com**20100915225935
550 Ignore-this: 28185bbfa9732386f3c0f3eb4781a637
551]
552[Remove dead code dealing with type refinement
553simonpj@microsoft.com**20100915223230
554 Ignore-this: 62824b5c2ec1077c7642163352559621
555]
556[Use mkAppTy
557simonpj@microsoft.com**20100915223205
558 Ignore-this: e79e087b6a49219e9088846a1253a153
559 
560 Using AppTy in CoreLint was giving a bogus Lint failure
561]
562[Comments only
563simonpj@microsoft.com**20100915221253
564 Ignore-this: 3a45ea614188ccbb4a462de5cac96eda
565]
566[Extend eta reduction to work with casted arguments
567simonpj@microsoft.com**20100915221229
568 Ignore-this: 24b103dcdf70331211507af929789f86
569 
570 See Trac #4201, and
571 Note [Eta reduction with casted arguments]
572 
573 Thanks to Louis Wasserman for suggesting this, and
574 implementing an early version of the patch
575]
576[Allow "INLINEABLE" as a synonym
577simonpj@microsoft.com**20100915154249
578 Ignore-this: f41f80cb769e9acd5b463b170df698d0
579]
580[Documentation for INLINABLE
581simonpj@microsoft.com**20100915154235
582 Ignore-this: f942c02bcadc0d2d2f05b9369f93e280
583]
584[Implement TH reification of instances (Trac #1835)
585simonpj@microsoft.com**20100915151242
586 Ignore-this: 97dfa83db7da8f6cbd1b96801a57f8c5
587 
588 Accompanying patch for template-haskell package is reqd
589]
590[errno corresponding to ERROR_NO_DATA should be EPIPE (non-threaded RTS)
591Simon Marlow <marlowsd@gmail.com>**20100915141809
592 Ignore-this: 709c7280fbaa762e7071fb8796e8c01e
593]
594[Windows: use a thread-local variable for myTask()
595Simon Marlow <marlowsd@gmail.com>**20100915120627
596 Ignore-this: 13ffa4f19ebd319fe672af53af8d0b9a
597 Which entailed fixing an incorrect #ifdef in Task.c
598]
599[Fix typo
600Ian Lynagh <igloo@earth.li>**20100915140814]
601[Add quotes in error message
602simonpj@microsoft.com**20100915144724
603 Ignore-this: c5158047c0aa41947a79e4c8edbe54f4
604]
605[Fix isDefaultInlinePragma
606simonpj@microsoft.com**20100915144710
607 Ignore-this: c9addf6bf811b23dc12603cf8521aa6c
608]
609[Implement INLINABLE pragma
610simonpj@microsoft.com**20100915124442
611 Ignore-this: 80a4ab2c2d65b27868dc9b2e954d6c6f
612 
613 Implements Trac #4299.  Documentation to come.
614]
615[Less voluminous error when derived code doesn't typecheck
616simonpj@microsoft.com**20100915072301
617 Ignore-this: eca7871dcc50c1070a0b530711adea27
618]
619[Improve pretty-printing of family instances
620simonpj@microsoft.com**20100915123219
621 Ignore-this: 25ec6bcc7e8a7f7c303b38ca201db90e
622 
623 Fixed Trac #4246
624]
625[Fix Trac #4240: -ddump-minimal-imports
626simonpj@microsoft.com**20100915121937
627 Ignore-this: ab85057cb829a42ea44a92f7b4af24a3
628 
629 See Note [Partial export] for the details.
630 I also fixed one egregious bug that was just
631 waiting to bite: we were using loadSysInterface
632 instead of loadSrcInterface.
633]
634[Comments only
635simonpj@microsoft.com**20100915105707
636 Ignore-this: ab3a5f16f8260b7b8570e748bf97998a
637]
638[implement setThreadAffinity on Windows (#1741)
639Simon Marlow <marlowsd@gmail.com>**20100914155844
640 Ignore-this: a14c7b4ef812007042342d0a25478f0b
641]
642[COFF: cope with new debug sections in gcc 4.x (fixes ghciprog004)
643Simon Marlow <marlowsd@gmail.com>**20100914153026
644 Ignore-this: f340e40a2b0390836bc61bba144a04ed
645 Also updated the object file parser to properly handle the overflow
646 case for section names longer than 8 chars.
647]
648[eliminate clutter from make output
649Simon Marlow <marlowsd@gmail.com>**20100915105712
650 Ignore-this: bfa4480dd239dda2a02ac391b6a9219c
651]
652[rts_isProfiled should be a visible API (fixes T2615(dyn))
653Simon Marlow <marlowsd@gmail.com>**20100915083941
654 Ignore-this: b8ac09bb9d1a929bf45c6122f8485561
655]
656[Fix the "lost due to fragmentation" calculation
657Simon Marlow <marlowsd@gmail.com>**20100914145945
658 Ignore-this: cdffcc9f3061c3a33da5171be111fc43
659 It was counting the space used by block descriptors as "lost"
660]
661[fix +RTS -S output: use peak_mblocks_allocated, now that mblocks can be freed
662Simon Marlow <marlowsd@gmail.com>**20100914135030
663 Ignore-this: 65d21e5f86d3ab6ab4d6c255180b6968
664]
665[Fix egregious bug in deeplyInstantiate
666simonpj@microsoft.com**20100915070325
667 Ignore-this: 22ede973038877af2673339aaf5de6cf
668 
669 This resulted in an infinite loop in applyTypeToArgs, in syb
670]
671[Improve HsSyn pretty printing
672simonpj@microsoft.com**20100915070255
673 Ignore-this: 7c8e2d86a482453c7e69e22bc31cb03f
674]
675[Remove (most of) the FiniteMap wrapper
676Ian Lynagh <igloo@earth.li>**20100914201703
677 We still have
678     insertList, insertListWith, deleteList
679 which aren't in Data.Map, and
680     foldRightWithKey
681 which works around the fold(r)WithKey addition and deprecation.
682]
683[Improve ASSERT
684simonpj@microsoft.com**20100914113900
685 Ignore-this: dbc0363be5924f543316e77f7d18dd77
686]
687[Comment on what an "enumeration" type is
688simonpj@microsoft.com**20100914113850
689 Ignore-this: c09c8591e3140f305d55fbf945adbf95
690]
691[Make absent-arg wrappers work for unlifted types (fix Trac #4306)
692simonpj@microsoft.com**20100914113827
693 Ignore-this: 1945e56779329e8b79780403710aba98
694 
695 Previously we were simply passing arguments of unlifted
696 type to a wrapper, even if they were absent, which was
697 stupid.
698 
699 See Note [Absent error Id] in WwLib.
700]
701[Comments only
702simonpj@microsoft.com**20100914113641
703 Ignore-this: 3191ce856c9b5d9700cedc9b149b8097
704]
705[Move error-ids to MkCore (from PrelRules)
706simonpj@microsoft.com**20100914113635
707 Ignore-this: c3d820db62ba6139dd7c96bf97e51bb5
708 
709 and adjust imports accordingly
710]
711[More wibbles to deriving error messages
712simonpj@microsoft.com**20100914113523
713 Ignore-this: bd2df662644961138fa209aec843a2aa
714]
715[Fix getThreadCPUTime()
716Simon Marlow <marlowsd@gmail.com>**20100913153838
717 Ignore-this: 950e048a5724086534b74c609c7d5ed
718 ever since the patch "Check with sysconf _POSIX_THREAD_CPUTIME", it
719 has been returning incorrect results, because the sysconf variable to
720 check should have been _SC_THREAD_CPUTIME, not _POSIX_THREAD_CPUTIME.
721]
722[filter out the gcc-lib directory from the rts package's library-dirs
723Simon Marlow <marlowsd@gmail.com>**20100913101259
724 Ignore-this: 46dc1dccbfee8a65f9243e125eee117f
725 fixes problems when building with GHC 6.10 on Windows
726]
727[Don't include GC time in heap profiles (#4225)
728Simon Marlow <marlowsd@gmail.com>**20100913133852
729 Ignore-this: 68ac48b004b311384b5996c6b33ba5cc
730]
731[Use clock_gettime (if available) to measure the process CPU time
732Simon Marlow <marlowsd@gmail.com>**20100913133818
733 Ignore-this: 8c9300df9b929bfc1db4713c9b6065b3
734 This is much more accurate than getrusage, which was giving misleading
735 results when trying to time very quick operations like a minor GC.
736]
737[make stg_arg_bitmaps public, and available via the GHCi linker (#3672)
738Simon Marlow <marlowsd@gmail.com>**20100913105235
739 Ignore-this: e18efd0bd77c521e5530fb59e93b5a42
740]
741[fix typo
742Simon Marlow <marlowsd@gmail.com>**20100913105100
743 Ignore-this: 6049eea21208864203b2d79db2edd143
744]
745[Update release notes and docs with LLVM info.
746David Terei <davidterei@gmail.com>**20100914072135
747 Ignore-this: 5b3d0e5c9d5da98ed6ae9c2e8e1f6f30
748]
749[Remove defaultExtensionFlags
750Ian Lynagh <igloo@earth.li>**20100913165949
751 The default should do into languageExtensions instead
752]
753[Improve crash message
754simonpj@microsoft.com**20100913170407
755 Ignore-this: 5c26a9979f18be8cd12cea823c9f4b5a
756]
757[Fix Trac #4302, plus a little refactoring
758simonpj@microsoft.com**20100913170355
759 Ignore-this: cf6886b587aa0e8d723362183625d946
760]
761[Fix build with 6.10
762Ian Lynagh <igloo@earth.li>**20100913160048]
763[Haddock fixes
764simonpj@microsoft.com**20100913120510
765 Ignore-this: f3157d6969f10d4cbd593000a477138b
766]
767[Remove two old junk files
768simonpj@microsoft.com**20100913103426
769 Ignore-this: ed7af5ef1b9592178909a8d876345302
770]
771[Super-monster patch implementing the new typechecker -- at last
772simonpj@microsoft.com**20100913095048
773 Ignore-this: 14d14a1e4d7a414f5ae8d9d89d1c6a4b
774 
775 This major patch implements the new OutsideIn constraint solving
776 algorithm in the typecheker, following our JFP paper "Modular type
777 inference with local assumptions". 
778 
779 Done with major help from Dimitrios Vytiniotis and Brent Yorgey.
780 
781]
782[Fix simplifier statistics
783simonpj@microsoft.com**20100909085441
784 Ignore-this: 48e383655aafc912dea15c4d94382863
785]
786[Trace output
787simonpj@microsoft.com**20100908170056
788 Ignore-this: 4b67fa4b310fbf0a16b852686d2d3294
789]
790[Better debug output
791simonpj@microsoft.com**20100908170047
792 Ignore-this: 410cef00616dda7c0c162f65216e8ca3
793]
794[Add Outputable instance for OccEncl
795simonpj@microsoft.com**20100908150510
796 Ignore-this: 6362ef9028287d84f070eaf8963c1bfc
797]
798[Better simplifier counting
799simonpj@microsoft.com**20100907214840
800 Ignore-this: 9d4722703f8f47447e86a28c8c50e0ea
801]
802[Put liftStringName into the known-key names
803simonpj@microsoft.com**20100906112415
804 Ignore-this: 287064d14ff484da1a6dea6924bc9235
805]
806[Deprecate NoRelaxedPolyRec
807simonpj@microsoft.com**20100903234519
808 Ignore-this: 607217e77f6bc1b91bf57dfd8dd2b967
809]
810[Buglet in Core Lint
811simonpj@microsoft.com**20100903234457
812 Ignore-this: 277535d51b396d3b4b0265a0939c2d4
813]
814[Give seqId the right type
815simonpj@microsoft.com**20100903093556
816 Ignore-this: d1fc7a73dea160614a8d4ddc930f99cd
817]
818[Remove dead code
819simonpj@microsoft.com**20100903093548
820 Ignore-this: 92cc3f7651445aa349ee7f114d3ec758
821]
822[Comments and layout
823simonpj@microsoft.com**20100903093502
824 Ignore-this: 9987d1409e654992c1cb1be35cb87728
825]
826[Remove checkFreeness; no longer needed
827simonpj@microsoft.com**20100902233227
828 Ignore-this: c96a12ac9794290aa30402317d88c095
829]
830[Assert
831simonpj@microsoft.com**20100902073642
832 Ignore-this: 4be1ab2f6096665ae5ec7fdd1f025a67
833]
834[Add aserts
835simonpj@microsoft.com**20100902073211
836 Ignore-this: e1409441217fd070c5a7f9ee4cca99ab
837]
838[Wibbles
839simonpj@microsoft.com**20100831113540
840 Ignore-this: 903811ab493a7b560a62eb86fcf3ee25
841]
842[Wibble to allow phantom types in Enum
843simonpj@microsoft.com**20100825112711
844 Ignore-this: fdef1c50d92b4a3d46bbe4cbfd8a83ea
845]
846[Add HsCoreTy to HsType
847simonpj@microsoft.com**20100824141845
848 Ignore-this: 4ca742b099f9cc90af3167f1012dbba6
849 
850 The main thing here is to allow us to provide type
851 signatures for 'deriving' bindings without pain.
852]
853[Comments
854simonpj@microsoft.com**20100823223654
855 Ignore-this: dd412a55839430c436902d8699d6900b
856]
857[Wibbles to error message
858simonpj@microsoft.com**20100823163308
859 Ignore-this: 4d6cd8e613762dca8135c2e3b09264ec
860]
861[Correct type signatures
862simonpj@microsoft.com**20100823153045
863 Ignore-this: 42942309221a443258246098f9c0a13b
864]
865[Add missing signatures
866simonpj@microsoft.com**20100823112413
867 Ignore-this: 8ee1ce40456306de469938c02df4fed5
868]
869[Add type signatures in "deriving" bindings
870simonpj@microsoft.com**20100820234230
871 Ignore-this: 4726b28968cf65ec16cb65b7e0e7303e
872]
873[Minor
874dimitris@microsoft.com**20100820131021]
875[Be a bit less aggressive in mark-many inside a cast
876simonpj@microsoft.com**20100819104804
877 Ignore-this: 3fd48fe7647ec7a58c2032cd86ca4d4f
878]
879[Wibble
880simonpj@microsoft.com**20100818185738
881 Ignore-this: d5c939311377c0d0c7244aa339193315
882]
883[Pretty printing change
884simonpj@microsoft.com**20100818065436
885 Ignore-this: 4f7e70976dbe52f95effb3e634dfef5d
886]
887[Remember to zonk FlatSkols!
888simonpj@microsoft.com**20100811143555
889 Ignore-this: 84f7f9dbda97f561a918c69308ddef9a
890]
891[De-polymorphise
892simonpj@microsoft.com**20100730151217
893 Ignore-this: a9304487b983e517a9083fd697f77576
894]
895[Work around missing type signature in Happy
896simonpj@microsoft.com**20100730122405
897 Ignore-this: 7f241a655d93c5ad7763a7ffe8db0c7a
898 
899 Happy generates
900 
901       notHappyAtAll = error "Blah"
902 
903 without a type signature, and currently the new
904 typechecker doesn't generalise it.  This patch
905 says "no monomorphism restriction" which makes it
906 generalise again.
907 
908 Better would be to add a type sig to Happy's template
909]
910[Add two local type signatures
911simonpj@microsoft.com**20100729152611
912 Ignore-this: afa99bcc515469aa0990d44d8c18a9e6
913]
914[Second test from Simon's laptop
915simonpj@microsoft.com**20100729091703
916 Ignore-this: 4dc64cadae314a5a1b05cc5326918a83
917]
918[Test commit from Simon's laptop
919simonpj@microsoft.com**20100729091344
920 Ignore-this: 109eff835cc19e9f93799d12f09b0ba7
921]
922[Add OutsideIn flag
923simonpj@microsoft.com**20100728075525
924 Ignore-this: 69c2f5c3a15fa653f6da80598aa8d74d
925]
926[Layout only
927simonpj@microsoft.com**20100727141539
928 Ignore-this: 1a58a8fe80ba8bced18ae81a2efb9495
929]
930[Improvement to SimplUtils.mkLam
931simonpj@microsoft.com**20100727131659
932 Ignore-this: 739beaefa79baa7e0ebeb5b2b6d1ea91
933]
934[Give the correct kind to unsafeCoerce#
935simonpj@microsoft.com**20100727131538
936 Ignore-this: 6b787de3b398c6d7a61fa04fccd15fd6
937]
938[Suppress warnings about recursive INLINE in output of desugarer
939simonpj@microsoft.com**20100727094549
940 Ignore-this: a361f7238c0fcba526d46326722c42e
941]
942[Rename CorePrep.tryEtaReduce to tryEtaReducePrep
943simonpj@microsoft.com**20100726231253
944 Ignore-this: 4375ddace205745244ba224ae012252
945 
946 This avoids the name clash with the similar but
947 not identical CoreUtils.tryEtaReduce
948]
949[Add a trace message
950simonpj@microsoft.com**20100719211111
951 Ignore-this: b5daebe46e50c8cf28cc693f84bbf099
952]
953[Don't use RelaxedPolyRec in the compiler; it's built in now
954simonpj@microsoft.com**20100719170441
955 Ignore-this: a2e4489cdf63478e46282a421ee7aec3
956]
957[Remove duplicated #defines for FreeBSD
958Matthias Kilian <kili@outback.escape.de>**20100912181518
959 Ignore-this: d16214fef8635c7c9ef4edec4e8e7896
960]
961[Don't fail with absolute silence
962Matthias Kilian <kili@outback.escape.de>**20100912150506
963 Ignore-this: 479e2321f39b263fa2d9f80491e5e9f7
964]
965[Add a release note: "-dynload wrapper" removed
966Ian Lynagh <igloo@earth.li>**20100911195809]
967[put back the conversion of warn-lazy-unlifted-bindings into an error until 7.2
968Ian Lynagh <igloo@earth.li>**20100911193434
969 I think we'll currently still have too many people with old versions of
970 alex/happy to want to make this an error now.
971]
972[6.14 -> 7.0
973Ian Lynagh <igloo@earth.li>**20100911192837]
974[Add a couple more release notes
975Ian Lynagh <igloo@earth.li>**20100911162059]
976[Document -dsuppress-module-prefixes
977Ian Lynagh <igloo@earth.li>**20100911162005]
978[Enable -fregs-graph with -O2; fixes #2790
979Ian Lynagh <igloo@earth.li>**20100910191301]
980[Remove unused code
981Ian Lynagh <igloo@earth.li>**20100909170207]
982[Fix warnings
983Ian Lynagh <igloo@earth.li>**20100909154348]
984[Fix warnings
985Ian Lynagh <igloo@earth.li>**20100909150957]
986[Remove context completion
987lykahb@gmail.com**20100901160153
988 Ignore-this: dc61b259dcb7063f0c76f56788b5d2af
989 Now completion suggests to remove only modules added to context before.
990]
991[avoid Foreign.unsafePerformIO
992Ross Paterson <ross@soi.city.ac.uk>**20100909125531
993 Ignore-this: 5cabeae4cffec8fc17ef7c0cabbea22a
994]
995[updates to the release notes
996Simon Marlow <marlowsd@gmail.com>**20100909111450
997 Ignore-this: a4d25ad8815c305b7e0f21fd4f6ee37b
998]
999[newAlignedPinnedByteArray#: avoid allocating an extra word sometimes
1000Simon Marlow <marlowsd@gmail.com>**20100909110805
1001 Ignore-this: 996a3c0460068ab2835b4920905b3e75
1002]
1003[Finish breaking up vectoriser utils
1004benl@ouroborus.net**20100909061311
1005 Ignore-this: 217fe1d58a3e8bb13200bcb81353a416
1006]
1007[Move VectType module to Vectorise tree
1008benl@ouroborus.net**20100909042451
1009 Ignore-this: 5af8cf394d4835911259ca3ffb6774c5
1010]
1011[Sort all the PADict/PData/PRDict/PRepr stuff into their own modules
1012benl@ouroborus.net**20100909035147
1013 Ignore-this: 53436329773347cad793adbd83e90a9e
1014]
1015[Break out Repr and PADict stuff for vectorisation of ADTs to their own modules
1016benl@ouroborus.net**20100909025759
1017 Ignore-this: d2b7d2f79332eda13416449742f7cf1c
1018]
1019[Break out conversion functions to own module
1020benl@ouroborus.net**20100909023332
1021 Ignore-this: 613f2666b6ca7f2f8876fcc1e4a59593
1022]
1023[Comments and formatting only
1024benl@ouroborus.net**20100909022117
1025 Ignore-this: c8e30139d730669e5db44f0ef491a588
1026]
1027[Remove "-dynload wrapper"; fixes trac #4275
1028Ian Lynagh <igloo@earth.li>**20100908213251]
1029[Don't set visibility on Windows
1030Ian Lynagh <igloo@earth.li>**20100905122442
1031 With gcc 4.5.0-1, using visibility hidden gives:
1032     error: visibility attribute not supported in this configuration; ignored
1033]
1034[Fix warnings on Windows
1035Ian Lynagh <igloo@earth.li>**20100905111201
1036 Ignore-this: c5cce63bb1e0c7a27271bed78d25fbc5
1037]
1038[Fix gcc wrapper for new mingw binaries
1039Ian Lynagh <igloo@earth.li>**20100905001807
1040 Ignore-this: f6acc8c911055ffce632bac138ccc939
1041]
1042[Don't pass our gcc options to stage0 ghc's gcc; they may not be suitable
1043Ian Lynagh <igloo@earth.li>**20100905103129]
1044[Update intree-mingw creation
1045Ian Lynagh <igloo@earth.li>**20100904225559]
1046[Update commands to build in-tree mingw
1047Ian Lynagh <igloo@earth.li>**20100904215112]
1048[Break out hoisting utils into their own module
1049benl@ouroborus.net**20100908074102
1050 Ignore-this: e3ba4ed0252a2def1ed88a9e14c58fea
1051]
1052[Break out closure utils into own module
1053benl@ouroborus.net**20100908072040
1054 Ignore-this: 216172b046ff101cf31a1753667a5383
1055]
1056[Move VectVar module to Vectorise tree
1057benl@ouroborus.net**20100908065904
1058 Ignore-this: 1fba5333d29927dba4275381e1a7f315
1059]
1060[Break out vectorisation of expressions into own module
1061benl@ouroborus.net**20100908065128
1062 Ignore-this: 6a952b80fb024b5291f166477eb1976
1063]
1064[Break out TyCon classifier into own module
1065benl@ouroborus.net**20100908063111
1066 Ignore-this: da754c4ef6960b4e152ea1bf8c04ab6f
1067]
1068[Break out vectorisation of TyConDecls into own module
1069benl@ouroborus.net**20100908052004
1070 Ignore-this: c0ab4fb2a05ca396efe348b384db1ebf
1071]
1072[Break out type vectorisation into own module
1073benl@ouroborus.net**20100907110311
1074 Ignore-this: 67bd70a21d16468daf68dd3ec1ff7d62
1075]
1076[Tidy up the ArchHasAdjustorSupport definition
1077Ian Lynagh <igloo@earth.li>**20100904144234]
1078[ppc: switch handling of 'foreign import wrapper' (FIW) to libffi
1079Sergei Trofimovich <slyfox@community.haskell.org>**20100829192859
1080 Ignore-this: 662ea926681ebea0759e2a04a38e82b7
1081 
1082 Joseph Jezak reported darcs-2.4.4 SIGSEGV in interactive mode in ghc-6.12.3.
1083 So I've concluded ppc also has rotten native adjustor. I don't have hardware
1084 to verify the patch (ticket #3516 should help to test it), but I think it will
1085 help (as similar patch helped for ia64 and ppc64).
1086]
1087[Binary no longer has unusable UNPACK pragmas, so no need to turn of -Werror
1088Ian Lynagh <igloo@earth.li>**20100904133339]
1089[Don't haddock packages that we aren't going to install
1090Ian Lynagh <igloo@earth.li>**20100903231921]
1091[Give haddock per-package source entity paths; fixes #3810
1092Ian Lynagh <igloo@earth.li>**20100903221335]
1093[update for containers-0.4
1094Simon Marlow <marlowsd@gmail.com>**20100903105131
1095 Ignore-this: 556eac0e4926c9b8af6b66d7b069302c
1096]
1097[Fix for nursery resizing: the first block's back pointer should be NULL
1098Simon Marlow <marlowsd@gmail.com>**20100827102818
1099 Ignore-this: fb68938e3f1e291e3c9e5e8047f9dcd2
1100 I'm not sure if this could lead to a crash or not, but it upsets +RTS -DS
1101 Might be related to #4265
1102]
1103[Add some -no-user-package-conf flags
1104Ian Lynagh <igloo@earth.li>**20100902224726
1105 Stops user-installed packages breaking the build
1106]
1107[Fix warnings: Remove unused imports
1108Ian Lynagh <igloo@earth.li>**20100902204342]
1109[Finish breaking up VectBuiltIn and VectMonad, and add comments
1110benl@ouroborus.net**20100831100724
1111 Ignore-this: 65604f3d22d03433abc12f10be40050d
1112]
1113[Fix warnings
1114benl@ouroborus.net**20100830083746
1115 Ignore-this: 2a0e000985f694582a6f9a9261ff2739
1116]
1117[Break up vectoriser builtins module
1118benl@ouroborus.net**20100830070900
1119 Ignore-this: b86bd36a7875abdcf16763902ba2e637
1120]
1121[Move VectCore to Vectorise tree
1122benl@ouroborus.net**20100830053415
1123 Ignore-this: d5763ca6424285b39a58c7792f4a84a1
1124]
1125[Split out vectoriser environments into own module
1126benl@ouroborus.net**20100830050252
1127 Ignore-this: 5319111c74831394d2c29b9aedf5a766
1128]
1129[Comments and formatting to vectoriser, and split out varish stuff into own module
1130benl@ouroborus.net**20100830042722
1131 Ignore-this: d3f0c98ed8124dd0fca9a2ccea3e15fd
1132]
1133[Fix warnings
1134benl@ouroborus.net**20100830040340
1135 Ignore-this: d6cfad803ad4617e7fdaa62e4a895282
1136]
1137[Fix warning about multiply exported name
1138benl@ouroborus.net**20100830035243
1139 Ignore-this: 27ce2c1d22d9f99929d16a426343044e
1140]
1141[Vectorisation of method types
1142benl@ouroborus.net**20100830032941
1143 Ignore-this: 75614571d5c246a4906edb3b39ab1e0b
1144]
1145[Comments and formatting to vectoriser
1146benl@ouroborus.net**20100830032516
1147 Ignore-this: fe665b77108501c7960d858be3290761
1148]
1149[Implement -dsuppress-module-prefixes
1150benl@ouroborus.net**20100830032428
1151 Ignore-this: 2bb8bad9c60ef9044132bba118010687
1152]
1153[Whitespace only
1154benl@ouroborus.net**20100527045629
1155 Ignore-this: 4c160dfa77727e659817b6af9c84684a
1156]
1157[Disambiguate a function name
1158Ian Lynagh <igloo@earth.li>**20100828225827]
1159[users_guide.xml is now generated
1160Ian Lynagh <igloo@earth.li>**20100828225751]
1161[Pass more -pgm flags in the ghc wrapper; fixes #3863
1162Ian Lynagh <igloo@earth.li>**20100827204537]
1163[Add a new-IO manager release note
1164Ian Lynagh <igloo@earth.li>**20100827171616]
1165[Merge a duplicate release note
1166Ian Lynagh <igloo@earth.li>**20100827171511]
1167[Typo, spotted by Johan Tibell
1168Ian Lynagh <igloo@earth.li>**20100827153914]
1169[First pass at 6.14.1 release notes
1170Ian Lynagh <igloo@earth.li>**20100826220811]
1171[Fix typo
1172Ian Lynagh <igloo@earth.li>**20100824201330]
1173[FIX BUILD: add rts_isProfiled to the symbol table
1174Simon Marlow <marlowsd@gmail.com>**20100826094319
1175 Ignore-this: 9536ddb0a94721c8dec03a2a981cfa83
1176]
1177[Fix the DPH package cleaning/profiled mess even more (the build was broken)
1178Simon Marlow <marlowsd@gmail.com>**20100826084436
1179 Ignore-this: 49d7e4db2fb53b856c213c74c8969d82
1180]
1181[Remove the debugging memory allocator - valgrind does a better job
1182Simon Marlow <marlowsd@gmail.com>**20100824113537
1183 Ignore-this: a3731a83dc18b0fd0de49452e695a7ca
1184 
1185 I got fed up with the constant bogus output from the debugging memory
1186 allocator in RtsUtils.c.  One problem is that we allocate memory in
1187 constructors that then isn't tracked, because the debugging allocator
1188 hasn't been initialised yet.
1189 
1190 The bigger problem is that for a given piece of leaking memory it's
1191 impossible to find out where it was allocated; however Valgrind gives
1192 output like this:
1193 
1194 ==6967== 8 bytes in 1 blocks are still reachable in loss record 1 of 7
1195 ==6967==    at 0x4C284A8: malloc (vg_replace_malloc.c:236)
1196 ==6967==    by 0x4C28522: realloc (vg_replace_malloc.c:525)
1197 ==6967==    by 0x6745E9: stgReallocBytes (RtsUtils.c:213)
1198 ==6967==    by 0x68D812: setHeapAlloced (MBlock.c:91)
1199 ==6967==    by 0x68D8E2: markHeapAlloced (MBlock.c:116)
1200 ==6967==    by 0x68DB56: getMBlocks (MBlock.c:240)
1201 ==6967==    by 0x684F55: alloc_mega_group (BlockAlloc.c:305)
1202 ==6967==    by 0x6850C8: allocGroup (BlockAlloc.c:358)
1203 ==6967==    by 0x69484F: allocNursery (Storage.c:390)
1204 ==6967==    by 0x694ABD: allocNurseries (Storage.c:436)
1205 ==6967==    by 0x6944F2: initStorage (Storage.c:217)
1206 ==6967==    by 0x673E3C: hs_init (RtsStartup.c:160)
1207 
1208 which tells us exactly what the leaking bit of memory is.  So I don't
1209 think we need our own debugging allocator.
1210]
1211[free the entries in the thread label table on exit
1212Simon Marlow <marlowsd@gmail.com>**20100824112606
1213 Ignore-this: c9d577c06548cda80791e590e40d35b3
1214]
1215[Panic in the right way
1216simonpj@microsoft.com**20100825091614
1217 Ignore-this: e6ea4f6dfd2aea088828ea7a945ddd5f
1218]
1219[Fix the DPH/profiled make thing (again)
1220simonpj@microsoft.com**20100825091602
1221 Ignore-this: bc58fa48034ac40cf7be4170958ea29e
1222]
1223[Don't test for gcc flags before we've found gcc
1224Ian Lynagh <igloo@earth.li>**20100824131401]
1225[Change how the dblatex/lndir problem is worked around
1226Ian Lynagh <igloo@earth.li>**20100824130938
1227 Hack: dblatex normalises the name of the main input file using
1228 os.path.realpath, which means that if we're in a linked build tree,
1229 it find the real source files rather than the symlinks in our link
1230 tree. This is fine for the static sources, but it means it can't
1231 find the generated sources.
1232 
1233 We therefore also generate the main input file, so that it really
1234 is in the link tree, and thus dblatex can find everything.
1235]
1236[Clean the generated userguide sources
1237Ian Lynagh <igloo@earth.li>**20100824105827
1238 Ignore-this: 39b4f9702c688c053ed3273b20969597
1239]
1240[DPH should not even be built if GhcProfiled
1241simonpj@microsoft.com**20100823133439
1242 Ignore-this: 62acbf83de5b70ff6d27ab38ce9218ae
1243 
1244 It's not just when cleaning!
1245]
1246[The templateHaskellOk check should only run in stage2
1247simonpj@microsoft.com**20100823133353
1248 Ignore-this: f6dc9292923a1ca201953c5f58c0af3c
1249 
1250 Because rtsIsProfiled is only available in stage2
1251]
1252[Add a couple of missing tests for EAGER_BLACKHOLE
1253Simon Marlow <marlowsd@gmail.com>**20100823104654
1254 Ignore-this: 70c981b86370b0c7564b29b057650897
1255 This was leading to looping and excessive allocation, when the
1256 computation should have just blocked on the black hole. 
1257 
1258 Reported by Christian Höner zu Siederdissen <choener@tbi.univie.ac.at>
1259 on glasgow-haskell-users.
1260]
1261[Don't check for swept blocks in -DS.
1262Marco Túlio Gontijo e Silva <marcot@marcot.eti.br>**20100718225526
1263 Ignore-this: ad5dcf3c247bc19fbef5122c1142f3b2
1264 
1265 The checkHeap function assumed the allocated part of the block contained only
1266 alive objects and slops.  This was not true for blocks that are collected using
1267 mark sweep.  The code in this patch skip the test for this kind of blocks.
1268]
1269[Fix "darcs get"
1270Ian Lynagh <igloo@earth.li>**20100822183542]
1271[Add "darcs-all upstreampull"
1272Ian Lynagh <igloo@earth.li>**20100822163419
1273 This pulls from the upstream repos, for those packages which have
1274 upstreams
1275]
1276[Generate the bit in the user guide where we say what -fglasgow-exts does
1277Ian Lynagh <igloo@earth.li>**20100822155514
1278 Stops the docs going out of sync with the code.
1279]
1280[Factor out the packages file parsing in darcs-all
1281Ian Lynagh <igloo@earth.li>**20100822154813]
1282[Document --supported-extensions
1283Ian Lynagh <igloo@earth.li>**20100822134530]
1284[fix extraction of command stack of arguments of arrow "forms" (fixes #4236)
1285Ross Paterson <ross@soi.city.ac.uk>**20100822090022
1286 Ignore-this: a93db04ec4f20540642a19cdc67d1666
1287 
1288 The command stack was being extracted (by unscramble) with the outermost
1289 type first, contrary to the comment on the function.
1290]
1291[minor fix to comment
1292Ross Paterson <ross@soi.city.ac.uk>**20100822085838
1293 Ignore-this: 8d203ba2600eaf4cf21b043dcfa96cdc
1294]
1295[Add the RTS library path to the library search path
1296Ian Lynagh <igloo@earth.li>**20100820155523
1297 In case the RTS is being explicitly linked in. For #3807.
1298]
1299[Remove some duplication of C flags
1300Ian Lynagh <igloo@earth.li>**20100819233743
1301 We now use the CONF_CC_OPTS_STAGEn C flags in machdepCCOpts, rather than
1302 repeating them there.
1303]
1304[Set -fno-stack-protector in CONF_CC_OPTS_STAGE* rathre than extra-gcc-opts
1305Ian Lynagh <igloo@earth.li>**20100819233031
1306 The latter is only used when compiling .hc files, whereas we need it for
1307 .c files too.
1308]
1309[Give clearer errors for bad input in the packages file; suggested by pejo
1310Ian Lynagh <igloo@earth.li>**20100819232420]
1311[Set -march=i686 on OS X x86 in the configure variables
1312Ian Lynagh <igloo@earth.li>**20100819230939
1313 We used to set it only in machdepCCOpts, so this is more consistent
1314]
1315[Give each stage its own Config.hs
1316Ian Lynagh <igloo@earth.li>**20100819224709
1317 This also means the file is generated in a dist directory, not a
1318 source directory.
1319]
1320[Fix cleaning when GhcProfiled = YES
1321Ian Lynagh <igloo@earth.li>**20100819131346
1322 We need to include the DPH cleaning rules, even though we don't build DPH
1323 when GhcProfiled = YES.
1324]
1325[stgReallocBytes(DEBUG): don't fail when the ptr passed in is NULL
1326Simon Marlow <marlowsd@gmail.com>**20100817150836
1327 Ignore-this: 4b5063e65e01399f64a33f0d0555ff38
1328]
1329[Use make-command in rules/bindist.mk
1330Ian Lynagh <igloo@earth.li>**20100818191243
1331 Rather than it having its own specialised version
1332]
1333[Use make-command when installing packages
1334Ian Lynagh <igloo@earth.li>**20100818190600]
1335[Add _DATA_FILES to package-data.mk files
1336Ian Lynagh <igloo@earth.li>**20100818185801]
1337[Add a "make-command" utility Makefile function
1338Ian Lynagh <igloo@earth.li>**20100818183055]
1339[LLVM: Nicer format for lack of shared lib warning
1340David Terei <davidterei@gmail.com>**20100817145207
1341 Ignore-this: 753d45762601d87761614937a1bb6716
1342]
1343[fix FP_CHECK_ALIGNMENT for autoconf 2.66 (fixes #4252)
1344Ross Paterson <ross@soi.city.ac.uk>**20100816142442
1345 Ignore-this: cd784b8888d32b3b2cc2cc0969ec40f
1346 
1347 Recent versions of AS_LITERAL_IF don't like *'s.  Fix from
1348 
1349 http://blog.gmane.org/gmane.comp.sysutils.autoconf.general/month=20100701
1350]
1351[Refactor the command-line argument parsing (again)
1352simonpj@microsoft.com**20100816074453
1353 Ignore-this: 26dc9e37a88660a887a2e316ed7a9803
1354 
1355 This change allows the client of CmdLineParser a bit more flexibility,
1356 by giving him an arbitrary computation (not just a deprecation
1357 message) for each flag. 
1358 
1359 There are several clients, so there are lots of boilerplate changes.
1360 
1361 Immediate motivation: if RTS is not profiled, we want to make
1362 Template Haskell illegal.  That wasn't with the old setup.
1363]
1364[Add upstream repo to the packages file
1365Ian Lynagh <igloo@earth.li>**20100815154741]
1366[Make the "tag" column of the packages file always present
1367Ian Lynagh <igloo@earth.li>**20100815151657
1368 It makes the parsing simpler if we always have the same number of columns
1369]
1370[Disable object splitting on OSX; works around #4013
1371Ian Lynagh <igloo@earth.li>**20100815134759]
1372[Return memory to the OS; trac #698
1373Ian Lynagh <igloo@earth.li>**20100813170402]
1374[Reduce the xargs -s value we use on Windows
1375Ian Lynagh <igloo@earth.li>**20100812223721
1376 With 30000 I was getting:
1377     xargs: value for -s option should be < 28153
1378]
1379[LLVM: Enable shared lib support on Linux x64
1380David Terei <davidterei@gmail.com>**20100813191534
1381 Ignore-this: 642ed37af38e5f17d419bf4f09332671
1382]
1383[Re-do the arity calculation mechanism again (fix Trac #3959)
1384simonpj@microsoft.com**20100813161151
1385 Ignore-this: d4a2aa48150b503b20c25351a79decfb
1386 
1387 After rumination, yet again, on the subject of arity calculation,
1388 I have redone what an ArityType is (it's purely internal to the
1389 CoreArity module), and documented it better.  The result should
1390 fix #3959, and I hope the related #3961, #3983.
1391 
1392 There is lots of new documentation: in particular
1393  * Note [ArityType] 
1394    describes the new datatype for arity info
1395 
1396  * Note [State hack and bottoming functions]
1397    says how bottoming functions are dealt with, particularly
1398    covering catch# and Trac #3959
1399 
1400 I also found I had to be careful not to eta-expand single-method
1401 class constructors; see Note [Newtype classes and eta expansion].
1402 I think this part could be done better, but it works ok.
1403]
1404[Comments only
1405simonpj@microsoft.com**20100813161019
1406 Ignore-this: baf68300d8bc630bf0b7ab27647b33a0
1407]
1408[Modify FloatOut to fix Trac #4237
1409simonpj@microsoft.com**20100813163120
1410 Ignore-this: ffc8d00d4b7f0a8a785fcef312900413
1411 
1412 The problem was that a strict binding was getting floated
1413 out into a letrec. This only happened when profiling was
1414 on.  It exposed a fragility in the floating strategy.  This
1415 patch makes it more robust.  See
1416       Note [Avoiding unnecessary floating]
1417]
1418[Fix egregious bug in SetLevels.notWorthFloating
1419simonpj@microsoft.com**20100813161429
1420 Ignore-this: d22865f48d417e6a6b732de3dfba378f
1421 
1422 This bug just led to stupid code, which would
1423 later be optimised away, but better not to generate
1424 stupid code in the first place.
1425]
1426[Delete GhcLibProfiled
1427simonpj@microsoft.com**20100813140152
1428 Ignore-this: 2e1a3f677308be726bd022f45e2fd856
1429 
1430 Simon M and I looked at this, and we think GhcLibProfiled is
1431 (a) not needed (b) confusing.
1432 
1433 Ian should review.
1434 
1435 Really, if GhcProfiled is on we should also
1436 check that 'p' is in the GhcLibWays
1437]
1438[Do not build DPH when GhcProfiled (fixes #4172)
1439simonpj@microsoft.com**20100813140021
1440 Ignore-this: 9e20181643b456e841f845ae0cab0a9a
1441 
1442 Reason: DPH uses Template Haskell and TH doesn't work
1443 in a profiled compiler
1444]
1445[Fix Trac #4220
1446simonpj@microsoft.com**20100812131319
1447 Ignore-this: 33141cfd81627592150a9e5973411ff8
1448 
1449 For deriving Functor, Foldable, Traversable with empty
1450 data cons I just generate a null equation
1451    f _ = error "urk"
1452 
1453 There are probably more lurking (eg Enum) but this will do for now.
1454]
1455[Improve the Specialiser, fixing Trac #4203
1456simonpj@microsoft.com**20100812131133
1457 Ignore-this: 482afbf75165e24a80527a6e52080c07
1458 
1459 Simply fixing #4203 is a tiny fix: in case alterantives we should
1460 do dumpUDs *including* the case binder. 
1461 
1462 But I realised that we can do better and wasted far too much time
1463 implementing the idea.  It's described in
1464     Note [Floating dictionaries out of cases]
1465]
1466[Comments
1467simonpj@microsoft.com**20100812101456
1468 Ignore-this: 6362fe887d25688c12ef2c3cf5554ce4
1469]
1470[Comments only
1471simonpj@microsoft.com**20100812101439
1472 Ignore-this: 7ed2f5fc08811cbe9958c2309a9ed1fa
1473]
1474[Fix bug in linting of shadowed case-alternative binders
1475simonpj@microsoft.com**20100812101413
1476 Ignore-this: 9212a5e2c03421749f5935b3944ecf53
1477]
1478[Comments and spacing only
1479simonpj@microsoft.com**20100812101347
1480 Ignore-this: ed59a7dae7decb24470709dc1c118dbb
1481]
1482[Add more info to more parse error messages (#3811)
1483Ian Lynagh <igloo@earth.li>**20100809233108]
1484[Run finalizers *after* updating the stable pointer table (#4221)
1485Simon Marlow <marlowsd@gmail.com>**20100810133739
1486 Ignore-this: b0462f80dd64eac71e599d8a9f6dd665
1487 Silly bug really, we were running the C finalizers while the StablePtr
1488 table was still in a partially-updated state during GC, but finalizers
1489 are allowed to call freeStablePtr() (via hs_free_fun_ptr(), for
1490 example), and chaos ensues.
1491]
1492[Do the dependency-omitting for 'make 1' in a slightly different way
1493Simon Marlow <marlowsd@gmail.com>**20100810093446
1494 Ignore-this: af15edd3a1492cbd93111316b57e02e4
1495 
1496 I encountered a couple of things that broke after Ian's previous
1497 patch: one was my nightly build scripts that use 'make stage=2' at the
1498 top level, and the other is 'make fast' in libraries/base, which uses
1499 'stage=0' to avoid building any compilers.
1500 
1501 So my version of this patch is more direct: it just turns off the
1502 appropriate dependencies using a variable set by 'make 1', 'make 2',
1503 etc.
1504]
1505[Integrate new I/O manager, with signal support
1506Johan Tibell <johan.tibell@gmail.com>**20100724102355
1507 Ignore-this: eb092857a2a1b0ca966649caffe7ac2b
1508]
1509[Add DoAndIfThenElse support
1510Ian Lynagh <igloo@earth.li>**20100808194625]
1511[Make another parse error more informative
1512Ian Lynagh <igloo@earth.li>**20100808193340]
1513[Make a parse error say what it is failing to parse; part of #3811
1514Ian Lynagh <igloo@earth.li>**20100808155732]
1515[Send ghc progress output to stdout; fixes #3636
1516Ian Lynagh <igloo@earth.li>**20100808142542]
1517[Fix the HsColour test in the build system
1518Ian Lynagh <igloo@earth.li>**20100805155319
1519 Ignore-this: ba2752b04801a253e891b31e1914485d
1520]
1521[Fix the -lm configure test; fixes #4155
1522Ian Lynagh <igloo@earth.li>**20100805142508
1523 Ignore-this: 358b8b1074d2d22fb8d362ea6d8b80d6
1524]
1525[Don't restrict filenames in line pragmas to printable characters; fixes #4207
1526Ian Lynagh <igloo@earth.li>**20100805135011
1527 Ignore-this: e3d32312127165e40e6eaa919193d60b
1528 "printable" is ASCII-only, whereas in other locales we can get things like
1529 # 1 "<línea-de-orden>"
1530]
1531[Ensure extension flags are flattened in the Cmm phase
1532Ian Lynagh <igloo@earth.li>**20100805133614
1533 If we start with a .cmmcpp file then they don't get flattened in
1534 the CmmCpp phase, as we don't run that phase.
1535]
1536[Add "cmmcpp" as a Haskellish source suffix
1537Ian Lynagh <igloo@earth.li>**20100805132555]
1538[On amd64/OSX we don't need to be given memory in the first 31bits
1539Ian Lynagh <igloo@earth.li>**20100805120600
1540 Ignore-this: 42eb64e25ad4b66ae022884305e0297b
1541 as PIC is always on
1542]
1543[NCG: Don't worry about trying to re-freeze missing coalescences
1544benl@ouroborus.net**20100702053319
1545 Ignore-this: ea05cbee19b6c5c410db41292cbb64b0
1546]
1547[Make -rtsopts more flexible
1548Ian Lynagh <igloo@earth.li>**20100805011137
1549 The default is a new "some" state, which allows only known-safe flags
1550 that we want on by default. Currently this is only "--info".
1551]
1552[Test for (fd < 0) before trying to FD_SET it
1553Ian Lynagh <igloo@earth.li>**20100804173636]
1554[Remove "On by default" comments in DynFlags
1555Ian Lynagh <igloo@earth.li>**20100802110803
1556 Ignore-this: 2a51055277b5ce9f0e98e1438b212027
1557 These make less sense now we support multiple languges. The
1558 "languageExtensions" function gives the defaults.
1559]
1560[Fix build: Add newline to end of ghc-pkg/Main.hs
1561Ian Lynagh <igloo@earth.li>**20100801183206]
1562[Add a versions haddock binary for Windows
1563Ian Lynagh <igloo@earth.li>**20100801180917]
1564[ghc-pkg: don't fail, if a file is already removed
1565ich@christoph-bauer.net**20100725162606
1566 Ignore-this: 5501d6812c31f4da525c7fb24f6dcaed
1567]
1568[Remove push-all from file list in boot script (push-all no longer exists)
1569Ian Lynagh <igloo@earth.li>**20100801121841
1570 Ignore-this: eec130f06610d8728a57626682860a1a
1571]
1572[Add error checking to boot-pkgs script
1573Ian Lynagh <igloo@earth.li>**20100801121432
1574 Ignore-this: 8afd6663db443c774bad45d75bbfe950
1575]
1576[Add more error checking to the boot script
1577Ian Lynagh <igloo@earth.li>**20100801113628]
1578[Remove libHSrtsmain.a before creating it
1579Ian Lynagh <igloo@earth.li>**20100801005432
1580 Otherwise it isn't updated properly if rts/Main.c changes
1581]
1582[Expose the functions haddock needs even when haddock is disabled; #3558
1583Ian Lynagh <igloo@earth.li>**20100731115506]
1584[Always haddock by default
1585Ian Lynagh <igloo@earth.li>**20100730235001
1586 Revert this patch:
1587     Matthias Kilian <kili@outback.escape.de>**20090920181319
1588     Don't build haddock if HADDOC_DOCS = NO, and disable HADDOC_DOCS
1589         if GhcWithInterpreter = NO
1590     Haddock uses TcRnDriver.tcRnGetInfo, which is only available if
1591     GHCI is built. Set HADDOC_DOCS to NO if GhcWithInterpreter is NO,
1592     and disable the haddock build if HADDOC_DOCS = NO.
1593]
1594[Add a debugTrace for the phases that we run
1595Ian Lynagh <igloo@earth.li>**20100729201503]
1596[* Add StringPrimL as a constructor for Template Haskell (Trac #4168)
1597simonpj@microsoft.com**20100730131922
1598 Ignore-this: 520d0a0a14b499b299e8b2be8d148ff0
1599   
1600 There are already constructors for IntPrim, FloatPrim etc,
1601 so this makes it more uniform.
1602   
1603 There's a corresponding patch for the TH library
1604]
1605[Add thread affinity support for FreeBSD
1606Gabor Pali <pgj@FreeBSD.org>**20100720001409
1607 Ignore-this: 6c117b8219bfb45445089e82ee470410
1608 - Implement missing functions for setting thread affinity and getting real
1609   number of processors.
1610 - It is available starting from 7.1-RELEASE, which includes a native support
1611   for managing CPU sets.
1612 - Add __BSD_VISIBLE, since it is required for certain types to be visible in
1613   addition to POSIX & C99.
1614]
1615[Disable symbol visibility pragmas for FreeBSD
1616Ian Lynagh <igloo@earth.li>**20100729012507
1617 Do not use GCC pragmas for controlling visibility, because it causes
1618 "undefined reference" errors at link-time.  The true reasons are
1619 unknown, however FreeBSD 8.x includes GCC 4.2.1 in the base system,
1620 which might be buggy.
1621]
1622[Fix numeric escape sequences parsing
1623Anton Nikishaev <anton.nik@gmail.com>**20100721194208
1624 Ignore-this: dd71935b1866b5624f7975c45ad519a1
1625 This fixes trac bug #1344
1626]
1627[Explicitly give the right path to perl when making the OS X installer; #4183
1628Ian Lynagh <igloo@earth.li>**20100728163030]
1629[Set -fno-stack-protector in extra-gcc-opts; fixes #4206
1630Ian Lynagh <igloo@earth.li>**20100728161957
1631 We were using it only when building the RTS, and only on certain
1632 platforms. However, some versions of OS X need the flag, while others
1633 don't support it, so we now test for it properly.
1634]
1635[Make PersistentLinkerState fields strict; fixes #4208
1636Ian Lynagh <igloo@earth.li>**20100727201911
1637 Ignore-this: fc5cfba48cd16624f6bb15a7a03a3b4
1638 We modify fields a lot, so we retain the old value if they aren't forced.
1639]
1640[Don't rebuild dependency files unnecessarily when doing "make 1" etc
1641Ian Lynagh <igloo@earth.li>**20100726211512
1642 Ignore-this: d91a729e5113aa964cc67768e92e57ef
1643]
1644[LLVM: If user specifies optlo, don't use '-O' levels
1645David Terei <davidterei@gmail.com>**20100726105650
1646 Ignore-this: e05e103b09d1de937540ffad7983f88e
1647]
1648[Flatten flags for ghci's :show
1649Ian Lynagh <igloo@earth.li>**20100725135320]
1650[Add support for Haskell98 and Haskell2010 "languages"
1651Ian Lynagh <igloo@earth.li>**20100724230121]
1652[Rename "language" varibles etc to "extension", and add --supported-extensions
1653Ian Lynagh <igloo@earth.li>**20100724223624]
1654[Separate language option handling into 2 phases
1655Ian Lynagh <igloo@earth.li>**20100724212013
1656 We now first collect the option instructions (from the commandline,
1657 from pragmas in source files, etc), and then later flatten them into
1658 the list of enabled options. This will enable us to use different
1659 standards (H98, H2010, etc) as a base upon which to apply the
1660 instructions, when we don't know what the base will be when we start
1661 collecting instructions.
1662]
1663[Separate the language flags from the other DynFlag's
1664Ian Lynagh <igloo@earth.li>**20100724133103
1665 Ignore-this: 47bb8d42e621e47016b66c7472bd6cb5
1666]
1667[Set stage-specific CC/LD opts in the bindist configure.ac
1668Ian Lynagh <igloo@earth.li>**20100724113748
1669 Ignore-this: f06926d185a35ddd05490ca4a257e992
1670]
1671[Use different CC/LD options for different stages
1672Ian Lynagh <igloo@earth.li>**20100723223059]
1673[Add some error belchs to the linker, when we find bad magic numbers
1674Ian Lynagh <igloo@earth.li>**20100723200822]
1675[Add some more linker debugging prints
1676Ian Lynagh <igloo@earth.li>**20100723180237]
1677[When (un)loading an object fails, say which object in teh panic
1678Ian Lynagh <igloo@earth.li>**20100723162649]
1679[Add a release note: GHCi import syntax
1680Ian Lynagh <igloo@earth.li>**20100721193647]
1681[Deprecate NewQualifiedOperators extension (rejected by H')
1682Ian Lynagh <igloo@earth.li>**20100719150909
1683 Ignore-this: 6e7e3bedc5360c5975f73497b3e6cba5
1684]
1685[LLVM: Allow optlc and optlo to override default params for these systools
1686David Terei <davidterei@gmail.com>**20100722181631
1687 Ignore-this: e60af7941996f7170fb3bfb02a002082
1688]
1689[LLVM: Code and speed improvement to dominateAllocs pass.
1690David Terei <davidterei@gmail.com>**20100721143654
1691 Ignore-this: 9fb7058c8a2afc005521298c7b8d0036
1692]
1693[Comments only
1694simonpj@microsoft.com**20100721144257
1695 Ignore-this: b3091ddcd1df271eb85fe90978ab7adc
1696]
1697[Fix inlining for default methods
1698simonpj@microsoft.com**20100721144248
1699 Ignore-this: 61a11a8f741f775000c6318aae4b3191
1700 
1701 This was discombobulated by a patch a week ago;
1702 now fixed, quite straightforwardly.  See
1703 Note [Default methods and instances]
1704]
1705[Allow reification of existentials and GADTs
1706simonpj@microsoft.com**20100721090437
1707 Ignore-this: 20f1ccd336cc25aff4d4d67a9ac2211a
1708 
1709 It turns out that TH.Syntax is rich enough to express even GADTs,
1710 provided we express them in equality-predicate form.  So for
1711 example
1712 
1713   data T a where
1714      MkT1 :: a -> T [a]
1715      MkT2 :: T Int
1716 
1717 will appear in TH syntax like this
1718 
1719   data T a = forall b. (a ~ [b]) => MkT1 b
1720            | (a ~ Int) => MkT2
1721 
1722 While I was at it I also improved the reification of types,
1723 so that we use TH.TupleT and TH.ListT when we can.
1724]
1725[add numSparks# primop (#4167)
1726Simon Marlow <marlowsd@gmail.com>**20100720153746
1727 Ignore-this: f3f925e7de28f3f895213aefbdbe0b0f
1728]
1729[LLVM: Decrease max opt level used under OSX to avoid bug
1730David Terei <davidterei@gmail.com>**20100720160938
1731 Ignore-this: 34b0b3550f00b27b00ad92f8232745e5
1732 
1733 Currently, many programs compiled with GHC at -O2 and LLVM
1734 set to -O3 will segfault (only under OSX). Until this issue
1735 is fixed I have simply 'solved' the segfault by lowering
1736 the max opt level for LLVM used to -O2 under OSX.
1737 
1738 All these recent changes to OSX should mean its finally as
1739 stable as Linux and Windows.
1740]
1741[LLVM: Fix OSX to work again with TNTC disabled.
1742David Terei <davidterei@gmail.com>**20100720160845
1743 Ignore-this: 8dc98139cfa536b2a64aa364d040b581
1744]
1745[LLVM: Fix printing of local vars so LLVM works with -fnew-codegen
1746David Terei <davidterei@gmail.com>**20100720160302
1747 Ignore-this: d883c433dfaed67921a8c5360e1f9f6a
1748]
1749[Use a separate mutex to protect all_tasks, avoiding a lock-order-reversal
1750Simon Marlow <marlowsd@gmail.com>**20100716150832
1751 Ignore-this: ffbdb4ee502e0f724d57acb9bfbe9d92
1752 In GHC 6.12.x I found a rare deadlock caused by this
1753 lock-order-reversal:
1754 
1755 AQ cap->lock
1756   startWorkerTask
1757     newTask
1758       AQ sched_mutex
1759 
1760 scheduleCheckBlackHoles
1761   AQ sched_mutex
1762    unblockOne_
1763     wakeupThreadOnCapabilty
1764       AQ cap->lock
1765 
1766 so sched_mutex and cap->lock are taken in a different order in two
1767 places.
1768 
1769 This doesn't happen in the HEAD because we don't have
1770 scheduleCheckBlackHoles, but I thought it would be prudent to make
1771 this less likely to happen in the future by using a different mutex in
1772 newTask.  We can clearly see that the all_tasks mutex cannot be
1773 involved in a deadlock, becasue we never call anything else while
1774 holding it.
1775]
1776['make fast' in a package does not build any compilers
1777Simon Marlow <marlowsd@gmail.com>**20100715125904
1778 Ignore-this: f27e70faf3944831dad16e89a4e273da
1779]
1780[LLVM: Fix up botched last commit
1781David Terei <davidterei@gmail.com>**20100719104823
1782 Ignore-this: a32e0f6a38cb9e02527eb8ca69b3eb59
1783]
1784[LLVM: Fix warning introduce in last commit.
1785David Terei <davidterei@gmail.com>**20100719103411
1786 Ignore-this: e9c92a9402aff50d60ab26e6ad441bfc
1787]
1788[LLVM: Use mangler to fix up stack alignment issues on OSX
1789David Terei <davidterei@gmail.com>**20100718231000
1790 Ignore-this: 9f6e8cb855269cb3a5ac1a23480d0e71
1791]
1792[Fix #4195 (isGadtSyntaxTyCon returns opposite result)
1793illissius@gmail.com**20100715134134
1794 Ignore-this: a90403f893030432b5c15d743647f350
1795]
1796[Update to time 1.2.0.3
1797Ian Lynagh <igloo@earth.li>**20100717181810
1798 Ignore-this: 1ccb4801a73f399e6718ce556543ede1
1799]
1800[Reorder RTS --info output
1801Ian Lynagh <igloo@earth.li>**20100717162356]
1802[Fix unreg prof build: Define CCS_SYSTEM in stg/MiscClosures.h
1803Ian Lynagh <igloo@earth.li>**20100717142832
1804 Ignore-this: 9675f3f51b6dac40483155344e7f45b6
1805]
1806[Make mkDerivedConstants as a stage 1 program
1807Ian Lynagh <igloo@earth.li>**20100717000827
1808 Ignore-this: 5357403461b209b8606f1d33defb51cf
1809 This way it gets the defines for the right platform when cross-compiling
1810]
1811[Don't generate Haskell dependencies if we don't have any Haskell sources
1812Ian Lynagh <igloo@earth.li>**20100717000800
1813 Ignore-this: 454abd0358f535b7e789327125c9206c
1814]
1815[Link programs that have no Haskell objects with gcc rather than ghc
1816Ian Lynagh <igloo@earth.li>**20100716235303
1817 Ignore-this: f65588b69675edea616cc434e769b0a4
1818]
1819[Use gcc to build C programs for stages >= 1
1820Ian Lynagh <igloo@earth.li>**20100716223703
1821 Ignore-this: 9f843a4e17285cda582117504707f9e7
1822]
1823[Add platform info to "ghc --info" output
1824Ian Lynagh <igloo@earth.li>**20100716141953]
1825[Tidy up Config.hs generation
1826Ian Lynagh <igloo@earth.li>**20100716140630]
1827[Fix HC porting test in makefiles
1828Ian Lynagh <igloo@earth.li>**20100716010808
1829 Ignore-this: 6052c1dd022a6108ab2236a299ee1d84
1830 Now that we are trying to support cross compilation, we can't use
1831     "$(TARGETPLATFORM)" != "$(HOSTPLATFORM)"
1832 as a test for HC-porting.
1833]
1834[Change a BUILD var to a HOST var
1835Ian Lynagh <igloo@earth.li>**20100716002558]
1836[Remove an unnecessary #include
1837Ian Lynagh <igloo@earth.li>**20100715233930
1838 Ignore-this: dcede249de6be7e3c9305c9279c2ca07
1839]
1840[Split up some make commands, so that errors aren't overlooked
1841Ian Lynagh <igloo@earth.li>**20100715152237
1842 Ignore-this: fb69b0a25d9ca71dae5e75d38db675cd
1843 When we ask make to run "a | b", if a fails then the pipeline might
1844 still exit successfuly.
1845]
1846[Remove an unnecessary #include
1847Ian Lynagh <igloo@earth.li>**20100715143000
1848 Ignore-this: 4e098cac5dda2dd595ca0a0f5121853c
1849]
1850[Simplify some more CPP __GLASGOW_HASKELL__ tests
1851Ian Lynagh <igloo@earth.li>**20100715142500]
1852[Remove some code only used with GHC 6.11.*
1853Ian Lynagh <igloo@earth.li>**20100715141720]
1854[__GLASGOW_HASKELL__ >= 609 is now always true
1855Ian Lynagh <igloo@earth.li>**20100715141544]
1856[Correct the values in ghc_boot_platform.h
1857Ian Lynagh <igloo@earth.li>**20100714223717
1858 Ignore-this: 4c99116f7ac73fadbd6d16807f57a693
1859]
1860[Change some TARGET checks to HOST checks
1861Ian Lynagh <igloo@earth.li>**20100714184715]
1862[LLVM: Add inline assembly to binding.
1863David Terei <davidterei@gmail.com>**20100714152530
1864 Ignore-this: 72a7b5460c128ed511e8901e5889fe2b
1865]
1866[LLVM: Fix mistype in last commit which broke TNTC under win/linux.
1867David Terei <davidterei@gmail.com>**20100714153339
1868 Ignore-this: 302d7957e3dded80368ebade5312ab35
1869]
1870[Remove unnecessary #include
1871Ian Lynagh <igloo@earth.li>**20100713153704
1872 Ignore-this: c37d3127b1dc68f59270c07173994c28
1873]
1874[Change some TARGET tests to HOST tests in the RTS
1875Ian Lynagh <igloo@earth.li>**20100713141034
1876 Which was being used seemed to be random
1877]
1878[LLVM: Add in new LLVM mangler for implementing TNTC on OSX
1879David Terei <davidterei@gmail.com>**20100713183243
1880 Ignore-this: 394fb74d7f9657d8b454bd0148d24bf7
1881]
1882[Refactor where an error message is generated
1883simonpj@microsoft.com**20100713115733
1884 Ignore-this: f94467856238586fcbbe48537141cf78
1885]
1886[Comments only
1887simonpj@microsoft.com**20100713115703
1888 Ignore-this: 5815442c4e69b9ec331b34242a596253
1889]
1890[Comments on data type families
1891simonpj@microsoft.com**20100713115640
1892 Ignore-this: 90a333bb7f7d64a49fb7dd180d893f6b
1893]
1894[Fix Trac #T4136: take care with nullary symbol constructors
1895simonpj@microsoft.com**20100707135945
1896 Ignore-this: 2a717a24fefcd593ea41c23dad351db0
1897 
1898 When a nullary constructor is a symbol eg (:=:) we need
1899 to take care.  Annoying.
1900]
1901[Fix Trac #4127 (and hence #4173)
1902simonpj@microsoft.com**20100707123125
1903 Ignore-this: 98bb6d0f7182b59f8c93596c61f9785d
1904 
1905 The change involves a little refactoring, so that the default
1906 method Ids are brought into scope earlier, before the value
1907 declarations are compiled.  (Since a value decl may contain
1908 an instance decl in a quote.)
1909 
1910 See Note [Default method Ids and Template Haskell] in
1911 TcTyClsDcls.
1912]
1913[Fix second bug in Trac #4127
1914simonpj@microsoft.com**20100701140124
1915 Ignore-this: c8d1cc27364fe9ee5a52acb1ecb5cdd9
1916 
1917 This bug concerned the awkward shadowing we do for
1918 Template Haskell declaration brackets.  Lots of
1919 comments in
1920 
1921   Note [Top-level Names in Template Haskell decl quotes]
1922]
1923[ia64: switch handling of 'foreign import wrapper' (FIW) to libffi
1924Sergei Trofimovich <slyfox@community.haskell.org>**20100709213922
1925 Ignore-this: fd07687e0089aebabf62de85d2be693
1926 
1927 I tried to build darcs-2.4.4 with ghc-6.12.3 and got coredumps when darcs is used
1928 in interactive mode. I tried test from ticket #3516 and found out FIW code is broken.
1929 Instead of fixing it I just switched to libffi. Result built successfully, passed
1930 'foreign import wrapper' test from ticket #3516 and builds working darcs.
1931]
1932[* storage manager: preserve upper address bits on 64bit machines (thanks to zygoloid)
1933Sergei Trofimovich <slyfox@community.haskell.org>**20100709115917
1934 Ignore-this: 9f1958a19992091ddc2761c389ade940
1935 
1936 Patch does not touch amd64 as it's address lengts is 48 bits at most, so amd64 is unaffected.
1937 
1938 the issue: during ia64 ghc bootstrap (both 6.10.4 and 6.12.3) I
1939 got the failure on stage2 phase:
1940     "inplace/bin/ghc-stage2"   -H32m -O -H64m -O0 -w ...
1941     ghc-stage2: internal error: evacuate: strange closure type 15
1942         (GHC version 6.12.3 for ia64_unknown_linux)
1943         Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug
1944     make[1]: *** [libraries/dph/dph-base/dist-install/build/Data/Array/Parallel/Base/Hyperstrict.o] Aborted
1945 
1946 gdb backtrace (break on 'barf'):
1947 Breakpoint 1 at 0x400000000469ec31: file rts/RtsMessages.c, line 39.
1948 (gdb) run -B/var/tmp/portage/dev-lang/ghc-6.12.3/work/ghc-6.12.3/inplace/bin --info
1949 Starting program: /var/tmp/portage/dev-lang/ghc-6.12.3/work/ghc-6.12.3/inplace/lib/ghc-stage2 -B/var/tmp/portage/dev-lang/ghc-6.12.3/work/ghc-6.12.3/inplace/bin --info
1950 [Thread debugging using libthread_db enabled]
1951 
1952 Breakpoint 1, barf (s=0x40000000047915b0 "evacuate: strange closure type %d") at rts/RtsMessages.c:39
1953 39        va_start(ap,s);
1954 (gdb) bt
1955 #0  barf (s=0x40000000047915b0 "evacuate: strange closure type %d") at rts/RtsMessages.c:39
1956 #1  0x400000000474a1e0 in evacuate (p=0x6000000000147958) at rts/sm/Evac.c:756
1957 #2  0x40000000046d68c0 in scavenge_srt (srt=0x6000000000147958, srt_bitmap=7) at rts/sm/Scav.c:348
1958 ...
1959 
1960 > 16:52:53 < zygoloid> slyfox: i'm no ghc expert but it looks like HEAP_ALLOCED_GC(q)
1961 >                      is returning true for a FUN_STATIC closure
1962 > 17:18:43 < zygoloid> try: p HEAP_ALLOCED_miss((unsigned long)(*p) >> 20, *p)
1963 > 17:19:12 < slyfox> (gdb) p HEAP_ALLOCED_miss((unsigned long)(*p) >> 20, *p)
1964 > 17:19:12 < slyfox> $1 = 0
1965 > 17:19:40 < zygoloid> i /think/ that means the mblock_cache is broken
1966 > 17:22:45 < zygoloid> i can't help further. however i am suspicious that you seem to have pointers with similar-looking low 33
1967 >                      bits and different high 4 bits, and it looks like such pointers get put into the same bucket in
1968 >                      mblock_cache.
1969 ...
1970 > 17:36:16 < zygoloid> slyfox: try changing the definition of MbcCacheLine to StgWord64, see if that helps
1971 > 17:36:31 < zygoloid> that's in includes/rts/storage/MBlock.h
1972 And it helped!
1973]
1974[Fixing link failure of compiler on ia64 ('-Wl,' prefixed value passed directly to ld)
1975Sergei Trofimovich <slyfox@community.haskell.org>**20100708180943
1976 Ignore-this: ced99785e1f870ee97e5bec658e2504f
1977 
1978     /usr/bin/ld -Wl,--relax -r -o dist-stage1/build/HSghc-6.10.4.o \
1979                                   dist-stage1/build/BasicTypes.o dist-stage1/build/DataCon.o ...
1980     /usr/bin/ld: unrecognized option '-Wl,--relax'
1981 
1982 If we just drop '-Wl,' part it will not help as '-r' and '--relax' are incompatible.
1983 
1984 Looks like '-Wl,--relax' was skipped by earlier binutils' ld as unknown option.
1985 Removing ia64 specific path.
1986]
1987[LLVM: Allow getelementptr to use LlvmVar for indexes.
1988David Terei <davidterei@gmail.com>**20100712152529
1989 Ignore-this: 9e158d9b89a86bca8abf11d082328278
1990]
1991[Move all the warning workarounds to one place
1992Ian Lynagh <igloo@earth.li>**20100710161723]
1993[xhtml is now warning-free
1994Ian Lynagh <igloo@earth.li>**20100710144635]
1995[Move a bit of build system code
1996Ian Lynagh <igloo@earth.li>**20100709224534]
1997[adapt to the new async exceptions API
1998Simon Marlow <marlowsd@gmail.com>**20100709125238
1999 Ignore-this: 55d845e40b9daed3575c1479d8dda1d5
2000]
2001[quiet some new spewage
2002Simon Marlow <marlowsd@gmail.com>**20100709091521
2003 Ignore-this: de7f91976bbc9789e6fd7091f05c25c0
2004]
2005[New asynchronous exception control API (ghc parts)
2006Simon Marlow <marlowsd@gmail.com>**20100708144851
2007 Ignore-this: 56320c5fc61ae3602d586609387aae22
2008 
2009 As discussed on the libraries/haskell-cafe mailing lists
2010   http://www.haskell.org/pipermail/libraries/2010-April/013420.html
2011 
2012 This is a replacement for block/unblock in the asychronous exceptions
2013 API to fix a problem whereby a function could unblock asynchronous
2014 exceptions even if called within a blocked context.
2015 
2016 The new terminology is "mask" rather than "block" (to avoid confusion
2017 due to overloaded meanings of the latter).
2018 
2019 In GHC, we changed the names of some primops:
2020 
2021   blockAsyncExceptions#   -> maskAsyncExceptions#
2022   unblockAsyncExceptions# -> unmaskAsyncExceptions#
2023   asyncExceptionsBlocked# -> getMaskingState#
2024 
2025 and added one new primop:
2026 
2027   maskUninterruptible#
2028 
2029 See the accompanying patch to libraries/base for the API changes.
2030]
2031[remove outdated comment
2032Simon Marlow <marlowsd@gmail.com>**20100708100840
2033 Ignore-this: afb2e9f6fe1f1acda51b0cbdf2637176
2034]
2035[remove 'mode: xml' emacs settings (#2208)
2036Simon Marlow <marlowsd@gmail.com>**20100708100817
2037 Ignore-this: 3a8d997fb90e01ca88dc47fb95feeba0
2038]
2039[typo in comment
2040Simon Marlow <marlowsd@gmail.com>**20100616111359
2041 Ignore-this: d3ef9288d6d6b9ab3bacbe09e0d9801c
2042]
2043[Win32 getProcessElapsedTime: use a higher-resolution time source
2044Simon Marlow <marlowsd@gmail.com>**20100708093223
2045 Ignore-this: 821989d4ff7ff2bff40cee71a881521c
2046 QueryPerformanceCounter() on Windows gives much better resolution than
2047 GetSystemTimeAsFileTime().
2048]
2049[alpha: switch handling of 'foreign import wrapper' (FIW) to libffi
2050Sergei Trofimovich <slyfox@community.haskell.org>**20100708065318
2051 Ignore-this: ddee15876737a6aa7f6dabc8ff79ce0d
2052 
2053 I tried to build ghc-6.12.3 and found out FIW part of code
2054 does not compile anymore. It uses absent functions under #ifdef.
2055 Instead of fixing it I just switched to libffi. Result built successfully
2056 and passed 'foreign import wrapper' test I wrote for trac ticket #3516.
2057 
2058 I didn't try to build -HEAD yet, but this patch only removes code, so
2059 it should not make -HEAD worse.
2060]
2061[Reorder the CPP flags so -optP can override the platform defines
2062Ian Lynagh <igloo@earth.li>**20100708203523]
2063[Add docs for DatatypeContexts extension
2064Ian Lynagh <igloo@earth.li>**20100707230907
2065 Ignore-this: 8158f03b35a2d7442a75fe85d6f1b1c7
2066]
2067[Make datatype contexts an extension (on by default) (DatatypeContexts)
2068Ian Lynagh <igloo@earth.li>**20100707212529
2069 Ignore-this: 6885ff510a0060610eeeba65122caef5
2070]
2071[LLVM: Fix various typos in comments
2072David Terei <davidterei@gmail.com>**20100707220448
2073 Ignore-this: 1ba3e722f150492da2f9d485c5795e80
2074]
2075[Handle haddock headers when looking for LANGUAGE/OPTIONS_GHC pragmas
2076Ian Lynagh <igloo@earth.li>**20100707120423
2077 Ignore-this: a75aa67690284a6cee3e62c943d4fd01
2078]
2079[Make pragState call mkPState, rather than duplicating everything
2080Ian Lynagh <igloo@earth.li>**20100706173007
2081 Ignore-this: 61fe24b99dbe7a42efff1a9dd703a75c
2082 This also means that extsBitmap gets set, whereas is was just being set
2083 to 0 before.
2084]
2085[LLVM: Add alias type defenitions to LlvmModule.
2086David Terei <davidterei@gmail.com>**20100707142053
2087 Ignore-this: eee6ad5385563ccf08e664d2634a03f2
2088]
2089[LLVM: Use packed structure type instead of structure type
2090David Terei <davidterei@gmail.com>**20100707120320
2091 Ignore-this: a06e0359d182291b81cae56993ca385e
2092 
2093 The regular structure type adds padding to conform to the platform ABI,
2094 which causes problems with structures storing doubles under windows since
2095 we don't conform to the platform ABI there. So we use packed structures
2096 instead now that don't do any padding.
2097]
2098[Make mkPState and pragState take their arguments in the same order
2099Ian Lynagh <igloo@earth.li>**20100706172611]
2100[Remove an out-of-date comment
2101Ian Lynagh <igloo@earth.li>**20100706172217
2102 Ignore-this: 710ebd7d2dc01c1b0f1e58a5b6f85701
2103]
2104[LLVM: Stop llvm saving stg caller-save regs across C calls
2105David Terei <davidterei@gmail.com>**20100705162629
2106 Ignore-this: 28b4877b31b9358e682e38fc54b88658
2107 
2108 This is already handled by the Cmm code generator so LLVM is simply
2109 duplicating work. LLVM also doesn't know which ones are actually live
2110 so saves them all which causes a fair performance overhead for C calls
2111 on x64. We stop llvm saving them across the call by storing undef to
2112 them just before the call.
2113]
2114[LLVM: Add in literal undefined value to binding
2115David Terei <davidterei@gmail.com>**20100705161544
2116 Ignore-this: 95d8361b11584aaeec44c30e76916470
2117]
2118[LLVM: Add a literal NULL value to binding
2119David Terei <davidterei@gmail.com>**20100705161308
2120 Ignore-this: 9507b4b12c1157498704a9d1e5860f12
2121 
2122 Patch from Erik de Castro Lopo <erikd@mega-nerd.com>.
2123]
2124[refactor import declaration support (#2362)
2125Simon Marlow <marlowsd@gmail.com>**20100705104557
2126 Ignore-this: ee034ac377078a7e92bfada1907c86a0
2127]
2128[Disable dynamic linking optimisations on OS X
2129Simon Marlow <marlowsd@gmail.com>**20100705103014
2130 Ignore-this: b04420d3705c51112797758d17b2e40c
2131 To improve performance of the RTS when dynamically linked on x86, I
2132 previously disabled -fPIC for certain critical modules (the GC, and a
2133 few others).  However, build reports suggest that the dynamic linker
2134 on OS X doesn't like this, so I'm disabling this optimsation on that
2135 platform.
2136]
2137[trac #2362 (full import syntax in ghci)
2138amsay@amsay.net**20100625032632
2139 Ignore-this: a9d0859d84956beb74e27b797431bf9c
2140 'import' syntax is seperate from ':module' syntax
2141]
2142[Simplify ghc-pkg's Cabal dependencies
2143Ian Lynagh <igloo@earth.li>**20100704184155
2144 We no longer support building with a compiler that doesn't come with
2145 base 4.
2146]
2147[Use Cabal to configure the dist-install ghc-pkg; fixes trac #4156
2148Ian Lynagh <igloo@earth.li>**20100704132612]
2149[Remove dead code (standalone deriving flag no longer used in parser)
2150Ian Lynagh <igloo@earth.li>**20100701162058]
2151[LLVM: Use the inbounds keyword for getelementptr instructions.
2152David Terei <davidterei@gmail.com>**20100702160511
2153 Ignore-this: 3708e658a4c82b78b1402393f4405541
2154]
2155[threadPaused: fix pointer arithmetic
2156Simon Marlow <marlowsd@gmail.com>**20100701085046
2157 Ignore-this: b78210e5d978f18ffd235f1c78a55a23
2158 Noticed by Henrique Ferreiro <hferreiro@udc.es>, thanks!
2159]
2160[LLVM: Change more operations to use getelementptr
2161David Terei <davidterei@gmail.com>**20100701161856
2162 Ignore-this: fb24eb124e203f50680c6fec3ff9fe7d
2163]
2164[Add the haskell2010 package
2165Simon Marlow <marlowsd@gmail.com>**20100630125532
2166 Ignore-this: e9b011313f283a8ff2fcda7d029a01f
2167]
2168[LLVM: Use getelementptr instruction for a lot of situations
2169David Terei <davidterei@gmail.com>**20100630181157
2170 Ignore-this: 34d314dd8dffad9bdcffdc525261a49d
2171 
2172 LLVM supports creating pointers in two ways, firstly through
2173 pointer arithmetic (by casting between pointers and ints)
2174 and secondly using the getelementptr instruction. The second way
2175 is preferable as it gives LLVM more information to work with.
2176 
2177 This patch changes a lot of pointer related code from the first
2178 method to the getelementptr method.
2179]
2180[remove out of date comments; point to the wiki
2181Simon Marlow <marlowsd@gmail.com>**20100625100313
2182 Ignore-this: 95f363a373534b9471b1818102ec592d
2183]
2184[NCG: allocatableRegs is only giving us 8 SSE regs to allocate to
2185benl@ouroborus.net**20100629054321
2186 Ignore-this: b3e0fa0b4ce988a0258dc12261989ee0
2187]
2188[LLVM: Use intrinsic functions for pow, sqrt, sin, cos
2189David Terei <davidterei@gmail.com>**20100628182949
2190 Ignore-this: 98a0befaca3fe2b36d710d8ff9f062c4
2191 
2192 Instead of calling the C library for these Cmm functions
2193 we use intrinsic functions provided by llvm. LLVM will
2194 then either create a compile time constant if possible, or
2195 use a cpu instruction or as a last resort call the C
2196 library.
2197]
2198[LLVM: Fix test '2047' under linux-x64
2199David Terei <davidterei@gmail.com>**20100628165256
2200 Ignore-this: 41735d4f431a430db636621650ccd71e
2201]
2202[LLVM: Fix test 'ffi005' under linux-x64
2203David Terei <davidterei@gmail.com>**20100628155355
2204 Ignore-this: 841f3142c63cc898ac4c3f89698a837e
2205]
2206[LLVM: Update to use new fp ops introduced in 2.7
2207David Terei <davidterei@gmail.com>**20100628144037
2208 Ignore-this: 5dd2e5964e3c039d297ed586841e706b
2209]
2210[Add noalias and nocapture attributes to pointer stg registers
2211David Terei <davidterei@gmail.com>**20100628115120
2212 Ignore-this: 492a1e723cb3a62498d240d7de92dd7
2213 
2214 At the moment this gives a very slight performance boost of around 1 - 2%.
2215 Future changes to the generated code though so that pointers are kept as
2216 pointers more often instead of being cast to integer types straight away
2217 should hopefully improve the benefit this brings.
2218 
2219]
2220[during shutdown, only free the heap if we waited for foreign calls to exit
2221Simon Marlow <marlowsd@gmail.com>**20100628090536
2222 Ignore-this: d545384a4f641d701455d08ef1217479
2223]
2224[Fix typo in -ddump-pass's document.
2225shelarcy <shelarcy@gmail.com>**20100620070759
2226 Ignore-this: f4f1ddb53f147949e948147d89190c37
2227]
2228[Add #undefs for posix source symbols when including papi.h
2229dmp@rice.edu**20100624163514
2230 Ignore-this: 8a1cba21b880d12a75a75f7e96882053
2231 
2232 Validation fails when validating with PAPI support (i.e. GhcRtsWithPapi  = YES
2233 in validate.mk).  The problem is that the posix symbols are defined by a header
2234 included from papi.h. Compilation then fails because these symbols are
2235 redefined in PosixSource.h.
2236 
2237 This patch adds an undefine for the posix symbols after including papi.h and
2238 before including PosixSource.h. The #undefines are localized to Papi.c since
2239 that is the only case where they are getting defined twice.
2240]
2241[Use machdepCCOpts in runPhase_MoveBinary; fixes trac #3952
2242Ian Lynagh <igloo@earth.li>**20100625220953]
2243[LLVM: Fix bug with calling tail with empty list
2244David Terei <davidterei@gmail.com>**20100625115729
2245 Ignore-this: 46b4b32c8d92372a2d49794a96fe1613
2246]
2247[Fix warnings
2248benl@ouroborus.net**20100624091339
2249 Ignore-this: 5ba4bbd6abb9c9d1fb8c5d21ab73f218
2250]
2251[NCG: Comments and formatting only
2252benl@ouroborus.net**20100624083121
2253 Ignore-this: 86002e72c30d06bcc876d8c49f4caa5a
2254]
2255[NCG: Do the actual reversing of SCCs
2256benl@ouroborus.net**20100624082717
2257 Ignore-this: 12d2027ea118e751fbb48b27126150ef
2258]
2259[NCG: Fix dumping of graphs in regalloc stats for graph allocator
2260benl@ouroborus.net**20100624082625
2261 Ignore-this: 2b971bc9e0318099a9afb0e0db135730
2262]
2263[NCG: Reverse SCCs after each round in the graph allocator
2264benl@ouroborus.net**20100624082437
2265 Ignore-this: f0152e4039d6f16f7b5a99b286538116
2266]
2267[NCG: Don't actually complain on unreachable code blocks
2268benl@ouroborus.net**20100624081445
2269 Ignore-this: e7335ae6120917cb858c38c7c6da8e24
2270]
2271[NCG: Do explicit check for precondition of computeLiveness
2272benl@ouroborus.net**20100624080747
2273 Ignore-this: e7053c4e5e4c3c746b5ebf016913424a
2274 
2275  computeLiveness requires the SCCs of blocks to be in reverse dependent
2276  order, and if they're not it was silently giving bad liveness info,
2277  yielding a bad allocation.
2278 
2279  Now it complains, loudly.
2280]
2281[NCG: Fix off-by-one error in realRegSqueeze
2282benl@ouroborus.net**20100623095813
2283 Ignore-this: ab0698686d4c250da8e207f734f8252d
2284]
2285[NCG: Handle stripping of liveness info from procs with no blocks (like stg_split_marker)
2286benl@ouroborus.net**20100623091209
2287 Ignore-this: c0319b6cc62ec713afe4eb03790406e3
2288]
2289[NCG: Emit a warning on unreachable code block instead of panicing
2290benl@ouroborus.net**20100623085002
2291 Ignore-this: d20314b79e3c31e764ed4cd97290c696
2292]
2293[NCG: Remember to keep the entry block first when erasing liveness info
2294Ben.Lippmeier@anu.edu.au**20090917104429
2295 Ignore-this: 1b0c1df19d622858d50ffb6a01f2cef0
2296]
2297[NCG: Refactor representation of code with liveness info
2298Ben.Lippmeier@anu.edu.au**20090917090730
2299 Ignore-this: 2aebb3b02ebd92e547c5abad9feb0f0d
2300 
2301  * I've pushed the SPILL and RELOAD instrs down into the
2302    LiveInstr type to make them easier to work with.
2303 
2304  * When the graph allocator does a spill cycle it now just
2305    re-annotates the LiveCmmTops instead of converting them
2306    to NatCmmTops and back.
2307 
2308  * This saves working out the SCCS again, and avoids rewriting
2309    the SPILL and RELOAD meta instructions into real machine
2310    instructions.
2311]
2312[NCG: Add sanity checking to linear allocator
2313Ben.Lippmeier@anu.edu.au**20090917090335
2314 Ignore-this: 5a442be8b5087d04bc8b58dffa9ea080
2315 If there are are unreachable basic blocks in the native code then the
2316 linear allocator might loop. Detect this case and panic instead.
2317]
2318[NCG: Refactor LiveCmmTop to hold a list of SCCs instead of abusing ListGraph
2319Ben.Lippmeier@anu.edu.au**20090917060332
2320 Ignore-this: 3fec8d69ed0f760e53a202f873d5d9cb
2321]
2322[NCG: Allow the liveness map in a LiveInfo to be Nothing
2323Ben.Lippmeier@anu.edu.au**20090917043937
2324 Ignore-this: 5f82422d54d1b0ffc0589eb7e82fb7a4
2325]
2326[NCG: Also show the result of applying coalesings with -ddump-asm-regalloc-stages
2327Ben.Lippmeier.anu.edu.au**20090917034427
2328 Ignore-this: 76bd6d5ca43adb2167cb25832cbaa80b
2329]
2330[Fix panic when running "ghc -H"; trac #3364
2331Ian Lynagh <igloo@earth.li>**20100624234011
2332 The problem is that showing SDoc's looks at the static flags global
2333 variables, but those are panics while we are parsing the static flags.
2334 We work around this by explicitly using a fixed prettyprinter style.
2335]
2336[Allow for stg registers to have pointer type in llvm BE.
2337David Terei <davidterei@gmail.com>**20100621175839
2338 Ignore-this: fc09b1a8314aef0bde945c77af1124fb
2339 
2340 Before all the stg registers were simply a bit type or
2341 floating point type but now they can be declared to have
2342 a pointer type to one of these. This will allow various
2343 optimisations in the future in llvm since the type is
2344 more accurate.
2345]
2346[Add support for parameter attributes to the llvm BE binding
2347David Terei <davidterei@gmail.com>**20100624111744
2348 Ignore-this: 77f3c0c7bf8f81c4a154dc835ae7bcba
2349 
2350 These allow annotations of the code produced by the backend
2351 which should bring some perforamnce gains. At the moment
2352 the attributes aren't being used though.
2353]
2354[Cast some more nats to StgWord to be on the safe side
2355Simon Marlow <marlowsd@gmail.com>**20100624105700
2356 Ignore-this: e6176683856f9872fdeb2358bb065bb8
2357 And add a comment about the dangers of int overflow
2358]
2359[comments only
2360Simon Marlow <marlowsd@gmail.com>**20100624105105
2361 Ignore-this: fc8f762f4c3a5ffca2f8da2bc63ac2a4
2362]
2363[Fix an arithmetic overflow bug causing crashes with multi-GB heaps
2364Simon Marlow <marlowsd@gmail.com>**20100624104654
2365 Ignore-this: 67210755aa098740ff5230347be0fd5d
2366]
2367[Add support for collecting PAPI native events
2368dmp@rice.edu**20100622195953
2369 Ignore-this: 7269f9c4dfb2912a024eb632200fcd1
2370 
2371 This patch extends the PAPI support in the RTS to allow collection of native
2372 events. PAPI can collect data for native events that are exposed by the
2373 hardware beyond the PAPI present events. The native events supported on your
2374 hardware can found by using the papi_native_avail tool.
2375 
2376 The RTS already allows users to specify PAPI preset events from the command
2377 line. This patch extends that support to allow users to specify native events.
2378 The changes needed are:
2379 
2380 1) New option (#) for the RTS PAPI flag for native events. For example, to
2381    collect the native event 0x40000000, use ./a.out +RTS -a#0x40000000 -sstderr
2382 
2383 2) Update the PAPI_FLAGS struct to store whether the user specified event is a
2384    papi preset or a native event
2385 
2386 3) Update init_countable_events function to add the native events after parsing
2387    the event code and decoding the name using PAPI_event_code_to_name
2388 
2389]
2390[Don't warn about unused bindings with parents in .hs-boot files; trac #3449
2391Ian Lynagh <igloo@earth.li>**20100624110351]
2392[fix the home_imps filter to allow for 'import "this" <module>'
2393Simon Marlow <marlowsd@gmail.com>**20100621125535
2394 Ignore-this: da4e605b0513afc32a4e7caa921a2c76
2395 In the PackageImports extension, import "this" means "import from the
2396 current package".
2397]
2398[Use the standard C wrapper code for the ghc-$version.exe wrapper
2399Ian Lynagh <igloo@earth.li>**20100622202859
2400 Ignore-this: 60cd3e6db3afb63e6ba9e2db3b033580
2401]
2402[Don't rely on "-packagefoo" working; use "-package foo" instead
2403Ian Lynagh <igloo@earth.li>**20100622202547]
2404[Remove unnecessary C #includes
2405Ian Lynagh <igloo@earth.li>**20100622172919]
2406[Make the ghci.exe wrapper call the right ghc.exe
2407Ian Lynagh <igloo@earth.li>**20100622172247]
2408[More updates to datalayout description in llvm BE
2409David Terei <davidterei@gmail.com>**20100622165339
2410 Ignore-this: b0c604fe7673b0aa7c7064694d574437
2411]
2412[Remove LlvmAs phase as the llvm opt tool now handles this phase
2413David Terei <davidterei@gmail.com>**20100622144044
2414 Ignore-this: b9fd8f959702b6af014e2fa654bede3
2415 
2416 This phase originally invoked the llvm-as tool that turns a textual
2417 llvm assembly file into a bit code file for the rest of llvm to deal
2418 with. Now the llvm opt tool can do this itself, so we don't need to
2419 use llvm-as anymore.
2420]
2421[Update datalayout info in llvm BE
2422David Terei <davidterei@gmail.com>**20100622123457
2423 Ignore-this: 89b043d211225dcd819f30549afe1840
2424]
2425[Fix handling of float literals in llvm BE
2426David Terei <davidterei@gmail.com>**20100622121642
2427 Ignore-this: a3b5f382ad4b5a426ad4b581664506fa
2428]
2429[Declare some top level globals to be constant when appropriate
2430David Terei <davidterei@gmail.com>**20100621174954
2431 Ignore-this: 44832f65550d4f995d11c01cc1affef5
2432 
2433 This involved removing the old constant handling mechanism
2434 which was fairly hard to use. Now being constant or not is
2435 simply a property of a global variable instead of a separate
2436 type.
2437]
2438[Reduce the number of passes over the cmm in llvm BE
2439David Terei <davidterei@gmail.com>**20100621125220
2440 Ignore-this: cb2f4e54e8d0f982d5087fbeee35c73c
2441]
2442[Fix negate op not working for -0 in llvm backend
2443David Terei <davidterei@gmail.com>**20100621123606
2444 Ignore-this: c5d76e5cffa781fed074137851b1347f
2445]
2446[ROLLBACK: picCCOpts: -dynamic should not entail -optc-fPIC
2447Simon Marlow <marlowsd@gmail.com>**20100621100409
2448 Ignore-this: f2fac7df33d3919199befc59bd455414
2449 and add a comment to explain why it was wrong.  This fixes the dyn
2450 test failures that sprang up recently.
2451]
2452[Check files are really created in libffi
2453Ian Lynagh <igloo@earth.li>**20100620163724
2454 when we think that the libffi build creates them, so they just depend
2455 on the libffi build stamp.
2456]
2457[Improve the missing-import-list warning
2458Ian Lynagh <igloo@earth.li>**20100620124320
2459 Ignore-this: 551e5fdf2dfb56b49d249e0cebaa6115
2460]
2461[Tweak missing-import-list warning
2462Ian Lynagh <igloo@earth.li>**20100620122622
2463 Ignore-this: 360cdf59ae13d66ded181129325506c4
2464]
2465[trac #1789 (warnings for missing import lists)
2466amsay@amsay.net**20100618150649
2467 Ignore-this: b0b0b1e048fbca0817c1e6fade1153fa
2468]
2469[Refix docs for sizeofByteArray#/sizeofMutableByteArray# (#3800)
2470Ian Lynagh <igloo@earth.li>**20100620103749]
2471[Remove some old commented out code
2472Ian Lynagh <igloo@earth.li>**20100620000459]
2473[SET_ARR_HDR's last argument is now a number of bytes, rather than words
2474Ian Lynagh <igloo@earth.li>**20100619235214
2475 This avoids unnecessary work and potential loss of information
2476]
2477[Replace an (incorrect) bytes-to-words calculation with ROUNDUP_BYTES_TO_WDS
2478Ian Lynagh <igloo@earth.li>**20100619234310]
2479[FIX #38000 Store StgArrWords payload size in bytes
2480Antoine Latter <aslatter@gmail.com>**20100101183346
2481 Ignore-this: 7bf3ab4fc080c46311fc10b179361bb6
2482]
2483[Add win32 datalayout support to llvm backend
2484David Terei <davidterei@gmail.com>**20100618131733
2485 Ignore-this: 4b7bffaa8ef38c628ab852c1a6c1c009
2486]
2487[Remove unused 'ddump-opt-llvm' flag
2488David Terei <davidterei@gmail.com>**20100618101237
2489 Ignore-this: f78467496d986897e49d82646ee2907e
2490]
2491[generate "movl lbl(%reg1), %reg2" instructions, better codegen for -fPIC
2492Simon Marlow <marlowsd@gmail.com>**20100618082258
2493 Ignore-this: a25567ebff9f575303ddc8f2deafebbf
2494]
2495[joinToTargets: fix a case of panic "handleComponent cyclic"
2496Simon Marlow <marlowsd@gmail.com>**20100618082147
2497 Ignore-this: 765baeefbb5a41724004acd92405cecc
2498]
2499[comment typo
2500Simon Marlow <marlowsd@gmail.com>**20100618082102
2501 Ignore-this: e495610b7dd5ec30b02938638b56cb7
2502]
2503[Add support of TNTC to llvm backend
2504David Terei <davidterei@gmail.com>**20100618093205
2505 Ignore-this: 2c27d21668374a5b0d5e844882c69439
2506 
2507 We do this through a gnu as feature called subsections,
2508 where you can put data/code into a numbered subsection
2509 and those subsections will be joined together in descending
2510 order by gas at compile time.
2511]
2512[Don't automatically insert a -fvia-C flag in an unregisterised compiler
2513Ian Lynagh <igloo@earth.li>**20100617190901
2514 Ignore-this: eb25a9a338fade9e17c153da7c5f27e9
2515 The default object mode is already HscC, so it's unnecessary, and
2516 -fvia-C generates a deprecated flag warning now.
2517]
2518[In PosixSource.h, conditionally define things based on platform
2519Ian Lynagh <igloo@earth.li>**20100617174912
2520 This may not be ideal, but it should get GHC building on all platforms
2521 again.
2522]
2523[disable -fPIC for the GC for performance reasons
2524Simon Marlow <marlowsd@gmail.com>**20100617140025
2525 Ignore-this: c7c152bbff71ef7891eaee8ff39fc281
2526 see comment for details
2527]
2528[picCCOpts: -dynamic should not entail -optc-fPIC
2529Simon Marlow <marlowsd@gmail.com>**20100617115259
2530 Ignore-this: d71e42bd56e4bd107d2c431b801855e5
2531]
2532[Make getAllocations() visible
2533Simon Marlow <marlowsd@gmail.com>**20100617113259
2534 Ignore-this: 1b7fb38a01358c0acbe8987df07d23f2
2535]
2536[Fix the symbol visibility pragmas
2537Simon Marlow <marlowsd@gmail.com>**20100617105758
2538 Ignore-this: 76552500865473a1dbebbc1cc2def9f0
2539]
2540[pick up changes to $(GhcStage1HcOpts) without re-configuring the ghc package
2541Simon Marlow <marlowsd@gmail.com>**20100616124718
2542 Ignore-this: afb56d5560c813051285607fefb15493
2543]
2544[Fix bindisttest Makefile
2545Ian Lynagh <igloo@earth.li>**20100616205611
2546 Ignore-this: 39cd352152422f378572fc3859c5a377
2547]
2548[Remove some more unused make variables
2549Ian Lynagh <igloo@earth.li>**20100616180519]
2550[Convert some more variable names to FOO_CMD, for consistency
2551Ian Lynagh <igloo@earth.li>**20100616175916]
2552[Rename some variables from FOO to FOO_CMD
2553Ian Lynagh <igloo@earth.li>**20100616161108
2554 This fixes a problem with commands like gzip, where if $GZIP is exported
2555 in the environment, then when make runs a command it'll put the Makefile
2556 variable's value in the environment. But gzip treats $GZIP as arguments
2557 for itself, so when we run gzip it thinks we're giving it "gzip" as an
2558 argument.
2559]
2560[Make the "show" target work anywhere in the build tree
2561Ian Lynagh <igloo@earth.li>**20100616122910
2562 Ignore-this: 299d40cbe16112accd9f14e56fa12158
2563]
2564[Change ghc-pwd's license to a string Cabal recognises
2565Ian Lynagh <igloo@earth.li>**20100615204015
2566 Ignore-this: c935b6ad7f605aab0168997a90b40fc6
2567]
2568[fix warning
2569Simon Marlow <marlowsd@gmail.com>**20100604205933
2570 Ignore-this: 2aaa4ed6a8b9ae1e39adc4696aaf14a3
2571]
2572[--install-signal-handles=no does not affect the timer signal (#1908)
2573Simon Marlow <marlowsd@gmail.com>**20100527214627
2574 Ignore-this: b0c51f1abdb159dc360662485095a11a
2575]
2576[Small optimisation: allocate nursery blocks contiguously
2577Simon Marlow <marlowsd@gmail.com>**20100509194928
2578 Ignore-this: e650e99e9ea9493d2efb245d565beef4
2579 This lets automatic prefetching work better, for a tiny performance boost
2580]
2581[fix -fforce-recomp setting: module is PrimOp, not PrimOps
2582Simon Marlow <marlowsd@gmail.com>**20100507084507
2583 Ignore-this: f76e0d9b643682ec0e8fb7d91afdea68
2584]
2585[it should be an error to use relative directories (#4134)
2586Simon Marlow <marlowsd@gmail.com>**20100615151740
2587 Ignore-this: 2068021701832e018ca41b22877921d5
2588]
2589[missing include-dirs or library-dirs is only a warning now (#4104)
2590Simon Marlow <marlowsd@gmail.com>**20100615151702
2591 Ignore-this: e3114123cef147bbd28ccb64581a1afb
2592]
2593[fix #3822: desugaring case command in arrow notation
2594Ross Paterson <ross@soi.city.ac.uk>**20100615225110
2595 Ignore-this: 477d6c460b4174b94b4cd113fa5b9d19
2596 
2597 Get the set of free variables from the generated case expression:
2598 includes variables in the guards and decls that were missed before,
2599 and is also a bit simpler.
2600]
2601[Deprecate the -fvia-C flag; trac #3232
2602Ian Lynagh <igloo@earth.li>**20100615151836
2603 Ignore-this: c2452b2648bf7e44546465c1b964fce
2604]
2605[Avoid using the new ~~ perl operator in the mangler
2606Ian Lynagh <igloo@earth.li>**20100615151236
2607 Ignore-this: 709a7ba4e514b1596841b3ba7e5c6cc
2608]
2609[stmAddInvariantToCheck: add missing init of invariant->lock (#4057)
2610Simon Marlow <marlowsd@gmail.com>**20100615123643
2611 Ignore-this: 3b132547fa934cecf71a846db2a5f70e
2612]
2613[Add new LLVM code generator to GHC. (Version 2)
2614David Terei <davidterei@gmail.com>**20100615094714
2615 Ignore-this: 4dd2fe5854b64a3f0339d484fd5c238
2616 
2617 This was done as part of an honours thesis at UNSW, the paper describing the
2618 work and results can be found at:
2619 
2620 http://www.cse.unsw.edu.au/~pls/thesis/davidt-thesis.pdf
2621 
2622 A Homepage for the backend can be found at:
2623 
2624 http://hackage.haskell.org/trac/ghc/wiki/Commentary/Compiler/Backends/LLVM
2625 
2626 Quick summary of performance is that for the 'nofib' benchmark suite, runtimes
2627 are within 5% slower than the NCG and generally better than the C code
2628 generator.  For some code though, such as the DPH projects benchmark, the LLVM
2629 code generator outperforms the NCG and C code generator by about a 25%
2630 reduction in run times.
2631 
2632]
2633[Fix Trac #4127: build GlobalRdrEnv in GHCi correctly
2634simonpj@microsoft.com**20100615070626
2635 Ignore-this: d907e3bfa7882878cea0af172aaf6e84
2636 
2637 GHCi was building its GlobalRdrEnv wrongly, so that the
2638 gre_par field was bogus.  That in turn fooled the renamer.
2639 The fix is easy: use the right function!  Namely, call
2640 RnNames.gresFromAvail rather than availsToNameSet.
2641]
2642[Comments, and improvement to pretty-printing of HsGroup
2643simonpj@microsoft.com**20100615070409
2644 Ignore-this: ec8358f2485370b20226a97ec84e9024
2645]
2646[Don't reverse bindings in rnMethodBinds (fix Trac #4126)
2647simonpj@microsoft.com**20100614163935
2648 Ignore-this: a6ffbb5af6f51b142ed0aeae8ee5e3a9
2649]
2650[Fix Trac #4120: generate a proper coercion when unifying forall types
2651simonpj@microsoft.com**20100614134311
2652 Ignore-this: 601592bb505305f1954cbe730f168da4
2653 
2654 This was just a blatant omission, which hasn't come up before.
2655 Easily fixed, happily.
2656]
2657[Use mkFunTy to ensure that invariants are respected
2658simonpj@microsoft.com**20100614134159
2659 Ignore-this: 67dcada7a4e8d9927581cd77af71b6f
2660]
2661[Remove redundant debug code
2662simonpj@microsoft.com**20100601154151
2663 Ignore-this: e6ff11c04c631cf6aac73788cbcf02b5
2664]
2665[Fix Trac #4099: better error message for type functions
2666simonpj@microsoft.com**20100531140413
2667 Ignore-this: 3f53ca98cf770577818b9c0937482577
2668 
2669 Now we only want about "T is a type function and might not be
2670 injective" when matchin (T x) against (T y), which is the case
2671 that is really confusing.
2672]
2673[Gruesome fix in CorePrep to fix embarassing Trac #4121
2674simonpj@microsoft.com**20100614132726
2675 Ignore-this: fe82d15474afaac3e6133adfd7a7e055
2676 
2677 This is a long-lurking bug that has been flushed into
2678 the open by other arity-related changes.  There's a
2679 long comment
2680 
2681      Note [CafInfo and floating]
2682 
2683 to explain. 
2684 
2685 I really hate the contortions we have to do through to keep correct
2686 CafRef information on top-level binders.  The Right Thing, I believe,
2687 is to compute CAF and arity information later, and merge it into the
2688 interface-file information when the latter is generated.
2689 
2690 But for now, this hackily fixes the problem.
2691]
2692[Fix a bug in CorePrep that meant output invariants not satisfied
2693simonpj@microsoft.com**20100531150013
2694 Ignore-this: d34eb36d8877d3caf1cf2b20de426abd
2695 
2696 In cpePair I did things in the wrong order so that something that
2697 should have been a CprRhs wasn't.  Result: a crash in CoreToStg.
2698 Fix is easy, and I added more informative type signatures too.
2699]
2700[Robustify the treatement of DFunUnfolding
2701simonpj@microsoft.com**20100531145332
2702 Ignore-this: 8f5506ada4d89f6ab8ad1e8c3ffb09ba
2703 
2704 See Note [DFun unfoldings] in CoreSyn.  The issue here is that
2705 you can't tell how many dictionary arguments a DFun needs just
2706 from looking at the Arity of the DFun Id: if the dictionary is
2707 represented by a newtype the arity might include the dictionary
2708 and value arguments of the (single) method.
2709 
2710 So we need to record the number of arguments need by the DFun
2711 in the DFunUnfolding itself.  Details in
2712    Note [DFun unfoldings] in CoreSyn
2713]
2714[Fix spelling in comment
2715simonpj@microsoft.com**20100614132259
2716 Ignore-this: bbf0d55f2e5f10ef9c74592c12f9201c
2717]
2718[Update docs on view patterns
2719simonpj@microsoft.com**20100614074801
2720 Ignore-this: 8617b9078800d4942d71f142a5b6c831
2721]
2722[Fix printing of splices; part of #4124
2723Ian Lynagh <igloo@earth.li>**20100613154838
2724 Just putting parens around non-atomic expressions isn't sufficient
2725 for splices, as only the $x and $(e) forms are valid input.
2726]
2727[In ghci, catch IO exceptions when calling canonicalizePath
2728Ian Lynagh <igloo@earth.li>**20100613134627
2729 We now get an exception if the path doesn't exist
2730]
2731[Whitespace only
2732Ian Lynagh <igloo@earth.li>**20100612213119]
2733[Whitespace only
2734Ian Lynagh <igloo@earth.li>**20100612165450]
2735[Update ghci example output in user guide; patch from YitzGale in #4111
2736Ian Lynagh <igloo@earth.li>**20100612162250]
2737[Fix #4131 missing UNTAG_CLOSURE in messageBlackHole()
2738benl@ouroborus.net**20100611044614]
2739[messageBlackHole: fix deadlock bug caused by a missing 'volatile'
2740Simon Marlow <marlowsd@gmail.com>**20100610080636
2741 Ignore-this: 3cda3054bb45408aa9bd2d794b69c938
2742]
2743[Pass --no-tmp-comp-dir to Haddock (see comment)
2744Simon Marlow <marlowsd@gmail.com>**20100604083214
2745 Ignore-this: bfa4d74038637bd149f4d878b4eb8a87
2746]
2747[Track changes to DPH libs
2748Roman Leshchinskiy <rl@cse.unsw.edu.au>**20100607052903
2749 Ignore-this: 4dbc3f8418af3e74b3fc4f9a9dfe7764
2750]
2751[Track changes to DPH libs
2752Roman Leshchinskiy <rl@cse.unsw.edu.au>**20100607012642
2753 Ignore-this: 5d4e498171a3c57ab02621bfaea82cff
2754]
2755[In ghc-pkg, send warnings to stderr
2756Ian Lynagh <igloo@earth.li>**20100606161726
2757 Ignore-this: 56927d13b5e1c1ce2752734f0f9b665b
2758]
2759[Re-add newlines to enable layout for multi-line input.
2760Ian Lynagh <igloo@earth.li>**20100602180737
2761 Patch from Adam Vogt <vogt.adam@gmail.com>
2762 Partial fix for #3984
2763]
2764[Don't use unnecessary parens when printing types (Fix Trac 4107)
2765simonpj@microsoft.com**20100604110143
2766 Ignore-this: a833714ab13013c4345b222f4e87db1d
2767 
2768    f :: Eq a => a -> a
2769 rather than
2770    f :: (Eq a) => a -> a
2771]
2772[Track DPH library changes
2773Roman Leshchinskiy <rl@cse.unsw.edu.au>**20100604005728
2774 Ignore-this: 32bc2fbea6ad975e89545d4c42fd7c30
2775]
2776[fix --source-entity option passed to Haddock: we needed to escape a #
2777Simon Marlow <marlowsd@gmail.com>**20100603125459
2778 Ignore-this: d52ae6188b510c482bcebb23f0e553ae
2779]
2780[__stg_EAGER_BLACKHOLE_INFO -> __stg_EAGER_BLACKHOLE_info (#4106)
2781Simon Marlow <marlowsd@gmail.com>**20100602091419
2782 Ignore-this: 293315ac8f86fd366b8d61992ecc7961
2783]
2784[Add xhtml package (a new dependency of Haddock; not installed/shipped)
2785Simon Marlow <marlowsd@gmail.com>**20100602090101
2786 Ignore-this: af0ac8b91abe98f7fdb624ea0a4dee20
2787]
2788[Use UserInterrupt rather than our own Interrupted exception (#4100)
2789Simon Marlow <marlowsd@gmail.com>**20100602082345
2790 Ignore-this: 1909acf2f452593138b9f85024711714
2791]
2792[Add the global package DB to ghc --info (#4103)
2793Simon Marlow <marlowsd@gmail.com>**20100602082233
2794 Ignore-this: fd5c0e207e70eb0f62606c45dc5b8124
2795]
2796[rts/sm/GC.c: resize_generations(): Remove unneeded check of number of generations.
2797Marco Túlio Gontijo e Silva <marcot@debian.org>**20100528115612
2798 Ignore-this: 6f1bea62917c01c7adac636146132c97
2799 
2800 This "if" is inside another "if" which checks for RtsFlags.GcFlags.generations
2801 > 1, so testing this again is redundant, assuming the number of generations
2802 won't change during program execution.
2803]
2804[rts/sm/BlockAlloc.c: Small comment correction.
2805Marco Túlio Gontijo e Silva <marcot@debian.org>**20100526205839
2806 Ignore-this: bd2fcd4597cc872d80b0e2eeb1c3998a
2807]
2808[rts/sm/GC.c: Annotate constants.
2809Marco Túlio Gontijo e Silva <marcot@debian.org>**20100526205707
2810 Ignore-this: f232edb89383564d759ed890a18f602f
2811]
2812[includes/rts/storage/GC.h: generation_: n_words: Improve comment.
2813Marco Túlio Gontijo e Silva <marcot@debian.org>**20100526204615
2814 Ignore-this: f5d5feefa8f7b552303978f1804fea23
2815]
2816[Add PPC_RELOC_LOCAL_SECTDIFF support; patch from PHO in #3654
2817Ian Lynagh <igloo@earth.li>**20100601204211
2818 Ignore-this: 51293b7041cdce3ce7619ef11cf7ceb
2819]
2820[powerpc-apple-darwin now supports shared libs
2821Ian Lynagh <igloo@earth.li>**20100601173325]
2822[PIC support for PowerPC
2823pho@cielonegro.org**20100508143900
2824 Ignore-this: 3673859a305398c4acae3f4d7c997615
2825 
2826 PPC.CodeGen.getRegister was not properly handling PicBaseReg.
2827 It seems working with this patch, but I'm not sure this change is correct.
2828]
2829[Vectoriser: only treat a function as scalar if it actually computes something
2830Roman Leshchinskiy <rl@cse.unsw.edu.au>**20100601045630
2831 Ignore-this: e5d99a6ddb62052e3520094a5af47552
2832]
2833[Add a release notes file for 6.14.1
2834Ian Lynagh <igloo@earth.li>**20100530171117
2835 Ignore-this: 1941e6d3d1f4051b69ca2f17a1cf84d6
2836]
2837[Check dblatex actually creates the files we tell it to
2838Ian Lynagh <igloo@earth.li>**20100530171043
2839 Ignore-this: ccc72caea2313be05cbac59bb54c0603
2840 If it fails, it still exits successfully.
2841]
2842[Add darwin to the list of OSes for which we use mmap
2843Ian Lynagh <igloo@earth.li>**20100529145016
2844 Ignore-this: a86d12a3334aaaafc86f7af9dbb0a7ae
2845 Patch from Barney Stratford
2846]
2847[Simplify the CPP logic in rts/Linker.c
2848Ian Lynagh <igloo@earth.li>**20100529144929
2849 Ignore-this: 1288f5b752cc1ab8b1c90cfd0ecfdf68
2850]
2851[Fix validate on OS X
2852Ian Lynagh <igloo@earth.li>**20100529154726]
2853[OS X x86_64 fix from Barney Stratford
2854Ian Lynagh <igloo@earth.li>**20100529122440]
2855[OS X 64 installer fixes from Barney Stratford
2856Ian Lynagh <igloo@earth.li>**20100528234935]
2857[fix warning
2858Simon Marlow <marlowsd@gmail.com>**20100525155812
2859 Ignore-this: f34eee3fe3d89579fd8d381c91ced750
2860]
2861[Fix doc bugs (#4071)
2862Simon Marlow <marlowsd@gmail.com>**20100525155728
2863 Ignore-this: aa25be196de567de360075022a1942f7
2864]
2865[Make sparks into weak pointers (#2185)
2866Simon Marlow <marlowsd@gmail.com>**20100525150435
2867 Ignore-this: feea0bb5006007b82c932bc3006124d7
2868 The new strategies library (parallel-2.0+, preferably 2.2+) is now
2869 required for parallel programming, otherwise parallelism will be lost.
2870]
2871[If you say 'make' or 'make stage=2' here, pretend we're in the ghc dir
2872Simon Marlow <marlowsd@gmail.com>**20100525085301
2873 Ignore-this: 78b740337aa460915c812cbbcdae5321
2874]
2875[Another attempt to get these #defines right
2876Simon Marlow <marlowsd@gmail.com>**20100525154313
2877 Ignore-this: 460ca0c47d81cd25eae6542114f67899
2878 Apparently on Solaris it is an error to omit _ISOC99_SOURCE when using
2879 _POSIX_C_SOURCE==200112L.
2880]
2881[Add configure flags for the location of GMP includes/library; fixes #4022
2882Ian Lynagh <igloo@earth.li>**20100525221616
2883 Ignore-this: fc3060caf995d07274ec975eeefbdf3e
2884]
2885[Refactor pretty printing of TyThings to fix Trac #4015
2886simonpj@microsoft.com**20100525153126
2887 Ignore-this: 8f15053b7554f62caa84201d2e4976d2
2888]
2889[When haddocking, we need the dependencies to have been built
2890Ian Lynagh <igloo@earth.li>**20100525145830
2891 as haddock loads the .hi files with the GHC API.
2892]
2893[Fix profiling output; spotted by jlouis
2894Ian Lynagh <igloo@earth.li>**20100525111217
2895 We were outputing the number of words allocated in a column titled "bytes".
2896]
2897[Improve printing of TyThings; fixes Trac #4087
2898simonpj@microsoft.com**20100525114045
2899 Ignore-this: da2a757a533454bba80b9b77cc5a771
2900]
2901[Spelling in comments
2902simonpj@microsoft.com**20100525114001
2903 Ignore-this: 270f3da655e526cf04e27db7a01e29c0
2904]
2905[Refactor (again) the handling of default methods
2906simonpj@microsoft.com**20100525113910
2907 Ignore-this: 6686f6cdb878d57abf6b49fec64fcbb1
2908 
2909 This patch fixes Trac #4056, by
2910 
2911  a) tidying up the treatment of default method names
2912  b) removing the 'module' argument to newTopSrcBinder
2913 
2914 The details aren't that interesting, but the result
2915 is much tidier. The original bug was a 'nameModule' panic,
2916 caused by trying to find the module of a top-level name.
2917 But TH quotes generate Internal top-level names that don't
2918 have a module, and that is generally a good thing. 
2919 
2920 Fixing that in turn led to the default-method refactoring,
2921 which also makes the Name for a default method be handled
2922 in the same way as other derived names, generated in BuildTyCl
2923 via a call newImplicitBinder.  Hurrah.
2924]
2925[Don't do SpecConstr on NOINLINE things (Trac #4064)
2926simonpj@microsoft.com**20100525112807
2927 Ignore-this: 452be0a2cef0042fb67275c2827b5f72
2928 
2929 Since the RULE from specialising gets the same Activation as
2930 the inlining for the Id itself there's no point in specialising
2931 a NOINLINE thing, because the rule will be permanently switched
2932 off.
2933 
2934 See Note [Transfer activation] in SpecConstr
2935 and Note [Auto-specialisation and RULES] in Specialise.
2936]
2937[Change our #defines to work on FreeBSD too
2938Simon Marlow <marlowsd@gmail.com>**20100524105828
2939 Ignore-this: b23ede46211e67859206c0ec57d6a86f
2940 With glibc, things like _POSIX_C_SOURCE and _ISOC99_SOURCE are
2941 additive, but on FreeBSD they are mutually exclusive.  However, it
2942 turns out we only need to define _POSIX_C_SOURCE and _XOPEN_SOURCE to
2943 get all the C99 stuff we need too, so there's no need for any #ifdefs.
2944 
2945 Submitted by: Gabor PALI <pgj@FreeBSD.org>
2946]
2947[Add a missing UNTAG_CLOSURE, causing bus errors on Sparc
2948Simon Marlow <marlowsd@gmail.com>**20100524105547
2949 Ignore-this: a590b5391d6f05d50c8c088456c3c166
2950 We just about got away with this on x86 which isn't
2951 alignment-sensitive.  The result of the memory load is compared
2952 against a few different values, but there is a fallback case that
2953 happened to be the right thing when the pointer was tagged.  A good
2954 bug to find, nonetheless.
2955]
2956[Add wiki links
2957Simon Marlow <marlowsd@gmail.com>**20100520095953
2958 Ignore-this: c22f126cde166e6207922b2eb51d29e3
2959]
2960[the 'stage=0' trick to disable all compiler builds stopped working; fix it
2961Simon Marlow <marlowsd@gmail.com>**20100520104455
2962 Ignore-this: bb6fae9056471612c8dbf06916188c33
2963]
2964[Comments and formatting only
2965benl@ouroborus.net**20100524014021
2966 Ignore-this: 64579c38154728b632e358bec751cc0b
2967]
2968[Core prettyprinter fixes. Patch from Tim Chevalier. Fixes #4085
2969Ian Lynagh <igloo@earth.li>**20100522225048]
2970[Correct install-name for dynamic Darwin rts
2971pho@cielonegro.org**20100508151155
2972 Ignore-this: 6d31716c8c113dcb46e9cb925c4201df
2973]
2974[Fix the RTS debug_p build
2975Ian Lynagh <igloo@earth.li>**20100522163127]
2976[Unset $CFLAGS for "GNU non-executable stack" configure test; fixes #3889
2977Ian Lynagh <igloo@earth.li>**20100521165005
2978 With gcc 4.4 we get
2979     Error: can't resolve `.note.GNU-stack' {.note.GNU-stack section} - `.Ltext0' {.text section}
2980 when running gcc with the -g flag. To work around this we unset
2981 CFLAGS when running the test.
2982]
2983[Don't run "set -o igncr" before configuring libffi
2984Ian Lynagh <igloo@earth.li>**20100520162918
2985 Ignore-this: 489fa94df23f2adf4ff63c8ede2c0794
2986 It used to make the build work on cygwin, but now it breaks it instead:
2987     config.status: creating include/Makefile
2988     gawk: ./confLqjohp/subs.awk:1: BEGIN {\r
2989     gawk: ./confLqjohp/subs.awk:1: ^ backslash not last character on line
2990     config.status: error: could not create include/Makefile
2991     make[2]: *** [libffi/stamp.ffi.configure-shared] Error 1
2992     make[1]: *** [all] Error 2
2993]
2994[Stop passing -Wl,-macosx_version_min to gcc
2995Ian Lynagh <igloo@earth.li>**20100520154003
2996 Fixes a build failure on OS X 10.6. When linking
2997     rts/dist/build/libHSrts-ghc6.13.20100519.dylib
2998 we got
2999     ld: symbol dyld_stub_binding_helper not defined (usually in crt1.o/dylib1.o/bundle1.o)
3000     collect2: ld returned 1 exit status
3001]
3002[Fix build on FreeBSD; patch from Gabor PALI
3003Ian Lynagh <igloo@earth.li>**20100519140552]
3004[Fix package shadowing order (#4072)
3005Simon Marlow <marlowsd@gmail.com>**20100519104617
3006 Ignore-this: 26ea5e4bb5dff18618b807a54c7d6ebb
3007 
3008 Later packages are supposed to shadow earlier ones in the stack,
3009 unless the ordering is overriden with -package-id flags.
3010 Unfortunately an earlier fix for something else had sorted the list of
3011 packages so that it was in lexicographic order by installedPackageId,
3012 and sadly our test (cabal/shadow) didn't pick this up because the
3013 lexicographic ordering happened to work for the test.  I've now fixed
3014 the test so it tries both orderings.
3015]
3016[Set more env variables when configuring libffi
3017Ian Lynagh <igloo@earth.li>**20100518185014
3018 We now tell it where to find ld, nm and ar
3019]
3020[Set the location of ar to be the in-tree ar on Windows
3021Ian Lynagh <igloo@earth.li>**20100518181556]
3022[Change another / to </> to avoid building paths containing \/
3023Ian Lynagh <igloo@earth.li>**20100518172015
3024 This will hopefully fix #2889.
3025]
3026[Fix #4074 (I hope).
3027Simon Marlow <marlowsd@gmail.com>**20100518113214
3028 Ignore-this: 73cd70f5bc6f5add5247b61985c03fc1
3029 
3030 1. allow multiple threads to call startTimer()/stopTimer() pairs
3031 2. disable the timer around fork() in forkProcess()
3032 
3033 A corresponding change to the process package is required.
3034]
3035[we don't have a gcc-lib in LIB_DIR any more
3036Simon Marlow <marlowsd@gmail.com>**20100401102351
3037 Ignore-this: f41acd2d8f8e6763aa8bd57a0b44a7e4
3038]
3039[In validate, use gmake if available; based on a patch from Gabor PALI
3040Ian Lynagh <igloo@earth.li>**20100517200654]
3041[Remove duplicate "./configure --help" output; fixes #4075
3042Ian Lynagh <igloo@earth.li>**20100516141206]
3043[Update various 'sh boot's to 'perl boot'
3044Ian Lynagh <igloo@earth.li>**20100516122609
3045 Spotted by Marco Túlio Gontijo e Silva
3046]
3047[add missing initialisation for eventBufMutex
3048Simon Marlow <marlowsd@gmail.com>**20100514094943
3049 Ignore-this: 7f75594a8cb54fbec5aebd46bb959f45
3050]
3051[Undo part of #4003 patch
3052Simon Marlow <marlowsd@gmail.com>**20100513142017
3053 Ignore-this: cb65db86a38a7e5ccee9f779e489d104
3054 We still need the workaround for when compiling HEAD with 6.12.2
3055 
3056]
3057[Fix makefile loop (#4050)
3058pho@cielonegro.org**20100507140707
3059 Ignore-this: 3a1cb13d0600977e74d17ac26cbef83d
3060 
3061 The libtool creates "libffi.dylib" and "libffi.5.dylib" but not "libffi.5.0.9.dylib". Having it in libffi_DYNAMIC_LIBS causes an infinite makefile loop.
3062]
3063[fix !TABLES_NEXT_TO_CODE
3064Simon Marlow <marlowsd@gmail.com>**20100510151934
3065 Ignore-this: fccb859b114bef1c3122c98e60af51
3066]
3067[looksLikeModuleName: allow apostrophe in module names (#4051)
3068Simon Marlow <marlowsd@gmail.com>**20100510094741
3069 Ignore-this: df9348f3ba90608bec57257b47672985
3070]
3071[add the proper library dependencies for GhcProfiled=YES
3072Simon Marlow <marlowsd@gmail.com>**20100506122118
3073 Ignore-this: 6236993aa308ab5b5e1e5ea5f65982a
3074]
3075[Fix Trac #4003: fix the knot-tying in checkHiBootIface
3076simonpj@microsoft.com**20100511075026
3077 Ignore-this: a9ce2a318386fdc8782848df84592002
3078 
3079 I had incorrectly "optimised" checkHiBootIface so that it forgot
3080 to update the "knot-tied" type environment.
3081 
3082 This patch fixes the HEAD
3083]
3084[Re-engineer the derived Ord instance generation code (fix Trac #4019)
3085simonpj@microsoft.com**20100510133333
3086 Ignore-this: 8fe46e4dad27fbee211a7928acf372c2
3087   
3088 As well as fixing #4019, I rejigged the way that Ord instances are
3089 generated, which should make them faster in general.  See the
3090 Note [Generating Ord instances].
3091 
3092 I tried to measure the performance difference from this change, but
3093 the #4019 fix only removes one conditional branch per iteration, and
3094 I couldn't measure a consistent improvement.  But still, tihs is
3095 better than before.
3096]
3097[Make arity of INLINE things consistent
3098simonpj@microsoft.com**20100510133005
3099 Ignore-this: 15e7abf803d1dcb3f4ca760d2d939d0d
3100 
3101 We eta-expand things with INLINE pragmas;
3102 see Note [Eta-expanding INLINE things].
3103 
3104 But I eta-expanded it the wrong amount when the function
3105 was overloaded.  Ooops.
3106]
3107[Compacting GC fix, we forgot to thread the new bq field of StgTSO.
3108Simon Marlow <marlowsd@gmail.com>**20100510082325
3109 Ignore-this: a079c8446e2ad53efff6fd95d0f3ac80
3110]
3111[Add version constraints for the boot packages; fixes trac #3852
3112Ian Lynagh <igloo@earth.li>**20100509175051
3113 When using the bootstrapping compiler, we now explicitly constrain
3114 the version of boot packages (Cabal, extensible-exceptions, etc) to the
3115 in-tree version, so that the build system is less fragile should the
3116 user have a newer version installed for the bootstrapping compiler.
3117]
3118[Don't include inter-package dependencies when compiling with stage 0; #4031
3119Ian Lynagh <igloo@earth.li>**20100509130511
3120 This fixes a problem when building with GHC 6.12 on Windows, where
3121 dependencies on stage 0 (bootstrapping compiler) packages have absolute
3122 paths c:/ghc/..., and make gets confused by the colon.
3123]
3124[Add a ghc.mk for bindisttest/
3125Ian Lynagh <igloo@earth.li>**20100508223911]
3126[Move some make variables around so they are available when cleaning
3127Ian Lynagh <igloo@earth.li>**20100508212405]
3128[Optimise checkremove a bit
3129Ian Lynagh <igloo@earth.li>**20100508202006]
3130[Improve the bindisttest Makefile
3131Ian Lynagh <igloo@earth.li>**20100508195450]
3132[Add tools to test that cleaning works properly
3133Ian Lynagh <igloo@earth.li>**20100508194105]
3134[Tweak the ghc-pkg finding code
3135Ian Lynagh <igloo@earth.li>**20100508125815
3136 It now understand the ghc-stage[123] names we use in-tree, and it won't
3137 go looking for any old ghc-pkg if it can't find the one that matches
3138 ghc.
3139]
3140[Add a way to show what cleaning would be done, without actually doing it
3141Ian Lynagh <igloo@earth.li>**20100508122438]
3142[Tidy up the "rm" flags in the build system
3143Ian Lynagh <igloo@earth.li>**20100508115745]
3144[Fix crash in nested callbacks (#4038)
3145Simon Marlow <marlowsd@gmail.com>**20100507093222
3146 Ignore-this: cade85e361534ce711865a4820276388
3147 Broken by "Split part of the Task struct into a separate struct
3148 InCall".
3149]
3150[Add $(GhcDynamic) knob, set to YES to get stage2 linked with -dynamic
3151Simon Marlow <marlowsd@gmail.com>**20100428205241
3152 Ignore-this: 1db8bccf92099785ecac39aebd27c92d
3153 Default currently NO.
3154 
3155 Validate passed with GhcDynamic=YES on x86/Linux here.
3156 
3157 The compiler is currently slower on x86 when linked -dynamic,
3158 because the GC inner loop has been adversely affected by -fPIC, I'm
3159 looking into how to fix it.
3160]
3161[omit "dyn" from the way appended to the __stginit label
3162Simon Marlow <marlowsd@gmail.com>**20100428204914
3163 Ignore-this: 14183f3defa9f2bde68fda6729b740bc
3164 When GHCi is linked dynamically, we still want to be able to load
3165 non-dynamic object files.
3166]
3167[improvements to findPtr(), a neat hack for browsing the heap in gdb
3168Simon Marlow <marlowsd@gmail.com>**20100506115427
3169 Ignore-this: ac57785bb3e13b97a5945f753f068738
3170]
3171[Fix +RTS -G1
3172Simon Marlow <marlowsd@gmail.com>**20100506110739
3173 Ignore-this: 86a5de39a94d3331a4ee1213f82be497
3174]
3175[Enable the "redundant specialise pragmas" warning; fixes trac #3855
3176Ian Lynagh <igloo@earth.li>**20100506175351]
3177[Find the correct external ids when there's a wrapper
3178simonpj@microsoft.com**20100506164135
3179 Ignore-this: 636266407b174b05b2b8646cc73062c0
3180 
3181 We were failing to externalise the wrapper id for a function
3182 that had one.
3183]
3184[Add a comment about pattern coercions
3185simonpj@microsoft.com**20100506164027
3186 Ignore-this: 17428089f3df439f65d892e23e8ed61a
3187]
3188[Comments only
3189simonpj@microsoft.com**20100506163829
3190 Ignore-this: 169167b6463873ab173cc5750c5be469
3191]
3192[Make a missing name in mkUsageInfo into a panic
3193simonpj@microsoft.com**20100506163813
3194 Ignore-this: b82ff1b8bf89f74f146db7cb5cc4c4d7
3195 
3196 We really want to know about this!
3197]
3198[Refactoring of hsXxxBinders
3199simonpj@microsoft.com**20100506163737
3200 Ignore-this: 97c6667625262b160f9746f7bea1c980
3201 
3202 This patch moves various functions that extract the binders
3203 from a HsTyClDecl, HsForeignDecl etc into HsUtils, and gives
3204 them consistent names.
3205]
3206[Fix Trac #3966: warn about useless UNPACK pragmas
3207simonpj@microsoft.com**20100506163337
3208 Ignore-this: 5beb24b686eda6113b614dfac8490df1
3209 
3210 Warning about useless UNPACK pragmas wasn't as easy as I thought.
3211 I did quite a bit of refactoring, which improved the code by refining
3212 the types somewhat.  In particular notice that in DataCon, we have
3213 
3214     dcStrictMarks   :: [HsBang]
3215     dcRepStrictness :: [StrictnessMarks]
3216 
3217 The former relates to the *source-code* annotation, the latter to
3218 GHC's representation choice.
3219]
3220[Make tcg_dus behave more sanely; fixes a mkUsageInfo panic
3221simonpj@microsoft.com**20100506162719
3222 Ignore-this: d000bca15b0e127e297378ded1bfb81b
3223 
3224 The tcg_dus field used to contain *uses* of type and class decls,
3225 but not *defs*.  That was inconsistent, and it really went wrong
3226 for Template Haskell bracket.  What happened was that
3227  foo = [d| data A = A
3228                   f :: A -> A
3229                   f x = x |]
3230 would find a "use" of A when processing the top level of the module,
3231 which in turn led to a mkUsageInfo panic in MkIface.  The cause was
3232 the fact that the tcg_dus for the nested quote didn't have defs for
3233 A.
3234]
3235[Add a HsExplicitFlag to SpliceDecl, to improve Trac #4042
3236simonpj@microsoft.com**20100506161523
3237 Ignore-this: e4e563bac2fd831cc9e94612f5b4fa9d
3238 
3239 The issue here is that
3240 
3241     g :: A -> A
3242     f
3243     data A = A
3244 
3245 is treated as if you'd written $(f); that is the call of
3246 f is a top-level Template Haskell splice.  This patch
3247 makes sure that we *first* check the -XTemplateHaskellFlag
3248 and bleat about a parse error if it's off.  Othewise we
3249 get strange seeing "A is out of scope" errors.
3250]
3251[Change an assert to a warn
3252simonpj@microsoft.com**20100506161111
3253 Ignore-this: 739a4fb4c7940376b0f2c8ad52a1966c
3254 
3255 This is in the constraint simplifier which I'm about
3256 to rewrite, so I'm hoping the assert isn't fatal!
3257]
3258[Tidy up debug print a little
3259simonpj@microsoft.com**20100506161027
3260 Ignore-this: bd5492878e06bee1cddcbb3fc4df66d8
3261]
3262[Remove useless UNPACK pragmas
3263simonpj@microsoft.com**20100506161012
3264 Ignore-this: 3e5ab1a7cf58107034412a798bc214e5
3265]
3266[Add WARNM2 macro, plus some refactoring
3267simonpj@microsoft.com**20100506160808
3268 Ignore-this: 2ab4f1f0b5d94be683036e77aec09255
3269]
3270[Use -Wwarn for the binary package, becuase it has redundant UNPACK pragmas
3271simonpj@microsoft.com**20100506160750
3272 Ignore-this: cf0d3a11473e28bfce9602e716e69a5f
3273]
3274[Fix Trac #3966: warn about unused UNPACK pragmas
3275simonpj@microsoft.com**20100409201812
3276 Ignore-this: c96412596b39c918b5fb9b3c39ce2119
3277]
3278[Fix Trac #3953: fail earlier when using a bogus quasiquoter
3279simonpj@microsoft.com**20100409201748
3280 Ignore-this: ef48e39aa932caed538643985234f043
3281]
3282[Fix Trac #3965: tighten conditions when deriving Data
3283simonpj@microsoft.com**20100409184420
3284 Ignore-this: 96f7d7d2da11565d26b465d7d0497ac9
3285 
3286 It's tricky to set up the context for a Data instance.  I got it wrong
3287 once, and fixed it -- hence the "extra_constraints" in
3288 TcDeriv.inferConstraints. 
3289 
3290 But it still wasn't right!  The tricky bit is that dataCast1 is only
3291 generated when T :: *->*, and dataCast2 when T :: *->*->*. (See
3292 the code in TcGenDeriv for dataCastX.
3293]
3294[Fix Trac #3964: view patterns in DsArrows
3295simonpj@microsoft.com**20100409165557
3296 Ignore-this: d823c182831d5e2e592e995b16180e2f
3297 
3298 Just a missing case; I've eliminated the catch-all so
3299 that we get a warning next time we extend HsPat
3300]
3301[Fix Trac #3955: renamer and type variables
3302simonpj@microsoft.com**20100409163710
3303 Ignore-this: bd5ec64d76c0f583bf5f224792bf294c
3304 
3305 The renamer wasn't computing the free variables of a type declaration
3306 properly.  This patch refactors a bit, and makes it more robust,
3307 fixing #3955 and several other closely-related bugs.  (We were
3308 omitting some free variables and that could just possibly lead to a
3309 usage-version tracking error.
3310]
3311[Layout only
3312simonpj@microsoft.com**20100409163506
3313 Ignore-this: 1f14990b5aa0b9821b84452fb34e9f41
3314]
3315[Give a better deprecated message for INCLUDE pragmas; fixes #3933
3316Ian Lynagh <igloo@earth.li>**20100506130910
3317 We now have a DeprecatedFullText constructor, so we can override the
3318 "-#include is deprecated: " part of the warning.
3319]
3320[De-haddock a comment that confuses haddock
3321Ian Lynagh <igloo@earth.li>**20100506123607]
3322[Fix comment to not confuse haddock
3323Ian Lynagh <igloo@earth.li>**20100506113642]
3324[Detect EOF when trying to parse a string in hp2ps
3325Ian Lynagh <igloo@earth.li>**20100506000830]
3326[Make the demand analyser sdd demands for strict constructors
3327simonpj@microsoft.com**20100505200936
3328 Ignore-this: eb32632adbc354eb7a5cf884c263e0d3
3329 
3330 This opportunity was spotted by Roman, and is documented in
3331 Note [Add demands for strict constructors] in DmdAnal.
3332]
3333[Fix interaction of exprIsCheap and the lone-variable inlining check
3334simonpj@microsoft.com**20100505200723
3335 Ignore-this: f3cb65085c5673a99153d5d7b6559ab1
3336 
3337 See Note [Interaction of exprIsCheap and lone variables] in CoreUnfold
3338 
3339 This buglet meant that a nullary definition with an INLINE pragma
3340 counter-intuitively didn't get inlined at all.  Roman identified
3341 the bug.
3342]
3343[Matching cases in SpecConstr and Rules
3344simonpj@microsoft.com**20100505200543
3345 Ignore-this: f5c28c780fbf8badce84c6fdc9aa1779
3346 
3347 This patch has zero effect.  It includes comments,
3348 a bit of refactoring, and a tiny bit of commment-out
3349 code go implement the "matching cases" idea below.
3350 
3351 In the end I've left it disabled because while I think
3352 it does no harm I don't think it'll do any good either.
3353 But I didn't want to lose the idea totally. There's
3354 a thread called "Storable and constant memory" on
3355 the libraries@haskell.org list (Apr 2010) about it.
3356 
3357 Note [Matching cases]
3358 ~~~~~~~~~~~~~~~~~~~~~
3359 {- NOTE: This idea is currently disabled.  It really only works if
3360          the primops involved are OkForSpeculation, and, since
3361         they have side effects readIntOfAddr and touch are not.
3362         Maybe we'll get back to this later .  -}
3363   
3364 Consider
3365    f (case readIntOffAddr# p# i# realWorld# of { (# s#, n# #) ->
3366       case touch# fp s# of { _ ->
3367       I# n# } } )
3368 This happened in a tight loop generated by stream fusion that
3369 Roman encountered.  We'd like to treat this just like the let
3370 case, because the primops concerned are ok-for-speculation.
3371 That is, we'd like to behave as if it had been
3372    case readIntOffAddr# p# i# realWorld# of { (# s#, n# #) ->
3373    case touch# fp s# of { _ ->
3374    f (I# n# } } )
3375]
3376[Comments only
3377simonpj@microsoft.com**20100504163629
3378 Ignore-this: 3be12df04714aa820bce706b5dc8a9cb
3379]
3380[Comments only
3381simonpj@microsoft.com**20100504163529
3382 Ignore-this: 791e2fd39c7d880ce1dc80ebdf3a5398
3383]
3384[Comments only
3385simonpj@microsoft.com**20100504163457
3386 Ignore-this: f19e9ffeb3d65770b1595bca5f97a59d
3387]
3388[Comments only (about type families)
3389simonpj@microsoft.com**20100417145032
3390 Ignore-this: dd39425ef2155d52dbf55a4d5fd97cb8
3391]
3392[Fix hp2ps when the .hp file has large string literals
3393Ian Lynagh <igloo@earth.li>**20100505191921]
3394[In build system, call package-config after including package data
3395Ian Lynagh <igloo@earth.li>**20100504225035
3396 Otherwise the $1_$2_HC_OPTS variable gets clobbered.
3397]
3398[runghc: flush stdout/stderr on an exception (#3890)
3399Simon Marlow <marlowsd@gmail.com>**20100505133848
3400 Ignore-this: 224c1898cec64cb1c94e0d7033e7590e
3401]
3402[Remove the Unicode alternative for ".." (#3894)
3403Simon Marlow <marlowsd@gmail.com>**20100505121202
3404 Ignore-this: 2452cd67281667106f9169747b6d784f
3405]
3406[tidyup; no functional changes
3407Simon Marlow <marlowsd@gmail.com>**20100505115015
3408 Ignore-this: d0787e5cdeef1dee628682fa0a46019
3409]
3410[Make the running_finalizers flag task-local
3411Simon Marlow <marlowsd@gmail.com>**20100505114947
3412 Ignore-this: 345925d00f1dca203941b3c5d84c90e1
3413 Fixes a bug reported by Lennart Augustsson, whereby we could get an
3414 incorrect error from the RTS about re-entry from a finalizer,
3415]
3416[add a MAYBE_GC() in killThread#, fixes throwto003(threaded2) looping
3417Simon Marlow <marlowsd@gmail.com>**20100505114746
3418 Ignore-this: efea04991d6feed04683a42232fc85da
3419]
3420[Allow filepath-1.2.*
3421Simon Marlow <marlowsd@gmail.com>**20100505101139
3422 Ignore-this: 1b5580cd9cd041ec48f40cd37603326a
3423]
3424[BlockedOnMsgThrowTo is possible in resurrectThreads (#4030)
3425Simon Marlow <marlowsd@gmail.com>**20100505094534
3426 Ignore-this: ac24a22f95ffeaf480187a1620fdddb2
3427]
3428[Don't raise a throwTo when the target is masking and BlockedOnBlackHole
3429Simon Marlow <marlowsd@gmail.com>**20100505094506
3430 Ignore-this: 302616931f61667030d77ddfbb02374e
3431]
3432[Fix build with GHC 6.10
3433Ian Lynagh <igloo@earth.li>**20100504180302
3434 In GHC 6.10, intersectionWith is (a -> b -> a) instead of (a -> b -> c),
3435 so we need to jump through some hoops to get the more general type.
3436]
3437[The libffi patches are no longer needed
3438Ian Lynagh <igloo@earth.li>**20100504171603]
3439[Use the in-tree windres; fixes trac #4032
3440Ian Lynagh <igloo@earth.li>**20100504170941]
3441[Print unfoldings on lambda-bound variables
3442Simon PJ <simonpj@microsoft.com>**20100503181822
3443 Ignore-this: 2fd5a7502cc6273d96258e0914f0f8cd
3444 
3445 ...in the unusual case where they have one;
3446 see Note [Case binders and join points] in Simplify.lhs
3447]
3448[Replace FiniteMap and UniqFM with counterparts from containers.
3449Milan Straka <fox@ucw.cz>**20100503171315
3450 Ignore-this: a021972239163dbf728284b19928cebb
3451 
3452 The original interfaces are kept. There is small performance improvement:
3453 - when compiling for five nofib, we get following speedups:
3454     Average                -----           -2.5%
3455     Average                -----           -0.6%
3456     Average                -----           -0.5%
3457     Average                -----           -5.5%
3458     Average                -----          -10.3%
3459 - when compiling HPC ten times, we get:
3460     switches                          oldmaps   newmaps
3461     -O -fasm                          117.402s  116.081s (98.87%)
3462     -O -fasm -fregs-graph             119.993s  118.735s (98.95%)
3463     -O -fasm -fregs-iterative         120.191s  118.607s (98.68%)
3464]
3465[Make the demand analyser take account of lambda-bound unfoldings
3466Simon PJ <simonpj@microsoft.com>**20100503151630
3467 Ignore-this: 2ee8e27d4df2debfc79e6b8a17c32bc1
3468 
3469 This is a long-standing lurking bug. See Note [Lamba-bound unfoldings]
3470 in DmdAnal.
3471 
3472 I'm still not really happy with this lambda-bound-unfolding stuff.
3473]
3474[Fix dynamic libs on OS X, and enable them by default
3475Ian Lynagh <igloo@earth.li>**20100503150302]
3476[Switch back to using bytestring from the darcs repo; partially fixes #3855
3477Ian Lynagh <igloo@earth.li>**20100502113458]
3478[Fix some cpp warnings when building on FreeBSD; patch from Gabor PALI
3479Ian Lynagh <igloo@earth.li>**20100428150700]
3480[Fix "make 2"
3481Ian Lynagh <igloo@earth.li>**20100427162212
3482 The new Makefile logic was enabling the stage 1 rules when stage=2,
3483 so "make 2" was rebuilding stage 1.
3484]
3485[Inplace programs depend on their shell wrappers
3486Ian Lynagh <igloo@earth.li>**20100427160038]
3487[--make is now the default (#3515), and -fno-code works with --make (#3783)
3488Simon Marlow <marlowsd@gmail.com>**20100427122851
3489 Ignore-this: 33330474fa4703f32bf9997462b4bf3c
3490 If the command line contains any Haskell source files, then we behave
3491 as if --make had been given.
3492 
3493 The meaning of the -c flag has changed (back): -c now selects one-shot
3494 compilation, but stops before linking.  However, to retain backwards
3495 compatibility, -c is still allowed with --make, and means the same as
3496 --make -no-link.  The -no-link flag has been un-deprecated.
3497 
3498 -fno-code is now allowed with --make (#3783); the fact that it was
3499 disabled before was largely accidental, it seems.  We also had some
3500 regressions in this area: it seems that -fno-code was causing a .hc
3501 file to be emitted in certain cases.  I've tidied up the code, there
3502 was no need for -fno-code to be a "mode" flag, as far as I can tell.
3503 
3504 -fno-code does not emit interface files, nor does it do recompilation
3505 checking, as suggested in #3783.  This would make Haddock emit
3506 interface files, for example, and I'm fairly sure we don't want to do
3507 that.  Compiling with -fno-code is pretty quick anyway, perhaps we can
3508 get away without recompilation checking.
3509]
3510[remove duplicate docs for -e in --help output (#4010)
3511Simon Marlow <marlowsd@gmail.com>**20100426140642
3512 Ignore-this: 187ff893ba8ffa0ec127867a7590e38d
3513]
3514[workaround for #4003, fixes HEAD build with 6.12.2
3515Simon Marlow <marlowsd@gmail.com>**20100426103428
3516 Ignore-this: c4bc445dc8052d4e6efef3f1daf63562
3517]
3518[Make sure all the clean rules are always included
3519Ian Lynagh <igloo@earth.li>**20100424181823
3520 In particular, this fixes a problem where stage3 bits weren't being cleaned
3521]
3522[Correct the name of the amd64/FreeBSD platform in PlatformSupportsSharedLibs
3523Ian Lynagh <igloo@earth.li>**20100424132830
3524 We weren't getting sharedlibs on amd64/FreeBSD because of this
3525]
3526[Include DPH docs in bindists
3527Ian Lynagh <igloo@earth.li>**20100424123101]
3528[reinstate eta-expansion during SimplGently, to fix inlining of sequence_
3529Simon Marlow <marlowsd@gmail.com>**20100423124853
3530 Ignore-this: 4fa0fd5bafe0d6b58fc81076f50d5f8d
3531]
3532[fix 64-bit value for W_SHIFT, which thankfully appears to be not used
3533Simon Marlow <marlowsd@gmail.com>**20100422213605
3534 Ignore-this: 525c062d2456c224ec8d0e083edd3b55
3535]
3536[Add missing constant folding and optimisation for unsigned division
3537Simon Marlow <marlowsd@gmail.com>**20100422213443
3538 Ignore-this: fb10d1cda0852fab0cbcb47247498fb3
3539 Noticed by Denys Rtveliashvili <rtvd@mac.com>, see #4004
3540]
3541[Fix the GHC API link in the main doc index.html
3542Ian Lynagh <igloo@earth.li>**20100422213226]
3543[Give the right exit code in darcs-all
3544Ian Lynagh <igloo@earth.li>**20100421171339
3545 Our END block was calling system, which alters $?. So now we save and
3546 restore it.
3547]
3548[Use StgWord64 instead of ullong
3549Ian Lynagh <igloo@earth.li>**20100421162336
3550 This patch also fixes ullong_format_string (renamed to showStgWord64)
3551 so that it works with values outside the 32bit range (trac #3979), and
3552 simplifies the without-commas case.
3553]
3554[Implement try10Times in Makefile
3555Ian Lynagh <igloo@earth.li>**20100420165909
3556 Avoid using seq, as FreeBSD has jot instead.
3557]
3558[Fix crash in non-threaded RTS on Windows
3559Simon Marlow <marlowsd@gmail.com>**20100420122125
3560 Ignore-this: 28b0255a914a8955dce02d89a7dfaca
3561 The tso->block_info field is now overwritten by pushOnRunQueue(), but
3562 stg_block_async_info was assuming that it still held a pointer to the
3563 StgAsyncIOResult.  We must therefore save this value somewhere safe
3564 before putting the TSO on the run queue.
3565]
3566[Expand the scope of the event_buf_mutex to cover io_manager_event
3567Simon Marlow <marlowsd@gmail.com>**20100420122026
3568 Ignore-this: 185a6d84f7d4a35997f10803f6dacef1
3569 I once saw a failure that I think was due to a race on
3570 io_manager_event, this should fix it.
3571]
3572[Flags -auto and -auto-all operate only on functions not marked INLINE.
3573Milan Straka <fox@ucw.cz>**20100331191050
3574 Ignore-this: 3b63580cfcb3c33d62ad697c36d94d05
3575]
3576[Spelling correction for LANGUAGE pragmas
3577Max Bolingbroke <batterseapower@hotmail.com>**20100413192825
3578 Ignore-this: 311b51ba8d43f6c7fd32f48db9a88dee
3579]
3580[Update the user guide so it talks about the newer "do rec" notation everywhere
3581Ian Lynagh <igloo@earth.li>**20100416205416
3582 Some of the problems highlighted in trac #3968.
3583]
3584[Fix typo
3585Ian Lynagh <igloo@earth.li>**20100416205412]
3586[Fix Trac #3950: unifying types of different kinds
3587simonpj@microsoft.com**20100412151845
3588 Ignore-this: d145b9de5ced136ef2c39f3ea4a04f4a
3589 
3590 I was assuming that the unifer only unified types of the
3591 same kind, but now we can "defer" unsolved constraints that
3592 invariant no longer holds.  Or at least is's more complicated
3593 to ensure. 
3594 
3595 This patch takes the path of not assuming the invariant, which
3596 is simpler and more robust.  See
3597 Note [Mismatched type lists and application decomposition]
3598]
3599[Fix Trac #3943: incorrect unused-variable warning
3600simonpj@microsoft.com**20100412151630
3601 Ignore-this: 52459f2b8b02c3cb120abe674dc9a060
3602 
3603 In fixing this I did the usual little bit of refactoring
3604]
3605[Convert boot and boot-pkgs to perl
3606Ian Lynagh <igloo@earth.li>**20100415143919
3607 This stops us having to worry about sh/sed/... portability.
3608]
3609[Use $(MAKE), not make, when recursively calling make
3610Ian Lynagh <igloo@earth.li>**20100415121453]
3611[Remove the ghc_ge_609 makefile variables
3612Ian Lynagh <igloo@earth.li>**20100412235658
3613 They are now guaranteed to be YES
3614]
3615[Increase the minimum version number required to 6.10 in configure.ac
3616Ian Lynagh <igloo@earth.li>**20100412235313]
3617[The bootstrapping compiler is now required to be > 609
3618Ian Lynagh <igloo@earth.li>**20100409161046]
3619[Handle IND_STATIC in isRetainer
3620Ian Lynagh <igloo@earth.li>**20100409104207
3621 IND_STATIC used to be an error, but at the moment it can happen
3622 as isAlive doesn't look through IND_STATIC as it ignores static
3623 closures. See trac #3956 for a program that hit this error.
3624]
3625[Add Data and Typeable instances to HsSyn
3626David Waern <david.waern@gmail.com>**20100330011020
3627 Ignore-this: c3f2717207b15539fea267c36b686e6a
3628 
3629 The instances (and deriving declarations) have been taken from the ghc-syb
3630 package.
3631]
3632[Fix for derefing ThreadRelocated TSOs in MVar operations
3633Simon Marlow <marlowsd@gmail.com>**20100407092824
3634 Ignore-this: 94dd7c68a6094eda667e2375921a8b78
3635]
3636[sanity check fix
3637Simon Marlow <marlowsd@gmail.com>**20100407092746
3638 Ignore-this: 9c18cd5f5393e5049015ca52e62a1269
3639]
3640[get the reg liveness right in the putMVar# heap check
3641Simon Marlow <marlowsd@gmail.com>**20100407092724
3642 Ignore-this: b1ba07a59ecfae00e9a1f8391741abc
3643]
3644[initialise the headers of MSG_BLACKHOLE objects properly
3645Simon Marlow <marlowsd@gmail.com>**20100407081712
3646 Ignore-this: 183dcd0ca6a395d08db2be12b02bdd79
3647]
3648[initialise the headers of MVAR_TSO_QUEUE objects properly
3649Simon Marlow <marlowsd@gmail.com>**20100407081514
3650 Ignore-this: 4b4a2f30cf2fb69ca4128c41744687bb
3651]
3652[undo debugging code
3653Simon Marlow <marlowsd@gmail.com>**20100406142740
3654 Ignore-this: 323c2248f817b6717c19180482fc4b00
3655]
3656[putMVar#: fix reg liveness in the heap check
3657Simon Marlow <marlowsd@gmail.com>**20100406135832
3658 Ignore-this: cddd2c7807ac7612c9b2c4c0d384d284
3659]
3660[account for the new BLACKHOLEs in the GHCi debugger
3661Simon Marlow <marlowsd@gmail.com>**20100406133406
3662 Ignore-this: 4d4aeb4bbada3f50dc1fb0123f565e8f
3663]
3664[don't forget to deRefTSO() in tryWakeupThread()
3665Simon Marlow <marlowsd@gmail.com>**20100406130411
3666 Ignore-this: 171d57c4f8653835dec0b69f9be9881c
3667]
3668[Fix bug in popRunQueue
3669Simon Marlow <marlowsd@gmail.com>**20100406091453
3670 Ignore-this: 9d3cec8f18f5c5cbd51751797386eb6f
3671]
3672[fix bug in migrateThread()
3673Simon Marlow <marlowsd@gmail.com>**20100401105840
3674 Ignore-this: 299bcf0d1ea0f8865f3e845eb93d2ad3
3675]
3676[Remove the IND_OLDGEN and IND_OLDGEN_PERM closure types
3677Simon Marlow <marlowsd@gmail.com>**20100401093519
3678 Ignore-this: 95f2480c8a45139835eaf5610217780b
3679 These are no longer used: once upon a time they used to have different
3680 layout from IND and IND_PERM respectively, but that is no longer the
3681 case since we changed the remembered set to be an array of addresses
3682 instead of a linked list of closures.
3683]
3684[Change the representation of the MVar blocked queue
3685Simon Marlow <marlowsd@gmail.com>**20100401091605
3686 Ignore-this: 20a35bfabacef2674df362905d7834fa
3687 
3688 The list of threads blocked on an MVar is now represented as a list of
3689 separately allocated objects rather than being linked through the TSOs
3690 themselves.  This lets us remove a TSO from the list in O(1) time
3691 rather than O(n) time, by marking the list object.  Removing this
3692 linear component fixes some pathalogical performance cases where many
3693 threads were blocked on an MVar and became unreachable simultaneously
3694 (nofib/smp/threads007), or when sending an asynchronous exception to a
3695 TSO in a long list of thread blocked on an MVar.
3696 
3697 MVar performance has actually improved by a few percent as a result of
3698 this change, slightly to my surprise.
3699 
3700 This is the final cleanup in the sequence, which let me remove the old
3701 way of waking up threads (unblockOne(), MSG_WAKEUP) in favour of the
3702 new way (tryWakeupThread and MSG_TRY_WAKEUP, which is idempotent).  It
3703 is now the case that only the Capability that owns a TSO may modify
3704 its state (well, almost), and this simplifies various things.  More of
3705 the RTS is based on message-passing between Capabilities now.
3706]
3707[eliminate some duplication with a bit of CPP
3708Simon Marlow <marlowsd@gmail.com>**20100330154355
3709 Ignore-this: 838f7d341f096ca14c86ab9c81193e36
3710]
3711[Make ioManagerDie() idempotent
3712Simon Marlow <marlowsd@gmail.com>**20100401100705
3713 Ignore-this: a5996b43cdb2e2d72e6e971d7ea925fb
3714 Avoids screeds of "event buffer overflowed; event dropped" in
3715 conc059(threaded1).
3716]
3717[Move a thread to the front of the run queue when another thread blocks on it
3718Simon Marlow <marlowsd@gmail.com>**20100329144521
3719 Ignore-this: c518ff0d41154680edc811d891826a29
3720 This fixes #3838, and was made possible by the new BLACKHOLE
3721 infrastructure.  To allow reording of the run queue I had to make it
3722 doubly-linked, which entails some extra trickiness with regard to
3723 GC write barriers and suchlike.
3724]
3725[remove non-existent MUT_CONS symbols
3726Simon Marlow <marlowsd@gmail.com>**20100330152600
3727 Ignore-this: 885628257a9d03f2ece2a754d993014a
3728]
3729[change throwTo to use tryWakeupThread rather than unblockOne
3730Simon Marlow <marlowsd@gmail.com>**20100329144613
3731 Ignore-this: 10ad4965e6c940db71253f1c72218bbb
3732]
3733[tiny GC optimisation
3734Simon Marlow <marlowsd@gmail.com>**20100329144551
3735 Ignore-this: 9e095b9b73fff0aae726f9937846ba92
3736]
3737[New implementation of BLACKHOLEs
3738Simon Marlow <marlowsd@gmail.com>**20100329144456
3739 Ignore-this: 96cd26793b4e6ab9ddd0d59aae5c2f1d
3740 
3741 This replaces the global blackhole_queue with a clever scheme that
3742 enables us to queue up blocked threads on the closure that they are
3743 blocked on, while still avoiding atomic instructions in the common
3744 case.
3745 
3746 Advantages:
3747 
3748  - gets rid of a locked global data structure and some tricky GC code
3749    (replacing it with some per-thread data structures and different
3750    tricky GC code :)
3751 
3752  - wakeups are more prompt: parallel/concurrent performance should
3753    benefit.  I haven't seen anything dramatic in the parallel
3754    benchmarks so far, but a couple of threading benchmarks do improve
3755    a bit.
3756 
3757  - waking up a thread blocked on a blackhole is now O(1) (e.g. if
3758    it is the target of throwTo).
3759 
3760  - less sharing and better separation of Capabilities: communication
3761    is done with messages, the data structures are strictly owned by a
3762    Capability and cannot be modified except by sending messages.
3763 
3764  - this change will utlimately enable us to do more intelligent
3765    scheduling when threads block on each other.  This is what started
3766    off the whole thing, but it isn't done yet (#3838).
3767 
3768 I'll be documenting all this on the wiki in due course.
3769 
3770]
3771[Fix warnings (allow pushOnRunQueue() to not be inlined)
3772Simon Marlow <marlowsd@gmail.com>**20100401114559
3773 Ignore-this: f40bfbfad70a5165a946d11371605b7d
3774]
3775[remove out of date comment
3776Simon Marlow <marlowsd@gmail.com>**20100401105853
3777 Ignore-this: 26af88dd418ee0bcda7223b3b7e4e8d2
3778]
3779[tidy up spacing in stderr traces
3780Simon Marlow <marlowsd@gmail.com>**20100326163122
3781 Ignore-this: 16558b0433a274be217d4bf39aa4946
3782]
3783[Fix an assertion that was not safe when running in parallel
3784Simon Marlow <marlowsd@gmail.com>**20100325143656
3785 Ignore-this: cad08fb8900eb3a475547af0189fcc47
3786]
3787[Never jump directly to a thunk's entry code, even if it is single-entry
3788Simon Marlow <marlowsd@gmail.com>**20100325114847
3789 Ignore-this: 938da172c06a97762ef605c8fccfedf1
3790 I don't think this fixes any bugs as we don't have single-entry thunks
3791 at the moment, but it could cause problems for parallel execution if
3792 we ever did re-introduce update avoidance.
3793]
3794[Rename forgotten -dverbose-simpl to -dverbose-core2core in the docs.
3795Milan Straka <fox@ucw.cz>**20100331153626
3796 Ignore-this: 2da58477fb96e1cfb80f37dddd7c422c
3797]
3798[Add -pa and -V to the documentation of time profiling options.
3799Milan Straka <fox@ucw.cz>**20100329191121
3800 Ignore-this: be74d216481ec5a19e5f40f85e6e3d65
3801]
3802[Keep gcc 4.5 happy
3803Simon Marlow <marlowsd@gmail.com>**20100330120425
3804 Ignore-this: 7811878cc2bd1ce9cfbb5bf102fe3454
3805]
3806[Fix warning compiling Linker.c for PPC Mac
3807naur@post11.tele.dk**20100403182355
3808 Ignore-this: e2d2448770c9714ce17dd6cf3e297063
3809 The warning message eliminated is:
3810 > rts/Linker.c:4756:0:
3811 >      warning: nested extern declaration of 'symbolsWithoutUnderscore'
3812]
3813[Fix error compiling AsmCodeGen.lhs for PPC Mac (mkRtsCodeLabel)
3814naur@post11.tele.dk**20100403181656
3815 Ignore-this: deb7524ea7852a15a2ac0849c8c82f74
3816 The error messages eliminated are:
3817 > compiler/nativeGen/AsmCodeGen.lhs:875:31:
3818 >     Not in scope: `mkRtsCodeLabel'
3819 > compiler/nativeGen/AsmCodeGen.lhs:879:31:
3820 >     Not in scope: `mkRtsCodeLabel'
3821 > compiler/nativeGen/AsmCodeGen.lhs:883:31:
3822 >     Not in scope: `mkRtsCodeLabel'
3823]
3824[Fix error compiling AsmCodeGen.lhs for PPC Mac (DestBlockId)
3825naur@post11.tele.dk**20100403180643
3826 Ignore-this: 71e833e94ed8371b2ffabc2cf80bf585
3827 The error message eliminated is:
3828 > compiler/nativeGen/AsmCodeGen.lhs:637:16:
3829 >     Not in scope: data constructor `DestBlockId'
3830]
3831[Fix boot-pkgs's sed usage to work with Solaris's sed
3832Ian Lynagh <igloo@earth.li>**20100401153441]
3833[Pass "-i org.haskell.GHC" to packagemaker when building the OS X installer
3834Ian Lynagh <igloo@earth.li>**20100331144707
3835 This seems to fix this failure:
3836 [...]
3837 ** BUILD SUCCEEDED **
3838 rm -f -f GHC-system.pmdoc/*-contents.xml
3839 /Developer/usr/bin/packagemaker -v --doc GHC-system.pmdoc\
3840              -o /Users/ian/to_release/ghc-6.12.1.20100330/GHC-6.12.1.20100330-i386.pkg
3841 2010-03-31 15:08:15.695 packagemaker[13909:807] Setting to : 0 (null)
3842 2010-03-31 15:08:15.709 packagemaker[13909:807] Setting to : 0 org.haskell.glasgowHaskellCompiler.ghc.pkg
3843 2010-03-31 15:08:15.739 packagemaker[13909:807] relocate: (null) 0
3844 2010-03-31 15:08:15.740 packagemaker[13909:807] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSXMLDocument initWithXMLString:options:error:]: nil argument'
3845 2010-03-31 15:08:15.741 packagemaker[13909:807] Stack: (
3846     2511962091,
3847     2447007291,
3848     2511961547,
3849     2511961610,
3850     2432803204,
3851     453371,
3852     447720,
3853     436209,
3854     435510,
3855     9986,
3856     9918
3857 )
3858 make[1]: *** [framework-pkg] Trace/BPT trap
3859 make: *** [framework-pkg] Error 2
3860]
3861[Use machdepCCOpts when compiling the file to toggle -(no-)rtsopts
3862Ian Lynagh <igloo@earth.li>**20100331161302
3863 Should fix toggling on OS X "Snow Leopard". Diagnosed by Roman Leshchinskiy.
3864]
3865[Avoid a non-portable use of tar reported by Roman Leshchinskiy
3866Ian Lynagh <igloo@earth.li>**20100330145802]
3867[Don't install EXTRA_PACKAGES by default
3868Simon Marlow <marlowsd@gmail.com>**20100330142714
3869 Ignore-this: d4cc8f87a6de8d9d1d6dc9b77130b3
3870]
3871[fix a non-portable printf format
3872Simon Marlow <marlowsd@gmail.com>**20100330134437
3873 Ignore-this: d41c23c54ec29654cb2049de1e588570
3874]
3875[avoid single quote in #error
3876Simon Marlow <marlowsd@gmail.com>**20100330120346
3877 Ignore-this: 663f39e7a27fead2f648fbf22d345bb4
3878]
3879[use FMT_Word64 instead of locally-defined version
3880Simon Marlow <marlowsd@gmail.com>**20100330114650
3881 Ignore-this: 82697b8095dffb3a8e196c687006ece0
3882]
3883[remove old/unused DotnetSupport and GhcLibsWithUnix
3884Simon Marlow <marlowsd@gmail.com>**20100330123732
3885 Ignore-this: c68814868b3671abdc369105bbeafe6c
3886]
3887[fix return type cast in f.i.wrapper when using libffi (#3516)
3888Simon Marlow <marlowsd@gmail.com>**20100329154220
3889 Ignore-this: f898eb8c9ae2ca2009e539735b92c438
3890 
3891 Original fix submitted by
3892   Sergei Trofimovich <slyfox@community.haskell.org>
3893 modified by me:
3894  - exclude 64-bit types
3895  - compare uniques, not strings
3896  - #include "ffi.h" is conditional
3897]
3898[libffi: install 'ffitarget.h' header as sole 'ffi.h' is unusable
3899Simon Marlow <marlowsd@gmail.com>**20100329135734
3900 Ignore-this: f9b555ea289d8df1aa22cb6faa219a39
3901 Submitted by: Sergei Trofimovich <slyfox@community.haskell.org>
3902 Re-recorded against HEAD.
3903]
3904[avoid a fork deadlock (see comments)
3905Simon Marlow <marlowsd@gmail.com>**20100329132329
3906 Ignore-this: 3377f88b83bb3b21e42d7fc5f0d866f
3907]
3908[tidy up the end of the all_tasks list after forking
3909Simon Marlow <marlowsd@gmail.com>**20100329132253
3910 Ignore-this: 819d679875be5f344e816210274d1c29
3911]
3912[Add a 'setKeepCAFs' external function (#3900)
3913Simon Marlow <marlowsd@gmail.com>**20100329110036
3914 Ignore-this: ec532a18cad4259a09847b0b9ae2e1d2
3915]
3916[Explicitly check whether ar supports the @file syntax
3917Ian Lynagh <igloo@earth.li>**20100329123325
3918 rather than assuming that all GNU ar's do.
3919 Apparently OpenBSD's older version doesn't.
3920]
3921[Fix the format specifier for Int64/Word64 on Windows
3922Ian Lynagh <igloo@earth.li>**20100327182126
3923 mingw doesn't understand %llu/%lld - it treats them as 32-bit rather
3924 than 64-bit. We use %I64u/%I64d instead.
3925]
3926[Fix the ghci startmenu item
3927Ian Lynagh <igloo@earth.li>**20100326235934
3928 I'm not sure what changed, but it now doesn't work for me without
3929 the "Start in" field being set.
3930]
3931[Fix paths to docs in "Start Menu" entries in Windows installer; fixes #3847
3932Ian Lynagh <igloo@earth.li>**20100326155917]
3933[Add a licence file for the Windows installer to use
3934Ian Lynagh <igloo@earth.li>**20100326155130]
3935[Add gcc-g++ to the inplace mingw installation; fixes #3893
3936Ian Lynagh <igloo@earth.li>**20100326154714]
3937[Add the licence file to the Windows installer. Fixes #3934
3938Ian Lynagh <igloo@earth.li>**20100326152449]
3939[Quote the paths to alex and happy in configure
3940Ian Lynagh <igloo@earth.li>**20100325143449
3941 Ignore-this: d6d6e1a250f88985bbeea760e63a79db
3942]
3943[Use </> rather than ++ "/"
3944Ian Lynagh <igloo@earth.li>**20100325133237
3945 This stops us generating paths like
3946     c:\foo\/ghc460_0/ghc460_0.o
3947 which windres doesn't understand.
3948]
3949[Append $(exeext) to utils/ghc-pkg_dist_PROG
3950Ian Lynagh <igloo@earth.li>**20100324233447
3951 Fixes bindist creation
3952]
3953[A sanity check
3954Simon Marlow <marlowsd@gmail.com>**20100325110500
3955 Ignore-this: 3b3b76d898c822456857e506b7531e65
3956]
3957[do_checks: do not set HpAlloc if the stack check fails
3958Simon Marlow <marlowsd@gmail.com>**20100325110328
3959 Ignore-this: 899ac8c29ca975d03952dbf4608d758
3960 
3961 This fixes a very rare heap corruption bug, whereby
3962 
3963  - a context switch is requested, which sets HpLim to zero
3964    (contextSwitchCapability(), called by the timer signal or
3965    another Capability).
3966 
3967  - simultaneously a stack check fails, in a code fragment that has
3968    both a stack and a heap check.
3969 
3970 The RTS then assumes that a heap-check failure has occurred and
3971 subtracts HpAlloc from Hp, although in fact it was a stack-check
3972 failure and retreating Hp will overwrite valid heap objects.  The bug
3973 is that HpAlloc should only be set when Hp has been incremented by the
3974 heap check.  See comments in rts/HeapStackCheck.cmm for more details.
3975 
3976 This bug is probably incredibly rare in practice, but I happened to be
3977 working on a test that triggers it reliably:
3978 concurrent/should_run/throwto001, compiled with -O -threaded, args 30
3979 300 +RTS -N2, run repeatedly in a loop.
3980]
3981[comments and formatting only
3982Simon Marlow <marlowsd@gmail.com>**20100325104617
3983 Ignore-this: c0a211e15b5953bb4a84771bcddd1d06
3984]
3985[Change how perl scripts get installed; partially fixes #3863
3986Ian Lynagh <igloo@earth.li>**20100324171422
3987 We now regenerate them when installing, which means the path for perl
3988 doesn't get baked in
3989]
3990[Pass the location of gcc in the ghc wrapper script; partially fixes #3863
3991Ian Lynagh <igloo@earth.li>**20100324171408
3992 This means we don't rely on baking a path to gcc into the executable
3993]
3994[Quote the ar path in configure
3995Ian Lynagh <igloo@earth.li>**20100324162043]
3996[Remove unused cUSER_WAY_NAMES cUSER_WAY_OPTS
3997Ian Lynagh <igloo@earth.li>**20100324145048]
3998[Remove unused cCONTEXT_DIFF
3999Ian Lynagh <igloo@earth.li>**20100324145013]
4000[Remove unused cEnableWin32DLLs
4001Ian Lynagh <igloo@earth.li>**20100324144841]
4002[Remove unused cGHC_CP
4003Ian Lynagh <igloo@earth.li>**20100324144656]
4004[Fix the build for non-GNU-ar
4005Ian Lynagh <igloo@earth.li>**20100324132907]
4006[Tweak the Makefile code for making .a libs; fixes trac #3642
4007Ian Lynagh <igloo@earth.li>**20100323221325
4008 The main change is that, rather than using "xargs ar" we now put
4009 all the filenames into a file, and do "ar @file". This means that
4010 ar adds all the files at once, which works around a problem where
4011 files with the same basename in a later invocation were overwriting
4012 the existing file in the .a archive.
4013]
4014[Enable shared libraries on Windows; fixes trac #3879
4015Ian Lynagh <igloo@earth.li>**20100320231414
4016 Ignore-this: c93b35ec5b7a7fa6ddb286d17a616216
4017]
4018[Add the external core PDF to the new build system
4019Ian Lynagh <igloo@earth.li>**20100321161909]
4020[Allow specifying $threads directly when validating
4021Ian Lynagh <igloo@earth.li>**20100321112835]
4022[Remove LazyUniqFM; fixes trac #3880
4023Ian Lynagh <igloo@earth.li>**20100320213837]
4024[UNDO: slight improvement to scavenging ...
4025Simon Marlow <marlowsd@gmail.com>**20100319153413
4026 Ignore-this: f0ab581c07361f7b57eae02dd6ec893c
4027 
4028 Accidnetally pushed this patch which, while it validates, isn't
4029 correct.
4030 
4031 rolling back:
4032 
4033 Fri Mar 19 11:21:27 GMT 2010  Simon Marlow <marlowsd@gmail.com>
4034   * slight improvement to scavenging of update frames when a collision has occurred
4035 
4036     M ./rts/sm/Scav.c -19 +15
4037]
4038[slight improvement to scavenging of update frames when a collision has occurred
4039Simon Marlow <marlowsd@gmail.com>**20100319112127
4040 Ignore-this: 6de2bb9614978975f17764a0f259d9bf
4041]
4042[Don't install the utf8-string package
4043Ian Lynagh <igloo@earth.li>**20100317212709]
4044[Don't use -Bsymbolic when linking the RTS
4045Ian Lynagh <igloo@earth.li>**20100316233357
4046 This makes the RTS hooks work when doing dynamic linking
4047]
4048[Fix Trac #3920: Template Haskell kinds
4049simonpj@microsoft.com**20100317123519
4050 Ignore-this: 426cac7920446e04f3cc30bd1d9f76e2
4051 
4052 Fix two places where we were doing foldl instead of foldr
4053 after decomposing a Kind.  Strange that the same bug appears
4054 in two quite different places!
4055]
4056[copy_tag_nolock(): fix write ordering and add a write_barrier()
4057Simon Marlow <marlowsd@gmail.com>**20100316143103
4058 Ignore-this: ab7ca42904f59a0381ca24f3eb38d314
4059 
4060 Fixes a rare crash in the parallel GC.
4061 
4062 If we copy a closure non-atomically during GC, as we do for all
4063 immutable values, then before writing the forwarding pointer we better
4064 make sure that the closure itself is visible to other threads that
4065 might follow the forwarding pointer.  I imagine this doesn't happen
4066 very often, but I just found one case of it: in scavenge_stack, the
4067 RET_FUN case, after evacuating ret_fun->fun we then follow it and look
4068 up the info pointer.
4069]
4070[Add sliceP mapping to vectoriser builtins
4071benl@ouroborus.net**20100316060517
4072 Ignore-this: 54c3cafff584006b6fbfd98124330aa3
4073]
4074[Comments only
4075benl@ouroborus.net**20100311064518
4076 Ignore-this: d7dc718cc437d62aa5b1b673059a9b22
4077]
4078[TAG 2010-03-16
4079Ian Lynagh <igloo@earth.li>**20100316005137
4080 Ignore-this: 234e3bc29e2f26cc59d7b03d780cc352
4081]
4082Patch bundle hash:
4083b2b92a797ddd1cc7eb1823b8a04a314d61a966b1