re PR target/33388 (fr30: ICE: RTL check: expected code 'reg', have 'subreg' in rhs_r...
authorRask Ingemann Lambertsen <rask@sygehus.dk>
Tue, 18 Sep 2007 13:24:44 +0000 (15:24 +0200)
committerRask Ingemann Lambertsen <rask@gcc.gnu.org>
Tue, 18 Sep 2007 13:24:44 +0000 (13:24 +0000)
commite2972de5377c352200a84c0f3055b099631f3dbc
tree3793e6188f7bc696e01268348adc6d0ef3bf4772
parentda398bb590fc4568f0d00348f793839148ab593e
re PR target/33388 (fr30: ICE: RTL check: expected code 'reg', have 'subreg' in rhs_regno, at rtl.h:983)

PR target/33388
PR target/33397
* config/fr30/fr30.md (addsi3): Check REG_P() before calling REGNO().
(addsi_small_int): Likewise.
(addsi_big_int): Use rtx_equal_p() instead of REGNO() comparison.
(one_cmplsi2): Likewise.
(negsi2): Delete.
(enter_func): Expand insn using hard_frame_pointer_rtx and
stack_pointer_rtx.
(*enter_func): New.
* config/fr30/fr30.c (fr30_expand_prologue): Check for
hard_frame_pointer_rtx instead of using REGNO() check.
Properly sign extend GEN_INT() argument.

From-SVN: r128577
gcc/ChangeLog
gcc/config/fr30/fr30.c
gcc/config/fr30/fr30.md