From 359129aa67bdb7e6e32a83d8940ea967da5474e3 Mon Sep 17 00:00:00 2001 From: johanknol Date: Wed, 12 Feb 2003 14:25:12 +0000 Subject: [PATCH] obsolete git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2251 4a8a32a2-be11-0410-ad9d-d568d2c75423 --- doc/SDCCBugsFixed.html | 1554 ---------------------------------------- 1 file changed, 1554 deletions(-) delete mode 100644 doc/SDCCBugsFixed.html diff --git a/doc/SDCCBugsFixed.html b/doc/SDCCBugsFixed.html deleted file mode 100644 index 33a1573e..00000000 --- a/doc/SDCCBugsFixed.html +++ /dev/null @@ -1,1554 +0,0 @@ - - - - - - - -Enhancements and Bug fixes. -
  -
-
-
Release 2.1.9G - -
- -
-
-
Release 2.1.9F - -
- -
-
-
Release 2.1.9E - -
- -
-
-
Release 2.1.9D - -
- -
-
-
Release 2.1.9C - -
- -
-
-
Release 2.1.9B - - -
-
Release 2.1.9A - -
- -
Release 2.1.9 - -
- -
-
-
Release 2.1.8 - -
- -
-
-
Release 2.1.7 - -
- -
-
-
Release 2.1.6 -
  -
