This is the mail archive of the java-patches@gcc.gnu.org mailing list for the Java 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]

Calls to built-in functions are not Binary Compatible


This happens with methods like Math.pow() which are converted to
builtins.  Unfortunately, this leads to direct calls to methods in
libgcj.  This breaks binary compatibility when we change gcj's name
mangling.  Which we just did.

:-(

Andrew.


2006-03-01  Andrew Haley  <aph@redhat.com>

	* builtins.c (check_for_builtin): Don't convert if
	flag_indirect_dispatch is set.

Index: builtins.c
===================================================================
--- builtins.c	(revision 111600)
+++ builtins.c	(working copy)
@@ -267,7 +267,9 @@
 tree
 check_for_builtin (tree method, tree call)
 {
-  if (! flag_emit_class_files && optimize && TREE_CODE (call) == CALL_EXPR)
+  if (! flag_emit_class_files 
+      && ! flag_indirect_dispatch
+      && optimize && TREE_CODE (call) == CALL_EXPR)
     {
       int i;
       tree method_arguments = TREE_OPERAND (call, 1);


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