2013-03-21  Ozkan Sezer  <sezeroz@gmail.com>

	Partial merge from trunk r5541:
	2012-01-16  Rafaël Carré <funman@videolan.org>
	* lib32/msvcr90d.def: Mark atexit with DATA.
	* lib64/msvcr90d.def: Likewise.

2013-03-21  Ozkan Sezer  <sezeroz@gmail.com>

	Merge from trunk revs.5540 & 5613:
	2013-02-23  David Nadlinger  <code@klickverbot.at>
	* crt/tlssup.c (_tls_used): Remove +1 form _tls_start to avoid
	section-relative offset displacement.

	2013-01-14  Kai Tietz  <ktietz@redhat.com>
	* crt/tlssup.c (_tls_start,_tls_end): Make variables
	pointer-typed, so that alignment for start-address is
	on pointer-alignment.

2012-11-05  Ozkan Sezer  <sezeroz@gmail.com>

	Merge from trunk rev. 5436:
	Jonathan Yong  <jon_y@users.sourceforge.net>
	* iphlpapi.def: Fix double @nn, add missing @0, regenerate from Win7.

2012-09-12  Dongsheng Song  <dongsheng@users.sourceforge.net>

	* lib32/msvcr110.def: New.
	* lib64/msvcr110.def: New.

