Mercurial > hg > xemacs-beta
view nt/Win32.cf @ 5038:9410323e4b0d
major dynarr fixes
-------------------- ChangeLog entries follow: --------------------
src/ChangeLog addition:
2010-02-20 Ben Wing <ben@xemacs.org>
* device-x.c (Fx_get_resource):
* dynarr.c:
* dynarr.c (Dynarr_realloc):
* dynarr.c (Dynarr_newf):
* dynarr.c (Dynarr_lisp_realloc):
* dynarr.c (Dynarr_lisp_newf):
* dynarr.c (Dynarr_resize):
* dynarr.c (Dynarr_insert_many):
* dynarr.c (Dynarr_delete_many):
* dynarr.c (Dynarr_memory_usage):
* dynarr.c (stack_like_free):
* file-coding.c (coding_reader):
* file-coding.c (gzip_convert):
* gutter.c (output_gutter):
* lisp.h:
* lisp.h (Dynarr_declare):
* lisp.h (DYNARR_SET_LISP_IMP):
* lisp.h (CHECK_NATNUM):
* profile.c (create_timing_profile_table):
* redisplay-output.c (sync_rune_structs):
* redisplay-output.c (sync_display_line_structs):
* redisplay-output.c (redisplay_output_window):
* redisplay.c:
* redisplay.c (get_display_block_from_line):
* redisplay.c (add_ichar_rune_1):
* redisplay.c (ensure_modeline_generated):
* redisplay.c (generate_displayable_area):
* redisplay.c (regenerate_window):
* redisplay.c (update_line_start_cache):
* signal.c:
* signal.c (check_quit):
Lots of rewriting of dynarr code.
(1) Lots of documentation added. Also fix places that
referenced a now-bogus internals node concerning redisplay
critical sections.
(2) Rename:
Dynarr_add_lisp_string -> Dynarr_add_ext_lisp_string
Dynarr_set_length -> Dynarr_set_lengthr ("restricted")
Dynarr_increment -> Dynarr_incrementr
Dynarr_resize_if -> Dynarr_resize_to_add
(3) New functions:
Dynarr_elsize = dy->elsize_
Dynarr_set_length(): Set length, resizing as necessary
Dynarr_set_length_and_zero(): Set length, resizing as necessary,
zeroing out new elements
Dynarr_increase_length(), Dynarr_increase_length_and_zero():
Optimization of Dynarr_set_length(), Dynarr_set_length_and_zero()
when size is known to increase
Dynarr_resize_to_fit(): Resize as necessary to fit a given length.
Dynarr_set(): Set element at a given position, increasing length
as necessary and setting any newly created positions to 0
(4) Use Elemcount, Bytecount.
(5) Rewrite many macros as inline functions.
author | Ben Wing <ben@xemacs.org> |
---|---|
date | Sat, 20 Feb 2010 03:46:22 -0600 |
parents | 43dd3413c7c7 |
children |
line wrap: on
line source
XCOMM platform: $XConsortium: Win32.cf /main/51 1996/12/19 14:20:08 lehors $ #ifndef OSName #define OSName Microsoft Windows NT 4.0 #endif XCOMM operating system: OSName #ifndef OSMajorVersion #define OSMajorVersion 4 #endif #ifndef OSMinorVersion #define OSMinorVersion 0 #endif #ifndef OSTeenyVersion #define OSTeenyVersion 0 #endif #ifndef CompilerMajorVersion /* 0 == NT 3.1 Win32 SDK, 2 == MSVC++ 2, 4 == MSVC 4 */ #define CompilerMajorVersion 4 #endif #define BootstrapCFlags -DWIN32 #ifdef _M_IX86 #define CpuDefines -D_X86_ #endif /* brain-damaged windows headers will not compile with -Za */ /*#define StandardDefines -DWIN32 -DWIN32_LEAN_AND_MEAN -D_DLL -D_MT -D__STDC__ CpuDefines*/ /* Try with single threaded libc --marcpa */ #define StandardDefines -DWIN32 -DWIN32_LEAN_AND_MEAN -D__STDC__ CpuDefines #if CompilerMajorVersion < 4 #define DefaultCCOptions -nologo -batch -G4 -W2 #else #define DefaultCCOptions -nologo -G4 -W2 #endif #if CompilerMajorVersion < 4 #define DebuggableCDebugFlags -Zi #else #define DebuggableCDebugFlags -Zi -Od #endif #define ThreadedX NO #define HasThreadSafeAPI NO #define CpCmd copy #define LnCmd copy #define MvCmd ren #define RmCmd del #ifndef RmTreeCmd /*#define RmTreeCmd del /q /s */ #define RmTreeCmd rm -rf #endif #define CcCmd cl #define HasCplusplus YES #define CplusplusCmd cl #if CompilerMajorVersion < 4 #define PreProcessCmd CcCmd -nologo -batch -EP #define CppCmd CcCmd -nologo -batch -E #else #define PreProcessCmd CcCmd -nologo -EP #define CppCmd CcCmd -nologo -E #endif #define PatheticCpp YES #define ConstructMFLAGS YES #if (CompilerMajorVersion == 0) #define ArCmdBase lib32 #else #define ArCmdBase lib #endif #define ArCmd ArCmdBase #define CplusplusCmd cl #define MkdirHierCmd mkdir #define InstallCmd copy #define InstPgmFlags /**/ #define InstBinFlags /**/ #define InstUidFlags /**/ #define InstLibFlags /**/ #define InstIncFlags /**/ #define InstManFlags /**/ #define InstDatFlags /**/ #define InstallFlags /**/ #if (CompilerMajorVersion == 0) #define ExtraLibraries crtdll.lib kernel32.lib wsock32.lib #elif (CompilerMajorVersion < 4) #define ExtraLibraries msvcrt.lib kernel32.lib wsock32.lib #else /* Use LIBC.LIB instead of msvcrt.lib since we compile with non-thread version. --marcpa */ #define ExtraLibraries libc.lib kernel32.lib wsock32.lib -link -nodefaultlib:libc #endif #define MakeCmd nmake -nologo #if (CompilerMajorVersion == 0) #define LdCmd link32 #else #define LdCmd link #endif #define MathLibrary #define HasSymLinks NO #define HasPutenv YES #define Osuf obj #ifndef CCsuf #define CCsuf cxx #endif #define BuildServer NO #define ConnectionFlags -DTCPCONN /* override as necessary in site.def/host.def */ #ifndef StdIncDir #define StdIncDir C:/MSDEVSTD/INCLUDE #endif #define LdPreLib /**/ #define LdPostLib /**/ #ifndef UseInstalled #define ImakeCmd $(IMAKESRC:/=\)\imake #define DependCmd $(DEPENDSRC:/=\)\makedepend #endif #define DependFlags -D_WIN32 #define FilesToClean *.bak *.obj *.lib make.log #define ShLibDir $(BINDIR) #define XFileSearchPathBase Concat4($(LIBDIR)/;L/;T/;N;C,;S:$(LIBDIR)/;l/;T/;N;C,;S:$(LIBDIR)/;T/;N;C,;S:$(LIBDIR)/;L/;T/;N;S:$(LIBDIR)/;l/;T/;N;S:$(LIBDIR)/;T/;N;S) #define XawI18nDefines -DHAS_WCHAR_H #define UseRgbTxt YES #define HasCbrt NO #define HasFfs NO #define HasXdmAuth NO /* the following components haven't been ported yet */ #define BuildLBX NO #define BuildXprint NO #define XprtServer NO #include <Win32.rules>