aboutsummaryrefslogtreecommitdiff
path: root/gcc/rtlhooks.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2012-12-18 11:50:47 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2012-12-18 11:50:47 +0100
commit76bd29f63c873a5e50665d3be09f3d6e96dd2cf7 (patch)
treeaa9c6427dcc97a3b76b02ae4b8e5bfd7aa409495 /gcc/rtlhooks.c
parent07146f23bcb7633110474cbf8476df1186352408 (diff)
downloadgcc-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.c')
-rw-r--r--gcc/rtlhooks.c15
1 files changed, 2 insertions, 13 deletions
diff --git a/gcc/rtlhooks.c b/gcc/rtlhooks.c
index 60e4d52..ef6552d 100644
--- a/gcc/rtlhooks.c
+++ b/gcc/rtlhooks.c
@@ -1,5 +1,6 @@
/* Generic hooks for the RTL middle-end.
- Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
+ Copyright (C) 2004, 2005, 2007, 2008, 2009, 2011, 2012
+ Free Software Foundation, Inc.
This file is part of GCC.
@@ -79,18 +80,6 @@ gen_lowpart_general (enum machine_mode mode, rtx x)
}
}
-/* Similar to gen_lowpart, but cannot emit any instruction via
- copy_to_reg or force_reg. Mainly used in simplify-rtx.c. */
-rtx
-gen_lowpart_no_emit_general (enum machine_mode mode, rtx x)
-{
- rtx result = gen_lowpart_if_possible (mode, x);
- if (result)
- return result;
- else
- return x;
-}
-
rtx
reg_num_sign_bit_copies_general (const_rtx x ATTRIBUTE_UNUSED,
enum machine_mode mode ATTRIBUTE_UNUSED,