This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

PATCH: PR c++/16276: Group jump table with function


This patch tries to implement comdat group to properly fix the
second testcase in PR 16276.  There are still a few issues:

1. The latest binutils is needed. The current binutils in CVS doesn't
support mixing comdat and linkonce:

http://sources.redhat.com/bugzilla/show_bug.cgi?id=246

I do have a patch to fix it. It will be tricky to check if binutils is
OK.

2. It uses string functions to convert the linkonce section name into
comdat group. The interface isn't very elegant. But its advantages are

	a. Minimum change for gcc. Gcc supports more than ELF while
	comdat group is ELF specific.
	b. Section name is very significant in gcc. It is used for
	code generation among others. Also we may have to keep
	the same section naming scheme to support
	
		__attribute__ ((section (".foo")))

	Introducing a parallel section naming scheme for comdat group
	may be problematic.
	c. It is easy to put a section into a group by giving it the
	right name.


H.J.

Attachment: gcc-3.4-comdat-7.patch
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]