summaryrefslogtreecommitdiff
path: root/op.h
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2010-08-28 15:35:57 +0100
committerNicholas Clark <nick@ccl4.org>2010-08-28 15:35:57 +0100
commit903fd87c2fde69d5e919253206007158c6a3a2b5 (patch)
treed93bfef9ec03ae9ec1ceafb61875ed236c4c4b03 /op.h
parent95ddc6755c1ff41d06e5afc2212c85f918ebcd28 (diff)
downloadperl-903fd87c2fde69d5e919253206007158c6a3a2b5.tar.gz
Remove OA_RETINTEGER, unused since 2002 (commit e7311069df54baa6)
This returns us to 8 flag bits, and restores OCSHIFT and OASHIFT to 8 and 12 Previously these were 9 and 13, and effectively PL_opargs[] was using 33 of 32 bits, relying on the ugly hack that no 5 argument builtin had an optional 5th argument, hence the (13 + 5 * 4)th bit was always zero. is effectively 33 bits.
Diffstat (limited to 'op.h')
-rw-r--r--op.h7
1 files changed, 3 insertions, 4 deletions
diff --git a/op.h b/op.h
index d537170289..2ffd3e6f16 100644
--- a/op.h
+++ b/op.h
@@ -537,14 +537,13 @@ struct loop {
#define OA_FOLDCONST 2
#define OA_RETSCALAR 4
#define OA_TARGET 8
-#define OA_RETINTEGER 16
+#define OA_TARGLEX 16
#define OA_OTHERINT 32
#define OA_DANGEROUS 64
#define OA_DEFGV 128
-#define OA_TARGLEX 256
/* The next 4 bits encode op class information */
-#define OCSHIFT 9
+#define OCSHIFT 8
#define OA_CLASS_MASK (15 << OCSHIFT)
@@ -563,7 +562,7 @@ struct loop {
#define OA_FILESTATOP (12 << OCSHIFT)
#define OA_LOOPEXOP (13 << OCSHIFT)
-#define OASHIFT 13
+#define OASHIFT 12
/* Remaining nybbles of PL_opargs */
#define OA_SCALAR 1