aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Earnshaw <rearnsha@arm.com>2000-11-29 15:53:46 +0000
committerRichard Earnshaw <rearnsha@gcc.gnu.org>2000-11-29 15:53:46 +0000
commit76b7dad31c40a9f34a499bfc899bd9483e7cd57e (patch)
tree2f7c7d001829ace2663df17e101b9512e6c84fb1 /gcc
parentdb45aaa6918235ba9f7ad694a0dbbcde4c303d4b (diff)
downloadgcc-76b7dad31c40a9f34a499bfc899bd9483e7cd57e.zip
gcc-76b7dad31c40a9f34a499bfc899bd9483e7cd57e.tar.gz
gcc-76b7dad31c40a9f34a499bfc899bd9483e7cd57e.tar.bz2
arm.md (sibcall, [...]): Add use of link register.
* arm.md (sibcall, sibcall_value, sibcall_insn, sibcall_value_insn): Add use of link register. From-SVN: r37848
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/arm/arm.md12
2 files changed, 13 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 42a9f70..5e50ceb 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2000-11-29 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md (sibcall, sibcall_value, sibcall_insn, sibcall_value_insn):
+ Add use of link register.
+
2000-11-29 Joseph S. Myers <jsm28@cam.ac.uk>
* extend.texi: Update documentation for default format attributes.
diff --git a/gcc/config/arm/arm.md b/gcc/config/arm/arm.md
index 22991b3..3cb7dfa 100644
--- a/gcc/config/arm/arm.md
+++ b/gcc/config/arm/arm.md
@@ -6465,7 +6465,8 @@
(define_expand "sibcall"
[(parallel [(call (match_operand 0 "memory_operand" "")
(match_operand 1 "general_operand" ""))
- (use (match_operand 2 "" ""))])]
+ (use (match_operand 2 "" ""))
+ (use (reg:SI LR_REGNUM))])]
"TARGET_ARM"
"
{
@@ -6478,7 +6479,8 @@
[(parallel [(set (match_operand 0 "register_operand" "")
(call (match_operand 1 "memory_operand" "")
(match_operand 2 "general_operand" "")))
- (use (match_operand 3 "" ""))])]
+ (use (match_operand 3 "" ""))
+ (use (reg:SI LR_REGNUM))])]
"TARGET_ARM"
"
{
@@ -6490,7 +6492,8 @@
(define_insn "*sibcall_insn"
[(call (mem:SI (match_operand:SI 0 "" "X"))
(match_operand 1 "" ""))
- (use (match_operand 2 "" ""))]
+ (use (match_operand 2 "" ""))
+ (use (reg:SI LR_REGNUM))]
"TARGET_ARM && GET_CODE (operands[0]) == SYMBOL_REF"
"*
return NEED_PLT_RELOC ? \"b%?\\t%a0(PLT)\" : \"b%?\\t%a0\";
@@ -6502,7 +6505,8 @@
[(set (match_operand 0 "s_register_operand" "=r,f")
(call (mem:SI (match_operand:SI 1 "" "X,X"))
(match_operand 2 "" "")))
- (use (match_operand 3 "" ""))]
+ (use (match_operand 3 "" ""))
+ (use (reg:SI LR_REGNUM))]
"TARGET_ARM && GET_CODE (operands[1]) == SYMBOL_REF"
"*
return NEED_PLT_RELOC ? \"b%?\\t%a1(PLT)\" : \"b%?\\t%a1\";