home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / dbmalloc.zip / CHANGES < prev    next >
Text File  |  1993-01-04  |  15KB  |  421 lines

  1. $Id: CHANGES,v 1.34 1992/09/03 22:24:33 cpcahil Exp $
  2.  
  3. patchlevel 14
  4.     General
  5.         - Many configuration changes from Jonathan I. Kamens
  6.         - added code to support better reallocations when nearby space
  7.           is available.
  8.     Configure
  9.         - changes to support more systems
  10.     fill.c
  11.         - fixed bug that caused problem when free-filling was disabled
  12.     realloc.c
  13.         - now looks for extra space before the segment to be realloced
  14.         - if segment is to be increased and it is at the end of memory,
  15.           just sbrk extra room onto the array
  16.     malloc.c 
  17.         - added code to support joining to previous segment
  18.         - added initialization of free file pointer
  19.     
  20. patchlevel 13
  21.     ******IMPORTANT*******
  22.         - malloc_size() function name changed to malloc_inuse()
  23.         - mallopt() function name changed to dbmallopt()
  24.         - new malloc_size() function with different behavior
  25.         - dbmallopt() now takes a pointer to the union
  26.     Configure
  27.         - added check to use string.h instead of memory.h
  28.         - changed code to guess at settings when they couldn't 
  29.           be determined
  30.         - added ability to bypass compilers that couldn't make
  31.           executables (freq case with g++ if libg++ isn't available)
  32.         - added ASM checks for older 386 assemblers
  33.     Makefile
  34.         - documented new USE_NLS definition
  35.         - new memalign source/object
  36.     PROBLEMS
  37.         - updated descriptions of parameter settings
  38.     abort.c
  39.         - new file containing malloc_abort function.
  40.     cctest.c
  41.         - added support for overriding inclusion of memory.h
  42.     datamc.c
  43.         - asm changes for old ISC assembler
  44.     free.c 
  45.         - added warning about freeing marked segments
  46.     leak.c    
  47.         - fixed bug in malloc_size
  48.         - changed name of malloc_size to malloc_inuse since malloc_size
  49.           collided with funtion of same name on the NeXT.
  50.     malign.c
  51.         - new file
  52.         - support functions for aligned allocations (compatible with
  53.           SVR4 memalign(3))
  54.     malloc.3
  55.         - changed references to malloc_size to malloc_inuse.
  56.         - removed values from discussions on #defines
  57.         - changed mallopt references to dbmallopt
  58.         - added descriptions of the default settings for options
  59.         - added description of freemark option
  60.     malloc.c
  61.         - changed to call malloc_abort
  62.         - added support for new options
  63.         - added check for zero byte allocations
  64.     malloc.h.org
  65.         - changed references to malloc_size to malloc_inuse.
  66.         - changed mallopt references to dbmallopt
  67.         - added definitions for malloc_mark and new malloc_size
  68.     mallopt.c
  69.         - changed mallopt to dbmallopt
  70.         - added support for freemark option
  71.     realloc.c
  72.         - added code to make sure marked segment stays marked.
  73.     size.c
  74.         - new malloc_size function
  75.     string.c
  76.         - fixed CompareUpper macro 
  77.         - added code to preclude inclusion of ctype.h when USE_NLS
  78.           is defined to allow for native language support
  79.     testerr.c
  80.         - added tests for memalign(), malloc_size() and malloc_inuse()
  81.         - changed mallopt references to dbmallopt
  82.     testmalloc.c
  83.         - changed mallopt calls to dbmallopt
  84.     
  85. patchlevel 12
  86.     general
  87.         - many changes to handle systems with ints smaller than longs
  88.     Configure
  89.         - fixed to handle problem on some systems where it didn't 
  90.           correctly determine if setenv was present
  91.         - changed to better handle configuration on Sun's
  92.         - added ability to continue even if an error was found
  93.     Makefile
  94.         - added docs on using -DANSI_NULLS to allow for ANSI NULL
  95.           support in realloc and free
  96.     cctest.c
  97.         - added code to assist build on Suns where gcc is present
  98.     datamc.c
  99.         - fixed bug that caused overwriting of memory areas
  100.     free.c
  101.         - added support for ANSI_NULLS #define
  102.     malloc.e
  103.         - some minor format changes.
  104.     realloc.c
  105.         - added support for ANSI_NULLS #define
  106. patchlevel 11
  107.     general
  108.         - significant performance enhancements
  109.         - DG/UX libc internal interface (from Paul Smith)
  110.         - changed filling so that it now will always fill some bytes
  111.           both before and after the allocated segment
  112.         - misc changes from port to Minix on Atari (from Rainer Orth)
  113.         - added use of system memset/memcpy routines for performance
  114.         - added override capability for fill characters and buffer
  115.           boundary size
  116.     Configure
  117.         - cleaned up reference to DG equipment
  118.         - added code to pull memset and memcpy out of libc.a
  119.     Makefile
  120.         - entries for new source file(s)
  121.         - added code to automatically use system mem* funcs if
  122.           the configure script found them appropriate
  123.     Runtests
  124.         - added better checking of the test output 
  125.     cctest.c
  126.         - added tests for DataMC and DataMS
  127.         - added program to use to map memset to DataMS and memcpy
  128.           to DataMC
  129.     datamc.c  
  130.         - new module for copying data around
  131.         - added ASM version for 386 systems
  132.     datams.c  
  133.         - new module for filling data
  134.     dgmalloc.c
  135.         - new module for DG/UX stuff
  136.     fill.c
  137.         - new module containing all code related to filling data areas
  138.         - added support for several levels of filling
  139.         - optimized fill mechanism
  140.     free.c
  141.         - modified fill area checks
  142.         - fix over/underruns so error is only reported once
  143.         - changed to only fill data areas that need filling
  144.     m_init.c
  145.         - added initialization of new fill character overrides
  146.     m_perror.c
  147.         - added info to error message
  148.     malloc.3
  149.         - updated manual to reflect changes in code
  150.     malloc.h.org
  151.         - defs for new DG/UX stuff
  152.     malloc.c
  153.         - modified filling so that before and after segments are always
  154.           filled (only fill basic segment if fill area is enabled)
  155.         - removed filling modules (moved to fill.c)
  156.         - optimized use of filling so that only fills that were needed
  157.           get called
  158.         - support for overriding boundary size
  159.     mallocin.h
  160.         - defs for new fillarea stuff
  161.         - defs for fill optimizations
  162.         - stuff for fill character overrides
  163.     mallopt.c
  164.         - support for new fillarea flags
  165.         - support for malloc_fill flag setting
  166.     mchain.c
  167.         - added underrun check
  168.         - fix over/underruns so error is only reported once.
  169.     mcheck.c
  170.         - more performance enhancements
  171.         - added verification that segment was in use for pointers that
  172.           are being verified
  173.         - added tweak to find segment quickly if the pointer that was
  174.           passed points to the beginning of the segment.
  175.     memory.c
  176.         - changed to use fast DataMC/DataMS funcs for data movements
  177.         - changed comparison functions to base return upon unsigned
  178.           comparisons as is required under ANSI C
  179.     realloc.c
  180.         - support for new fill mechanism
  181.         - support for overriding boundary size
  182.     string.c
  183.         - changed comparison functions to base return upon unsigned
  184.           comparisons as is required under ANSI C
  185.         - changed to use fast memset/memcpy for data movements
  186.  
  187. patchlevel 10
  188.     general 
  189.         - more portability changes thanks to Denny Page.
  190.         - General mechanism for adding new alloc interfaces
  191.         - XtAlloc routine tracking (idea and sample source from Denny
  192.           Page)
  193.         - yet another session with lint
  194.     Configure
  195.         - changes to handle compilers that only give warnings for
  196.           some of the test situations
  197.         - added creation of system dependency header (sysdefs.h) and
  198.           moved stuff from malloc.h that is only used for building the
  199.           library into the new file
  200.         - renamed temp files to prevent collisions
  201.         - added auto-determination of X11R4/5
  202.         - added SETENV stuff
  203.     Makefile 
  204.         - added new source file(s) to list of sources
  205.         - added rules for building sysdefs.h and dependencies on it
  206.         - moved install of malloc.h to /usr/local/debug_include because
  207.           gcc2.1 automatically includes /usr/local in the default path
  208.           when compiling modules
  209.         - removed docs on setting options that configure now 
  210.           automatically determines
  211.     README
  212.         - updated to reflect changes made in tests
  213.     Runtests
  214.         - added better checking of testmalloc output
  215.     calloc.c 
  216.         - hooks for X allocation routines
  217.         - simplification of setting type/counter flags
  218.     dump.c  
  219.         - lint changes
  220.         - changed to use new function name routines to get name of
  221.           routine that allocated the segment
  222.     free.c
  223.         - added identification of which free function free'd segment
  224.         - support for X allocation routines
  225.     malloc.c
  226.         - hooks for X allocation routines
  227.         - simplification of setting type/counter flags
  228.         - moved function name determination into its own fcn (so it
  229.           could be called by dump)
  230.     malloc.h.org
  231.         - added protos & defs for new X allocation routines
  232.     mallocin.h
  233.         - extended malloc types
  234.         - added free types
  235.         - changed magic number to make room for free types
  236.         - added inclusion of new system dependency header (sysdefs.h)
  237.         - added some defs for the X stuff so we don't get compile errors
  238.           when prototypes.h is included
  239.     realloc.c
  240.         - hooks for X allocation routines
  241.     testmalloc.c
  242.         - lint changes
  243.         - added tests for Xt allocation hooks
  244.     testmem.c
  245.         - lint changes
  246.     teststack.c
  247.         - lint changes
  248.     xheap.c
  249.         - X11R5 compatibility stuff for Xt Allocation routines
  250.     xmalloc.c
  251.         - new source file
  252.         - XtAlloc routines for easier debugging of X applications
  253.     
  254. patchlevel 9
  255.     general
  256.         - just some minor changes from testing of patch 8 on various
  257.           system architectures
  258.     README
  259.         - spelling corrections
  260.     Buildpatch
  261.         - changed to archive old patches
  262.     Configure
  263.         - removed used of escape sequences (like \n) from echo cmds
  264.         - make size_t first choice on strsize setting
  265.     Runtests 
  266.         - initialze environment to defaults so that the test runs in
  267.           a known environment
  268.     dump.c
  269.         - require MALLOC_DETAIL to be non-zero as opposed to just being
  270.           specified in the environment
  271.     malloc.3
  272.         - updated manual page to reflect changes
  273.     malloc.c 
  274.         - require MALLOC_SHOW_LINKS to be non-zero as opposed to just
  275.           being specified in the environment
  276.     mallopt.c
  277.         - changed ERRFILE handling to allow specification of - to 
  278.           indicate stderr output
  279.          - added close of existing errfile if it is changed and it 
  280.           wasn't pointing to stderr
  281.     minipatch
  282.         - new shell to build intermediate patches
  283.     m_perror.c
  284.         - spelling corrections
  285.  
  286. patchlevel 8 
  287.  
  288.     general
  289.         - added automatic configuration (using shell script)
  290.         - added support for different data types between the 
  291.           various components (str*, mem*, and malloc*)
  292.         - renamed some files so they would fit into MS-DOS namespace
  293.           mallocint.h -> mallocin.h, malloc_chk.c -> mcheck.c
  294.           malloc_chn.c -> mchain.c
  295.         - fixed fill_area stuff so that it can be turned off
  296.           and on during the execution of a program (thanks
  297.           to Denny Page - denny@tss.com)
  298.         - can now disable reuse of segments which makes it easier to
  299.           track multiple frees of the same segment (idea and some of
  300.           the code from Denny Page)
  301.         - added code to assist in identifying duplicate frees of
  302.           the same malloc area
  303.         - added support for keeping track of the stack in which the
  304.           malloc calls are made. (suggested by Paul Smith at DG)
  305.         - added support for automatic testing and some new tests
  306.     Configure
  307.         - new automatic configuration script
  308.     Makefile
  309.         - added ranlib call after copying library (needed on some
  310.           systems because the timestamp changes with the copy)
  311.     Runtests
  312.         - new automatic testing script
  313.     free.c
  314.         - added check for pointer alignment on the ptr passed to free
  315.         - added logging of where pointer was freed 
  316.     leak.c
  317.         - added support for marking active segments so that they don't
  318.           get counted in the leak routines
  319.     m_perror.c 
  320.         - fixed typo in error message
  321.     malloc.h
  322.         - moved real file to malloc.h.org which gets modified and
  323.           copied to malloc.h by the automatic configuration
  324.     malloc.c
  325.         - added code to ensure that calls to abort either cause the
  326.           process to abort, or, if not, then just exit.
  327.         - added code to ensure that sbrk() returns data on M_RND
  328.           boundary (or adjust the pointer accordingly)
  329.     mchain.c
  330.         - added pointer alignment checks 
  331.     realloc.c
  332.         - added check for pointer alignment 
  333.     string.c
  334.         - new functions: stricmp and strincmp (case insensitive strcmp)
  335.     stack.c
  336.         - new file which has the stack support functions
  337.     testmalloc.c
  338.         - added doubleword boundary check
  339.     testmem.c
  340.         - tests for new string functions
  341.     tostring.c
  342.         - fixed bug which resulted in empty output if value was zero
  343.     
  344.  
  345. patchlevel 7
  346.  
  347.     - general
  348.         - added support for overriding the use of void for systems
  349.           that do not support it
  350.         - added more info to the PROBLEMS and README files
  351.     - free.c
  352.         - added call to MALLOC_INIT to initialize the malloc subsystem
  353.           when free is the first entry point.
  354.     - malloc.c
  355.         - fixed typo which resulted in truncation of error message
  356.         - increased size of error string buffers and added
  357.           overflow checks
  358.     - malloc.h
  359.         - added code so that it could be included by c++ programs
  360.         - added additional info on setting SIZETYPE and DATATYPE
  361.         - added code to prevent inclusions of string.h and memory.h
  362.           after malloc.h has been included (since they conflict)
  363.         - added prototypes for malloc_dump and malloc_list
  364.         - added #ifdefs to get the code to compile out of the box for 
  365.           known systems (hpux,IBMRS6000, and ISC UNIX)
  366.     - memory.c
  367.         - changed memccpy to only check the number of chars it is
  368.           going to copy (some stdio implementations use memccpy with
  369.           a source string that may not be the full length).
  370.     - malloc.3
  371.         - reformatted the SYNOPSIS section and cleaned up some other
  372.           parts of the doc.
  373.         - added more warnings about potential problems
  374.     - Buildpatch
  375.         - changed to build the patch based upon the old shar files,
  376.           as opposed to the information in the RCS files
  377.         - added verification of successful patch
  378.     - Makefile
  379.         - misc cleanups for making patch releases
  380.         - removed \c escape sequence from test run script
  381.  
  382. patchlevel 6
  383.  
  384.     - README file updated with expanded porting/usage/test program info
  385.     - PROBLEM file added to mention typical porting problems
  386.     - CHECKSUMS file added to allow verification of proper transmission
  387.     - NAME change - default library name changed to libdbmalloc.a so that
  388.       it doesn't conflict with system libmalloc.a files.
  389.     - performance enhancements 
  390.         - selected use of registers for pointers referenced frequently
  391.         - addition of free list chain, so allocations just search a
  392.           list of available blocks
  393.         - portable optimization of the malloc_memset function so that
  394.           it is much faster when filling malloc'd areas
  395.         - added ability to turn off pre/post-filling of malloced 
  396.           areas via an environment variable and/or mallopt()
  397.         - added option to override first fit algorithm with best fit
  398.           algorithm (should reduce memory fragmentation)
  399.     - use #if __STDC__ instead of #ifdef, so if the symbol is defined, but
  400.       is not set to a 1, it is not interpreted as an ANSI C compiler
  401.     - cleanup of some warnings from gcc -Wall
  402.     - makefile changes
  403.         - addition of manual page installation
  404.         - added frcinstall target which forces installation
  405.         - added DESTDIR (equivalent to INSTDIR) which defaults to
  406.           /usr/local
  407.         - added targets to build and run tests and removed test
  408.           building from the all target
  409.         - documented useful targets
  410.         - changed to using cshar to generate shar files with MANIFEST
  411.         - added building of CHECKSUMS file
  412.     - manual page changes
  413.         - minor changes to make it compatible with groff
  414.         - fixed bug in eX macro which was causing fixed font output to
  415.           be extremely wide
  416.         - changed references to malloc_opt to mallopt and updated to 
  417.           the correct usage (using the union malloptarg)
  418.         - documented new environment variable to control fragmentation
  419.  
  420.  
  421.