pike.git/
src/
interpret_functions.h
Branch:
Tag:
Non-build tags
All tags
No tags
2001-06-28
2001-06-28 10:23:58 by Fredrik Hübinette (Hubbe) <hubbe@hubbe.net>
29cf5b0a248af7a6546cbabf4d6219c9301033a7 (
11
lines) (+
9
/-
2
)
[
Show
|
Annotate
]
Branch:
7.9
fixed a rather nasty memory leak
Rev: src/interpret_functions.h:1.63
1:
/*
-
* $Id: interpret_functions.h,v 1.
62
2001/06/
19
23:
59:33
hubbe Exp $
+
* $Id: interpret_functions.h,v 1.
63
2001/06/
28
10:
23:
58
hubbe Exp $
* * Opcode definitions for the interpreter. */
420:
BREAK; OPCODE0(F_LTOSVAL, "lvalue to svalue")
+
dmalloc_touch_svalue(Pike_sp-2);
+
dmalloc_touch_svalue(Pike_sp-1);
lvalue_to_svalue_no_free(Pike_sp, Pike_sp-2); Pike_sp++; BREAK; OPCODE0(F_LTOSVAL2, "ltosval2")
-
+
dmalloc_touch_svalue(Pike_sp-3);
+
dmalloc_touch_svalue(Pike_sp-2);
+
dmalloc_touch_svalue(Pike_sp-1);
Pike_sp[0] = Pike_sp[-1]; Pike_sp[-1].type = PIKE_T_INT; Pike_sp++;
487:
/* Optimization for a rather common case. Makes it 30% faster. */ Pike_sp[-1].u.integer += Pike_sp[-2].u.integer; assign_lvalue(Pike_sp-4,Pike_sp-1);
-
Pike_sp-=
4
;
/*
known
integers
and
a lvalue */
+
Pike_sp-=
2
;
+
pop_n_elems(2);
goto add_and_pop_done; } }