[PATCH] Fix pr40914

Richard Earnshaw rearnsha@arm.com
Fri Jul 31 13:02:00 GMT 2009


This is my first foray into gimple stuff... beware!

This patch fixes a failure in the IPA inlining code where we miss an
opportunity to simplify a pointer-to-member function call on machines
where the vbit is stored in the delta rather than the function pointer.
The two code paths are sufficiently similar that we simply need to
detect the use of the delta field rather than the pfn when checking
whether the bit is being tested.

Tested on an arm-eabi cross, fixing g++.dg/ipa/iinline.C.

<date> Richard Earnshaw  <rearnsha@arm.com>

	* ipa-prop.c (ipa_get_ptr_load_param): New argument use_delta,
	if set, then check the delta field of the PMF record.
	(ipa_get_stmt_member_ptr_load_param): Propagate new param use_delta.
	(ipa_analyze_call_uses): Handle machines where the vbit for a PMF
	call is stored in the delta.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch
Type: text/x-patch
Size: 3947 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20090731/30dc2422/attachment.bin>


More information about the Gcc-patches mailing list