aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorMichael Hayes <m.hayes@elec.canterbury.ac.nz>2001-01-05 03:58:12 +0000
committerMichael Hayes <m.hayes@gcc.gnu.org>2001-01-05 03:58:12 +0000
commit06dd70c652a8ca50e09037918bf4ef804ac1d601 (patch)
treeaeea9175b71b47a39a19641ffe5835ec44bf79c1 /gcc
parent99e87c10036e8d45f31415ab6e3dc66c61bf4752 (diff)
downloadgcc-06dd70c652a8ca50e09037918bf4ef804ac1d601.zip
gcc-06dd70c652a8ca50e09037918bf4ef804ac1d601.tar.gz
gcc-06dd70c652a8ca50e09037918bf4ef804ac1d601.tar.bz2
c4x.c (c4x_init_builtins): Remove builtin support for 'abs', 'labs', and 'fabs'.
* config/c4x/c4x.c (c4x_init_builtins): Remove builtin support for 'abs', 'labs', and 'fabs'. (c4x_expand_builtin): Likewise. * config/c4x/c4x.h (enum c4x_builtins): Likewise. From-SVN: r38702
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog9
-rw-r--r--gcc/config/c4x/c4x.c49
-rw-r--r--gcc/config/c4x/c4x.h3
3 files changed, 11 insertions, 50 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 5322db5..a710137 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2001-01-05 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.c (c4x_init_builtins): Remove builtin support
+ for 'abs', 'labs', and 'fabs'.
+ (c4x_expand_builtin): Likewise.
+ * config/c4x/c4x.h (enum c4x_builtins): Likewise.
+
2001-01-05 Alexandre Oliva <aoliva@redhat.com>
* config/sh/sh.md (prget, prset): New insn types.
@@ -7,7 +14,7 @@
for prset and prget.
2001-01-05 Michael Hayes <mhayes@redhat.com>
-
+
* loop.h (struct loop_reg): New.
(struct loop_regs): Change to use array of `struct loop_reg'.
* loop.c: Replace assortment of varrays with single regs array.
diff --git a/gcc/config/c4x/c4x.c b/gcc/config/c4x/c4x.c
index 775c7b6..230b54c 100644
--- a/gcc/config/c4x/c4x.c
+++ b/gcc/config/c4x/c4x.c
@@ -829,11 +829,11 @@ c4x_expand_prologue ()
/* FIXME: Assume ISR doesn't require more than 32767 words
of local variables. */
if (size > 32767)
- error ("ISR %s requires %d words of local variables, "
- "maximum is 32767.", current_function_name, size);
+ error ("ISR %s requires %d words of local vars, max is 32767.",
+ current_function_name, size);
insn = emit_insn (gen_addqi3 (gen_rtx_REG (QImode, SP_REGNO),
gen_rtx_REG (QImode, SP_REGNO),
- GEN_INT(size)));
+ GEN_INT (size)));
RTX_FRAME_RELATED_P (insn) = 1;
}
for (regno = 0; regno < FIRST_PSEUDO_REGISTER; regno++)
@@ -4867,22 +4867,6 @@ void
c4x_init_builtins (endlink)
tree endlink;
{
-
- builtin_function ("abs",
- build_function_type
- (integer_type_node,
- tree_cons (NULL_TREE, integer_type_node, endlink)),
- C4X_BUILTIN_ABS, BUILT_IN_MD, NULL_PTR);
- builtin_function ("fabs",
- build_function_type
- (double_type_node,
- tree_cons (NULL_TREE, double_type_node, endlink)),
- C4X_BUILTIN_FABS, BUILT_IN_MD, NULL_PTR);
- builtin_function ("labs",
- build_function_type
- (long_integer_type_node,
- tree_cons (NULL_TREE, long_integer_type_node, endlink)),
- C4X_BUILTIN_LABS, BUILT_IN_MD, NULL_PTR);
builtin_function ("fast_ftoi",
build_function_type
(integer_type_node,
@@ -4938,33 +4922,6 @@ c4x_expand_builtin (exp, target, subtarget, mode, ignore)
switch (fcode)
{
- case C4X_BUILTIN_ABS:
- arg0 = TREE_VALUE (arglist);
- r0 = expand_expr (arg0, NULL_RTX, QImode, 0);
- r0 = protect_from_queue (r0, 0);
- if (! target || ! register_operand (target, QImode))
- target = gen_reg_rtx (QImode);
- emit_insn (gen_absqi2 (target, r0));
- return target;
-
- case C4X_BUILTIN_FABS:
- arg0 = TREE_VALUE (arglist);
- r0 = expand_expr (arg0, NULL_RTX, QFmode, 0);
- r0 = protect_from_queue (r0, 0);
- if (! target || ! register_operand (target, QFmode))
- target = gen_reg_rtx (QFmode);
- emit_insn (gen_absqf2 (target, r0));
- return target;
-
- case C4X_BUILTIN_LABS:
- arg0 = TREE_VALUE (arglist);
- r0 = expand_expr (arg0, NULL_RTX, QImode, 0);
- r0 = protect_from_queue (r0, 0);
- if (! target || ! register_operand (target, QImode))
- target = gen_reg_rtx (QImode);
- emit_insn (gen_absqi2 (target, r0));
- return target;
-
case C4X_BUILTIN_FIX:
arg0 = TREE_VALUE (arglist);
r0 = expand_expr (arg0, NULL_RTX, QFmode, 0);
diff --git a/gcc/config/c4x/c4x.h b/gcc/config/c4x/c4x.h
index eec7916..49b979e 100644
--- a/gcc/config/c4x/c4x.h
+++ b/gcc/config/c4x/c4x.h
@@ -2711,9 +2711,6 @@ if (final_sequence != NULL_RTX) \
enum c4x_builtins
{
/* intrinsic name */
- C4X_BUILTIN_ABS, /* abs */
- C4X_BUILTIN_FABS, /* fabs */
- C4X_BUILTIN_LABS, /* labs */
C4X_BUILTIN_FIX, /* fast_ftoi */
C4X_BUILTIN_FIX_ANSI, /* ansi_ftoi */
C4X_BUILTIN_MPYI, /* fast_imult (only C3x) */