aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/trans-decl.c
diff options
context:
space:
mode:
authorFrancois-Xavier Coudert <coudert@clipper.ens.fr>2006-07-12 17:11:11 +0200
committerFrançois-Xavier Coudert <fxcoudert@gcc.gnu.org>2006-07-12 15:11:11 +0000
commitb3eb1e0e9c1dc7cf7bf0a0d919a1a6239e37298b (patch)
tree72011c46efd76d2283de727ac46c303a3a63e36b /gcc/fortran/trans-decl.c
parent45e49d96406fc14662840eaf7d82b2bcbbbccab2 (diff)
downloadgcc-b3eb1e0e9c1dc7cf7bf0a0d919a1a6239e37298b.zip
gcc-b3eb1e0e9c1dc7cf7bf0a0d919a1a6239e37298b.tar.gz
gcc-b3eb1e0e9c1dc7cf7bf0a0d919a1a6239e37298b.tar.bz2
re PR fortran/28163 (Calling libgfortran's copy_string is inefficient)
PR fortran/28163 * trans-expr.c (gfc_trans_string_copy): Generate inline code to perform string copying instead of calling a library function. * trans-decl.c (gfc_build_intrinsic_function_decls): Don't build decl for copy_string. * trans.h (gfor_fndecl_copy_string): Remove prototype. * intrinsics/string_intrinsics.c (copy_string): Remove function. From-SVN: r115372
Diffstat (limited to 'gcc/fortran/trans-decl.c')
-rw-r--r--gcc/fortran/trans-decl.c8
1 files changed, 0 insertions, 8 deletions
diff --git a/gcc/fortran/trans-decl.c b/gcc/fortran/trans-decl.c
index 14aee05..7398e16 100644
--- a/gcc/fortran/trans-decl.c
+++ b/gcc/fortran/trans-decl.c
@@ -121,7 +121,6 @@ tree gfor_fndecl_math_exponent16;
/* String functions. */
-tree gfor_fndecl_copy_string;
tree gfor_fndecl_compare_string;
tree gfor_fndecl_concat_string;
tree gfor_fndecl_string_len_trim;
@@ -1938,13 +1937,6 @@ gfc_build_intrinsic_function_decls (void)
tree gfc_c_int_type_node = gfc_get_int_type (gfc_c_int_kind);
/* String functions. */
- gfor_fndecl_copy_string =
- gfc_build_library_function_decl (get_identifier (PREFIX("copy_string")),
- void_type_node,
- 4,
- gfc_charlen_type_node, pchar_type_node,
- gfc_charlen_type_node, pchar_type_node);
-
gfor_fndecl_compare_string =
gfc_build_library_function_decl (get_identifier (PREFIX("compare_string")),
gfc_int4_type_node,