diff options
author | Ian Lance Taylor <ian@wasabisystems.com> | 2004-01-23 21:05:21 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@gcc.gnu.org> | 2004-01-23 21:05:21 +0000 |
commit | e129d93a7b1eda6ee734fff7aa1f8bc60e5ba7e2 (patch) | |
tree | 1957c990b77f48c80e149663c064a9f71d8e783a /gcc/hooks.h | |
parent | f6c930a38a5633c4880f572feaddfce14b45951b (diff) | |
download | gcc-e129d93a7b1eda6ee734fff7aa1f8bc60e5ba7e2.zip gcc-e129d93a7b1eda6ee734fff7aa1f8bc60e5ba7e2.tar.gz gcc-e129d93a7b1eda6ee734fff7aa1f8bc60e5ba7e2.tar.bz2 |
re PR target/1532 (-O3 generates (obviously) redundant tests and jumps)
PR gcc/1532
* cse.c (cse_change_cc_mode): New static function.
(cse_change_cc_mode_insns, cse_cc_succs): Likewise.
(cse_condition_code_reg): New function.
* rtl.h (cse_condition_code_reg): Declare.
* toplev.c (rest_of_handle_cse2): Call cse_condition_code_reg.
* target.h (struct gcc_target): Add fixed_condition_code_regs and
cc_modes_compatible.
* target-def.h (TARGET_FIXED_CONDITION_CODE_REGS): Define.
(TARGET_CC_MODES_COMPATIBLE): Define.
(TARGET_INITIALIZER): Add new initializers.
* targhooks.c (default_cc_modes_compatible): New function.
* targhooks.c (default_cc_modes_compatible): Declare.
* hooks.c (hook_bool_intp_intp_false): New function.
* hooks.h (hook_bool_intp_intp_false): Declare.
* config/i386/i386.c (TARGET_FIXED_CONDITION_CODE_REGS): Define.
(TARGET_CC_MODES_COMPATIBLE): Define.
(ix86_fixed_condition_code_regs): New static function.
(ix86_cc_modes_compatible): Likewise.
* doc/tm.texi (Condition Code): Document new hooks.
From-SVN: r76454
Diffstat (limited to 'gcc/hooks.h')
-rw-r--r-- | gcc/hooks.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/hooks.h b/gcc/hooks.h index 7711115..583b504 100644 --- a/gcc/hooks.h +++ b/gcc/hooks.h @@ -1,5 +1,5 @@ /* General-purpose hooks. - Copyright (C) 2002, 2003 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the @@ -31,6 +31,7 @@ extern bool hook_bool_tree_hwi_hwi_tree_false (tree, HOST_WIDE_INT, HOST_WIDE_IN extern bool hook_bool_tree_hwi_hwi_tree_true (tree, HOST_WIDE_INT, HOST_WIDE_INT, tree); extern bool hook_bool_rtx_false (rtx); +extern bool hook_bool_uintp_uintp_false (unsigned int *, unsigned int *); extern bool hook_bool_rtx_int_int_intp_false (rtx, int, int, int *); extern bool hook_bool_constcharptr_size_t_false (const char *, size_t); |