Prudently revert the type of "Cconst_symbol" to typ_val instead of typ_int.
There seems to be issues with let-bound variables initialized with symbol addresses and later updated. git-svn-id: http://caml.inria.fr/svn/ocaml/branches/cmm-mach-types@15572 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02master
parent
0a1a5b0e28
commit
ec1ba73399
|
@ -451,7 +451,7 @@ method emit_expr env exp =
|
|||
let r = self#regs_for typ_float in
|
||||
Some(self#insert_op (Iconst_float n) [||] r)
|
||||
| Cconst_symbol n ->
|
||||
let r = self#regs_for typ_int in (* pointer outside heap *)
|
||||
let r = self#regs_for typ_val in
|
||||
Some(self#insert_op (Iconst_symbol n) [||] r)
|
||||
| Cconst_pointer n ->
|
||||
let r = self#regs_for typ_val in (* integer as Caml value *)
|
||||
|
|
Loading…
Reference in New Issue