summaryrefslogtreecommitdiff
path: root/gcc/config/mn10300/mn10300.md
diff options
context:
space:
mode:
authorlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>1997-06-12 05:12:40 +0000
committerlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>1997-06-12 05:12:40 +0000
commit63ca4e3137ff207c0f3c37a04c0085bdb62b0b09 (patch)
tree8898505425fc427d5e2d7a00d713acfe1094706e /gcc/config/mn10300/mn10300.md
parent1e7c52a6e1417d0e57ecad7c31a9a816c0cc2345 (diff)
downloadgcc-63ca4e3137ff207c0f3c37a04c0085bdb62b0b09.tar.gz
* mn10300.md (call, call_value): Use "call" instead of "calls"
for calls to named functions. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@14228 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/mn10300/mn10300.md')
-rw-r--r--gcc/config/mn10300/mn10300.md16
1 files changed, 14 insertions, 2 deletions
diff --git a/gcc/config/mn10300/mn10300.md b/gcc/config/mn10300/mn10300.md
index 8fab7c11bf1..f821e499f2a 100644
--- a/gcc/config/mn10300/mn10300.md
+++ b/gcc/config/mn10300/mn10300.md
@@ -1139,7 +1139,13 @@
[(call (mem:QI (match_operand:SI 0 "call_address_operand" "aS"))
(match_operand:SI 1 "general_operand" "g"))]
""
- "calls %C0"
+ "*
+{
+ if (REG_P (operands[0]))
+ return \"calls %C0\";
+ else
+ return \"call %C0,[],0\";
+}"
[(set_attr "cc" "clobber")])
;; Call subroutine, returning value in operand 0
@@ -1165,7 +1171,13 @@
(call (mem:QI (match_operand:SI 1 "call_address_operand" "aS"))
(match_operand:SI 2 "general_operand" "g")))]
""
- "calls %C1"
+ "*
+{
+ if (REG_P (operands[1]))
+ return \"calls %C1\";
+ else
+ return \"call %C1,[],0\";
+}"
[(set_attr "cc" "clobber")])
(define_expand "untyped_call"