[cfe-commits] PATCH: Large re-working of bitfield IR-gen, and a fix for PR13691
Eli Friedman
eli.friedman at gmail.com
Wed Nov 28 16:49:35 PST 2012
On Wed, Nov 28, 2012 at 4:36 PM, Chandler Carruth <chandlerc at google.com> wrote:
> I don't have 176.gcc handy, but I looked at the binary sizes for every
> program in the LNT test suite. Here are the benchmarks which changed
> by at least 1%. First column is the benchmark, then the old size of
> the '.text' section, then the new size, and finally "(new - old) /
> old" to show the % change.
>
> MultiSource/Benchmarks/Fhourstones-3.1/Output/fhourstones3.1.simple,
> 4872, 4984, 0.022988505747126436
The actual numbers don't matter, but it's an interesting proxy for our
handling of the following struct from that benchmark:
typedef struct {
unsigned biglock:LOCKSIZE;
unsigned bigwork:6;
unsigned newlock:LOCKSIZE;
unsigned newscore:3;
unsigned bigscore:3;
} hashentry;
The code-size increase probably indicates we're not doing a good job
of narrowing the large loads generated by the new bitfield code.
-Eli
More information about the cfe-commits
mailing list