-
  • -Fixed bug in the routines _*2fs.c -the -variable 'sign' should be declared as 'long'.
  • - -
  • -Included _char2fs in libfloat.lib
  • - -
  • -Fixed register allocator  bug -for allocating pointers (found by "Dr. Ed Croson" <soarebc@internetcds.com>).
  • - -
  • -Furthur loop induction variable detection -improvement.
  • - -
  • -Changed loop induction detection so -that it does not treat global variables as induction any more, this saves -some code, since assignments to global variables cannot be easily eliminated.
  • - -
  • -Fixed problem of __sdcc_program_startup -being out of range when large amount of initialization code is present.
  • - -
  • -Fixed bug with function returning pointers.
  • - -
  • -Changed register allocation to aggressively -allocate local variables to registers, users will see a vast improvement -in the generated code, not only in terms  of speed but also in terms -of data space utilization. Previously if there were multiple definitions -for a local variable flowing into a basic block the compiler would allocate -space for the variable, now it will allocate space only if it runs out -of registers.
  • - -
  • -Jean-Louis VERN (jlvern@<writeme.com>) -has done some more enhancements to the code generator ..... his comments.
  • - -
    -
  • -I did some light improvement s:
  • - -
            -- increment 16&32bits -
           -- decrement 16&32bits -
            -- assignment with literal -
            -- return with literal -
    and some cosmetics before optimizing -mult and div...*
    - -
  • - "BESSIERE Jerome" <BESSIERE_Jerome@stna.dgac.fr> -made a lot of improvements to the support routines, these include reducing -some memory leaks.. here are his comments.
  • - -
    -
  • -//* Incorrect call of werror(E_OUT_OF_MEM,...);
  • - -
    //* 1-a In file SDCCBBlock.c / -function iCodeBreakDown (...) -
    //* 1-b In file SDCChasht.c / function -newHashTable(...) -
    //* 1-c In file SDCCmain.c / function -parseCmdLine(...) -
  • -//* Sometime the compiler crash due -to compilation error
  • - -
    //* In file SDCCast.c / function -createFunction(...) -
  • -//* Sometime SDCC access not allocated -memory
  • - -
    //* In file SDCChasht.c / function -hTabSearch(...) -
  • -/* Many and many memory leak when not -using CYGWIN32
  • - -
    //* and  garblage collector -(I'm using MS VC++ 6.0 and WIN32) -
    //* specially in peepHole function -consuming Mo and Mo -
    //* even on compiling small function -
    //* I created a new function in -file SDCChasht.c for deleting an hTab -
    //* It Reduces memory leaks
    - -
  • -"Salvador Eduardo Tropea \(SET\)" <salvador@inti.gov.ar> -provided patches required to compile the system using DJGPP, the executables -produced can run on plain DOS. He has also created a readme.dj file -for those who want to compile using DJGPP.
  • - -
  • -Added code to issue warnings if something -is compared to / assigned a literal value which is greater than what the -variable can hold.
  • - -
  • -Changed the data/space extended message -to info , since this not really a warning message.
  • - -
  • -Added routine auto baud, for automatic -baud rate detection , adapted from Paul Stoffregen's  <paul@ece.orst.edu> -autobaud.asm
  • - -
  • -Was not doing check for constants in -case for ++/--, i.e. a variable declared as const could be incremented -or decremented
  • - -
  • -Fixed bug when setting & fetching -data from far space .
  • - -
  • -Added bunch of peephole optimization -rules.
  • - -
  • -Trefor@magera.freeserve.co.uk. Updated -the build script to give a choice to compile the libraries as large model -or small model.
  • - -
  • -Trefor also got rid of those annoying -warnings when compiling with egcs ( braces about ambiguous 'else')
  • - -
  • -Added some heuristics in constant folding -routine , to prevent pointer live ranges from becoming too long, this was -causing some avoidable spill code to be generated.
  • - -
  • -Added support for ANSI routines setjmp -and longjmp. Documentation updated.
  • - -
  • -Was generating code for unreachable -basic blocks ... now will not generate code for unreachable code... will -issue a warning.
  • - -
  • -Was generating incorrect code when -adding values to generic pointers (some times).
  • - -
  • -Improved bitwise '&' operation -a little bit to improve code generation.
  • -
    - -
    -
    Release 2.1.5 -

    Mostly a bug fix release -
      -

    -
  • -Fixed post & pre increment / Decrement -problem and inefficiency
  • - -
  • -Structures/Unions. Three things were -done this structure declarations.
  • - -
    -
  • -The long standing union problem has -been fixed, a very rudimentary solution right now , will some up with a -better solution shortly.
  • - -
  • -Structures declared inside function -scopes were not being properly cleaned up, came across this problem while -generating debug information fixed now.
  • - -
  • -pointers declared inside structures -were broken after the pointer fix in Version 2.1.3, now fixed.
  • -
    - -
  • -Fixed some library routines , for --model-large -.
  • - -
  • -Added whole lot of stuff for debug -information generation (DO NOT use --debug option might cause unpredictable -results).
  • -
    - -
    -
    Release 2.1.4 -
      - - -
    -
    Release 2.1.3 -
      - - -
    -
    Release 2.1.2 -
      - - - - -
    -
    Release 2.1.1 -
      - - -
    -

    Release 2.1.0 -

    A full source code release. Lots of stuff done in this -release. -
      -

    - -
    -
    Release 2.0.21 -
      -
    -
  • -Enhancement made to unsigned long & -integer division by Martijn van Balen <balen@natlab.research.philips.com>
  • - -
  • - _gptrget.c & _gptrput.c made -register bank independent  by Martijn van Balen <balen@natlab.research.philips.com>.
  • - -
  • -sdccbuil.sh script fixed by Subject: -Markus Mathes <mathes@prp.physik.tu-darmstadt.de>
  • - -
  • -Martijn van Balen <balen@natlab.research.philips.com> -found some problems with post & pre increment of pointer variables -, these are fixed.
  • -
    - -
    -
    Release 2.0.20 -

    Mostly enhancements in this release. Some bug fixes by -Jean Louis. -

    -
  • -Enhanced loop optimization (induction -variables), will generate more compact code for simple loops
  • - -
  • -Enhanced some aspects of basic block -processing.
  • - -
  • -Added a couple more MCU header files.
  • - -
  • -Jean Louis made some enhancements in -SDCCgen51.c for better code generation.
  • - -
  • -Jean Louis also fixed some bugs in -the back end .
  • -
    - -
    -
    Release 2.0.19 -
      -
    -
  • -Assignment of array variable to a pointer -sometimes did not generate code.
  • - -
  • -File containing intialised variables -ONLY with NO functions caused the compiler to crash
  • - -
  • -Initialising global volatile variables -caused the compiler to fail.
  • - -
  • -Generated incorrect code when bit variables -were modified and subsequently used in a conditional statement.
  • - -
  • -Added 3 more header files for Atmel -MCUs , provided by Bernd  Bartmann (Bernd.Bartmann@picard.isdn.cs.tu-berlin.de)
  • - -
  • -Added a lot of peephole optimization -rules, some suggested by Daniel Drotos <drdani@mazsola.iit.uni-miskolc.hu>
  • - -
  • -Added check to make sure functions -do not return 'bit'.
  • - -
  • -Jean Louis-VERN (jlvern@writeme.com) -fixed bug for divide with literal in his code.
  • -
    -
    - - - -
    -
    -
    -
    Release 2.0.17
    -
    - -
    - - -
    -
    -
      -
    • -generating incorrect assembler code -(new line missing), for 'long' variables initialization when defined -in 'code' space.
    • - -
    • -aslink occasionally core dumped, -after it finished processing. (patch provided by  Eric Norum <eric@skatter.USask.Ca> -)
    • - -
    • -comparing pointers with literals -, -e.g. ptr == NULL gave error message, (NULL had to be explicitly cast to -the pointer type)
    • - -
    • -assigning signed char values -to sfrs generated duplicate code.
    • - -
    • -definitions for CHAR_MIN, INT_MAX & -LONG_MAX incorrect in limits.h
    • - -
    • -some more patches from Eric Norum <eric@skatter.USask.Ca> -his description of the patches.
    • - -
        -
      • -1) asxxxx/lkmain.c:181
      • - -
           startp->f_type is -an integer variable and so should not be -
           compared with NULL. -

        2) asxxxx/lkmain.c:195 -
           *ip is a character -variable and so should not be -
           compared with NULL. -

        3) asxxxx/lkmain.c:717 -
           ctype[c] is a character -variable so the expression (ctype[c] != ILL) -
           is always true on -machines where char variables are signed. -

        4) SDCCmain.c:780 -
           The preprocessor output -file was left in the temporary directory. -
         

      - -
    • - volatile variables when used -as loop induction variables caused the compiler to crash.
    • - -
    • -compiler generated 'char * idata -icp'  as a generic pointer instead of 1 byte pointer.
    • - -
    • -link file problem, when linking multiple -files together the compiler sometimes generated a bad file name.
    • - -
    • -library function _atol.c had -the function main in it.
    • - -
    • -Incorrect code generated left shift -of one byte variables 'rl' should be 'rlc' . Patch -provided by : Jean-Louis VERN <jlvern@writeme.com>
    • - -
    • -Bug in ./cpp/cpplib.c . Patch -provided by :Martijn van Balen <balen@natlab.research.philips.com>
    • - -
    • -Consecutive 'if' statements -sometimes caused the compiler to crash. This bug was a fairly serious.
    • - -
    • -Incorrect code generated right shift -of long variables variables 'rlc' should be 'rrc' . -Patch provided by : Jean-Louis VERN <jlvern@writeme.com>
    • - -
    • -Xor, And and Or operation with bit -variable & non-bit variable generated incomplete code.
    • - -
    • -Expression folding was too aggresive, -was corrupting parameters in certain situations.
    • - -
    • -Function prototypes declared with parameter -names , occasionally caused problems.
    • -
    -
    - -
    -
      -
    • -
    • -
    -
    -
    - - - -- 2.47.2