diff options
author | John David Anglin <dave.anglin@nrc-cnrc.gc.ca> | 2012-06-03 12:46:44 +0000 |
---|---|---|
committer | John David Anglin <danglin@gcc.gnu.org> | 2012-06-03 12:46:44 +0000 |
commit | a43434ffab6e7983ed1b9233490e38d4a1bc6f1a (patch) | |
tree | bc0a9e5cc20a658cd006bd6480a65ace5676dbad /gcc/config/pa/pa.h | |
parent | aba92f5fe08ffe72abe562a42381ab9f089177fa (diff) | |
download | gcc-a43434ffab6e7983ed1b9233490e38d4a1bc6f1a.tar.gz |
pa.h (MAX_PCREL17F_OFFSET): Define.
* config/pa/pa.h (MAX_PCREL17F_OFFSET): Define.
* config/pa/pa.c (pa_attr_length_millicode_call): Use
MAX_PCREL17F_OFFSET instead of fixed offset.
(pa_attr_length_call): Likewise.
(pa_attr_length_indirect_call): Likewise.
From-SVN: r188151
Diffstat (limited to 'gcc/config/pa/pa.h')
-rw-r--r-- | gcc/config/pa/pa.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/gcc/config/pa/pa.h b/gcc/config/pa/pa.h index c52e3d50877..d977c64fdb2 100644 --- a/gcc/config/pa/pa.h +++ b/gcc/config/pa/pa.h @@ -1519,3 +1519,12 @@ do { \ #undef TARGET_HAVE_TLS #define TARGET_HAVE_TLS true #endif + +/* The maximum offset in bytes for a PA 1.X pc-relative call to the + head of the preceding stub table. The selected offsets have been + chosen so that approximately one call stub is allocated for every + 86.7 instructions. A long branch stub is two instructions when + not generating PIC code. For HP-UX and ELF targets, PIC stubs are + seven and four instructions, respectively. */ +#define MAX_PCREL17F_OFFSET \ + (flag_pic ? (TARGET_HPUX ? 198164 : 221312) : 240000) |