[Bug rtl-optimization/53422] New: reduce the size of CODE_LABEL rtl
dann at ics dot uci.edu
gcc-bugzilla@gcc.gnu.org
Sun May 20 06:13:00 GMT 2012
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53422
Bug #: 53422
Summary: reduce the size of CODE_LABEL rtl
Classification: Unclassified
Product: gcc
Version: 4.8.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: rtl-optimization
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: dann@ics.uci.edu
Created attachment 27447
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=27447
reorder CODE_LABEL fields to reduce size
CODE_LABEL has one field that is only used by the "sh" backend.
It's kind of rude of a backend to pollute the cache and memory in all
compilations.
If the order of CODE_LABEL fields is changed so that the "sh" specific entry to
be last, then it's easy to define CODE_LABEL conditionally so that it does not
use that last entry on the rest of the machines.
One field is only used by jump.c, if that's moved to a local data structure in
jump.c, then more savings are possible, but that's much more complicated.
BARRIER also has some unused fields that just pollute the cache.
This simple patch is at least 5 years old, last updated a couple of years ago,
attaching it here in hope that someone can pick it up and do whatever is needed
to check it in.
ChangeLog
* rtl.def (CODE_LABEL): Reorder fields so that the sh specific entry is
last.
(BARRIER): Remove padding.
* rtl.h (CODE_LABEL_NUMBER, LABEL_NAME, LABEL_NUSES, LABEL_REFS):
* gengtype.c (adjust_field_rtx_def): Adjust for new CODE_LABEL field
order.
More information about the Gcc-bugs
mailing list