aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorNathan Froyd <froydnj@codesourcery.com>2011-05-03 15:49:22 +0000
committerNathan Froyd <froydnj@gcc.gnu.org>2011-05-03 15:49:22 +0000
commit4cb4452830cb94321f419f9cb82eced15878f19d (patch)
treeef212ffc4f4acdbabfc2689cfb912213444f3c82 /gcc
parent4c203a6ab7a2c53dc68538b9fee51a3f4d27db62 (diff)
downloadgcc-4cb4452830cb94321f419f9cb82eced15878f19d.zip
gcc-4cb4452830cb94321f419f9cb82eced15878f19d.tar.gz
gcc-4cb4452830cb94321f419f9cb82eced15878f19d.tar.bz2
sh.c (sh_media_init_builtins): Call build_function_type_list instead of build_function_type.
* config/sh/sh.c (sh_media_init_builtins): Call build_function_type_list instead of build_function_type. From-SVN: r173318
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/sh/sh.c9
2 files changed, 11 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 386fd8a..531d4fa 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,10 @@
2011-05-03 Nathan Froyd <froydnj@codesourcery.com>
+ * config/sh/sh.c (sh_media_init_builtins): Call
+ build_function_type_list instead of build_function_type.
+
+2011-05-03 Nathan Froyd <froydnj@codesourcery.com>
+
* config/sparc/sparc.c (sparc_file_end): Call
build_function_type_list instead of build_function_type.
diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c
index 6d0e213..d799782 100644
--- a/gcc/config/sh/sh.c
+++ b/gcc/config/sh/sh.c
@@ -11231,6 +11231,7 @@ sh_media_init_builtins (void)
else
{
int has_result = signature_args[signature][0] != 0;
+ tree args[3];
if ((signature_args[signature][1] & 8)
&& (((signature_args[signature][1] & 1) && TARGET_SHMEDIA32)
@@ -11239,7 +11240,8 @@ sh_media_init_builtins (void)
if (! TARGET_FPU_ANY
&& FLOAT_MODE_P (insn_data[d->icode].operand[0].mode))
continue;
- type = void_list_node;
+ for (i = 0; i < (int) ARRAY_SIZE (args); i++)
+ args[i] = NULL_TREE;
for (i = 3; ; i--)
{
int arg = signature_args[signature][i];
@@ -11257,9 +11259,10 @@ sh_media_init_builtins (void)
arg_type = void_type_node;
if (i == 0)
break;
- type = tree_cons (NULL_TREE, arg_type, type);
+ args[i-1] = arg_type;
}
- type = build_function_type (arg_type, type);
+ type = build_function_type_list (arg_type, args[0], args[1],
+ args[2], NULL_TREE);
if (signature < SH_BLTIN_NUM_SHARED_SIGNATURES)
shared[signature] = type;
}