1. 17 Feb, 2000 4 commits
  2. 16 Feb, 2000 2 commits
  3. 15 Feb, 2000 4 commits
    • panne's avatar
      [project @ 2000-02-15 22:18:16 by panne] · 06619533
      panne authored
      First steps towards DEPRECATED before Rosebank (12yrs) takes its toll.
      Nothing very functional yet, but at least hsc can be compiled and it
      still compiles the Prelude.
      
      Parsing the pragma turned out to be a little bit more complicated than
      expected, here the comment from Parser.y:
      
         The place for module deprecation is really too restrictive, but if it
         was allowed at its natural place just before 'module', we get an ugly
         s/r conflict with the second alternative. Another solution would be the
         introduction of a new pragma DEPRECATED_MODULE, but this is not very nice,
         either, and DEPRECATED is only expected to be used by people who really
         know what they are doing. :-)
      
      Net result: Module deprecation is allowed exactly behind the module's
      name and nowhere else. I probably have to think a little bit more
      about this some day...
      06619533
    • sewardj's avatar
      [project @ 2000-02-15 15:14:09 by sewardj] · 2c64208b
      sewardj authored
      Implement CONST_INT_big and CONST_ADDR_big.
      2c64208b
    • sewardj's avatar
      [project @ 2000-02-15 13:16:19 by sewardj] · 7c1668b4
      sewardj authored
      Backend interop fixes:
      -- Make Hugs use the same constructor tag numbering as GHC, viz, starting
         at zero.
      -- Evaluator.c: when unwinding the stack on entering a constructor,
         return to the scheduler if a RET_{VEC_}{SMALL|BIG} is found on the
         stack.
      7c1668b4
    • sewardj's avatar
      [project @ 2000-02-15 11:24:20 by sewardj] · f460a89b
      sewardj authored
      In hugsprimRunIO_toplevel, use catchException instead of catch.
      At least exceptions can then be caught, although Hugs then goes on
      to die with an assertion failure in unblockAsyncExceptionszh_ret_entry,
      probably caused by wrongly entering it twice in immediate succession.
      f460a89b
  4. 14 Feb, 2000 9 commits
  5. 11 Feb, 2000 2 commits
  6. 10 Feb, 2000 2 commits
  7. 09 Feb, 2000 2 commits
    • lewie's avatar
      [project @ 2000-02-09 18:32:09 by lewie] · 461f1fb5
      lewie authored
      Misc. fixes to implicit parameters support.
      461f1fb5
    • sewardj's avatar
      [project @ 2000-02-09 14:50:19 by sewardj] · 0198d561
      sewardj authored
      More bug fixes resulting from trying to load small programs into Hugs
      using the GHC Prelude:
      
      -- Better handling of kinds on class method types.  It's still a kludge
         (I reckon) but works well enough to correctly handle methods in
         Monad and Functor.  See comment in startGHCClass() in interface.c.
      
      -- Add hugsprimReadField and hugsprimShowField.
      
      -- Make error be exported from the Prelude.  For some reason, PrelErr.hi
         doesn't give a signature for error, so we have to fake it by copying
         that of hugsprimError.
      
      -- Handle fixity declarations read from interfaces.
      
      -- Set nameListMonad so that list comprehensions can be translated.
      0198d561
  8. 08 Feb, 2000 3 commits
  9. 07 Feb, 2000 1 commit
    • simonmar's avatar
      [project @ 2000-02-07 20:57:58 by simonmar] · 4d12e452
      simonmar authored
      I'm utterly bemused, but it seems that someone called simonpj disabled
      the virtual timer in rev 1.25:
      
      	+ #if 0 /* tmp--SDM */
            		initialize_virtual_timer(TICK_MILLISECS);
      	+ #endif
      
      and tried to blame it on me by putting my name in the comment :-)
      
      (Simon - perhaps you copied this file out of my working tree and
      committed it by mistake or something?)
      4d12e452
  10. 04 Feb, 2000 6 commits
    • sewardj's avatar
      [project @ 2000-02-04 17:29:24 by sewardj] · 719ed067
      sewardj authored
      Remove various -fvia-Cs, leaving the minimal required set (4 of them).
      719ed067
    • sewardj's avatar
      [project @ 2000-02-04 17:26:58 by sewardj] · 1f1e6297
      sewardj authored
      GSQRT, GSIN, GCOS, GTAN: if result size is float (as opposed to double),
      truncate the result to that length by writing it into memory and
      getting it back again (duh!), since that's what gcc does.
      1f1e6297
    • lewie's avatar
      [project @ 2000-02-04 17:02:11 by lewie] · e02a4c6f
      lewie authored
      Fix a subtle bug in overlapping instances where a generic instance is sometimes
      chosen rather than a more specific one.  See discussion at top of InstEnv
      for details.
      e02a4c6f
    • sewardj's avatar
      [project @ 2000-02-04 13:41:00 by sewardj] · 60a8cc4c
      sewardj authored
      startGHCClass(): set the .dsels (superclass dsels) field.
      60a8cc4c
    • simonmar's avatar
      [project @ 2000-02-04 11:18:05 by simonmar] · 7a463ddd
      simonmar authored
      Fix bug #2 in unregisterised RTS:
      
      forceIO had the same problem as catch#.  This bug has been here for a
      long time, not sure why we haven't noticed it before.
      
      Jules: that should get you back on the road.
      7a463ddd
    • simonmar's avatar
      [project @ 2000-02-04 11:15:04 by simonmar] · fcc9fa26
      simonmar authored
      Fix bug #1 in the unregisterised RTS:
      
      Now that catch# is a fully-fledged IO operation, it has to respect the
      return convention for IO, in particular if we don't have an R1
      (eg. when unregisterised) then the return value goes on the stack.
      
      The return convention could be better, after all we use R1 when
      returning normal values, but I'll just fix it for now.
      fcc9fa26
  11. 03 Feb, 2000 4 commits
  12. 02 Feb, 2000 1 commit
    • sewardj's avatar
      [project @ 2000-02-02 11:40:33 by sewardj] · a040ea4a
      sewardj authored
      trivialCode on x86 is the heart of instruction selection for
      expressions.  It is definitely a non-trivial in complexity.
      To generate correct code it needs to observe preserve several
      delicate invariants, but didn't.
      
      -- Recorded in MachCode.lhs the "Rules of the Game"; ie what I think
         the required invariants are.
      
      -- Completely rewrote trivialCode (also shift_code).  I think it should
         handle all cases correctly, and has special treatment for literal
         operands.
      
      -- Updated NOTES file to record issues which need to be resolved
         before x86 nativeGen can be considered ready for public use.
      a040ea4a