aboutsummaryrefslogtreecommitdiff
path: root/gcc/java/builtins.c
diff options
context:
space:
mode:
authorBryce McKinlay <mckinlay@redhat.com>2006-07-13 14:19:04 +0000
committerBryce McKinlay <bryce@gcc.gnu.org>2006-07-13 15:19:04 +0100
commit0ed431d48446d901139127e3ce9dc894f0ced6c8 (patch)
treec16339824342ade22665525f786ce50742fea606 /gcc/java/builtins.c
parent18c3f977d0a09c3b96fa5ea69130bd625b128bde (diff)
downloadgcc-0ed431d48446d901139127e3ce9dc894f0ced6c8.zip
gcc-0ed431d48446d901139127e3ce9dc894f0ced6c8.tar.gz
gcc-0ed431d48446d901139127e3ce9dc894f0ced6c8.tar.bz2
builtins.c (check_for_builtin): If a builtin could result in a direct call being generated...
2006-07-12 Bryce McKinlay <mckinlay@redhat.com> * builtins.c (check_for_builtin): If a builtin could result in a direct call being generated, don't use it if flag_indirect_dispatch is set. From-SVN: r115414
Diffstat (limited to 'gcc/java/builtins.c')
-rw-r--r--gcc/java/builtins.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/java/builtins.c b/gcc/java/builtins.c
index 86aa00f..7793639 100644
--- a/gcc/java/builtins.c
+++ b/gcc/java/builtins.c
@@ -293,6 +293,11 @@ check_for_builtin (tree method, tree call)
method_arguments);
return result == NULL_TREE ? call : result;
}
+
+ /* Builtin functions emit a direct call which is incompatible
+ with the BC-ABI. */
+ if (flag_indirect_dispatch)
+ return call;
fn = built_in_decls[java_builtins[i].builtin_code];
if (fn == NULL_TREE)
return call;