Commit 0aacc8ed by Richard Kenner Committed by Richard Kenner

alias.c (find_base_value, [...]): Handle #ifdef POINTERS_EXTEND_UNSIGNED.

	* alias.c (find_base_value, case ZERO_EXTEND, case SIGN_EXTEND):
	Handle #ifdef POINTERS_EXTEND_UNSIGNED.

From-SVN: r49706
parent aa3aae06
Tue Feb 12 10:12:56 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* alias.c (find_base_value, case ZERO_EXTEND, case SIGN_EXTEND):
Handle #ifdef POINTERS_EXTEND_UNSIGNED.
2002-02-11 Hans-Peter Nilsson <hp@bitrange.com> 2002-02-11 Hans-Peter Nilsson <hp@bitrange.com>
* config/mmix/mmix.c (mmix_assemble_integer) <case 1, 2>: Handle * config/mmix/mmix.c (mmix_assemble_integer) <case 1, 2>: Handle
......
...@@ -728,6 +728,7 @@ find_base_value (src) ...@@ -728,6 +728,7 @@ find_base_value (src)
rtx src; rtx src;
{ {
unsigned int regno; unsigned int regno;
switch (GET_CODE (src)) switch (GET_CODE (src))
{ {
case SYMBOL_REF: case SYMBOL_REF:
...@@ -846,8 +847,6 @@ find_base_value (src) ...@@ -846,8 +847,6 @@ find_base_value (src)
if (GET_MODE_SIZE (GET_MODE (src)) < GET_MODE_SIZE (Pmode)) if (GET_MODE_SIZE (GET_MODE (src)) < GET_MODE_SIZE (Pmode))
break; break;
/* Fall through. */ /* Fall through. */
case ZERO_EXTEND:
case SIGN_EXTEND: /* used for NT/Alpha pointers */
case HIGH: case HIGH:
case PRE_INC: case PRE_INC:
case PRE_DEC: case PRE_DEC:
...@@ -857,6 +856,19 @@ find_base_value (src) ...@@ -857,6 +856,19 @@ find_base_value (src)
case POST_MODIFY: case POST_MODIFY:
return find_base_value (XEXP (src, 0)); return find_base_value (XEXP (src, 0));
case ZERO_EXTEND:
case SIGN_EXTEND: /* used for NT/Alpha pointers */
{
rtx temp = find_base_value (XEXP (src, 0));
#ifdef POINTERS_EXTEND_UNSIGNED
if (temp != 0 && CONSTANT_P (temp) && GET_MODE (temp) != Pmode)
temp = convert_memory_address (Pmode, temp);
#endif
return temp;
}
default: default:
break; break;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment