aboutsummaryrefslogtreecommitdiff
path: root/gcc/emit-rtl.c
diff options
context:
space:
mode:
authorAnatoly Sokolov <aesok@post.ru>2015-07-31 00:25:29 +0300
committerAnatoly Sokolov <aesok@gcc.gnu.org>2015-07-31 00:25:29 +0300
commit3403a1a9597dd6f853c25aff2290a16d3a9c9d00 (patch)
tree7d30b2fde4a0cf5ac3d5774d1ff65ab67f3ba134 /gcc/emit-rtl.c
parente8fa381741bd504e42221463d18d0dae9eae4832 (diff)
downloadgcc-3403a1a9597dd6f853c25aff2290a16d3a9c9d00.zip
gcc-3403a1a9597dd6f853c25aff2290a16d3a9c9d00.tar.gz
gcc-3403a1a9597dd6f853c25aff2290a16d3a9c9d00.tar.bz2
Use lowpart_subreg instead of simplify_gen_subreg
From-SVN: r226417
Diffstat (limited to 'gcc/emit-rtl.c')
-rw-r--r--gcc/emit-rtl.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c
index caa33b8..d211e6b 100644
--- a/gcc/emit-rtl.c
+++ b/gcc/emit-rtl.c
@@ -1377,7 +1377,6 @@ gen_lowpart_common (machine_mode mode, rtx x)
{
int msize = GET_MODE_SIZE (mode);
int xsize;
- int offset = 0;
machine_mode innermode;
/* Unfortunately, this routine doesn't take a parameter for the mode of X,
@@ -1405,8 +1404,6 @@ gen_lowpart_common (machine_mode mode, rtx x)
if (SCALAR_FLOAT_MODE_P (mode) && msize > xsize)
return 0;
- offset = subreg_lowpart_offset (mode, innermode);
-
if ((GET_CODE (x) == ZERO_EXTEND || GET_CODE (x) == SIGN_EXTEND)
&& (GET_MODE_CLASS (mode) == MODE_INT
|| GET_MODE_CLASS (mode) == MODE_PARTIAL_INT))
@@ -1429,7 +1426,7 @@ gen_lowpart_common (machine_mode mode, rtx x)
else if (GET_CODE (x) == SUBREG || REG_P (x)
|| GET_CODE (x) == CONCAT || GET_CODE (x) == CONST_VECTOR
|| CONST_DOUBLE_AS_FLOAT_P (x) || CONST_SCALAR_INT_P (x))
- return simplify_gen_subreg (mode, x, innermode, offset);
+ return lowpart_subreg (mode, x, innermode);
/* Otherwise, we can't do this. */
return 0;