diff options
author | Richard Henderson <rth@redhat.com> | 2001-12-20 16:33:29 -0800 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2001-12-20 16:33:29 -0800 |
commit | f350566bf47f2584ccb8a7671ad6ffd4aa82a6b5 (patch) | |
tree | d62417bb4829147586e44684009e1704073769c6 /gcc | |
parent | 002d2e0b80007f11f8502f7e61d502c64c93e6c5 (diff) | |
download | gcc-f350566bf47f2584ccb8a7671ad6ffd4aa82a6b5.zip gcc-f350566bf47f2584ccb8a7671ad6ffd4aa82a6b5.tar.gz gcc-f350566bf47f2584ccb8a7671ad6ffd4aa82a6b5.tar.bz2 |
* config/alpha/alpha.md (prologue_mcount): Update for explicit relocs.
From-SVN: r48226
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/config/alpha/alpha.md | 7 |
2 files changed, 10 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 487302c..5caed01 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,9 @@ 2001-12-20 Richard Henderson <rth@redhat.com> + * config/alpha/alpha.md (prologue_mcount): Update for explicit relocs. + +2001-12-20 Richard Henderson <rth@redhat.com> + * config/alpha/alpha.c (call_operand) [OSF]: Accept pseudos. * config/alpha/alpha.md (call_osf, call_value_osf): Don't force operand into $27. diff --git a/gcc/config/alpha/alpha.md b/gcc/config/alpha/alpha.md index a3ac64b..605c56c 100644 --- a/gcc/config/alpha/alpha.md +++ b/gcc/config/alpha/alpha.md @@ -6470,7 +6470,12 @@ fadd,fmul,fcpys,fdiv,fsqrt,misc,mvi,ftoi,itof,multi" (define_insn "prologue_mcount" [(unspec_volatile [(const_int 0)] UNSPECV_MCOUNT)] "" - "lda $28,_mcount\;jsr $28,($28),_mcount" +{ + if (TARGET_EXPLICIT_RELOCS) + return "ldq $28,_mcount($29)\t\t!literal!%#\;jsr $28,($28),_mcount\t\t!lituse_jsr!%#"; + else + return "lda $28,_mcount\;jsr $28,($28),_mcount"; +} [(set_attr "type" "multi") (set_attr "length" "8")]) |