[parrot/parrot] cfc0ae: Rewrite native_pbc number converters and fix forma...
GitHub
noreply at github.com
Wed Dec 12 19:32:38 UTC 2012
Branch: refs/heads/native_pbc2
Home: https://github.com/parrot/parrot
Commit: cfc0aee7c6f0b7ec23a3bd1eb17caee915230ff6
https://github.com/parrot/parrot/commit/cfc0aee7c6f0b7ec23a3bd1eb17caee915230ff6
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M compilers/imcc/optimizer.c
M config/auto/format.pm
M config/auto/sizes.pm
M include/parrot/packfile.h
M src/packfile/api.c
M src/packfile/pf_items.c
M t/native_pbc/integer_4_le.pbc
M t/native_pbc/number.t
M t/native_pbc/number_4_8_le.pbc
M t/native_pbc/testdata/number.pasm
Log Message:
-----------
Rewrite native_pbc number converters and fix format errors
Fix wrong layout of intel 80-bit long double, it is 10-byte + 2/6 byte padding
in i386 resp. x86_64/itanium. Renamed to FLOATTYPE_10.
Older pbc contain a wrong floattype=2 for this format.
It only depends on the word size: on 32bit padded to 12 byte, on 64 to 16byte.
Fixed the header writer logic accordingly.
Add single float support FLOATTYPE_4.
Add detection of yet unsupported special ppc, mips and aix variants
and the official IEEE-754 __float128 (quad double) format, which only
Sparc64 supports.
Simplify endianizers on number converters to reduce complexity.
Use native byteswap.h if detected (not yet).
New and better number.pasm values.
Commit: 596c622292a270bde80618d5bb093f6a6d61cc9a
https://github.com/parrot/parrot/commit/596c622292a270bde80618d5bb093f6a6d61cc9a
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M config/auto/format.pm
M config/auto/sizes.pm
M config/gen/config_h/config_h.in
M src/packfile/api.c
M t/native_pbc/number.t
M t/native_pbc/number_4_12_le.pbc
M t/native_pbc/number_8_16_le.pbc
M t/native_pbc/number_8_8_le.pbc
Log Message:
-----------
pre-calculate FLOATTYPE
FLOATTYPE is cpu dependent for long double. Better do that
in a config step, not at run-time.
Improve __float128 support.
Conflicts:
t/native_pbc/number_4_12_le.pbc
t/native_pbc/number_8_16_le.pbc
t/native_pbc/number_8_8_le.pbc
Commit: 3c51cfcf6160f00551426736ebea52bca26229ab
https://github.com/parrot/parrot/commit/3c51cfcf6160f00551426736ebea52bca26229ab
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M t/native_pbc/number.t
M t/native_pbc/testdata/number.pasm
Log Message:
-----------
remove instable number
on 32-bit the highest number is printed differently
Commit: 8ebdef0457d4d9db25d46b4b90ef45c16743fd8c
https://github.com/parrot/parrot/commit/8ebdef0457d4d9db25d46b4b90ef45c16743fd8c
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M tools/dev/mk_native_pbc
Log Message:
-----------
rewrite tools/dev/mk_native_pbc
Support all possible floattypes, simplify logic
Remove bashism
Conflicts:
tools/dev/mk_native_pbc
Commit: 2744cd85bd8b215ee55e18dea313569f3e3a81d9
https://github.com/parrot/parrot/commit/2744cd85bd8b215ee55e18dea313569f3e3a81d9
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M src/packfile/pf_items.c
R t/native_pbc/integer_4_be.pbc
M t/native_pbc/integer_4_le.pbc
R t/native_pbc/number_4_12_le.pbc
R t/native_pbc/number_4_16_be.pbc
R t/native_pbc/number_4_8_be.pbc
M t/native_pbc/number_4_8_le.pbc
M t/native_pbc/number_8_16_le.pbc
M t/native_pbc/number_8_8_le.pbc
R t/native_pbc/string_4_be.pbc
M tools/dev/mk_native_pbc
Log Message:
-----------
native_pbc: float 4 fixes, mk_native_pbc
floattype_4 needs some prev. undefined helpers
improve mk_native_pbc
regenerate 32-bit le pbc's
Conflicts:
t/native_pbc/integer_4_be.pbc
t/native_pbc/number_4_16_be.pbc
t/native_pbc/number_4_8_be.pbc
t/native_pbc/string_4_be.pbc
t/native_pbc/string_4_le.pbc
tools/dev/mk_native_pbc
Commit: f41e29e93c10fe600f62403bdd74ce71cdf256a6
https://github.com/parrot/parrot/commit/f41e29e93c10fe600f62403bdd74ce71cdf256a6
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M config/auto/format.pm
M t/native_pbc/number.t
M tools/dev/mk_native_pbc
Log Message:
-----------
adjust number.t to new floattypes, do not use %Qg
Commit: 1eff94f35d96a282dcf63912cce8e32f56af7e5a
https://github.com/parrot/parrot/commit/1eff94f35d96a282dcf63912cce8e32f56af7e5a
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
A t/native_pbc/number_8_10_le.pbc
A t/native_pbc/number_8_4_le.pbc
Log Message:
-----------
native_pbc: update 8_le
Commit: 157b2419c2b49437bdd287cdd16fbe15ee5f9b44
https://github.com/parrot/parrot/commit/157b2419c2b49437bdd287cdd16fbe15ee5f9b44
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M tools/dev/mk_native_pbc
Log Message:
-----------
fix mk_native_pbc syntax error
Commit: 1f33e55fa40c73de285e76ce827f2605c43bd697
https://github.com/parrot/parrot/commit/1f33e55fa40c73de285e76ce827f2605c43bd697
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
A t/native_pbc/number_4_4_le.pbc
Log Message:
-----------
t/native_pbc/number_4_4_le.pbc added
Commit: ef81b332434507a6bbd7c60fc669b3e158e1bd85
https://github.com/parrot/parrot/commit/ef81b332434507a6bbd7c60fc669b3e158e1bd85
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M MANIFEST
M config/auto/byteorder.pm
A config/auto/byteorder/bswap_c.in
A include/parrot/bswap.h
Log Message:
-----------
add native include/parrot/bswap.h and probe
probe for endian.h, byteswap.h or OSX header for
native bswap inline functions/macros.
Commit: cfd3aafd8304220a4bac6901b8a08f0a7428a94a
https://github.com/parrot/parrot/commit/cfd3aafd8304220a4bac6901b8a08f0a7428a94a
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M config/auto/sizes.pm
Log Message:
-----------
add HAS_FLOAT128 in config hash
__float128 is binary compatible to 16-bit big-endian sparc/s390
long double formats. Available since gcc 4.6
Commit: e482130f698e4dee4145a21ee9bb724b2a79a6db
https://github.com/parrot/parrot/commit/e482130f698e4dee4145a21ee9bb724b2a79a6db
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M config/auto/byteorder.pm
M config/auto/byteorder/bswap_c.in
M config/gen/makefiles/root.in
M include/parrot/bswap.h
M src/packfile/pf_items.c
Log Message:
-----------
Fix and improve bswap.h
Add missing libkern/OSByteOrder.h
Abstract macros into static inline functions
Use fast replacement macros
Use bswap in pf_items.c
Commit: 53f9df45f302d60066b0302c1d93634da068197f
https://github.com/parrot/parrot/commit/53f9df45f302d60066b0302c1d93634da068197f
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M include/parrot/bswap.h
Log Message:
-----------
Fix byteswap.h and 64bit fallback macro
Forgot to define bswap macros with GNU byteswap.h
Fixed bswap_64 fallback.
Commit: fe246dac2062196bc0d140cc43f43fb7c1664be2
https://github.com/parrot/parrot/commit/fe246dac2062196bc0d140cc43f43fb7c1664be2
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M include/parrot/bswap.h
M include/parrot/packfile.h
M src/packfile/pf_items.c
Log Message:
-----------
fix and optimize bswap
Also allow FLOATTYPE_16PPC, but this format seems to be double-double, not __float128
Commit: cc7c19e5af5f72b84e0ab9902ec0f2a16195a53b
https://github.com/parrot/parrot/commit/cc7c19e5af5f72b84e0ab9902ec0f2a16195a53b
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M config/auto/format.pm
A t/native_pbc/integer_4_be.pbc
A t/native_pbc/number_4_16PPC_be.pbc
A t/native_pbc/string_4_be.pbc
Log Message:
-----------
Fix nvsize in config/auto/format.pm, number_4*_be pbcs
nvsize should be the same as numvalsize, probed in auto::sizes,
but not one of floatvalsize, doublevalsize or hugefloatvalsize.
E.g. with long double used and __float128 possible hugefloatvalsize
is 16
Add generated ppc pbcs
Commit: 68583d964d06fb60f777b1f7e384137c1230dd22
https://github.com/parrot/parrot/commit/68583d964d06fb60f777b1f7e384137c1230dd22
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M include/parrot/bswap.h
M include/parrot/packfile.h
M src/packfile/pf_items.c
M t/native_pbc/integer_4_le.pbc
M t/native_pbc/number.t
M t/native_pbc/string_4_le.pbc
Log Message:
-----------
Add ppc converters, add PF_floattype_names
Added and document converters, ppc needs intermediate helpers.
The ppc long double is the sum of two doubles stored one
after the other: double-double.
Commit: 13551a0bdd9fd91623ed0c69a762b3051bcdf86d
https://github.com/parrot/parrot/commit/13551a0bdd9fd91623ed0c69a762b3051bcdf86d
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
A t/native_pbc/number_4_10_le.pbc
Log Message:
-----------
t/native_pbc/number_4_10_le.pbc added
Commit: 02576872a59209c101b59a9ff599a5c48866927f
https://github.com/parrot/parrot/commit/02576872a59209c101b59a9ff599a5c48866927f
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M src/packfile/pf_items.c
M t/native_pbc/integer_4_le.pbc
M t/native_pbc/integer_8_le.pbc
M t/native_pbc/string_4_le.pbc
Log Message:
-----------
More converter fixes
Some ptr and logical errors.
such as use __float128 FLOATVAL for 16-byte nums, not long double.
Update some non-numeric pbcs
TODO: rounding
Commit: 301e71b62cbcfc5315e0e2706dd5a5eef9264cbd
https://github.com/parrot/parrot/commit/301e71b62cbcfc5315e0e2706dd5a5eef9264cbd
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M src/packfile/pf_items.c
Log Message:
-----------
no unneeded numval transforms
Commit: c9404c97ae0eaf9d36cbaf480adfe2f96869ff01
https://github.com/parrot/parrot/commit/c9404c97ae0eaf9d36cbaf480adfe2f96869ff01
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M frontend/pbc_dump/main.c
Log Message:
-----------
pbc_dump -h: print floattype and floatsize
Commit: f86ea76a0d2eca36a6d0ef0d1e6578ec402cfb74
https://github.com/parrot/parrot/commit/f86ea76a0d2eca36a6d0ef0d1e6578ec402cfb74
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M src/packfile/pf_items.c
M t/native_pbc/number.t
R t/native_pbc/number_8_4_le.pbc
Log Message:
-----------
fix 16ppc readers, rounding not yet
Commit: d6205d386ffa32028260e0e12e4194870f8a8566
https://github.com/parrot/parrot/commit/d6205d386ffa32028260e0e12e4194870f8a8566
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M config/auto/byteorder.pm
M config/auto/byteorder/bswap_c.in
M include/parrot/bswap.h
Log Message:
-----------
Harmonize byteorder/bswap_c.in with bswap.h
Add ppc/darwin login (machine/endian.h)
Commit: e48f406809df0c51c0ea4e290cf2201ddcd8f887
https://github.com/parrot/parrot/commit/e48f406809df0c51c0ea4e290cf2201ddcd8f887
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M t/native_pbc/Test.pm
M t/native_pbc/number.t
Log Message:
-----------
dabble with native_pbc number rounding on tests
Commit: 30adf34e939dc816891112a4c47357e00f19a0a9
https://github.com/parrot/parrot/commit/30adf34e939dc816891112a4c47357e00f19a0a9
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M include/parrot/bswap.h
Log Message:
-----------
fix bswap.h syntax error from prev commit
Commit: 37a4d9fda6a4ecba6b115187d500498ddc92558c
https://github.com/parrot/parrot/commit/37a4d9fda6a4ecba6b115187d500498ddc92558c
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M t/native_pbc/integer_4_be.pbc
M t/native_pbc/number.t
A t/native_pbc/number_4_8_be.pbc
M t/native_pbc/string_4_be.pbc
Log Message:
-----------
ppc native pbc updates
Commit: ca9241af8f30f460a3a78ec6b1423dcfe354ca6a
https://github.com/parrot/parrot/commit/ca9241af8f30f460a3a78ec6b1423dcfe354ca6a
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M src/packfile/pf_items.c
M t/native_pbc/Test.pm
M t/native_pbc/integer_4_be.pbc
M t/native_pbc/number.t
M t/native_pbc/string_4_be.pbc
Log Message:
-----------
fix size 4+8 bswap, fix dest arch in tests, fix 16PPC converters
Commit: 7835fff87c239901e058c005cd144372f121733a
https://github.com/parrot/parrot/commit/7835fff87c239901e058c005cd144372f121733a
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M MANIFEST
M config/auto/format.pm
Log Message:
-----------
set auto::format back to prev imcc FLOATVAL_FMT values
Commit: 32a962a87875087b84184fe2f1d0c8aa6ca75726
https://github.com/parrot/parrot/commit/32a962a87875087b84184fe2f1d0c8aa6ca75726
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M config/auto/format.pm
A config/auto/format/test_c.in
Log Message:
-----------
probe for numeric sprintf formats
auto::format now tests stable round-strips for numbers
and decreases precision (does more rounding) until 5 digits.
Die if you only got 5 digits precision
Commit: 456d3a0f2119618aaba60a74819a9af24312be4f
https://github.com/parrot/parrot/commit/456d3a0f2119618aaba60a74819a9af24312be4f
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M compilers/imcc/optimizer.c
Log Message:
-----------
minor imcc initialization improvement
Commit: 4915429774d947c2841fb81f6c3b7f4c57fac1e3
https://github.com/parrot/parrot/commit/4915429774d947c2841fb81f6c3b7f4c57fac1e3
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M src/packfile/pf_items.c
Log Message:
-----------
stabilize the number of compiled converters
Commit: b66b7fa0626ac75611aacd06204c9ba3fbc550b6
https://github.com/parrot/parrot/commit/b66b7fa0626ac75611aacd06204c9ba3fbc550b6
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M src/packfile/pf_items.c
Log Message:
-----------
forgot about cvt_num16ppc_num8
Check some other converters with the more stable FLOATTYPE also.
Commit: 34b6597701e1fe33b7cd9bb6306c6cf2c68dca46
https://github.com/parrot/parrot/commit/34b6597701e1fe33b7cd9bb6306c6cf2c68dca46
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M config/auto/format.pm
M t/native_pbc/integer_8_le.pbc
M t/native_pbc/number.t
M t/native_pbc/number_8_10_le.pbc
M t/native_pbc/string_8_le.pbc
Log Message:
-----------
More work on numeric precision probing and testing
Commit: ecc36998f330ac92fbaf3f2219da419bbbfc1829
https://github.com/parrot/parrot/commit/ecc36998f330ac92fbaf3f2219da419bbbfc1829
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M src/packfile/pf_items.c
M t/native_pbc/Test.pm
M t/native_pbc/number.t
M t/native_pbc/number_8_16_le.pbc
Log Message:
-----------
improve precision tests, improve cvt_num16_num8 precision
cvt_num16_num8 still gets only 3 digits right with 4.398046511104: 4.39217962522095
Commit: f93f9964a3658bb531f5b9c6698d5c71bbfde31d
https://github.com/parrot/parrot/commit/f93f9964a3658bb531f5b9c6698d5c71bbfde31d
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M t/native_pbc/number.t
Log Message:
-----------
update testmatrix for 16PPC, precision tests still not good
Commit: ad48a452df434cea527c653d653ad92fb50bd962
https://github.com/parrot/parrot/commit/ad48a452df434cea527c653d653ad92fb50bd962
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M t/native_pbc/header.t
Log Message:
-----------
native_pbc/header.t: FLOATTYPE_MAX is now 4 (16PPC)
Commit: 6e948e88d949fd2894fdb922a56e76d717c0d2ff
https://github.com/parrot/parrot/commit/6e948e88d949fd2894fdb922a56e76d717c0d2ff
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M t/native_pbc/number.t
Log Message:
-----------
improve precision tests, looks quite sane now
Commit: e6fbb61048a8674aab649b0afd14034d89e1e5dc
https://github.com/parrot/parrot/commit/e6fbb61048a8674aab649b0afd14034d89e1e5dc
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M src/packfile/pf_items.c
M t/native_pbc/number.t
M t/native_pbc/number_8_10_le.pbc
Log Message:
-----------
Better bitfiddling with the intel 63 normalize bit
cvt_num16_num10 clears now bit 63
cvt_num10_num16 tries to shift-copy the mantissa ignoring this bit
Test precision regex seems to be stable now.
Commit: a82deac83e582264a793e44cfb0f4467286eb17c
https://github.com/parrot/parrot/commit/a82deac83e582264a793e44cfb0f4467286eb17c
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M src/packfile/pf_items.c
M t/native_pbc/number.t
Log Message:
-----------
native numbers: document intel bit63
Commit: c76caa7cd1f63c627c2d119cbca9a5aabb3480b4
https://github.com/parrot/parrot/commit/c76caa7cd1f63c627c2d119cbca9a5aabb3480b4
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M src/packfile/pf_items.c
Log Message:
-----------
pf_items: keep const qualifiers
Commit: ae9be9f63b6c89e6cdbd107c572906853c4f658c
https://github.com/parrot/parrot/commit/ae9be9f63b6c89e6cdbd107c572906853c4f658c
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M config/auto/format.pm
M config/auto/format/test_c.in
M config/auto/sizes.pm
M config/auto/sizes/test_c.in
M src/packfile/pf_items.c
Log Message:
-----------
Configure probes for format, sizes, ranges and digits
Probe FLOATVAL_FMT/floatvalfmt with float round-trip precision tests.
Found that long double and __float128 on intel are
stable only with %17Lg. I.e. 17 digits precision in number-string round
trips. Do the precision test for all float types.
Also test for the cpp defines of ranges and DBL|FLT_DIG
(precision digits).
New config hash value for floatvaldig, the number of compiler
precision digits, which be different to the tested floatvalfmt.
Improved HAS_FLOAT128 detection.
Use HAS_INT64 instead of HAS_LONGLONG for bswap64.
Commit: a4eef2200fbd572da8a5bd6f594a485aa72d4a01
https://github.com/parrot/parrot/commit/a4eef2200fbd572da8a5bd6f594a485aa72d4a01
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M src/packfile/pf_items.c
Log Message:
-----------
check for HAS_LONGLONG with Parrot_UInt8 cast, fix syntax error in temp. code
Commit: 587c4ae008556d91cb1c4e61fbde07b176aca0b1
https://github.com/parrot/parrot/commit/587c4ae008556d91cb1c4e61fbde07b176aca0b1
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M compilers/imcc/optimizer.c
M src/call/context.c
M src/io/api.c
Log Message:
-----------
fix various typos, use FLOATVAL_FMT directly in imcc
Commit: 3b073875bf78fc0abfe6a5f97395cbeb45b6add1
https://github.com/parrot/parrot/commit/3b073875bf78fc0abfe6a5f97395cbeb45b6add1
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M src/call/args.c
M src/string/spf_vtable.c
M t/native_pbc/number_8_8_le.pbc
Log Message:
-----------
promote float to double va va_arg()...
intel and pcc does not support va_arg float arguments. Sounds weird but
so it is.
float still has problems
Commit: f2257be8196ef7d93d037f8f1f4bc0f4ffd1fc8c
https://github.com/parrot/parrot/commit/f2257be8196ef7d93d037f8f1f4bc0f4ffd1fc8c
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M src/packfile/pf_items.c
Log Message:
-----------
fix cvt_num8_num4
Commit: 65d87129f4c22c931d25df02f78a07634876d1db
https://github.com/parrot/parrot/commit/65d87129f4c22c931d25df02f78a07634876d1db
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M lib/Parrot/Test.pm
M src/packfile/pf_items.c
M t/native_pbc/Test.pm
M t/native_pbc/number.t
Log Message:
-----------
test with precision (numcmp)
All tests pass now, just __float128 has problems printing certain numbers
properly. E.g. __float128 is probed for %.17Lg fmt, which prints 3.8
as 3.7999999999999998
Commit: 444c01a5dc9be41f5df5309c789d82f3f7c9d0c6
https://github.com/parrot/parrot/commit/444c01a5dc9be41f5df5309c789d82f3f7c9d0c6
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
A t/native_pbc/number_4_4_be.pbc
Log Message:
-----------
native_pbc/number_4_4_be.pbc added
Commit: 22f181897fb85e6c0f7db23280b731a08cecd147
https://github.com/parrot/parrot/commit/22f181897fb85e6c0f7db23280b731a08cecd147
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M config/gen/config_pm/myconfig.in
Log Message:
-----------
display FLOATTYPE_? in myconfig
Commit: b04e0c8f246fe68ee301f26acb5e0792eb733a51
https://github.com/parrot/parrot/commit/b04e0c8f246fe68ee301f26acb5e0792eb733a51
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M config/auto/sizes.pm
M config/gen/config_h/config_h.in
Log Message:
-----------
use PARROT_FLOATVAL_DIG for rounding, set i_quadmath
Commit: c479a4df0efd545c1d6959d713195899198c1df8
https://github.com/parrot/parrot/commit/c479a4df0efd545c1d6959d713195899198c1df8
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M include/parrot/bswap.h
M include/parrot/packfile.h
M src/packfile/pf_items.c
M t/native_pbc/number.t
Log Message:
-----------
[GH #807] Refactor native_pbc endianness, bswap64. Add header argument to converters
Convert endianness upfront does not work.
Some converters work on native floats, to do compiler casts. They
need to know the packfile byteorder.
Other bitfiddling converters work only on little-endian, so we also need
to know the packfile byteorder, and they also need to convert endianness
back to to the target format.
Refactor bswap64, as it only works with 64bit registers. Tested with HAS_INT64.
So there are two bswap64 API's, one for fast native conversion via a register
and one with two unsigned char * args, which might point to the same buffer,
for easier in-place conversion.
Added dummy ROUND_NUM_TO macro, which needs to round a long number down to the given
precision (when converting upwards). Can be done with sprintf, but need to find a
better way.
Simplify converter casts with unions.
Replace SWAB_12 with SWAB_10. TODO: Need to check the last two bytes.
Commit: 8dcfc4e28e98a9b222f68c39309f13e752d247b6
https://github.com/parrot/parrot/commit/8dcfc4e28e98a9b222f68c39309f13e752d247b6
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
A t/native_pbc/number_8_4_le.pbc
Log Message:
-----------
add t/native_pbc/number_8_4_le.pbc (it crashes on different ptrsizes)
Commit: 81e9bff8fb0fc85b2ab1c129b3359764fc8f2de5
https://github.com/parrot/parrot/commit/81e9bff8fb0fc85b2ab1c129b3359764fc8f2de5
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M lib/Parrot/Test.pm
M t/native_pbc/number.t
Log Message:
-----------
Improve number.t output (print desc)
Update testmatrix.
Commit: 7857a12a75ff32fb8e2ed27773f092edbe9d14e6
https://github.com/parrot/parrot/commit/7857a12a75ff32fb8e2ed27773f092edbe9d14e6
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M src/pmc/float.pmc
M t/src/embed/pmc.t
M t/src/extend_vtable.t
Log Message:
-----------
[GH# 828] Avoid passsing non-double through va_list
va_list does not support float, long double nor __float128 on most systems.
Promote FLOATVAL to double to avoid that.
Commit: 30ea2e0a4a893cbb7800e610934d7ea9bad0f064
https://github.com/parrot/parrot/commit/30ea2e0a4a893cbb7800e610934d7ea9bad0f064
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M runtime/parrot/library/Test/More.pir
M src/dynoplibs/sys.ops
M t/dynoplibs/sysinfo.t
M t/dynpmc/rational.t
M t/library/test_more.t
M t/pmc/integer.t
Log Message:
-----------
[GH #828] Fix most tests for non-double floatval
Add more needed precisions to numeric tests, tested with intel long double.
Change a magic number in t/library/test_more.t 888.81<=>888.82 1e-2
was not stable enough for intel long double
Fix src/dynoplibs/sys.ops doublesize to numvalsize. This only works for double.
Commit: 9c0147f2131afdefafe96a1a02f33897b007b333
https://github.com/parrot/parrot/commit/9c0147f2131afdefafe96a1a02f33897b007b333
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M src/ops/core_ops.c
M src/ops/io.ops
Log Message:
-----------
[GH #828] Optimize print_n/i and say_n/i
print_n/nc/i/ic and the say variants go through a full Parrot_io_printf with
3 va_start/va_end scenarios and a custom format string parser,
and through char* -> STRING->char* conversion until the fixed
FLOATVAL_FMT or INTVAL_FMT printf is done.
Just to print a single int or number.
This also lost precision for non-double floatval's - if cast to (double).
Now avoided.
Commit: 238639f0e13a6092fb34f4f1be3647d85fec33d8
https://github.com/parrot/parrot/commit/238639f0e13a6092fb34f4f1be3647d85fec33d8
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M src/packfile/pf_items.c
Log Message:
-----------
PF_fetch_number: revert union back to cast
Commit: 2282b1569c9f7e6f96b58d1f3c864ce6b8d47832
https://github.com/parrot/parrot/commit/2282b1569c9f7e6f96b58d1f3c864ce6b8d47832
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M src/packfile/pf_items.c
Log Message:
-----------
typo in cvt_num16ppc_num10 (d1 uninitialized)
Commit: c3cd001782f8e5ca132752ec330042048fc5b86d
https://github.com/parrot/parrot/commit/c3cd001782f8e5ca132752ec330042048fc5b86d
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M lib/Parrot/Test.pm
Log Message:
-----------
Test::Builder::_normalize handle inf/nan
Commit: e6f4d57da26d95af00e49f63e6fba3c0a8aeb93a
https://github.com/parrot/parrot/commit/e6f4d57da26d95af00e49f63e6fba3c0a8aeb93a
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M config/auto/sizes.pm
M config/gen/config_h/config_h.in
M config/gen/makefiles/root.in
M config/inter/progs.pm
M src/packfile/pf_items.c
Log Message:
-----------
Add _DIG defines to config.h, fix cvt_num8_num16, add -lquadmath
The __float128 cast does not work, so use snprintf and strtoflt128.
Add -lquadmath to gcc when i_quadmath succeeds.
Fixed ROUND_NUM_TO 3rd arguments with the new _DIG defines
Commit: 1280278613376d9ebbde53e02a649eecb605ab16
https://github.com/parrot/parrot/commit/1280278613376d9ebbde53e02a649eecb605ab16
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M src/packfile/pf_items.c
Log Message:
-----------
Add new 3arg fetch_buf_nn() converters, fix constness
The old fetch_buf_?e_nn() converters took only 2 args, but the
nv converters take now 3. So add intermediate inlined special versions.
Fixed a couple of remaining const'ness issues and bswap64 lines.
Hardcode "%.16g" for the strtoflt128 buf. Still does not work yet though.
Commit: a6e3c725530ef6f1a96a7d13b53eb1197b14a12c
https://github.com/parrot/parrot/commit/a6e3c725530ef6f1a96a7d13b53eb1197b14a12c
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M src/nci/libffi.c
Log Message:
-----------
nci/libffi.c: check FLOATTYPE, not NUMVAL_SIZE
NUMVAL_SIZE is not good enough, esp. wrong for x86_64
Commit: 89a198464f5a0245b43679624517fc46c0c8d4e6
https://github.com/parrot/parrot/commit/89a198464f5a0245b43679624517fc46c0c8d4e6
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M MANIFEST
M MANIFEST.generated
M config/gen/makefiles/root.in
A tools/dev/mk_testnumbers.pl
Log Message:
-----------
tools/dev/mk_testnumbers.pl: create script for make number_tests
Commit: c89d7540c3f83b2c2d26cc6f9c00877df3ce5b1c
https://github.com/parrot/parrot/commit/c89d7540c3f83b2c2d26cc6f9c00877df3ce5b1c
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M tools/dev/mk_native_pbc
Log Message:
-----------
tools/dev/mk_native_pbc: reconfig if no parrot_config is found
Commit: fb57e408e4efc387ad05a4ce76dbbfe1fc979d84
https://github.com/parrot/parrot/commit/fb57e408e4efc387ad05a4ce76dbbfe1fc979d84
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M .gitignore
Log Message:
-----------
add new generated files tools/dev/testnumbers to .gitignore
Commit: 4218541a0d025bd6800ba7b9af9b0dfa89da85c1
https://github.com/parrot/parrot/commit/4218541a0d025bd6800ba7b9af9b0dfa89da85c1
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M config/gen/makefiles/root.in
Log Message:
-----------
fix Makefile to call tools/dev/mk_testnumbers.pl
Commit: 70cb10f7d8fcb3297fc5099764a88fed539ad5fa
https://github.com/parrot/parrot/commit/70cb10f7d8fcb3297fc5099764a88fed539ad5fa
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M config/auto/byteorder/bswap_c.in
Log Message:
-----------
fix auto::byteorder probe on sys/byteorder.h
Silences probe on darwin and fixes probe on Solaris.
Commit: 8e17ca8fd2a983ff5ca1a32786b202832413400b
https://github.com/parrot/parrot/commit/8e17ca8fd2a983ff5ca1a32786b202832413400b
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M tools/dev/mk_native_pbc
Log Message:
-----------
{tools] Improve mk_native_pbc
Various minor improvements: add default args properly with --noconf
export *LD_LIBRARY_PATH if there is an already installed shared libparrot
do not conf if only make parrot_config is needed
Commit: fd7cf723d43b0327188ea5ba2537e7e61c786144
https://github.com/parrot/parrot/commit/fd7cf723d43b0327188ea5ba2537e7e61c786144
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M t/native_pbc/integer_4_be.pbc
M t/native_pbc/integer_4_le.pbc
M t/native_pbc/integer_8_le.pbc
M t/native_pbc/number_4_10_le.pbc
M t/native_pbc/number_4_16PPC_be.pbc
M t/native_pbc/number_4_4_be.pbc
M t/native_pbc/number_4_4_le.pbc
M t/native_pbc/number_4_8_be.pbc
M t/native_pbc/number_4_8_le.pbc
M t/native_pbc/number_8_10_le.pbc
M t/native_pbc/number_8_16_le.pbc
M t/native_pbc/number_8_4_le.pbc
M t/native_pbc/number_8_8_le.pbc
M t/native_pbc/string_4_be.pbc
M t/native_pbc/string_4_le.pbc
M t/native_pbc/string_8_le.pbc
Log Message:
-----------
Update native_pbc testfiles: PBC 13.0
Commit: 7ac034e73cb007fafe3f92c60273566316da94b6
https://github.com/parrot/parrot/commit/7ac034e73cb007fafe3f92c60273566316da94b6
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M src/ops/core_ops.c
M src/ops/io.ops
Log Message:
-----------
[GH #828] Fix print_n/i and say_n/i void return warnings
Commit: 696e3ab915b4ff6a2a0e02e829120d8518700fa4
https://github.com/parrot/parrot/commit/696e3ab915b4ff6a2a0e02e829120d8518700fa4
Author: Reini Urban <rurban at cpanel.net>
Date: 2012-12-12 (Wed, 12 Dec 2012)
Changed paths:
M ChangeLog
Log Message:
-----------
fixme ChangeLog for packfile_fetch_nv_t
Compare: https://github.com/parrot/parrot/compare/cfc0aee7c6f0^...696e3ab915b4
More information about the parrot-commits
mailing list