diff options
author | Richard Sandiford <rdsandiford@googlemail.com> | 2009-02-21 09:15:13 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2009-02-21 09:15:13 +0000 |
commit | 2ec62529e94905195af24c630872c0f6df062c63 (patch) | |
tree | 16be1ac483a5866d5751cfc152a11e3026b59279 /gcc/emit-rtl.c | |
parent | 4e0bdc5e2265896a7dcc1630eed536cc47d7771c (diff) | |
download | gcc-2ec62529e94905195af24c630872c0f6df062c63.tar.gz |
loop-iv.c (truncate_value): New function.
gcc/
* loop-iv.c (truncate_value): New function.
(iv_subreg, get_iv_value, iv_number_of_iterations): Use it instead
of lowpart_subreg.
(lowpart_subreg): Move to...
* emit-rtl.c: ...here.
From-SVN: r144348
Diffstat (limited to 'gcc/emit-rtl.c')
-rw-r--r-- | gcc/emit-rtl.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c index 679e95ea8a2..2d6851528e7 100644 --- a/gcc/emit-rtl.c +++ b/gcc/emit-rtl.c @@ -1232,6 +1232,17 @@ gen_lowpart_common (enum machine_mode mode, rtx x) /* Otherwise, we can't do this. */ return 0; } + +/* Generates a subreg to get the least significant part of EXPR (in mode + INNER_MODE) to OUTER_MODE. */ + +rtx +lowpart_subreg (enum machine_mode outer_mode, rtx expr, + enum machine_mode inner_mode) +{ + return simplify_gen_subreg (outer_mode, expr, inner_mode, + subreg_lowpart_offset (outer_mode, inner_mode)); +} rtx gen_highpart (enum machine_mode mode, rtx x) |