summaryrefslogtreecommitdiff
path: root/gcc/rtlanal.c
diff options
context:
space:
mode:
authorburnus <burnus@138bc75d-0d04-0410-961f-82ee72b054a4>2016-09-20 21:49:12 +0000
committerburnus <burnus@138bc75d-0d04-0410-961f-82ee72b054a4>2016-09-20 21:49:12 +0000
commitc9c81ef3c667aaa14c498a5449ec6d134b4b66ff (patch)
tree0ac440db6513ee01deb5e5dc6142769d1e5b7b2d /gcc/rtlanal.c
parent12cdcb9d74f55c165366ca1b1eeec013a0ce72ef (diff)
parent891196d7325e4c55d92d5ac5cfe7161c4f36c0ce (diff)
downloadgcc-fortran-dev.tar.gz
Merge from trunk (r239915 to r240230)fortran-dev
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/fortran-dev@240290 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/rtlanal.c')
-rw-r--r--gcc/rtlanal.c32
1 files changed, 2 insertions, 30 deletions
diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c
index 6470c4377ea..470c143fcf2 100644
--- a/gcc/rtlanal.c
+++ b/gcc/rtlanal.c
@@ -345,7 +345,6 @@ rtx_varies_p (const_rtx x, bool for_alias)
static HOST_WIDE_INT
get_initial_register_offset (int from, int to)
{
-#ifdef ELIMINABLE_REGS
static const struct elim_table_t
{
const int from;
@@ -448,33 +447,6 @@ get_initial_register_offset (int from, int to)
return get_initial_register_offset (from, FRAME_POINTER_REGNUM);
else
return 0;
-
-#else
- HOST_WIDE_INT offset;
-
- if (to == from)
- return 0;
-
- if (reload_completed)
- {
- INITIAL_FRAME_POINTER_OFFSET (offset);
- }
- else
- {
- offset = crtl->outgoing_args_size + get_frame_size ();
-#if !STACK_GROWS_DOWNWARD
- offset = - offset;
-#endif
- }
-
- if (to == STACK_POINTER_REGNUM)
- return offset;
- else if (from == STACK_POINTER_REGNUM)
- return - offset;
- else
- return 0;
-
-#endif
}
/* Return nonzero if the use of X+OFFSET as an address in a MEM with SIZE
@@ -4511,8 +4483,8 @@ nonzero_bits1 (const_rtx x, machine_mode mode, const_rtx known_x,
int sign_index = GET_MODE_PRECISION (GET_MODE (x)) - 1;
int width0 = floor_log2 (nz0) + 1;
int width1 = floor_log2 (nz1) + 1;
- int low0 = floor_log2 (nz0 & -nz0);
- int low1 = floor_log2 (nz1 & -nz1);
+ int low0 = ctz_or_zero (nz0);
+ int low1 = ctz_or_zero (nz1);
unsigned HOST_WIDE_INT op0_maybe_minusp
= nz0 & (HOST_WIDE_INT_1U << sign_index);
unsigned HOST_WIDE_INT op1_maybe_minusp