2012-08-10  Ozkan Sezer  <sezeroz@gmail.com>

	* misc/getopt.c (optreset): Define as __mingw_optreset (bugs
	#3554856, 3556105.)

2012-08-08  Kai Tietz  <ktietz@redhat.com>

	* gdtoa/dg_qnan.h: Make Nan constants positive valued.

2012-07-17  Kai Tietz  <ktietz@redhat.com>

	PR 3544372
	* misc/mingw_pformat.h (PFORMAT_TO_FILE): Increased constant.
	(PFORMAT_NOLIMIT): Likewise.

2012-07-11  Ozkan Sezer  <sezeroz@gmail.com>

	* lib32/tapi32.def: Add missing exports.

2012-07-10  Ozkan Sezer  <sezeroz@gmail.com>

	* crt/tlsmthread.c: Removed leftovers of Win9X/Me mingwm10.dll
	support.

2012-07-06  Ozkan Sezer  <sezeroz@gmail.com>

	* crt/tlssup.c: Removed Windows 9X/Me mingwm10.dll support.

2012-06-29  Ozkan Sezer  <sezeroz@gmail.com>

	Merge from the trunk rev. 4808:
	2012-02-07  Rafaël Carré  <funman@videolan.org>
	* libsrc/dxva-uuid.c (New file): Add DXVA UUIDs

2012-06-28  Ozkan Sezer  <sezeroz@gmail.com>

	Merge from trunk rev.5048:
	2012-05-22  Kai Tietz  <ktietz@redhat.com>
	* crt/crtexe.c (__mingw_winmain_hInstance): Initialize for
	console-mode, too.

2012-05-23  Ozkan Sezer  <sezeroz@gmail.com>

	* lib32/cabinet.def: New def, based on a patch by Ray Donnelly.
	* Makefile.am (lib32_DATA): Add lib32/cabinet.def to build.
	* Makefile.in: Regenerate.

2012-05-02  Kai Tietz  <ktietz@redhat.com>

	PR 3521401
	* gdtoa/strtodnrp.c (__strtod): Add Int_max initializer to fpi.
	* gdtoa/strtof.c (__strtof): Add Int_max initializer to fpi0.
	* gdtoa/strtopx.c (__strtopx): Add Int_max initializer to fpi0.
	PR 3522948
	* intrincs/RtlSecureZeroMemory.c: New file.
	* Makefile.am: Add RtlSecureZeroMemory.c file.
	* Makefile.in: Regenerated.

2012-01-19  Ozkan Sezer  <sezeroz@gmail.com>

	Partially revert rev. 3656:
	* libsrc/agtctl_i.c: Remove from libuuid.a build rule and install
	as is under $(prefix)/$(host)/libsrc/
	* libsrc/agtsvr_i.c: Likewise.
	* libsrc/cdoex_i.c: Likewise.
	* libsrc/cdoexm_i.c: Likewise.
	* libsrc/cdosys_i.c: Likewise.
	* libsrc/emostore_i.c: Likewise.
	* libsrc/iisext_i.c: Likewise.
	* libsrc/mtsadmin_i.c: Likewise.
	* libsrc/mtxadmin_i.c: Likewise.
	* libsrc/scardssp_i.c: Likewise.
	* libsrc/scardssp_p.c: Likewise.
	* libsrc/tsuserex_i.c: Likewise.

2012-01-18  Kai Tietz  <ktietz@redhat.com>

	PR 3463580
	* testcases/t_exp_denormal.c: New test.
	* testcases/t_powi.c: New test.
	* complex/complex_internal.h (
	* math/exp.def.h: Adjust error-report for range-min.
	* math/powi.def.h: New file.
	* math/powif.c: Rewrite to use powi.def.h.
	* math/powi.c: Likewise.
	* math/powil.c: Likewise.

2012-01-17  Daniel Green  <venix1@gmail.com>

	* stdio/mingw_pformat.c (__pformat): Correct 'l' length modifier
	to follow C99 specification (7.19.6.1) with Windows.

2011-12-20  Kai Tietz  <ktietz@redhat.com> (merge trunk revs.4680 & 4687)

	* crt/pseudo-reloc.c (__write_memory): Add fallback for systems
	not allocating section within one VirtualAlloc block.  Add some
	more error-debugging for VirtualProtect call for having a chance
	to find random issues about it.

2011-12-19  Kai TIetz  <ktietz@redhat.com>

	* stdio/vasprintf.c: Make sure operand order on dereferencing
	is fixed.
	* stdio/asprintf.c: Likewise.

2011-12-17  Ozkan Sezer  <sezeroz@gmail.com>

	* lib32/msi.def: New.
	* Makefile.am (lib32_DATA): Add lib32/msi.def to build.
	* Makefile.in: Regenerate.

2011-11-17  Ozkan Sezer  <sezeroz@gmail.com>

	* stdio/mingw_pformat.c (__pformat_cvt): Add missing initializer
	to the int_max member of fpi.  Needed due to recent gdtoa update.

2011-11-17  Ozkan Sezer  <sezeroz@gmail.com>

	Add gdiplus from mingw.org sources: Original work was by Markus Koenig
	<basilo@users.sourceforge.net>.  Patch to integrate into mingw-w64 was
	provided by Mark Dootson <mark.dootson@znix.com>.

	* lib32/gdiplus.def: New, generated from version 1.1.7601.17514 dll.
	* lib64/gdiplus.def: New, generated from version 1.1.7601.17514 dll.
	* libsrc/gdiplus.c: New.
	* Makefile.am: Add gdiplus defs and sources to build.
	* Makefile.in: Regenerate.

2011-11-17  Ozkan Sezer  <sezeroz@gmail.com>

	* Makefile.am: Add $(sysincludes) to all build rules' CPPFLAGS.
	* Makefile.in: Regenerate.

2011-11-15  Ozkan Sezer  <sezeroz@gmail.com>

	* lib64/kernel32.def (RegUnLoadKeyA): Comment out advapi32 export.
	(RegUnLoadKeyW): Likewise.

2011-11-14  Ozkan Sezer  <sezeroz@gmail.com>

	Merge from trunk rev. 4489:
	2011-09-24  Kai Tietz  <ktietz@redhat.com>
	* crt/crtexe.c, misc/mingw_matherr.c:
	Make sure that variable _MINGW_INSTALL_DEBUG_MATHERR is placed in data-
	segment in all cases.  Therefore initialize dummy-variant by minus one,
	and check within crtexe for enabling this variable having one as value.

2011-11-13  Ozkan Sezer  <sezeroz@gmail.com>

	Merge from trunk rev. 4591:
	2011-11-09  Kai Tietz  <ktietz@redhat.com>
	* lib32/msvcr*.def: Make sure _assert and _wassert are marked DATA.
	* lib64/msvcr*.def: Likewise.

	Merge from trunk revs. 4362, 4565, 4566, 4567:
	2011-08-09  Jonathan Yong  <jon_y@users.sourceforge.net>
	* stdio/asprintf.c: New.
	* stdio/vasprintf.c: New.
	* Makefile.am: Add new sources to build.
	* Makefile.in: Regenerate.

2011-11-04  Ozkan Sezer  <sezeroz@gmail.com>

	gdtoa: Sync to match the latest version at netlib.org as of Nov. 02
	2011.  Changelog from http://netlib.org/fp/changes :
	    Add field int_max to struct FPI and adjust gdtoa.c and *fmt.c
	    so gdtoa.c tests against fpi->int_max rather than Int_max. This
	    only affects some conversions by g_ffmt.c, which in some cases
	    produced too many digits.

2011-10-29  Jonathan Yong  <jon_y@users.sourceforge.net>

	* lib32/dwmapi.def: New.
	* Makefile.am: Added lib32/libdwmapi.a
	* Makefile.in: Regenerated.

2011-10-09  Ozkan Sezer  <sezeroz@gmail.com>

	* revstamp.h: Set latest information.

2011-10-09  Ozkan Sezer  <sezeroz@gmail.com>

	Merge from trunk rev.4530:
	2011-10-08  Kai Tietz  <ktietz@redhat.com>
	* misc/wcrtomb.c: Fix an inlining bug occuring with newer gcc.
	This can go away if bug on gcc side is fixed.

2011-10-09  Ruben Van Boxem  <vanboxem.ruben@gmail.com>

	* misc/isblank.c: Replaced _cdecl by __cdecl.
	* misc/iswblank.c: Likewise.

2011-10-04  Ozkan Sezer  <sezeroz@gmail.com>

	* revstamp.h: Set latest information.

2011-09-27  Ozkan Sezer  <sezeroz@gmail.com>

	* lib64/msvcr80.def (fpreset): Mark as data for bug #3413674.
	* lib64/msvcr90d.def (fpreset): Likewise.
	* lib64/crtdll.def (fpreset): Likewise.
	* lib64/msvcrt.def (fpreset): Likewise.

2011-09-16  Jonathan Yong  <jon_y@users.sourceforge.net>

	* libsrc/ksuser.c (KSPROPSETID_MemoryTransport): New.
	(KSPROPSETID_VramCapture): New.

2011-08-24  Kai Tietz  <ktietz@redhat.com>

	* misc/tfind.c, misc/tsearch.c, misc/tdelete.c, misc/twalk.c:
	Fix nonsense with key argument checking for NULL and fixed
	issue for new key insertation.  It might happens that tree
	gets into denormalized state, but well, this is something
	for a different patch.

2011-08-09  Ozkan Sezer  <sezeroz@gmail.com>

	* Makefile.am: Remove stdio/wcstof.c from build.
	* Makefile.in: Regenerate.
	* misc/mbrtowc.c, misc/wcrtomb.c, misc/wcstof.c, misc/wcstold.c,
	misc/wctob.c: Fix utterly incomprehensible whitespace style.

2011-08-07  Christian Franke  <Christian.Franke@t-online.de>

	* stdio/mingw_vfscanf.c: Fix segmentation fault when a char or string
	format (without malloc option) is used.

2011-07-23  Ozkan Sezer  <sezeroz@gmail.com>

	* lib32/vfw32.mri: Adjust for lib32 subdirectory.
	* lib32/vfw64.mri: New.
	* Makefile.am: Generate libvfw32.a using vfw32.mri.
	* Makefile.in: Regenerate.

2011-05-31  Kai Tietz  <kai.tietz@onevision.com>

	* crt/pesect.c, crt/pseudo-reloc.c: Optimize pseudo-relocation
	code and prevent multiple temporary write-access settings on same
	section.

2011-05-26  Dongsheng Song  <dongsheng@users.sourceforge.net>

	* lib32/msvcr90.def (__report_gsfailure, _assert, _byteswap_uint64,
	_byteswap_ulong, _byteswap_ushort, _ctime32, _decode_pointer, _difftime32,
	_difftime64, _encode_pointer, _findfirst64i32, _findnext64i32, _fpreset,
	_fseeki64, _fstat64i32, _ftelli64, _get_errno, _gmtime32, _localtime32,
	_mkgmtime32, _mktime32, _rotl64, _rotr64, _set_errno, _stat64i32, _time32,
	_wassert, _wctime32, _wfindfirst64i32, _wfindnext64i32, _wstat64i32, atexit,
	btowc, cos, exp, fabs, fmod, log, mbrlen, mbrtowc, mbsrtowcs, modf, pow, sin,
	sqrt, strnlen, wcrtomb, wcsnlen, wcsrtombs, wctob): Mark as DATA.

	* lib64/msvcr90.def (__report_gsfailure, _assert, _byteswap_uint64,
	_byteswap_ulong, _byteswap_ushort, _ctime32, _decode_pointer, _difftime32,
	_difftime64, _encode_pointer, _findfirst64i32, _findnext64i32, _fpreset,
	_fseeki64, _fstat64i32, _ftelli64, _get_errno, _gmtime32, _localtime32,
	_mkgmtime32, _mktime32, _rotl64, _rotr64, _set_errno, _stat64i32, _time32,
	_wassert, _wctime32, _wfindfirst64i32, _wfindnext64i32, _wstat64i32, acosf,
	asinf, atan2f, atanf, atexit, btowc, ceilf, cos, cosf, coshf, exp, expf,
	fabs, floorf, fmod, fmodf, log, log10f, logf, mbrlen, mbrtowc, mbsrtowcs,
	modf, modff, pow, powf, sin, sinf, sinhf, sqrt, sqrtf, strnlen, tanf, tanhf,
	wcrtomb, wcsnlen, wcsrtombs, wctob): Likewise.

2011-04-30  Ozkan Sezer  <sezeroz@gmail.com>

	* lib32/winscard.def (g_rgSCardRawPci): Remove stdcall suffix and
	mark as DATA.
	(g_rgSCardT0Pci): Likewise.
	(g_rgSCardT1Pci): Likewise.

2011-04-26  Ozkan Sezer  <sezeroz@gmail.com>

	* gdtoa/gdtoa.c, gdtoa/gdtoa.h, gdtoa/gdtoaimp.h: Sync gdtoa to
	match the latest version at netlib.org as of 2011-03-21.

2011-04-02  Professor Brian Ripley  <ripley@stats.ox.ac.uk>

	* math/expm1.def.h: Correct special case for |x| < loge2.

2011-03-26  Kai Tietz  <ktietz70@googlemail.com>

	* Makefile.am: Add new file.
	* Makefile.in: Regenerated.
	* lib32/msvcr*.def: Maked ldexp as DATA.
	* lib64/msvcr*.def: Likewise.
	* math/exp*: Make sure we are using round-to-zero.
	* math/pow.def.h: Likewise.
	* math/ldexp.c: New.

2011-03-25  Kai Tietz  <ktietz70@googlemail.com>

	* Makefile.am: Add new files to build.
	* Makefile.in: Regenerated.
	* misc/mempcpy.c: New.
	* misc/wmempcpy.c: New.

2011-03-15  Kai Tietz  <ktietz70@googlemail.com>

	* math/exp.def.h: Use integer/fraction separation for improving
	calculation precision.
	* math/pow.def.h: Use log2l/exp2l and integer/fraction separation
	for improving calculation precission.

2011-03-12  Dongsheng Song  <dongsheng.song@gmail.com>

	* lib32/msvcr100.def (__report_gsfailure, _assert, _byteswap_uint64,
	_byteswap_ulong, _byteswap_ushort, _ctime32, _difftime32,
	_difftime64, _findfirst64i32, _findnext64i32, _fpreset, _fseeki64,
	_fstat64i32, _ftelli64, _get_errno, _gmtime32, _localtime32,
	_mkgmtime32, _mktime32, _rotl64, _rotr64, _set_errno, _stat64i32,
	_time32, _wassert, _wctime32, _wfindfirst64i32, _wfindnext64i32,
	_wstat64i32, atexit, btowc, cos, exp, fabs, fmod, llabs, lldiv,
	log, longjmp, mbrlen, mbrtowc, mbsrtowcs, modf, pow, sin, sqrt,
	strnlen, wcrtomb, wcsnlen, wcsrtombs, wctob): Mark as DATA.
	* lib64/msvcr100.def (__report_gsfailure, _assert, _byteswap_uint64,
	_byteswap_ulong, _byteswap_ushort, _ctime32, _difftime32,
	_difftime64, _findfirst64i32, _findnext64i32, _fpreset, _fseeki64,
	_fstat64i32, _ftelli64, _get_errno, _gmtime32, _localtime32,
	_mkgmtime32, _mktime32, _rotl64, _rotr64, _set_errno, _stat64i32,
	_time32, _wassert, _wctime32, _wfindfirst64i32, _wfindnext64i32,
	_wstat64i32, acosf, asinf, atan2f, atanf, atexit, btowc, ceilf,
	cos, cosf, coshf, exp, expf, fabs, floorf, fmod, fmodf, llabs,
	lldiv, log, log10f, logf, longjmp, mbrlen, mbrtowc, mbsrtowcs,
	modf, modff, pow, powf, sin, sinf, sinhf, sqrt, sqrtf, strnlen,
	tanf, tanhf, wcrtomb, wcsnlen, wcsrtombs, wctob): Likewise.

2011-02-04  Kai Tietz  <kai.tietz@onevision.com>

	* stdio/mingw_fscanf.c: New.
	* stdio/mingw_fwscanf.c: New.
	* stdio/mingw_scanf.c: New.
	* stdio/mingw_sscanf.c: New.
	* stdio/mingw_swscanf.c: New.
	* stdio/mingw_vfscanf.c: New.
	* stdio/mingw_wscanf.c: New.
	* stdio/mingw_wvfscanf.c: New.
	* Makefile.am: Add new files.
	* Makefile.in: Regenerated.

2011-02-01  Kai Tietz  <kai.tietz@onevision.com>

	* misc/mingw_wcstod.c: New.
	* misc/mingw_wcstof.c: New.
	* misc/mingw_wcstold.c: New.
	* Makefile.am: Add new files to libmingex.a library.
	* math/fastmath.h: Use for 64-bit SSE sqrt instruction.
	* math/sqrt.c: Likewise.
	* math/sqrt.def.h: Likewise.

2011-01-29  Jonathan Yong  <jon_y@users.sourceforge.net>

	* misc/mingw_mbwc_convert.c: New.

2011-01-24  Kai Tietz  <kai.tietz@onevision.com>

	* stdio/mingw_fprintfw.c: New.
	* stdio/mingw_pformatw.c: New.
	* stdio/mingw_vsprintfw.c: New.
	* stdio/mingw_vprintfw.c: New.
	* stdio/mingw_vfprintfw.c: New.
	* stdio/mingw_snprintfw.c: New.
	* stdio/mingw_sprintfw.c: New.
	* stdio/mingw_vsnprintfw.c: New.
	* stdio/mingw_printfw.c: New.
	* stdio/mingw_fprintf.c: Support wide-char.
	* stdio/mingw_pformat.c: Support wide-char.
	* stdio/mingw_pformat.h: Support wide-char.
	* stdio/mingw_vsprintf.c: Support wide-char.
	* stdio/mingw_vprintf.c: Support wide-char.
	* stdio/mingw_vfprintf.c: Support wide-char.
	* stdio/mingw_snprintf.c: Support wide-char.
	* stdio/mingw_sprintf.c: Support wide-char.
	* stdio/mingw_vsnprintf.c: Support wide-char.
	* stdio/mingw_printf.c: Support wide-char.

2011-01-10  Tsukasa Ooi  <li@livegrid.org>

	* crt/crtexe.c: Fix invalid scope table for SEH.

2011-01-10  Tsukasa Ooi  <li@livegrid.org>

	* crt/crtexe.c: Fix invalid scope table for SEH.

