summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2001-12-21 00:33:29 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2001-12-21 00:33:29 +0000
commit013bea58e1e321b73abbd630dbf293bfab8b6319 (patch)
treed62417bb4829147586e44684009e1704073769c6
parentcc2e35706ab12ee610bcee707a86a940fcb7d5de (diff)
downloadppe42-gcc-013bea58e1e321b73abbd630dbf293bfab8b6319.tar.gz
ppe42-gcc-013bea58e1e321b73abbd630dbf293bfab8b6319.zip
* config/alpha/alpha.md (prologue_mcount): Update for explicit relocs.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48226 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/alpha/alpha.md7
2 files changed, 10 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 487302cea7c..5caed01b48d 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 a3ac64be094..605c56ca082 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")])
OpenPOWER on IntegriCloud