summaryrefslogtreecommitdiff
path: root/gcc/config/ia64
diff options
context:
space:
mode:
authorsje <sje@138bc75d-0d04-0410-961f-82ee72b054a4>2006-09-19 16:09:48 +0000
committersje <sje@138bc75d-0d04-0410-961f-82ee72b054a4>2006-09-19 16:09:48 +0000
commit27ab60b9aee32c1ebe867ae3b44c0c672b9f8c8b (patch)
tree4116078183253fbe2e19f8543b09fedb9adad0ea /gcc/config/ia64
parentd105e3e214b1e4b5a02875e81f5cd7decc813179 (diff)
downloadgcc-27ab60b9aee32c1ebe867ae3b44c0c672b9f8c8b.tar.gz
PR 28490
* config/ia64/ia64.c (ia64_legitimate_constant_p): Allow function pointers as legitimate constants. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@117057 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/ia64')
-rw-r--r--gcc/config/ia64/ia64.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c
index 71953e29570..8a98b2457c4 100644
--- a/gcc/config/ia64/ia64.c
+++ b/gcc/config/ia64/ia64.c
@@ -831,8 +831,9 @@ ia64_legitimate_constant_p (rtx x)
op = XEXP (XEXP (op, 0), 0);
}
- if (any_offset_symbol_operand (op, GET_MODE (op)))
- return true;
+ if (any_offset_symbol_operand (op, GET_MODE (op))
+ || function_operand (op, GET_MODE (op)))
+ return true;
if (aligned_offset_symbol_operand (op, GET_MODE (op)))
return (addend & 0x3fff) == 0;
return false;