diff options
author | John David Anglin <danglin@gcc.gnu.org> | 2016-06-07 01:56:01 +0000 |
---|---|---|
committer | John David Anglin <danglin@gcc.gnu.org> | 2016-06-07 01:56:01 +0000 |
commit | df32c0b335a41c8ca522433d6df04c647cc6d495 (patch) | |
tree | 7afb5b98c353479d9658f75f6a14ed7e1c2c3035 | |
parent | 6552d0dd5417a1c7e436cdb53ce65187d30a97fa (diff) | |
download | gcc-df32c0b335a41c8ca522433d6df04c647cc6d495.zip gcc-df32c0b335a41c8ca522433d6df04c647cc6d495.tar.gz gcc-df32c0b335a41c8ca522433d6df04c647cc6d495.tar.bz2 |
pa.md (call): Generate indirect long calls to non-local functions on TARGET_64BIT.
* config/pa/pa.md (call): Generate indirect long calls to non-local
functions on TARGET_64BIT.
(call_value): Likewise.
From-SVN: r237164
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/pa/pa.md | 4 |
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2a31264..edc45f5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,11 @@ 2016-06-06 John David Anglin <danglin@gcc.gnu.org> + * config/pa/pa.md (call): Generate indirect long calls to non-local + functions on TARGET_64BIT. + (call_value): Likewise. + +2016-06-06 John David Anglin <danglin@gcc.gnu.org> + * config/pa/pa.md (call_val_reg_64bit): Remove "reg: DI " clobber from pattern and subsequent splitters. (call_val_reg_64bit_post_reload): Likewise. diff --git a/gcc/config/pa/pa.md b/gcc/config/pa/pa.md index 4e714cd..493b764 100644 --- a/gcc/config/pa/pa.md +++ b/gcc/config/pa/pa.md @@ -7014,7 +7014,7 @@ add,l %2,%3,%3\;bv,n %%r0(%3)" op = XEXP (operands[0], 0); /* Generate indirect long calls to non-local functions. */ - if (!TARGET_64BIT && TARGET_LONG_CALLS && GET_CODE (op) == SYMBOL_REF) + if (TARGET_LONG_CALLS && GET_CODE (op) == SYMBOL_REF) { tree call_decl = SYMBOL_REF_DECL (op); if (!(call_decl && targetm.binds_local_p (call_decl))) @@ -7517,7 +7517,7 @@ add,l %2,%3,%3\;bv,n %%r0(%3)" call_powf = true; /* Generate indirect long calls to non-local functions. */ - else if (!TARGET_64BIT && TARGET_LONG_CALLS) + else if (TARGET_LONG_CALLS) { tree call_decl = SYMBOL_REF_DECL (op); if (!(call_decl && targetm.binds_local_p (call_decl))) |