aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDJ Delorie <dj@redhat.com>2009-07-14 18:35:01 -0400
committerDJ Delorie <dj@gcc.gnu.org>2009-07-14 18:35:01 -0400
commit54a1e1d016f7b5092b416c5164e92986c187f312 (patch)
tree122d5911ea32805a50d6834aac06c84e09b0d4d3
parent2a4c03661e3152ad410d4e07481c738e1898e0c9 (diff)
downloadgcc-54a1e1d016f7b5092b416c5164e92986c187f312.zip
gcc-54a1e1d016f7b5092b416c5164e92986c187f312.tar.gz
gcc-54a1e1d016f7b5092b416c5164e92986c187f312.tar.bz2
mep.md (sibcall_internal): Include non-toggling non-jmp case.
* config/mep/mep.md (sibcall_internal): Include non-toggling non-jmp case. (sibcall_value_internal): Likewise. From-SVN: r149649
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/mep/mep.md8
2 files changed, 14 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e788bed..8c197f1 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2009-07-14 DJ Delorie <dj@redhat.com>
+
+ * config/mep/mep.md (sibcall_internal): Include non-toggling
+ non-jmp case.
+ (sibcall_value_internal): Likewise.
+
2009-07-14 Taras Glek <tglek@mozilla.com>
Rafael Espindola <espindola@google.com>
diff --git a/gcc/config/mep/mep.md b/gcc/config/mep/mep.md
index 828c3c5..f3c76dd 100644
--- a/gcc/config/mep/mep.md
+++ b/gcc/config/mep/mep.md
@@ -1925,6 +1925,10 @@
{
if (mep_vliw_jmp_match (operands[2]))
return "jmp\t%0";
+ else if (mep_vliw_mode_match (operands[2]))
+ return
+ "movu $11, %0\n\
+ jmp $11";
else
return
"ldc $12, $lp\n\
@@ -1996,6 +2000,10 @@
{
if (mep_vliw_jmp_match (operands[3]))
return "jmp\t%1";
+ else if (mep_vliw_mode_match (operands[3]))
+ return
+ "movu $11, %1\n\
+ jmp $11";
else
return
"ldc $12, $lp\n\