mirror of
git://c9x.me/qbe.git
synced 2026-04-05 09:59:47 +00:00
Blk::ins is a vector
Scratching an itch - avoid unnecesary re-allocation in idup() which is called often in the optimisation chain. Blk::ins is reallocated in xxx_abi() - needs further fiddling.
This commit is contained in:
parent
024dffac8b
commit
ca928f6f8d
@ -670,7 +670,7 @@ amd64_sysv_abi(Fn *fn)
|
||||
break;
|
||||
fa = selpar(fn, b->ins, i);
|
||||
n = b->nins - (i - b->ins) + (&insb[NIns] - curi);
|
||||
i0 = alloc(n * sizeof(Ins));
|
||||
i0 = vnew(n, sizeof(Ins), PFn);
|
||||
ip = icpy(ip = i0, curi, &insb[NIns] - curi);
|
||||
ip = icpy(ip, i, &b->ins[b->nins] - i);
|
||||
b->nins = n;
|
||||
|
||||
@ -744,7 +744,7 @@ arm64_abi(Fn *fn)
|
||||
break;
|
||||
p = selpar(fn, b->ins, i);
|
||||
n = b->nins - (i - b->ins) + (&insb[NIns] - curi);
|
||||
i0 = alloc(n * sizeof(Ins));
|
||||
i0 = vnew(n, sizeof(Ins), PFn);
|
||||
ip = icpy(ip = i0, curi, &insb[NIns] - curi);
|
||||
ip = icpy(ip, i, &b->ins[b->nins] - i);
|
||||
b->nins = n;
|
||||
|
||||
@ -601,7 +601,7 @@ rv64_abi(Fn *fn)
|
||||
break;
|
||||
p = selpar(fn, b->ins, i);
|
||||
n = b->nins - (i - b->ins) + (&insb[NIns] - curi);
|
||||
i0 = alloc(n * sizeof(Ins));
|
||||
i0 = vnew(n, sizeof(Ins), PFn);
|
||||
ip = icpy(ip = i0, curi, &insb[NIns] - curi);
|
||||
ip = icpy(ip, i, &b->ins[b->nins] - i);
|
||||
b->nins = n;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user