Skip to content

Commit a838ea7

Browse files
PrintClight: use temporaries' actual names
1 parent d0ee536 commit a838ea7

File tree

1 file changed

+8
-12
lines changed

1 file changed

+8
-12
lines changed

cfrontend/PrintClight.ml

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,6 @@ open Cop
2323
open PrintCsyntax
2424
open Clight
2525

26-
(* Naming temporaries *)
27-
28-
let temp_name (id: AST.ident) = "$" ^ Z.to_string (Z.Zpos id)
29-
3026
(* Declarator (identifier + type) -- reuse from PrintCsyntax *)
3127

3228
(* Precedences and associativity (H&S section 7.2) *)
@@ -69,7 +65,7 @@ let rec expr p (prec, e) =
6965
| Evar(id, _) ->
7066
fprintf p "%s" (extern_atom id)
7167
| Etempvar(id, _) ->
72-
fprintf p "%s" (temp_name id)
68+
fprintf p "%s" (extern_atom id)
7369
| Ederef(a1, _) ->
7470
fprintf p "*%a" expr (prec', a1)
7571
| Efield(a1, f, _) ->
@@ -123,14 +119,14 @@ let rec print_stmt p s =
123119
| Sassign(e1, e2) ->
124120
fprintf p "@[<hv 2>%a =@ %a;@]" print_expr e1 print_expr e2
125121
| Sset(id, e2) ->
126-
fprintf p "@[<hv 2>%s =@ %a;@]" (temp_name id) print_expr e2
122+
fprintf p "@[<hv 2>%s =@ %a;@]" (extern_atom id) print_expr e2
127123
| Scall(None, e1, el) ->
128124
fprintf p "@[<hv 2>%a@,(@[<hov 0>%a@]);@]"
129125
expr (15, e1)
130126
print_expr_list (true, el)
131127
| Scall(Some id, e1, el) ->
132128
fprintf p "@[<hv 2>%s =@ %a@,(@[<hov 0>%a@]);@]"
133-
(temp_name id)
129+
(extern_atom id)
134130
expr (15, e1)
135131
print_expr_list (true, el)
136132
| Sbuiltin(None, ef, tyargs, el) ->
@@ -139,7 +135,7 @@ let rec print_stmt p s =
139135
print_expr_list (true, el)
140136
| Sbuiltin(Some id, ef, tyargs, el) ->
141137
fprintf p "@[<hv 2>%s =@ builtin %s@,(@[<hov 0>%a@]);@]"
142-
(temp_name id)
138+
(extern_atom id)
143139
(name_of_external ef)
144140
print_expr_list (true, el)
145141
| Ssequence(Sskip, s2) ->
@@ -210,7 +206,7 @@ and print_stmt_for p s =
210206
| Sassign(e1, e2) ->
211207
fprintf p "%a = %a" print_expr e1 print_expr e2
212208
| Sset(id, e2) ->
213-
fprintf p "%s = %a" (temp_name id) print_expr e2
209+
fprintf p "%s = %a" (extern_atom id) print_expr e2
214210
| Ssequence(Sskip, s2) ->
215211
print_stmt_for p s2
216212
| Ssequence(s1, s2) ->
@@ -221,7 +217,7 @@ and print_stmt_for p s =
221217
print_expr_list (true, el)
222218
| Scall(Some id, e1, el) ->
223219
fprintf p "@[<hv 2>%s =@ %a@,(@[<hov 0>%a@])@]"
224-
(temp_name id)
220+
(extern_atom id)
225221
expr (15, e1)
226222
print_expr_list (true, el)
227223
| Sbuiltin(None, ef, tyargs, el) ->
@@ -230,7 +226,7 @@ and print_stmt_for p s =
230226
print_expr_list (true, el)
231227
| Sbuiltin(Some id, ef, tyargs, el) ->
232228
fprintf p "@[<hv 2>%s =@ builtin %s@,(@[<hov 0>%a@]);@]"
233-
(temp_name id)
229+
(extern_atom id)
234230
(name_of_external ef)
235231
print_expr_list (true, el)
236232
| _ ->
@@ -248,7 +244,7 @@ let print_function p id f =
248244
f.fn_vars;
249245
List.iter
250246
(fun (id, ty) ->
251-
fprintf p "register %s;@ " (name_cdecl (temp_name id) ty))
247+
fprintf p "register %s;@ " (name_cdecl (extern_atom id) ty))
252248
f.fn_temps;
253249
print_stmt p f.fn_body;
254250
fprintf p "@;<0 -2>}@]@ @ "

0 commit comments

Comments
 (0)