diff options
author | Bernd Schmidt <bernds@cygnus.co.uk> | 1999-09-14 14:37:12 +0000 |
---|---|---|
committer | Bernd Schmidt <crux@gcc.gnu.org> | 1999-09-14 14:37:12 +0000 |
commit | bcb339946495233334317afdd24f151f2848b6f7 (patch) | |
tree | c31a7e707f3f98eb32c6a8e293f881939e037462 /gcc | |
parent | 86bcc1a3b42468c406957c476c41d15e8b5ae08b (diff) | |
download | gcc-bcb339946495233334317afdd24f151f2848b6f7.tar.gz |
Undo bogus changes from gcc2 merge
From-SVN: r29407
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 12 | ||||
-rw-r--r-- | gcc/emit-rtl.c | 16 | ||||
-rw-r--r-- | gcc/rtl.def | 12 |
3 files changed, 23 insertions, 17 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 43c1c59e54b..789fa51d16a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,15 @@ +Tue Sep 14 15:28:00 1999 Bernd Schmidt <bernds@cygnus.co.uk> + + Undo some changes from the gcc2 merge: + * rtl.def (CONSTANT_P_RTX): Fix the comment for this rtx code. + * emit-rtl.c (gen_rtx_REG): Don't test special reg rtx's for null + pointers. + + Undo this change: + Sat Oct 3 07:20:28 1998 Stephen L Moshier <moshier@world.std.com> + * emit-rtl.c (gen_lowpart_common): Disable optimization of + initialized float-int union if the value is a NaN. + Tue Sep 14 04:03:44 1999 Mumit Khan <khan@xraylith.wisc.edu> * gthr-win32.h: New file. diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c index e7150c296ab..70b080eb37c 100644 --- a/gcc/emit-rtl.c +++ b/gcc/emit-rtl.c @@ -251,22 +251,21 @@ gen_rtx_REG (mode, regno) if (mode == Pmode && !reload_in_progress) { - if (frame_pointer_rtx != 0 && regno == FRAME_POINTER_REGNUM) + if (regno == FRAME_POINTER_REGNUM) return frame_pointer_rtx; #if FRAME_POINTER_REGNUM != HARD_FRAME_POINTER_REGNUM - if (hard_frame_pointer_rtx != 0 && regno == HARD_FRAME_POINTER_REGNUM) + if (regno == HARD_FRAME_POINTER_REGNUM) return hard_frame_pointer_rtx; #endif #if FRAME_POINTER_REGNUM != ARG_POINTER_REGNUM && HARD_FRAME_POINTER_REGNUM != ARG_POINTER_REGNUM - if (arg_pointer_rtx != 0 && regno == ARG_POINTER_REGNUM) + if (regno == ARG_POINTER_REGNUM) return arg_pointer_rtx; #endif #ifdef RETURN_ADDRESS_POINTER_REGNUM - if (return_address_pointer_rtx != 0 - && regno == RETURN_ADDRESS_POINTER_REGNUM) + if (regno == RETURN_ADDRESS_POINTER_REGNUM) return return_address_pointer_rtx; #endif - if (stack_pointer_rtx != 0 && regno == STACK_POINTER_REGNUM) + if (regno == STACK_POINTER_REGNUM) return stack_pointer_rtx; } @@ -752,9 +751,6 @@ gen_lowpart_common (mode, x) i = INTVAL (x); r = REAL_VALUE_FROM_TARGET_SINGLE (i); - /* Avoid changing the bit pattern of a NaN. */ - if (REAL_VALUE_ISNAN (r)) - return 0; return CONST_DOUBLE_FROM_REAL_VALUE (r, mode); } #else @@ -793,8 +789,6 @@ gen_lowpart_common (mode, x) i[0] = low, i[1] = high; r = REAL_VALUE_FROM_TARGET_DOUBLE (i); - if (REAL_VALUE_ISNAN (r)) - return 0; return CONST_DOUBLE_FROM_REAL_VALUE (r, mode); } #else diff --git a/gcc/rtl.def b/gcc/rtl.def index 257ab07faf8..cf2edac7c69 100644 --- a/gcc/rtl.def +++ b/gcc/rtl.def @@ -530,13 +530,8 @@ DEF_RTL_EXPR(CONST_STRING, "const_string", "s", 'o') /* This is used to encapsulate an expression whose value is constant (such as the sum of a SYMBOL_REF and a CONST_INT) so that it will be recognized as a constant operand rather than by arithmetic instructions. */ -DEF_RTL_EXPR(CONST, "const", "e", 'o') -/* A unary `__builtin_constant_p' expression. This RTL code may only be used - as an operand of a CONST. This pattern is only emitted during RTL - generation and then only if optimize > 0. It is converted by the first - CSE pass into the appropriate CONST_INT. */ -DEF_RTL_EXPR(CONSTANT_P_RTX, "constant_p_rtx", "e", 'x') +DEF_RTL_EXPR(CONST, "const", "e", 'o') /* program counter. Ordinary jumps are represented by a SET whose first operand is (PC). */ @@ -855,6 +850,11 @@ DEF_RTL_EXPR(RANGE_VAR, "range_var", "eti", 'x') 0 is the live bitmap. Operand 1 is the original block number. */ DEF_RTL_EXPR(RANGE_LIVE, "range_live", "bi", 'x') +/* A unary `__builtin_constant_p' expression. These are only emitted + during RTL generation, and then only if optimize > 0. They are + eliminated by the first CSE pass. */ +DEF_RTL_EXPR(CONSTANT_P_RTX, "constant_p_rtx", "e", 'x') + /* A placeholder for a CALL_INSN which may be turned into a normal call, a sibling (tail) call or tail recursion. |