[project @ 2001-05-04 08:09:42 by simonpj]
authorsimonpj <unknown>
Fri, 4 May 2001 08:09:42 +0000 (08:09 +0000)
committersimonpj <unknown>
Fri, 4 May 2001 08:09:42 +0000 (08:09 +0000)
commit30c2423b5dbe5ba5b0c428ede139f57b26a10f2b
treebfbc625c2d7e04df3ca0fe6946a3bd01a820e7b6
parente4bcc0b7ecefb5eabafe7b94759e9217d5946267
[project @ 2001-05-04 08:09:42 by simonpj]
**** MERGE WITH 5.00 BRANCH     ********

--------------------------------
Make CPR work only for small products
--------------------------------

GHC was barfing when doing CPR for programs involving very large
products.  A one-line fix in MkId.mkDataCon makes it only do CPR for
smaller products (I chose 10).  Comments

-- We do not treat very big tuples as CPR-ish:
-- a) for a start we get into trouble because there aren't
--    "enough" unboxed tuple types (a tiresome restriction,
--    but hard to fix),
-- b) more importantly, big unboxed tuples get returned mainly
--    on the stack, and are often then allocated in the heap
--    by the caller.  So doing CPR for them may in fact make
--    things worse.

This should fix the error
Failed to find interface decl for
PrelGHC.(#,,,,,,,,,,,,,,,,,,,,,,,,
  ,,,,,,,,,,,,,,,,,,,,,,,,,,,
  ,,,,,,,,,,,,,,,,,,,,,,,#)

I hope.
ghc/compiler/basicTypes/MkId.lhs