diff options
author | Jakub Jelinek <jakub@redhat.com> | 2012-12-18 11:50:47 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2012-12-18 11:50:47 +0100 |
commit | 76bd29f63c873a5e50665d3be09f3d6e96dd2cf7 (patch) | |
tree | aa9c6427dcc97a3b76b02ae4b8e5bfd7aa409495 /gcc/rtlhooks-def.h | |
parent | 07146f23bcb7633110474cbf8476df1186352408 (diff) | |
download | gcc-76bd29f63c873a5e50665d3be09f3d6e96dd2cf7.zip gcc-76bd29f63c873a5e50665d3be09f3d6e96dd2cf7.tar.gz gcc-76bd29f63c873a5e50665d3be09f3d6e96dd2cf7.tar.bz2 |
re PR rtl-optimization/55717 (ICE in form_sum, at reload.c:5400)
PR debug/55717
* rtlhooks-def.h (RTL_HOOKS_GEN_LOWPART_NO_EMIT): Define to
gen_lowpart_if_possible.
(gen_lowpart_no_emit_general): Remove prototype.
* rtlhooks.c (gen_lowpart_no_emit_general): Removed.
* simplify-rtx.c (simplify_unary_operation_1,
simplify_binary_operation_1): Continue simplifying if
rtl_hooks.gen_lowpart_no_emit returns NULL_RTX.
* dwarf2out.c (mem_loc_descriptor) <case TRUNCATE>: Handle
truncation like lowpart SUBREG.
* testsuite/g++.dg/opt/pr55717.C: New test.
From-SVN: r194575
Diffstat (limited to 'gcc/rtlhooks-def.h')
-rw-r--r-- | gcc/rtlhooks-def.h | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/gcc/rtlhooks-def.h b/gcc/rtlhooks-def.h index 07d8fcf..ab442e69 100644 --- a/gcc/rtlhooks-def.h +++ b/gcc/rtlhooks-def.h @@ -1,5 +1,5 @@ /* Default macros to initialize an rtl_hooks data structure. - Copyright 2004, 2005, 2007, 2008 Free Software Foundation, Inc. + Copyright 2004, 2005, 2007, 2008, 2012 Free Software Foundation, Inc. This file is part of GCC. @@ -23,7 +23,7 @@ along with GCC; see the file COPYING3. If not see #include "rtl.h" #define RTL_HOOKS_GEN_LOWPART gen_lowpart_general -#define RTL_HOOKS_GEN_LOWPART_NO_EMIT gen_lowpart_no_emit_general +#define RTL_HOOKS_GEN_LOWPART_NO_EMIT gen_lowpart_if_possible #define RTL_HOOKS_REG_NONZERO_REG_BITS reg_nonzero_bits_general #define RTL_HOOKS_REG_NUM_SIGN_BIT_COPIES reg_num_sign_bit_copies_general #define RTL_HOOKS_REG_TRUNCATED_TO_MODE reg_truncated_to_mode_general @@ -38,7 +38,6 @@ along with GCC; see the file COPYING3. If not see } extern rtx gen_lowpart_general (enum machine_mode, rtx); -extern rtx gen_lowpart_no_emit_general (enum machine_mode, rtx); extern rtx reg_nonzero_bits_general (const_rtx, enum machine_mode, const_rtx, enum machine_mode, unsigned HOST_WIDE_INT, |