Merge branch 'master' into v2.1

This commit is contained in:
Mike Pall 2013-04-09 16:35:02 +02:00
commit e92e29dd4e
2 changed files with 4 additions and 3 deletions

View File

@ -251,8 +251,9 @@ enabled:
<ul> <ul>
<li><tt>goto</tt> and <tt>::labels::</tt>.</li> <li><tt>goto</tt> and <tt>::labels::</tt>.</li>
<li>Hex escapes <tt>'\x3F'</tt> and <tt>'\*'</tt> escape in strings.</li> <li>Hex escapes <tt>'\x3F'</tt> and <tt>'\*'</tt> escape in strings.</li>
<li><tt>load(string|reader, chunkname [,mode [,env]])</tt>. <li><tt>load(string|reader [, chunkname [,mode [,env]]])</tt>.</li>
<tt>loadstring()</tt> is an alias.</li> <li><tt>loadstring()</tt> is an alias for <tt>load()</tt>.</li>
<li><tt>loadfile(filename [,mode [,env]])</tt>.</li>
<li><tt>math.log(x [,base])</tt>. <li><tt>math.log(x [,base])</tt>.
<li><tt>string.rep(s, n [,sep])</tt>. <li><tt>string.rep(s, n [,sep])</tt>.
<li><tt>string.format()</tt>: <tt>%q</tt> reversible. <li><tt>string.format()</tt>: <tt>%q</tt> reversible.

View File

@ -347,7 +347,7 @@ TRef LJ_FASTCALL lj_opt_dse_ahstore(jit_State *J)
IRIns *ir; IRIns *ir;
/* Check for any intervening guards (includes conflicting loads). */ /* Check for any intervening guards (includes conflicting loads). */
for (ir = IR(J->cur.nins-1); ir > store; ir--) for (ir = IR(J->cur.nins-1); ir > store; ir--)
if (irt_isguard(ir->t)) if (irt_isguard(ir->t) || ir->o == IR_CALLL)
goto doemit; /* No elimination possible. */ goto doemit; /* No elimination possible. */
/* Remove redundant store from chain and replace with NOP. */ /* Remove redundant store from chain and replace with NOP. */
*refp = store->prev; *refp = store->prev;