diff options
author | David Mitchell <davem@iabyn.com> | 2014-02-15 16:15:11 +0000 |
---|---|---|
committer | David Mitchell <davem@iabyn.com> | 2014-02-28 13:42:49 +0000 |
commit | 0c22a733be05b5c1393fc9a2e337dbeed2881596 (patch) | |
tree | f1970541f1fcb7a3ff4d4eded42d111fd0a385aa /ext | |
parent | b024352e692dd231fd32548e325d75b667bff29f (diff) | |
download | perl-0c22a733be05b5c1393fc9a2e337dbeed2881596.tar.gz |
add aux_flags field to HVs with aux struct
Add an extra U32 general flags field to the xpvhv_aux struct (which is
used on HVs such as stashes, that need extra fields).
On 64-bit systems, this doesn't consume any extra space since there's
already an odd number of I32/U32 fields. On 32-bit systems it will consume
an extra 4 bytes. But of course only on those hashes that have the aux
struct.
As well as providing extra flags in the AUX case, it will also allow
us to free up at least one general flag bit for HVs - see next commit.
Diffstat (limited to 'ext')
-rw-r--r-- | ext/Devel-Peek/t/Peek.t | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/ext/Devel-Peek/t/Peek.t b/ext/Devel-Peek/t/Peek.t index 9fb1f016b4..2cfd8a5205 100644 --- a/ext/Devel-Peek/t/Peek.t +++ b/ext/Devel-Peek/t/Peek.t @@ -821,6 +821,7 @@ do_test('ENAME on a stash', FLAGS = \\(OOK,SHAREKEYS\\) IV = 1 # $] < 5.009 NV = $FLOAT # $] < 5.009 + AUX_FLAGS = 0 # $] > 5.019008 ARRAY = $ADDR KEYS = 0 FILL = 0 \(cached = 0\) @@ -845,6 +846,7 @@ do_test('ENAMEs on a stash', FLAGS = \\(OOK,SHAREKEYS\\) IV = 1 # $] < 5.009 NV = $FLOAT # $] < 5.009 + AUX_FLAGS = 0 # $] > 5.019008 ARRAY = $ADDR KEYS = 0 FILL = 0 \(cached = 0\) @@ -871,6 +873,7 @@ do_test('ENAMEs on a stash with no NAME', FLAGS = \\(OOK,OVERLOAD,SHAREKEYS\\) # $] >=5.017 IV = 1 # $] < 5.009 NV = $FLOAT # $] < 5.009 + AUX_FLAGS = 0 # $] > 5.019008 ARRAY = $ADDR KEYS = 0 FILL = 0 \(cached = 0\) @@ -923,6 +926,7 @@ do_test('small hash after keys', FLAGS = \\(PADMY,OOK,SHAREKEYS\\) IV = 1 # $] < 5.009 NV = $FLOAT # $] < 5.009 + AUX_FLAGS = 0 # $] > 5.019008 ARRAY = $ADDR \\(0:[67],.*\\) hash quality = [0-9.]+% KEYS = 2 @@ -954,6 +958,7 @@ do_test('small hash after keys and scalar', FLAGS = \\(PADMY,OOK,SHAREKEYS\\) IV = 1 # $] < 5.009 NV = $FLOAT # $] < 5.009 + AUX_FLAGS = 0 # $] > 5.019008 ARRAY = $ADDR \\(0:[67],.*\\) hash quality = [0-9.]+% KEYS = 2 @@ -986,6 +991,7 @@ do_test('large hash', FLAGS = \\(PADMY,OOK,SHAREKEYS\\) IV = 1 # $] < 5.009 NV = $FLOAT # $] < 5.009 + AUX_FLAGS = 0 # $] > 5.019008 ARRAY = $ADDR \\(0:\d+,.*\\) hash quality = \d+\\.\d+% KEYS = 1000 |