mirror of
https://gcc.gnu.org/git/gcc.git
synced 2025-01-11 21:43:39 +08:00
From Jeff Law.
* pa.c (basereg_operand): Simplify. From-SVN: r38382
This commit is contained in:
parent
79c2ffde68
commit
b088998d29
@ -1,3 +1,8 @@
|
||||
2000-12-19 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||||
|
||||
From Jeff Law.
|
||||
* pa.c (basereg_operand): Simplify.
|
||||
|
||||
2000-12-19 Bernd Schmidt <bernds@redhat.co.uk>
|
||||
|
||||
* haifa-sched.c (rm_line_notes): Arguments are now head and tail,
|
||||
|
@ -6152,29 +6152,15 @@ basereg_operand (op, mode)
|
||||
if (TARGET_NO_SPACE_REGS)
|
||||
return (GET_CODE (op) == REG);
|
||||
|
||||
/* Once reload has started any register with REG_POINTER set
|
||||
is considered valid. Reload should only create indexed addresses
|
||||
using the stack/frame pointer. All others are checked for
|
||||
validity when they are created by the combine pass. */
|
||||
if (reload_in_progress || reload_completed)
|
||||
return (GET_CODE (op) == REG && REG_POINTER (op));
|
||||
|
||||
/* Stack is always OK for indexing. */
|
||||
if (op == stack_pointer_rtx)
|
||||
return 1;
|
||||
|
||||
/* While it's always safe to index off the frame pointer, it's not
|
||||
always profitable, particularly when the frame pointer is being
|
||||
eliminated. */
|
||||
if (! flag_omit_frame_pointer && op == frame_pointer_rtx)
|
||||
return 1;
|
||||
|
||||
/* The only other valid OPs are pseudo registers with
|
||||
REG_POINTER set. */
|
||||
return (GET_CODE (op) == REG
|
||||
&& REGNO (op) >= FIRST_PSEUDO_REGISTER
|
||||
&& register_operand (op, mode)
|
||||
&& REG_POINTER (op));
|
||||
&& REG_POINTER (op)
|
||||
&& register_operand (op, mode));
|
||||
}
|
||||
|
||||
/* Return 1 if this operand is anything other than a hard register. */
|
||||
|
Loading…
Reference in New Issue
Block a user