~ubuntu-branches/debian/squeeze/erlang/squeeze

« back to all changes in this revision

Viewing changes to lib/hipe/misc/hipe_gensym.erl

  • Committer: Bazaar Package Importer
  • Author(s): Sergei Golovan
  • Date: 2009-02-15 16:42:52 UTC
  • mfrom: (1.1.13 upstream)
  • Revision ID: james.westby@ubuntu.com-20090215164252-dxpjjuq108nz4noa
Tags: 1:12.b.5-dfsg-2
Upload to unstable after lenny is released.

Show diffs side-by-side

added added

removed removed

Lines of Context:
26
26
%% Types of allowable entities to set global variables for
27
27
%%-----------------------------------------------------------------------
28
28
 
29
 
-type(gvarname() :: 'icode' | 'rtl' | 'arm' | 'ppc' | 'sparc' | 'x86').
 
29
-type gvarname() :: 'icode' | 'rtl' | 'arm' | 'ppc' | 'sparc' | 'x86'.
30
30
 
31
31
%%-----------------------------------------------------------------------
32
32
 
39
39
%%   put(lbl_max, 1),
40
40
%%   ok.
41
41
 
42
 
-spec(init/1 :: (gvarname()) -> 'ok').
 
42
-spec init(gvarname()) -> 'ok'.
43
43
init(What) ->
44
44
  put({What,var_count}, 0),
45
45
  put({What,label_count}, 0),
54
54
%%   put(var_count, V+1),
55
55
%%   V.
56
56
 
57
 
-spec(new_var/1 :: (gvarname()) -> non_neg_integer()).
 
57
-spec new_var(gvarname()) -> non_neg_integer().
58
58
new_var(What) ->
59
59
  V = get({What,var_count}),
60
60
  put({What,var_count}, V+1),
65
65
%%   put(label_count, L+1),
66
66
%%   L.
67
67
 
68
 
-spec(new_label/1 :: (gvarname()) -> non_neg_integer()).
 
68
-spec new_label(gvarname()) -> non_neg_integer().
69
69
new_label(What) ->
70
70
  L = get({What,label_count}),
71
71
  put({What,label_count}, L+1),
78
78
%%   put(var_max, lists:max([V, Vmax])),
79
79
%%   ok.
80
80
 
81
 
-spec(update_vrange/2 :: (gvarname(), non_neg_integer()) -> 'ok').
 
81
-spec update_vrange(gvarname(), non_neg_integer()) -> 'ok'.
82
82
update_vrange(What, V) ->
83
83
  Vmax = get({What,var_max}),
84
84
  Vmin = get({What,var_min}),
93
93
%%   put(lbl_max, lists:max([L, Lmax])),
94
94
%%   ok.
95
95
 
96
 
-spec(update_lblrange/2 :: (gvarname(), non_neg_integer()) -> 'ok').
 
96
-spec update_lblrange(gvarname(), non_neg_integer()) -> 'ok'.
97
97
update_lblrange(What, L) ->
98
98
  Lmax = get({What,lbl_max}),
99
99
  Lmin = get({What,lbl_min}),
104
104
%% var_range() ->
105
105
%%   {get(var_min), get(var_max)}.
106
106
 
107
 
-spec(var_range/1 :: (gvarname()) -> {non_neg_integer(), non_neg_integer()}).
 
107
-spec var_range(gvarname()) -> {non_neg_integer(), non_neg_integer()}.
108
108
var_range(What) ->
109
109
  {get({What,var_min}), get({What,var_max})}.
110
110
 
111
 
-spec(set_var_range/3 :: (gvarname(), non_neg_integer(), non_neg_integer()) -> 'ok').
 
111
-spec set_var_range(gvarname(), non_neg_integer(), non_neg_integer()) -> 'ok'.
112
112
set_var_range(What, Min, Max) ->
113
113
  put({What,var_min}, Min),
114
114
  put({What,var_max}, Max),
117
117
%% label_range() ->
118
118
%%   {get(lbl_min), get(lbl_max)}.
119
119
 
120
 
-spec(label_range/1 :: (gvarname()) -> {non_neg_integer(), non_neg_integer()}).
 
120
-spec label_range(gvarname()) -> {non_neg_integer(), non_neg_integer()}.
121
121
label_range(What) ->
122
122
  {get({What,lbl_min}), get({What,lbl_max})}.
123
123
 
124
 
-spec(set_label_range/3 :: (gvarname(), non_neg_integer(), non_neg_integer()) -> 'ok').
 
124
-spec set_label_range(gvarname(), non_neg_integer(), non_neg_integer()) -> 'ok'.
125
125
set_label_range(What, Min, Max) ->
126
126
  put({What,lbl_min}, Min),
127
127
  put({What,lbl_max}, Max),
131
131
%% Variable counter
132
132
%%-----------------------------------------------------------------------
133
133
 
134
 
-spec(set_var/1 :: (non_neg_integer()) -> 'ok').
 
134
-spec set_var(non_neg_integer()) -> 'ok'.
135
135
set_var(X) ->
136
136
  put(var_max, X),
137
137
  ok.
138
138
 
139
 
-spec(set_var/2 :: (gvarname(), non_neg_integer()) -> 'ok').
 
139
-spec set_var(gvarname(), non_neg_integer()) -> 'ok'.
140
140
set_var(What, X) ->
141
141
  put({What,var_max}, X),
142
142
  ok.
143
143
 
144
 
-spec(get_var/0 :: () -> non_neg_integer()).
 
144
-spec get_var() -> non_neg_integer().
145
145
get_var() ->
146
146
  get(var_max).
147
147
 
148
 
-spec(get_var/1 :: (gvarname()) -> non_neg_integer()).
 
148
-spec get_var(gvarname()) -> non_neg_integer().
149
149
get_var(What) ->
150
150
  get({What,var_max}).
151
151
 
152
 
-spec(get_next_var/0 :: () -> non_neg_integer()).
 
152
-spec get_next_var() -> non_neg_integer().
153
153
get_next_var() ->
154
154
  C = get(var_max),
155
155
  put(var_max, C+1),
156
156
  C+1.
157
157
 
158
 
-spec(get_next_var/1 :: (gvarname()) -> non_neg_integer()).
 
158
-spec get_next_var(gvarname()) -> non_neg_integer().
159
159
get_next_var(What) ->
160
160
  C = get({What,var_max}),
161
161
  put({What,var_max}, C+1),
165
165
%% Label counter
166
166
%%-----------------------------------------------------------------------
167
167
 
168
 
-spec(set_label/1 :: (non_neg_integer()) -> 'ok').
 
168
-spec set_label(non_neg_integer()) -> 'ok'.
169
169
set_label(X) ->
170
170
  put(lbl_max, X),
171
171
  ok.
172
172
 
173
 
-spec(set_label/2 :: (gvarname(), non_neg_integer()) -> 'ok').
 
173
-spec set_label(gvarname(), non_neg_integer()) -> 'ok'.
174
174
set_label(What, X) ->
175
175
  put({What,lbl_max}, X),
176
176
  ok.
177
177
 
178
 
-spec(get_label/0 :: () -> non_neg_integer()).
 
178
-spec get_label() -> non_neg_integer().
179
179
get_label() ->
180
180
  get(lbl_max).
181
181
 
182
 
-spec(get_label/1 :: (gvarname()) -> non_neg_integer()).
 
182
-spec get_label(gvarname()) -> non_neg_integer().
183
183
get_label(What) ->
184
184
  get({What,lbl_max}).
185
185
 
186
 
-spec(get_next_label/0 :: () -> non_neg_integer()).
 
186
-spec get_next_label() -> non_neg_integer().
187
187
get_next_label() ->
188
188
  C = get(lbl_max),
189
189
  put(lbl_max, C+1),
190
190
  C+1.
191
191
 
192
 
-spec(get_next_label/1 :: (gvarname()) -> non_neg_integer()).
 
192
-spec get_next_label(gvarname()) -> non_neg_integer().
193
193
get_next_label(What) ->
194
194
  C = get({What,lbl_max}),
195
195
  put({What,lbl_max}, C+1),