1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
|
/* -*- buffer-read-only: t -*-
Copyright (C) 2022 by Larry Wall and others
You may distribute under the terms of either the GNU General Public
License or the Artistic License, as specified in the README file.
!!!!!!! DO NOT EDIT THIS FILE !!!!!!!
This file is built by regen/scope_types.pl.
Any changes made here will be lost!
The defines and contents of the leave_scope_arg_counts[] array
must match. To add a new type modify the __DATA__ section in
regen/scope_types.pl and run `make regen` to rebuild the file.
*/
/* zero args */
#define SAVEt_ALLOC 0
#define SAVEt_CLEARPADRANGE 1
#define SAVEt_CLEARSV 2
#define SAVEt_REGCONTEXT 3
/* one arg */
#define SAVEt_TMPSFLOOR 4
#define SAVEt_BOOL 5
#define SAVEt_COMPPAD 6
#define SAVEt_FREECOPHH 7
#define SAVEt_FREEOP 8
#define SAVEt_FREEPV 9
#define SAVEt_FREESV 10
#define SAVEt_I16 11
#define SAVEt_I32_SMALL 12
#define SAVEt_I8 13
#define SAVEt_INT_SMALL 14
#define SAVEt_MORTALIZESV 15
#define SAVEt_NSTAB 16
#define SAVEt_OP 17
#define SAVEt_PARSER 18
#define SAVEt_STACK_POS 19
#define SAVEt_READONLY_OFF 20
#define SAVEt_FREEPADNAME 21
#define SAVEt_STRLEN_SMALL 22
/* two args */
#define SAVEt_AV 23
#define SAVEt_DESTRUCTOR 24
#define SAVEt_DESTRUCTOR_X 25
#define SAVEt_GENERIC_PVREF 26
#define SAVEt_GENERIC_SVREF 27
#define SAVEt_GP 28
#define SAVEt_GVSV 29
#define SAVEt_HINTS 30
#define SAVEt_HPTR 31
#define SAVEt_HV 32
#define SAVEt_I32 33
#define SAVEt_INT 34
#define SAVEt_ITEM 35
#define SAVEt_IV 36
#define SAVEt_LONG 37
#define SAVEt_PPTR 38
#define SAVEt_SAVESWITCHSTACK 39
#define SAVEt_SHARED_PVREF 40
#define SAVEt_SPTR 41
#define SAVEt_STRLEN 42
#define SAVEt_SV 43
#define SAVEt_SVREF 44
#define SAVEt_VPTR 45
#define SAVEt_ADELETE 46
#define SAVEt_APTR 47
#define SAVEt_RCPV_FREE 48
#define SAVEt_COMPILE_WARNINGS 49
/* three args */
#define SAVEt_HELEM 50
#define SAVEt_PADSV_AND_MORTALIZE 51
#define SAVEt_SET_SVFLAGS 52
#define SAVEt_GVSLOT 53
#define SAVEt_AELEM 54
#define SAVEt_DELETE 55
#define SAVEt_HINTS_HH 56
static const U8 leave_scope_arg_counts[] = {
0, /* SAVEt_ALLOC */
0, /* SAVEt_CLEARPADRANGE */
0, /* SAVEt_CLEARSV */
0, /* SAVEt_REGCONTEXT */
1, /* SAVEt_TMPSFLOOR */
1, /* SAVEt_BOOL */
1, /* SAVEt_COMPPAD */
1, /* SAVEt_FREECOPHH */
1, /* SAVEt_FREEOP */
1, /* SAVEt_FREEPV */
1, /* SAVEt_FREESV */
1, /* SAVEt_I16 */
1, /* SAVEt_I32_SMALL */
1, /* SAVEt_I8 */
1, /* SAVEt_INT_SMALL */
1, /* SAVEt_MORTALIZESV */
1, /* SAVEt_NSTAB */
1, /* SAVEt_OP */
1, /* SAVEt_PARSER */
1, /* SAVEt_STACK_POS */
1, /* SAVEt_READONLY_OFF */
1, /* SAVEt_FREEPADNAME */
1, /* SAVEt_STRLEN_SMALL */
2, /* SAVEt_AV */
2, /* SAVEt_DESTRUCTOR */
2, /* SAVEt_DESTRUCTOR_X */
2, /* SAVEt_GENERIC_PVREF */
2, /* SAVEt_GENERIC_SVREF */
2, /* SAVEt_GP */
2, /* SAVEt_GVSV */
2, /* SAVEt_HINTS */
2, /* SAVEt_HPTR */
2, /* SAVEt_HV */
2, /* SAVEt_I32 */
2, /* SAVEt_INT */
2, /* SAVEt_ITEM */
2, /* SAVEt_IV */
2, /* SAVEt_LONG */
2, /* SAVEt_PPTR */
2, /* SAVEt_SAVESWITCHSTACK */
2, /* SAVEt_SHARED_PVREF */
2, /* SAVEt_SPTR */
2, /* SAVEt_STRLEN */
2, /* SAVEt_SV */
2, /* SAVEt_SVREF */
2, /* SAVEt_VPTR */
2, /* SAVEt_ADELETE */
2, /* SAVEt_APTR */
2, /* SAVEt_RCPV_FREE */
2, /* SAVEt_COMPILE_WARNINGS */
3, /* SAVEt_HELEM */
3, /* SAVEt_PADSV_AND_MORTALIZE */
3, /* SAVEt_SET_SVFLAGS */
3, /* SAVEt_GVSLOT */
3, /* SAVEt_AELEM */
3, /* SAVEt_DELETE */
3 /* SAVEt_HINTS_HH */
};
#define MAX_SAVEt 56
/* ex: set ro: */
|