| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Due to a bug in the CRT (msvcr71.dll), these 2 functions are not defined
in any lib Perl can use (static link CRTs dont apply, Perl only uses DLL
CRTs), but they are available as intrinsics. This solves a link error
about missing symbol __rotl64 in hv.obj, from usage in hv_func.h, on 32 bit
USE_64_BIT_INT VC 2003 builds. _rotr64 is included for completeness. This
fix is filed as [perl #120925].
(cherry picked from commit 8961ec415a480cac831348374bfebace980b0a81)
|
|
|
|
|
|
|
|
| |
Earlier versions (from www.mingw.org, at least) will build perl, but have
a linker bug that causes various tests to fail due to problems with
SDBM_File.dll. See perl #121936 for details.
(cherry picked from commit bf537ce68dee63d81957c87b81c78c2b32d223de)
|
|
|
|
|
|
|
| |
Spotted by Daniel Dragan. We use GetEnvironmentStringsW() (deliberately so:
see commit 4f46e52b00), so we must use FreeEnvironmentStringsW() to match.
(cherry picked from commit a6abe943fc6abe60b49c81ccb55b1e99f8993c8d)
|
|
|
|
|
|
|
|
|
| |
Introduced by perl #113536. It doesn't actually leak on Windows XP due to
differences in the implementation of GetEnvironmentStringsW() compared to
later OSes, but the missing FreeEnvironmentStrings() was technically wrong
anyway, and does now bite. Thanks for Daniel Dragan for finding this.
(cherry picked from commit 90674eaa88a3b2f52d8ac1b835c3505b25ff3f00)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Give Perl doc sites a sane ‘latest’ version to display, directing readers
to current information, rather than showing the Perl 5.12 version in
perpetuity.
And help anybody typing man perlrepository find where the docs have moved
to.
Suggested by Father Chrysostomos in:
http://www.nntp.perl.org/group/perl.perl5.porters/2013/09/msg207079.html
(cherry picked from commit 5edbc4ffd619bf985c0d95ab3981022eea5bcc99)
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
This was done with:
./perl -Ilib Porting/bump-perl-version -i 5.17.12 5.18.0
Followed by two tiny manual edits: INSTALL and patchlevel.h
|
|
|
|
|
|
|
|
| |
The -DUSE_PERLIO flag was being used to build perl itself, but amazingly
didn't end up in Config's ccflags, potentially causing trouble later when
building XS extensions. (The problem isn't new: it's been this way ever
since PerlIO support for Windows was added by e601c439, way back in
November 2000.)
|
|
|
|
| |
...even though it should not get released
|
| |
|
| |
|
|
|
|
|
| |
This includes various tweaks related to building SipHash and other
cleanup.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
extension building problems remain but the 2 above files will build be
built for WinCE with the following 3 commands, replace the folder name with
what you selected for $(MACHINE) in makefile.ce
nmake all
nmake -f makefile.ce wince-x86-hpc-wce300\perl517.dll
nmake -f makefile.ce wince-x86-hpc-wce300\perl.exe
makefile.ce:
- -debug:full and -pdb:none are obsolete compiler flags,
and add -opt:ref:icf, to sync eVC makefile with modern VC's makefile
- create a shortcut for easily creating preprocessed (.i) files for
debugging on the command line
- add new interp .c files that were added over the years
- the Dynaloader build process for Win32 was drastically changed in
commit 281da5eaa8 , fix to reflect this, a "nmake all" on the Win32 build
will create the correct dynaloader .c files for the ce makefile to use
later
- nothing depended on .\xconfig.h in the ce makefile, so there was an error
that it was missing, fix that
- rebase the CE perl5**.dll to same as on Win32 makefile, makes
debugging/diassembly much easier when the dll is not relocated at runtime
- config.sh seems to be a win32 build file, while the script configpm
wants a .sh file in \Cross, so change config.sh dependency to that
win32/Makefile:
- add a preprocess target to easily create .i files for debugging by hand
makedef.pl:
- read the comments in the script
- config.h is Win32 file, not a WinCE file, so use xconfig.h when
under WinCE
lib/.gitignore
- Cross.pm is made during the build process, it shouldn't ever be commited
win32/.gitignore
- xconfig.h is made during the build process, it shouldn't ever be commited
win32/wince.c
- identifier isnan is defed to _isnan somewhere, this created an infinite
loop when CE perl was run
|
|
|
|
|
|
|
| |
copy from VC build config_H.vc to eVC build config_H.ce, this is not the
correct way to fix config_H.ce, but nobody has responded on how to
automatically regenerate config_H.ce in
http://www.nntp.perl.org/group/perl.perl5.porters/2013/01/msg197853.html
|
| |
|
| |
|
| |
|
|
|
|
|
| |
The setting of -O1 for release mode builds can be factored out of the
x86 and x64 cases following commit 688ea162f4.
|
|
|
|
|
|
|
|
|
|
| |
-Ox is missing -GF and -Gy and -Gs
http://blogs.msdn.com/b/branbray/archive/2005/07/08/437078.aspx
http://msdn.microsoft.com/en-us/library/8f8h5cxt%28v=vs.90%29.aspx
http://msdn.microsoft.com/en-us/library/59a3b321%28v=vs.90%29.aspx
So the remaining question is, use -O1 or use -O2 on VC 64? VC 32 bit uses
-O1, and that is also slightly faster on x64 too.
|
| |
|
| |
|
|
|
|
|
| |
These were all uncovered by the new Pod::Checker, not yet in core.
Fixing these will speed up debugging the new Checker.
|
| |
|
| |
|
|
|
|
|
| |
No code changes seem to be required, so it's just a matter of noting that
we've tried it, it works, and we'll support it :-)
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
BeOS was an operating system for personal computers developed by Be Inc,
initially for their BeBox hardware. The OS Haiku was written as an open source
replacement/continuation for BeOS, and its perl port is current and actively
maintained.
The BeOS port has not been updated since 2004.
|
|
|
|
| |
For RT #115838; bulk88++.
|
|
|
|
|
|
| |
directory t/opbasic.
For RT #115838
|
|
|
|
|
|
|
|
|
|
| |
In some places, where there is a higher risk of a NULL my_perl happening
at an unknown point in the future IMO new scopes were created. In other
places dTHXa(NULL) and aTHXa were used to avoid large whitespace changes.
win32_rename and win32_getenv I determined would have no benefit from
changing them. More context passing was added to static funcs called by
win32_kill and win32_waitpid removing the need to move the dTHXs in the
2 funcs.
|
| |
|
| |
|
|
|
|
|
|
|
| |
EPOC was a family of operating systems developed by Psion for mobile
devices. It was the predecessor of Symbian.
The port was last updated in April 2002.
|
| |
|
|
|
|
|
|
| |
Fixes a possible crash (manifested when running with the page heap enabled)
when running after clearing PATH, which at least one test in op/taint.t
does.
|
|
|
|
|
|
|
|
|
| |
This commit eliminates a couple strlen()s of a literal. "Out of memory!\n"
and PL_no_mem did not string pool on Visual C, so PL_no_mem was given a
length. This commit removes S_write_no_mem and replaces it with nonstatic.
Perl_croak_no_mem was made nocontext to save instructions in it's callers.
NORETURN_FUNCTION_END caused a syntax error on Visual C C++ mode and
therefore was removed.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Remove either unused dTHXes, or remove dTHXes where a nocontext func can
be used instead. Smaller/faster machine code is the result.
|
|
|
|
|
|
| |
Remove dTHXes in win32 perl funcs where they were not used, or could be
replaced with nocontext croaks/warns. Since Perl_get_context is a function
it is not optimized away by the compiler.
|
|
|
|
|
|
|
|
|
| |
dTHXes that were unused, or because Newx/Safefree were the only things
called were removed. In some places the dTHX turned into dTHXa and aTHXa
so the context is not fetched until it is actually used
(locality/frees a C stack slot or frees a non-volatile register). Also see
http://www.nntp.perl.org/group/perl.perl5.porters/2012/10/msg194414.html
and http://www.nntp.perl.org/group/perl.perl5.porters/2012/10/msg194861.html
|
|
|
|
|
|
|
|
|
| |
This commit removes a number of "* not implemented" strings from the image.
A win32_croak_not_implemented wrapper is created to reduce machine code
by not putting the format string on the C stack many times. embed.fnc was
used to declare win32_croak_not_implemented for proper cross compiler
support of noreturn (noreturn on GCC and VC ok). Tailcalling and noreturn
optimizations of the C compiler are heavily used in this commit.
|