Hi Vyacheslav
I am really impressed with your reply.
I've checked your patch against v2.1 git.
It works!
However, following example which is 95% of production code still
allocates tables within loop.
function table_index(t, ix)
return t[ix]
end
mt = {
__newindex = function (a, ix, v)
rawset(a.arr, a.table_index(ix, 2), v)
end
}
function tt()
local res = { arr = {} }
res.table_index = table_index
setmetatable(res, mt)
for j=0,2 do
for i=1,10000 do
res[ {j, i} ] = 1
end
end
return res
end
jit.flush()
aa=tt()
2015-08-01 13:00 GMT+03:00 Vyacheslav Egorov <dmarc-noreply@xxxxxxxxxxxxx>:
However as far as I can see fwd_ahload doesn't take into account
aliasing between keys so it thinks there might be some aliasing.
I would like to correct this statement though: aa_ahref does try to
take aliasing between keys into account - it at least applies a simple
typed based disambiguation.
// Vyacheslav Egorov