Ticket #1910: ghc-6.9-double2Int.patch

File ghc-6.9-double2Int.patch, 19.5 KB (added by int-e, 7 years ago)

patch adapted for darcs head

2New patches:
4[FIX #1910: fix code generated for GDTOI on x86_32
5Bertram Felgenhauer <[email protected]>**20071124071206] hunk ./compiler/nativeGen/PprMach.hs 1411
6-   = pprG g (hcat [gtab, text "subl $4, %esp ; ",
7-                   gpush src 0, gsemi, text "fistpl 0(%esp) ; popl ",
8-                   pprReg I32 dst])
9+   = pprG g (vcat [
10+         hcat [gtab, text "subl $8, %esp ; fnstcw 4(%esp)"],
11+         hcat [gtab, gpush src 0],
12+         hcat [gtab, text "movzwl 4(%esp), ", reg,
13+                     text " ; orl $0xC00, ", reg],
14+         hcat [gtab, text "movl ", reg, text ", 0(%esp) ; fldcw 0(%esp)"],
15+         hcat [gtab, text "fistpl 0(%esp)"],
16+         hcat [gtab, text "fldcw 4(%esp) ; movl 0(%esp), ", reg],
17+         hcat [gtab, text "addl $8, %esp"]
18+     ])
19+   where
20+     reg = pprReg I32 dst
24[FIX #1910: fix code generated for GDTOI on x86_32
25Bertram Felgenhauer <[email protected]>*-20071121102627]
26[Document --info in the +RTS -? help
27Ian Lynagh <[email protected]>**20071123204352]
28[MERGED: If we have hscolour then make source code links in teh haddock docs
29Ian Lynagh <[email protected]>**20071123233113
30 Fri Nov 23 13:15:59 PST 2007  Ian Lynagh <[email protected]>
32[Tidy and trim the type environment in mkBootModDetails
33[email protected]**20071123153519
35 Should fix Trac #1833
37 We were failing to trim the type envt in mkBootModDetails, so several
38 functions all called (*), for example, were getting into the interface.
39 Result chaos.  It only actually bites when we do the retyping-loop thing,
40 which is why it's gone so long without a fix.
44[refactor: HscNothing and boot modules do not need desugaring
45Simon Marlow <[email protected]>**20071123135237]
46[Properly ppr InstEqs in wanteds of implication constraints
47Manuel M T Chakravarty <[email protected]>**20071122093002]
48[FIX #1910: fix code generated for GDTOI on x86_32
49Bertram Felgenhauer <[email protected]>**20071121102627]
50[Add built-in Double operations to vectorisation
51Roman Leshchinskiy <[email protected]>**20071122002517]
52[Teach vectorisation about Double
53Roman Leshchinskiy <[email protected]>**20071121054932]
54[Vectorise polyexprs with notes
55Roman Leshchinskiy <[email protected]>**20071121053102]
56[Make rebindable do-notation behave as advertised
57[email protected]**20071121174914
59 Adopt Trac #1537.  The patch ended up a bit bigger than I expected,
60 so I suggest we do not merge this into the 6.8 branch.  But there
61 is no funadamental reason why not.
63 With this patch, rebindable do-notation really does type as if you
64 had written the original (>>) and (>>=) operations in desguared form.
66 I ended up refactoring some of the (rather complicated) error-context
67 stuff in TcUnify, by pushing an InstOrigin into tcSubExp and its
68 various calls. That means we could get rid of tcFunResTy, and the
69 SubCtxt type.  This should improve error messages slightly
70 in complicated situations, because we have an Origin to hand
71 to instCall (in the (isSigmaTy actual_ty) case of tc_sub1).
73 Thanks to Pepe for the first draft of the patch.
76[Add DEBUG-only flag -dsuppress-uniques to suppress printing of uniques
77[email protected]**20071116152446
79 This is intended only for debugging use: it makes it easier to
80 compare two variants without the variations between uniques mattering.
82 (Of course, you can't actually feed the output to the C compiler
83 or assembler and expect anything sensible to happen!)
86[Add -dcore-lint when validating libraries
87[email protected]**20071105164733]
88[Fix Trac #1913: check data const for derived types are in scope
89[email protected]**20071121151428
91 When deriving an instance, the data constructors should all be in scope.
92 This patch checks the condition.
96[Fix Trac #1909: type of map in docs
97[email protected]**20071120160152]
98[Move file locking into the RTS, fixing #629, #1109
99Simon Marlow <[email protected]>**20071120140859
100 File locking (of the Haskell 98 variety) was previously done using a
101 static table with linear search, which had two problems: the array had
102 a fixed size and was sometimes too small (#1109), and performance of
103 lockFile/unlockFile was suboptimal due to the linear search.
104 Also the algorithm failed to count readers as required by Haskell 98
105 (#629).
107 Now it's done using a hash table (provided by the RTS).  Furthermore I
108 avoided the extra fstat() for every open file by passing the dev_t and
109 ino_t into lockFile.  This and the improvements to the locking
110 algorithm result in a healthy 20% or so performance increase for
111 opening/closing files (see openFile008 test).
113[FIX Trac #1825: standalone deriving Typeable
114[email protected]**20071120125732
116 Standalone deriving of typeable now requires you to say
117        instance Typeable1 Maybe
118 which is exactly the shape of instance decl that is generated
119 by a 'deriving( Typeable )' clause on the data type decl.
121 This is a bit horrid, but it's the only consistent way, at least
122 for now.  If you say something else, the error messages are helpful.
124 MERGE to 6.8 branch
127[FIX #1715: egregious bug in ifaceDeclSubBndrs
128[email protected]**20071120111723
130 ifaceDeclSubBndrs didn't have an IfaceSyn case; but with type
131 families an IfaceSyn can introduce subordinate binders.  Result:
132 chaos.
134 The fix is easy though.  Merge to 6.8 branch.
138[Always do 'setup makefile' before building each library
139Simon Marlow <[email protected]>**20071120103329
140 This forces preprocessing to happen, which is necessary if any of the
141 .hsc files have been modified.  Without this change, a 'setup
142 makefile' would be required by hand after a .hsc file changed.
143 Fortunately 'setup makefile' isn't much extra work, and I've made it
144 not overwrite GNUmakefile if it hasn't changed, which avoids
145 recalculating the dependencies each time.
147[FIX #1847 (improve :browse! docs, fix unqual)
148[email protected]**20071108013147
150 - add example to docs, explain how to interpret
151   output of `:browse! Data.Maybe`
152 - print unqualified names according to current
153   context, not the context of the target module
156[Track changes to package ndp
157Roman Leshchinskiy <[email protected]>**20071120033716]
158[Temporary hack for passing PArrays from unvectorised to vectorised code
159Roman Leshchinskiy <[email protected]>**20071120024545]
160[Bind NDP stuff to [:.:] arrays
161Roman Leshchinskiy <[email protected]>**20071119020302]
162[Don't treat enumerations specially during vectorisation for the moment
163Roman Leshchinskiy <[email protected]>**20071119013729]
164[Fix bugs in vectorisation of case expressions
165Roman Leshchinskiy <[email protected]>**20071119013714]
166[More built-in NDP combinators
167Roman Leshchinskiy <[email protected]>**20071119012205]
168[New vectorisation built-ins
169Roman Leshchinskiy <[email protected]>**20071118051940]
170[Fix bug in conversion unvect/vect
171Roman Leshchinskiy <[email protected]>**20071118051926]
172[Extend built-in vectorisation environments
173Roman Leshchinskiy <[email protected]>**20071118045219]
174[Fix bug in generation of environments for vectorisation
175Roman Leshchinskiy <[email protected]>**20071118045203]
176[Add builtin var->var mapping to vectorisation
177Roman Leshchinskiy <[email protected]>**20071118042605]
178[Extend vectorisation built-in mappings with datacons
179Roman Leshchinskiy <[email protected]>**20071118034351]
180[Change representation of parallel arrays of enumerations
181Roman Leshchinskiy <[email protected]>**20071118033355]
182[Add vectorisation-related builtin
183Roman Leshchinskiy <[email protected]>**20071118031513]
184[Teach vectorisation about Bool
185Roman Leshchinskiy <[email protected]>**20071117042714]
186[Incomplete support for boxing during vectorisation
187Roman Leshchinskiy <[email protected]>**20071117040739]
188[Make sure some TyCons always vectorise to themselves
189Roman Leshchinskiy <[email protected]>**20071117040537]
190[Simple conversion vectorised -> unvectorised
191Roman Leshchinskiy <[email protected]>**20071117023029]
192[Fix bug in case vectorisation
193Roman Leshchinskiy <[email protected]>**20071117015014]
194[Vectorisation of algebraic case expressions
195Roman Leshchinskiy <[email protected]>**20071116074814]
196[More vectorisation-related built-ins
197Roman Leshchinskiy <[email protected]>**20071116061831]
198[Vectorisation utilities
199Roman Leshchinskiy <[email protected]>**20071116051037]
200[Add vectorisation built-ins
201Roman Leshchinskiy <[email protected]>**20071116050959]
202[Fix vectorisation of binders in case expressions
203Roman Leshchinskiy <[email protected]>**20071116021833]
204[Two small typos in the flags summary (merge to 6.8 branch)
205[email protected]**20071119134639]
206[Improve the situation for Trac #959: civilised warning instead of a trace msg
207[email protected]**20071119122938
209 This doesn't fix the root cause of the bug, but it makes the report
210 more civilised, and points to further info.
213[FIX Trac #1806: test for correct arity for datacon in infix pattern patch
214[email protected]**20071119114301
216 Happily the fix is easy; pls merge
219[Accept x86_64-*-freebsd* as well as amd64-*-freebsd* in configure.ac
220Ian Lynagh <[email protected]>**20071117154502
221 Patch from Brian P. O'Hanlon
223[Attempt at fixing #1873, #1360
224Simon Marlow <[email protected]>**20071116152148
226 I think I figured out a reasonable way to manage the GHCi context,
227 comments welcome.
229 Rule 1: external package modules in the context are persistent.  That
230 is, when you say 'import Data.Maybe' it survives over :load, :add,
231 :reload and :cd.
233 Rule 2: :load and :add remove all home-package modules from the
234 context and add the rightmost target, as a *-module if possible.  This
235 is as before, and makes sense for :load because we're starting a new
236 program; the old home-package modules don't make sense any more.  For
237 :add, it usually does what you want, because the new target will
238 become the context.
240 Rule 3: any modules from the context that fail to load during a
241 :reload are remembered, and re-added to the context at the next
242 successful :reload.
244 Claus' suggestion about adding the "remembered" modules to the prompt
245 prefixed with a ! is implemented but commented out.  I couldn't
246 decide whether it was useful or confusing.
248 One difference that people might notice is that after a :reload where
249 there were errors, GHCi would previously dump you in the most recent
250 module that it loaded.  Now it dumps you in whatever subset of the
251 current context still makes sense, and in the common case that will
252 probably be {Prelude}.
254[Wibble to fix Trac #1901 (shorten messsage slightly)
255[email protected]**20071116150341]
256[Improve links from flag reference to the relevant section; and improve doc of RankN flags
257[email protected]**20071116145816]
258[FIX Trac #1901: check no existential context in H98 mode
259[email protected]**20071116145609]
260[Improve documentation of data type declarations (Trac #1901)
261[email protected]**20071116081841]
262[Change the command-line semantics for query commands
263Simon Marlow <[email protected]>**20071116132046
265 From the help text:
267   Commands that query the package database (list, latest, describe,
268   field) operate on the list of databases specified by the flags
269   --user, --global, and --package-conf.  If none of these flags are
270   given, the default is --global --user.
272 This makes it possible to query just a single database (e.g. the
273 global one without the user one), which needed tricks to accomplish
274 before.
276[use "ghc-pkg latest --global" instead of "ghc-pkg list --simple-output"
277Simon Marlow <[email protected]>**20071116122018
278 The former now does the right thing: it uses the global database only,
279 and picks the most recent package with the given name.
281[Disallow installing packages whose names  differ in case only.
282Simon Marlow <[email protected]>**20071116121153
283 --force overrides.  Requested by Duncan Coutts, with a view to
284 treating package names as case-insensitive in the future.
286[FIX BUILD (with GHC 6.2.x): update .hi-boot file
287Simon Marlow <[email protected]>**20071116101227]
288[FIX #1828: installing to a patch with spaces in
289Simon Marlow <[email protected]>**20071115155747
290 We have to pass the path to gcc when calling windres, which itself
291 might have spaces in.  Furthermore, we have to pass the path to gcc's
292 tools to gcc.  This means getting the quoting right, and after much
293 experimentation and reading of the windres sources I found something
294 that works: passing --use-temp-files to windres makes it use its own
295 implementation of quoting instead of popen(), and this does what we
296 want.  Sigh.
298[on Windows, install to a directory with spaces (test for #1828)
299Simon Marlow <[email protected]>**20071115155327]
300[FIX #1679: crash on returning from a foreign call
301Simon Marlow <[email protected]>**20071115131635
302 We forgot to save a pointer to the BCO over the foreign call.  Doing
303 enough allocation and GC during the call could provoke a crash.
305[Avoid the use of unversioned package dependencies
306Simon Marlow <[email protected]>**20071115103249
307 Fortunately "ghc-pkg list $pkg --simple-output" is a good way to add
308 the version number.
310[FIX #1596 (remove deprecated --define-name)
311Simon Marlow <[email protected]>**20071114165323
312 Also remove the old command-line syntax for ghc-pkg, which was not
313 documented.  Do not merge.
315[FIX #1837: remove deprecated support for unversioned dependencies (do not merge)
316Simon Marlow <[email protected]>**20071114161044
320Pepe Iborra <[email protected]>**20071114233356]
321[Make pprNameLoc more robust in absence of loc information
322Pepe Iborra <[email protected]>**20071114233343]
323[Try to manage the size of the text rendered for ':show bindings'
324Pepe Iborra <[email protected]>**20071114231601]
325[Make the Term ppr depth aware
326Pepe Iborra <[email protected]>**20071114183417]
327[Use paragraph fill sep where possible
328Pepe Iborra <[email protected]>**20071114181233]
329[Make SpecConstr work again
330[email protected]**20071115084242
332 In a typo I'd written env instead of env', and as a result RULES are
333 practically guaranteed not to work in a recursive group.  This pretty
334 much kills SpecConstr in its tracks!
336 Well done Kenny Lu for spotting this.  The fix is easy.
338 Merge into 6.8 please.
343[Documentation only - fix typo in flags reference
344Tim Chevalier <[email protected]>**20071115055748]
345[Avoid making Either String an instance of Monad in the Haddock parser
346David Waern <[email protected]>**20071114204050]
347[FIX 1463 (implement 'ghc-pkg find-module')
348[email protected]**20071109162652
350 - the ticket asks for a module2package lookup in ghc-pkg
351   (this would be useful to have in cabal, as well)
353 - we can now ask which packages expose a module we need,
354   eg, when preparing a cabal file or when getting errors
355   after package reorganisations:
357   $ ./ghc-pkg-inplace find-module Var
358   c:/fptools/ghc/driver/package.conf.inplace:
359       (ghc-6.9.20071106)
361   $ ./ghc-pkg-inplace find-module Data.Sequence
362   c:/fptools/ghc/driver/package.conf.inplace:
363       containers-0.1
365 - implemented as a minor variation on listPackages
367 (as usual, it would be useful if one could combine
368 multiple queries into one)
371[remove --define-name from the --help usage message (#1596)
372Simon Marlow <[email protected]>**20071114153417
375[FIX #1837: emit deprecated message for unversioned dependencies
376Simon Marlow <[email protected]>**20071114153010]
377[Fix #782, #1483, #1649: Unicode GHCi input
378Simon Marlow <[email protected]>**20071114151411
379 GHCi input is now treated universally as UTF-8, except for the Windows
380 console where we do the correct conversion from the current code
381 page (see System.Win32.stringToUnicode).
383 That leaves non-UTF-8 locales on Unix as unsupported, but (a) we only
384 accept source files in UTF-8 anyway, and (b) UTF-8 is quite ubiquitous
385 as the default locale.
388[Fix build
389David Waern <[email protected]>**20071114125842
390 I had forgot to update HaddockLex.hi-boot-6, so the build with 6.2.2
391 failed. This fixes that.
393[FIX Trac 1662: actually check for existentials in proc patterns
394[email protected]**20071114112930
396 I'd fixed the bug for code that should be OK, but had forgotten to
397 make the test for code that should be rejected!
399 Test is arrowfail004
402[FIX Trac 1888; duplicate INLINE pragmas
403[email protected]**20071114104701
405 There are actually three things here
406 - INLINE pragmas weren't being pretty-printed properly
407 - They were being classified into too-narrow boxes by eqHsSig
408 - They were being printed in to much detail by hsSigDoc
410 All easy.  Test is rnfail048.
413[Run the -frule-check pass more often (when asked)
414[email protected]**20071114104632]
415[GHCi debugger: added a new flag, -fno-print-binding-contents
416Pepe Iborra <[email protected]>**20071113174539
418 The contents of bindings show at breakpoints and by :show bindings
419 is rendered using the same printer that :print uses.
420 But sometimes the output it gives spans over too many lines and the
421 user may want to be able to disable it.
423[Fix Trac 1865: GHCi debugger crashes with :print
424Pepe Iborra <[email protected]>**20071113170113]
425[Replaced two uses of head b explicit pattern matching
426Pepe Iborra <[email protected]>**20071013113136]
427[Print binding contents in :show bindings
428Pepe Iborra <[email protected]>**20071006123952]
429[ Leftovers from the 1st GHCi debugger prototype
430Pepe Iborra <[email protected]>**20071004204718]
431[Following an indirection doesn't count as a RTTI step
432Pepe Iborra <[email protected]>**20070928091941]
433[FIX #1653 (partially): add -X flags to completion for :set
434Simon Marlow <[email protected]>**20071113153257]
435[Merge from Haddock: Add <<url>> for images
436David Waern <[email protected]>**20071112220537
437 A merge of this patch:
439   Mon Aug  7 16:22:14 CEST 2006  Simon Marlow <[email protected]>
440     * Add <<url>> for images
441     Submitted by: Lennart Augustsson
443 Please merge to the 6.8.2 branch.
445[Improve documentation of INLINE, esp its interactions with other transformations
446[email protected]**20071112160240]
447[Comment re Trac #1220
448[email protected]**20071112154109]
449[Merge from Haddock: Modify lexing of /../
450David Waern <[email protected]>**20071112023856
452   Tue Aug 28 11:19:54 CEST 2007  Simon Marlow <[email protected]>
453     * Modify lexing of /../
454     This makes /../ more like '..', so that a single / on a line doesn't
455     trigger a parse error.  This should reduce the causes of accidental
456     parse errors in Haddock comments; apparently stray / characters are
457     a common source of failures.
459 Please merge this to the 6.8.2 branch.
461[Merge from Haddock: allow blank lines inside code blocks
462David Waern <[email protected]>**20071112013439
464   Tue Jan  9 14:14:34 CET 2007  Simon Marlow <[email protected]>
465     * allow blank lines inside a @...@ code block
467 Please merge this to the 6.8.2 branch
469[Merge of a patch from the old Haddock branch:
470David Waern <[email protected]>**20071112013143
472   Fri Jan  5 12:13:41 CET 2007  Simon Marlow <[email protected]>
473     * Fix up a case of extra vertical space after a code block
475 Please merge this to the 6.8.2 branch
477[Remove ex-extralibs from libraries/Makefile
478Ian Lynagh <[email protected]>**20071111213618]
479[Remove the X11 and HGL libraries from extralibs
480Ian Lynagh <[email protected]>**20071111213447
481 Don Stewart, X11 maintainer, requested we remove X11, and HGL depends on it
482 on Linux (and we don't try to build HGL on Windows).
484[arrows is no longer an extralib
485Ian Lynagh <igloo@earth.li>**20071027123656]
486[Turn -fprint-bind-result off by default
487Ian Lynagh <igloo@earth.li>**20071111001126]
488[TAG 2007-11-11
489Ian Lynagh <igloo@earth.li>**20071111161540]
490Patch bundle hash: